問題タブ [avrdude]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Samsung デバイスを搭載した Android で avrdude を実行する
こんにちは、stackoverflow.com のメンバーです。
avr-gcc で生成された HEX ファイルをアップロードできるアプリを Android でビルドしようとしています。AndAVR このチェーンツールをインストールしましたhttp://code.google.com/p/andavr/
avrdude を実行するには (USB-OTG ケーブルを使用したルート デバイスで)、モバイル ターミナルで次のコマンドを使用します。
この投稿を読んだ後、Android は AVRDUDE を使用して Arduino と通信できません。解決策を試し、/dev/ttyACM0 で /dev/bus/usb/002/002 を変更します。
しかし、avrdudeは次のように答えてくれます:
私はArduino Mega 2560とMega ADK 2560 R3を持っています.両方のボードにはATmega2560マイクロコントローラがあり、私は持っています:
- Samsumg Galaxy S2 はルートで Android 4.1.2 ストックを実行します
- Samsung Galaxy S3 はルートで Android 4.1.2 ストックを実行します
- Samsumg Galaxy Tab Note 10.1 はルートなしで Android 4.1.2 ストックを実行します
- Asus Transformer Pad TF700T はルートなしで Android 4.2.1 ストックを実行します
問題は、Samsung デバイスが Arduino ボードと Asus タブを列挙しないことです。
すべてのデバイスで、モバイル端末でコマンドを実行します。
およびAsusは特定のドライバーを提示します:
このドライバーは Samsung デバイスでは表示されません。このドライバーは 16 進ファイルを Arduino ボードにアップロードするために不可欠です。このドライバーを Samsung デバイスにインストールするにはどうすればよいですか? または、hex ファイルをアップロードするにはどうすればよいですか?
すべてのデバイスの Android は、/dev/bus/USB/002/xxx にファイルを作成します。ここで、xxx は Arduino ボードまたはその他の USB デバイスです。
よろしくお願いします!
avr - ATXメガチェンジヒューズ
ATXMEGAA3BUプロセッサがあり、MacOS でCrossPackを使用しています。PDI インターフェイスを介して CPU をプログラムするように「構成」されている古い USBASP プラグマを使用したいと考えていますが、これは問題ではありません。問題は、この ATXmega で FUSES をセットアップする方法がわからないことです。
ATMega8 のような通常の CPU の場合、Makeファイルのシーケンスは単純でした。
これを使用してください: FUSES = -U hfuse:w:0xd9:m -U lfuse:w:0x24:m
しかし、Xmega には 5 つの FUSEBYTES があり、私はそれらに問題があります. 0から1までのJTAGEN?FUSEBYTE4 にビット 0 として配置されています。CrossPack (avr-dude) に FUSEBYTE0 などからこれまたはその他を変更するように指示するにはどうすればよいですか?
ありがとうございました...
android - Androidアプリから実行されたプロセスは、Androidアプリと同じ権限を持っていますか?
私は UsbDevice へのアクセスを許可し、彼のデバイス名 ( /dev/bus/usb/002/002
) を取得し、それを実行されたプロセスに渡して USB デバイスを操作しました (詳細はavrdudeを参照)。
「権限が拒否されました」というエラーが表示されます。
Avrdude はアプリのサンドボックス ( /data/data/%package%
) 内にあるため、avrdude を実行するためだけに root 化する必要はありません (確かに)。UsbDevice Android アプリ プロセスへのアクセスを許可し、すべての子プロセス (avrdude) が対応する USB デバイス ファイルにアクセスできると信じています。
何かご意見は?ルート化は望ましくありません。
android - AndroidでUSBデバイスファイルにアクセスするには?
Android USB API の使用を避け、Android アプリから USB デバイス ファイル (ファイルなど) にアクセスする必要があります/dev/bus/usb/002/002
。ルート化せずにそれを行う機会はありますか?
今、私はパーミッションエラーを取得しています(子プロセスから):
android - 「タイプライターではありません」Android での AVRDude エラー
Android アプリから ( getFileDescriptor()を使用して) USBデバイスのファイル記述子を受け取り、ネイティブ コードで JNI を介して送信し、Unix ソケットを介して子プロセス (AVRDude) で受け取り、アップロードに使用しようとしました。
そのため、「タイプライターではありません」というエラーが表示されます。ファイル記述子が間違って渡されたということですか (正の int であり、受信後に -1 に等しくありません)。それとも、別のエラーが発生する可能性がありますか? アクセス許可の問題でしょうか (UsbDevice へのアクセス許可が付与され、ソケットを介して渡すとアクセス許可が保持されているように見えますが、デバイスはルート化されていません)。
使用したコード ( ser_posix.c
AVRDude 5_11_0 ソース内):
ソケットファイル記述子から受信した直後に、有効であることがチェックされます(そして、私はそれが正しいと信じています):
元々、ser_posix のファイル記述子は次のように受信されます (動作していると思います)。
私の実装では、代わりに Android アプリのファイル記述子を使用します。それは期待されていることですか?
cmake - arduino のデフォルト IDE を KDevelop に置き換える
KDevelop は全体的に非常に優れた IDE であり、組込み Linux を実行する ARM9 CPU 用のソフトウェアのクロスコンパイルとデバッグに使用して、すでに良い経験があります。小規模なプロジェクト用のArduinoボードをいくつか入手したので、それらは非常に素晴らしく簡単なプラットフォームであることがわかりましたが、その IDE は機能やコードのイントロスペクションなどで Kdevelop に大きく遅れをとっているため、Kdevelop を arduino のコンパイルとプログラミングに適応させたいと考えています。代わりにボード。
目標は、arduino ライブラリを使用して純粋な C/C++ または通常の C++ でソフトウェア開発を可能にすることです (この回答は、これを可能にするのに大いに役立ちます)。ビルド システムとして CMake を使用する予定です。これは、Kdevelop とうまく統合され、簡単にクロスコンパイルできるためです。補足として、このツールチェーン ファイルを使用して、CMake にavr-gccクロス コンパイラを使用させることができます。
arduino は舞台裏で avr-gccとavrdudeを使用してターゲットの AVR マイクロコントローラーをコンパイルおよびプログラムするため、 AVR チュートリアル、ピュア C での Arduino Uno のプログラミング、 AVR-GCC を使用した Arduino のプログラミングなどの興味深い方向性を見つけましたが、まだわかりません。コンパイルされたバイナリをマイクロコントローラのフラッシュ メモリにアップロードするために、Kdevelop のインターフェイスにavrdudeを呼び出すボタンを追加する方法を知っています。誰でもそれを手伝ってくれますか?
arduino - avrdude: stk500_getsync(): 同期していません: resp=0x0o
arduinoにまばたきスケッチをアップロードしようとしています.comポートを整理し(COM 11)、arduino.cc Webサイトに記載されているとおりにドライバーをインストールしました。しかし、スケッチをアップロードしようとするたびに、次のエラーが発生します。
バイナリ スケッチ サイズ: 30,724 バイト (バイナリ スケッチ サイズ: 30,724 バイト (最大 32,256 バイト) avrdude: stk500_getsync(): 同期していない: resp=0x0o
既に別の OS (win 8 64 ビット/ win 7 32/64 ビット) を試しましたが、それでも動作しません。私は初心者で、これについて深刻な助けが必要です..ありがとうございます:)
bash - AVRDUDE の 1 つのフォルダー内ですべてのプログラミングを行う方法は?
私はこのコードを持っています
avrdude avrdude.conf を見るとわかるように、hex ファイルとコマンド ファイルはすべて 1 つのフォルダーにあります。基本的にやりたいことは、単一のフォルダー内ですべてのプログラミングを行うことです。最初に「./avrdude」を試して、それがルートフォルダーにあることを示しましたが、それでも以下のエラーが表示されます
avr - ubuntu での AVR-ISP-MKII の問題
少しでもお役に立てれば幸いです。avrdude を使用して、Ubuntu 13.04 で AVR-ISP-MKII を動作させようとしています。
私は同様の問題でここの投稿をたどりましたが、それは私を少し動かしたようです.
ポストはこれです。
これまでのところ、私は次のことを行っています:- 1. サプライヤー サイトからプログラマーのファームウェアをアップグレードしました。(これは Olimex.com の dfu-programmer とコードで行われました)
- 私のルールファイルを更新しました。/etc/udev/rules.d/60-avrisp.rules に以下を含めます:-
サブシステム!="usb"、アクション!="追加"、GOTO="avrisp_end"
ATTR{idVendor}=="03eb"、ATTR{idProduct}=="2103"、MODE="660"、GROUP="dialout"
ATTR{idVendor}=="03eb"、ATTR{idProduct}=="2104"、MODE="660"、GROUP="dialout"
ATTR{idVendor}=="03eb"、ATTR{idProduct}=="2107"、MODE="660"、GROUP="dialout"
ATTR{idVendor}=="1781"、ATTR{idProduct}=="0c9f"、MODE="660"、GROUP="dialout"
LABEL="avrisp_end"
udevを再起動しました。
このセットアップでavrをプログラムしようとすると、次のようになります:-
cmd>$ avrdude -p m1284p -c avrispmkII -P usb -B 22 -U flash:w:optiboot_atmega1284p.hex
avrdude: stk500v2_command(): コマンドが失敗しました avrdude: stk500v2_program_enable(): 不正な AVRISPmkII 接続ステータス: 不明なステータス 0x00 avrdude: 初期化に失敗しました, rc=-1 接続を再確認して再試行するか、-F を使用してこのチェックをオーバーライドしてください。
完了しました。ありがとうございました。
どんな助けでも大歓迎です。私はこれで一日を無駄にしました。すべては、ブートローダーをチップにプログラムできるようにするためです。完了したら、USB経由でプログラムできます.....それは私を夢中にさせています。
さらに情報が必要な場合は、お知らせください。
ありがとう、
ロブ