* 回路を組み立てる [#q62983ee] ブレッドボード上に回路を組み立てます.~ 電源だけつなげれば動きますが,何も出力が無いと動いているのかどうか 分からないのでLEDとか付けてみましょう.~ &ref(circuit01.png); ライタを繋ぐために,RESET,Vcc,GNDの3本を 適当な場所に並べて引き出して置いてください. &ref(board01.jpg); USBから電源を取るのが嫌な人は5VのACアダプタ等を繋いでください. 3Vあたりでも動いたりするので乾電池2本でも大丈夫だとは思います. * AVRに書き込み [#n6ea1a5b] AVRにプログラムを書き込みます.やっとです.~ 下のようにライタのケーブルを接続してください. 良く見えなければ回路図を見てピンの名前で判断してください.~ &ref(board02.jpg); ** ヒューズの設定 [#q8a443db] AVRのヒューズを書き換えて適当に設定します. ヒューズというと一度書き換えると終わりみたいですが,何度も書き換えられます. デフォルトでは,1MHzで動作しているので,8MHzに設定を変更します. 別の周波数で動作させたい場合は,外部クロックを繋ぐ必要があります. hidspx -ph -d10 -fl11100010 たぶん,こんな感じで. 変な設定にすると,ヒューズを書き換えられなくなる(つまり元に戻せない)ので 注意してください. (パラレルライタというライタを使えば元に戻せるので,やってしまったら言ってください) ** サンプルプログラム [#g0719d41] #define F_CPU 8000000 #include <avr/io.h> #include <util/delay.h> void delay_ms(uint16_t t) { while (t--) _delay_ms(1); } int main() { DDRD = 0xFF; for(;;) { PORTD = 0b0011; delay_ms(500); PORTD = 0b0000; delay_ms(500); } } 古いgccだと0bxxxで数値を二進表記できないかもしれません. ** コンパイル&書き込み [#ob693247] avr-gcc -mmcu=atmega88 -Wall -O2 test.c avr-objcopy -O ihex -R .eeprom a.out test.hex hidspx -ph test.hex LEDが点滅すればOK.