AVRのすすめ

このページはAtmel社のAVRシリーズワンチップマイコンの特徴と使い方を紹介するページです。
(AVRを使うまでに自分が検討した内容を記したメモでもあります)

1.AVRの特徴

以前、私はMicrochip社のPICマイコンを愛用していましたが、簡単に言うと、
・速度がAVRに比べて遅い(PIC:20MHz=5MIPS、AVR:8MIPS以上)
・CPUアーキテクチャがAVRに比べて汚い(レジスタの数、ページ切り替えなど)
・価格がAVRに比べて高い(同じ性能なら半額程度?)
というようなことで、AVRマイコンに鞍替えすることにしました。
特徴のまとめはChaNさんのホームーページで報告されています。

2.開発環境

アセンブラAtmelのホームページから無料でダウンロードできます。ただし、統合環境では28kバイト以上のコードが扱えないのでDOSコマンドを使用する必要があったり、言語仕様の不足(ブロックコメント、マクロ、定数定義)などの問題があり、ちょっと使いづらいようです。まあ、プリプロセッサの機能不足はCPPを使えばいいんでしょうが。
Cコンパイラ(+アセンブラ)Volkenさんのページで、GNU AVR Cコンパイラ(AVAGCC)がWIN32に移植されています(感謝)。プリプロセッサコマンドなどもgcc相当のものが使えるので、強力です。付属のアセンブラ(AVA)は単体でアセンブラとして使用可能ですが、ATMELのAVRASMとはプリプロセッサなどの互換性がありません。
ライタ: ChaNさんが開発されたものを使用しています(感謝)。ChaNさんのホームページで詳しく説明されています。同じものがトランジスタ技術99年*月号でも紹介されています。
シミュレータ:AtmelのAVRSTUDIOを使用しています。

3.チップの入手先

自作の場合、チップの入手方法が問題となります。私の場合、秋葉原に足を運ぶことができますので、主に秋月電子通商で購入しています。秋月電子通商のホームページもありますので、地方在住の方でも通信販売で入手可能だと思います。IPIでも通信販売しています。
開発ツール類もほとんどインターネットでダウンロードできます。何と便利な世の中になったことでしょう。
以下の表は、ChaNさんのページをもとに秋月・IPIのでの入手価格を追加しました。(著作権上の問題があるかな?)
他に個人で入手可能なところがありましたらご一報頂けると幸いです(特にSOPやQFPなどの特殊パッケージのもの)。
DevicepinROM(w)RAM(b)EEP(b)PIOTIMERSIOADCCOMPPWMNote秋月扱いIPI扱い
2313201K1281281521-11--10 400円-10PC 380円
120020512-64151--1---12 280円-16PC 250円
2333281K128256202110x6ch11BODなしなし
44332kなし-08PC 900円
4414402K2562563221-11Ext. Memory? 700円-08PC 700円
-08JC 800円
85154K512512? 1100円-08PC 900円
-08JC 1000円
4434402K256256323110x8ch11RTCなしなし
85354K5125121200円-08PC 1000円
-08JC 1100円
8534484K25651272-10x6ch---なしなし
232381K12812831------10 400円-10PC 400円
23435なしなし
tiny10/118512--61--1--なしなし
tiny128512-6461--1-BODなしなし
tiny2281K12812851-----なしなし
mega603/1036432K/64K40962K/4K483110x8ch14RTCなしなし

4.AVAを使用する際の注意点

AVAは、PMAPP WEB PAGEで作成されているアセンブラです。Paulo SoaresによってWindows用(DOSアプリ)に移植されています。AtmelStudioも使用することができるそうです。
ただし、AtmelのAVRASMのソースをこのAVAで使用するには、ちょっとした注意が必要です。
1)アセンブラディレクティブ(.equや.dbなど)の互換性がないので修正が必要
2)ラベルのアドレスが、AVARSMはワードアドレスですが、AVAはバイトアドレスです。
3)ビッグ/リトルエンディアンの扱いがちょっと変わっています。アセンブラソースをアセンブル際は-D__avr_noendianbug=1オプションを付けておいて、かつcrtn.oをリンクしないとAVRASMと同じ結果が出ません。

5.情報源一覧

Atmelのホームページデータシートやアセンブラ・シミュレータはここから無料でダウンロードできます。
ChaNさんのホームページAVRの開発環境、制作記事満載。AVR以外の制作記事もたくさんあります。
DonTronicsAVRを使用したワンボードやAVRチップ・書籍を通信販売しています。
Brian Hammillのページ自称AVRコンサルタント。AVRの情報リンク満載。
Tomi Engdahl's マイクロプロセッサ関連の情報。
トラ技2000年/2月号記事「AVRマイコンの概要と評価」AVRマイコンファミリ概要・開発環境が簡単に説明されています。評価は加速度センサADXL202を使ったボール・ゲームです。


Last update: 2000/1/8