March 07, 2010

AVRマイコンへの道のり(3) -- HIDaspxライターを使う --

arduino2Arduino IDEの統合環境は使い勝手が良いだけでなく, ライブラリも充実しているようです.

LCD液晶表示, シリアル通信, I2Cメモリアクセス等, ライブラリを使えば簡単にプログラム出来そうです.

参考: 日本語リファレンス


もともと, Arduino IDEはArduinoというブートローダーの入った既製品のための開発環境ですが, 出来上がったソフトウェアはAVRマイコン単体でも動くわけです.

というわけで, Arduino IDEから, 先のAVRライタ(hidaspx)を呼んで直接書き込めば, AVRマイコンもATmegaという大きなものだけでなく, 1個100円のATtiny2313のソフトもArduino IDEで開発可能になります.

そのhidaspxを呼ぶ部分, すなわち, avrdudeというライターソフトをhidaspxで置き換える「hidspx対応のavrdude wrapperを公開」を見つけました.

これは, Windows用でしたが, ラップしてオプションによって, hidaspxを呼ぶようにしているだけの簡単なソースでしたので, 少しの修正でMacOSXでも動くようになりました.

arduino1で, やっと. MacOSで, AVRマイコンの開発環境が何とか完成しました.

先人の方々の努力に感謝! 感謝! です.

AVRマイコンは高電圧で焼く必要もなく, USB接続で簡単に焼けるので, ブートローダーって必要ないような...

ATtiny2313のときは Boardで「My Arduino w/ ATTINY2313」を選択します. ATmega168のときは「My Arduino(hidspx) 16MHz / ATmega168」を選択します.


ATmega168Arduinoポート番号とATmega168のピン番号の対応表は /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino/pins_arduino.c にあります.

ATtiny2313は /Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/attiny2313/pins_arduino.c です.



最初のスケッチ:
やっぱり最初はLEDピカピカとLCDへHello World.

- 液晶ディスプレイへの接続例
液晶pin1234567
液晶機能GNDVddVoRSR/WED1
ArduinoD10D9D8
液晶pin891011121314
液晶機能D2D3D4D5D6D7D8
ArduinoD7D6D5D4
Vcc,GND,Voはブレッドボード上で配線. Voはボリュームを付けてGNDに接続する. 他の7本はケーブルで配線する(D4〜D10はATmega168のArduinoでのデジタルピン番号).
#include <LiquidCrystal.h> (ブログ上<>が全角になってます.)
int ledPin = 13;
LiquidCrystal LCD162(10,9,8,7,6,5,4);
void setup()
{
pinMode(ledPin, OUTPUT);
LCD162.begin(2,8);
}
void loop()
{
LCD162.clear();
digitalWrite(ledPin, HIGH);
LCD162.print("Hello World");
delay(1000);
LCD162.setCursor(0,1);
LCD162.print("2010/03/06");
digitalWrite(ledPin, LOW);
delay(1000);
}


as-192414 at 13:32電子工作・無線 | パソコン 
Visitors

Profile
QRコード
QRコード

レンタルサーバーなら使えるねっと

最新コメント
  • ライブドアブログ