エチュードの頃

思いつきを書きとめておくために。

ADB to USB converter on Da Vinci(2/3)

2012-10-02 | PC・小物

注文したダ・ヴィンチ32Uは2日ほどで到着。



とりあえずそのままUSBでPCに接続~ドライバを入れ、Arduino IDEという開発環境ソフトを起動して、サンプルプログラムのblinkでしばし遊んでから、いよいよ取り組んでみます。


https://github.com/tmk/tmk_keyboardからzipをダウンロードしますと、ソースコード一式が丸ごと入っています。


ボードが違うので一応、どこか修正すべき箇所はあるか?と拙い知識でコードを眺めてみましたが

/tmk_keyboard/common/controller_teensy.h の中で

#define DEBUG_LED_CONFIG (DDRD |= (1<<6))<br /> #define DEBUG_LED_ON (PORTD |= (1<<6))<br /> #define DEBUG_LED_OFF (PORTD &= ~(1<<6))<br />
と、デバッグ用のLED(オンボード)がポートD6に設定されていましたので、これをC7に変更。

#define DEBUG_LED_CONFIG (DDRC |= (1<<7))<br /> #define DEBUG_LED_ON (PORTC |= (1<<7))<br /> #define DEBUG_LED_OFF (PORTC &= ~(1<<7))<br />
他は特に問題なさそう…と思う。
動かなかったらまた考えることにしよう。



で、最初、安直に
「スケッチに各ファイルのテキストをコピーすれば動くだろう」
と考えていたら、これが全然違うのですね。
適当にコピーして「マイコンボードに書き込む」ボタンを押してみても、ただ空しくエラーを吐くばかり。
そもそもC言語自体がよく分かっていないので、何をどうすれば良いか皆目見当もつかない。


最悪、イチからコードを起こさねばならないとか…?
それもやり甲斐はありそうですが、あまりにも元々の目的から外れてそうな気が。


Teensyでは普通の方法でコンパイルしてできたhexファイルを指定して書き込めるようですが、Arduino IDEだとそういう機能はなく「スケッチに書く→ボタンを押す→コンパイル~書き込み」のセットでしか動かせないようです。
ですが安直派としてはやはり、何とかして外部のhexをラクに書き込む方法を見つけたい。


…すると打つ手はなくもないようで、Arduino IDEの中で使われているコマンド「avrdude」で何とかなりそうなのです。
が使い方がよくわからない…
引数とかどうすればいいのか?


・・・
無為に時間が過ぎるので、何はともあれ先にコンパイルだけでもやってみる。

WinAVRというフリーのCコンパイラをインストール、コマンドプロンプトで
\tmk_keyboard\converter\adb_usb
のディレクトリからmakeコマンドを実行すると、ほどなくadb_usb.hexというファイルが出来上がってきました。
さすがというか、全くのノントラブル。


これをどうにかしてマイコンに書き込んでやれば良いわけですが…

(さらにつづく

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする