Hatena::ブログ(Diary)

へにゃぺんて@日々勉強のまとめ

2016-02-14

Debian Jessie上にAVRマイコン開発環境構築〜LEDチカチカまで

何年かぶりに、AVRマイコンをいじってみようかと思い、

以前はWindows上で開発していたのですが、Debianでもできる様子なので、試してみました。


f:id:cupnes:20160215013419j:image

※ パスコンは手元になかったので繋いでいないです(買っておいたはずなのに。。。)

  そもそも、Vcc 3.0Vの低電圧なモードで動かしているので、無くても壊れることは無い、はず


結論としては、

こちらのページのATtiny44用の記述をATmega168用に変更するだけで、Lチカまで動作確認できました。


変更点だけメモしておきます。

変更点ATiny44ATmega168
avrdudeの-pオプションt44m168
サンプルプログラムの定数PA6PB6
PORTAPORTB
DDRADDRB

※ ATmega168にはポートAは無いので、今回はポートBの6番を使用しました



備考1: avrdudeの-pオプションの表記について

使用したいMCUに対する-pの表記については、

"-p"オプションに'?'を指定して実行すると一覧表示を得られます。


$ avrdude -p '?'

Valid parts are:
  uc3a0512 = AT32UC3A0512
  c128     = AT90CAN128
  c32      = AT90CAN32
  c64      = AT90CAN64
...

※ '?'は上記のようにクオートで囲まないとシェルに食われます


標準エラー出力に出力するので、grepする際は

  以下のように標準エラー出力を標準出力へつなぐと良いです

$ avrdude -p '?' 2>&1 | grep ATmega168
  m168     = ATmega168
  m168p    = ATmega168P

備考2: AVRに関するパッケージ

まだ試していませんが、GDBとかシミュレータとかもあるみたいです。

$ apt-cache search --names-only avr
avra - assembler for Atmel AVR microcontrollers
avrdude - software for programming Atmel AVR microcontrollers
avrdude-doc - documentation for avrdude
avrp - Programmer for Atmel AVR microcontrollers
avrprog - Programmer for Atmel AVR microcontrollers
binutils-avr - Binary utilities supporting Atmel's AVR targets
gcc-avr - GNU C compiler (cross compiler for avr)
gdb-avr - GNU Debugger for avr
libavresample-dev - Development files for libavresample
libavresample2 - Libav audio resampling library
avr-evtd - Linkstation・玄箱用 AVR 監視デーモン
avr-libc - Atmel AVR における開発用の標準 C ライブラリ
simulavr - Atmel AVR シミュレータ

まとめ

インストールしたパッケージ


avrdudeコマンド

  • 認識チェック
    • avrdude -p m168 -c avrisp2
  • flash読み出し(Intel Hexフォーマット)
    • sudo avrdude -p m168 -c avrisp2 -U flash:r:backup_201602141857.hex:i
  • flash書き込み(フォーマット自動認識)
    • sudo avrdude -p m168 -c avrisp2 -U led.c.hex

ビルド

avr-gcc -mmcu=atmega168 -Wall -Os -DF_CPU=10000000 -I./ -o led.out led.c
avr-objcopy -O ihex led.out led.c.hex

※ Vcc 3.0Vの10MHzモードで動かしているため、-DF_CPUでは10MHzを指定しています

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/cupnes/20160214/1455467810