AVR – atmega88 LED

AVRマイコンの目的は、温度を測ること。
ATTiny2313はADCを持っていないので、ADCを持っているATMega88を使ってみる。
マイコンは、デジタルで動作しているので、温度などアナログデータを扱うにはアナログからデジタルに変換が必要となる。そのアナログ(Analog)からデジタル(Digital)に変換(Convert)してくれるのがADCなのである。
ATTiny2313を使ったサンプルはあちこちにあって、その通りの回路図でその通りのプログラムで、それなりに動作させることが出来る。

ATMega88でもたぶんサンプルはあるのだろうが、ここは、Mac Onlyで出来るか試してみた。

ATMega88のPORT Dに接続した8個のLEDを点灯させるだけである。

led.c

#include

int main() {
    DDRD  = 0xff;
    PORTD = 0xff;

    while(1) {
        ;
    }
}


なんなくこれだけでよさそう。#ほんとにいいかは…

$ avr-gcc -mmcu=atmega88 led.c -o led.o
$ avr-objcopy -O ihex led.o led.hex
$ ../../hidspx_osx/hidspx led.hex

gccを使用するときにマイコンタイプを指定するらしい。
# hidspxにpathを通してない。

というわけで、自分が作ったHIDaspx(AVRライター)でatmega88にプログラムをダウンロードすると、めでたくLEDが点灯した。やったー

# まだまだですな
# 最初にLEDの点灯実験は、マイコン界のHello, World!らしい
m88_led

カテゴリー: Computer   タグ: , ,   この投稿のパーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>