2012/02/18

AVRを使い始めてみる

春休みにも入って時間もあるし、マイコンを少しいじってみようかということになった。秋月のPICライターVer.3.5は動作可能な状態なのだが、いろいろ調べたところAVRの方が良いのかもしれない(PICだとVer.4.0じゃなきゃ使えないものも多いみたいだし)ということで、純正のライターAVRISP mkIIなるものをとりあえず入手した。2012年2月現在秋月電子にて3000円。(かつては4000円台、千石電商では4800円くらいなのでずいぶん安い。)

つづいて、発売元のAtmelのサイトから開発環境一式をダウンロード、インストール。購入したライターをUSB接続してまずはファームウエアをアップデート。(このためにVistaを復活させたと。秋月電子のPICライターもwineで動かなかったし。)

 ということで基本的な準備は済んだと思われるが、まだ
  • まず、マイコンとつなぐコネクタを作らなければならない(→ピンヘッダを使って工作)
  • マイコンをどう扱うかがちゃんとわかっていないので仕様書を読まなければならない
という現状。しかし、AVRstudio5にバージョンアップしてからの情報がずいぶん少ないのでかなり試行錯誤しなければならそう。とりあえずは、マイコン界のHello Worldである、LEDの点滅くらいを目標にしてみたい。そういえば、パソコンのプログラミングで一番最初はC言語だったなぁ。といってもHello World!を表示させてその先になかなか進まず、挫折し、用例が多いJavaScriptをちまちま書くようになって、去年あたりにはだいぶ書けるようになった。で、大学に入ってからC言語を若干やって、Rubyも少しかじって今日に至ると。

それはともかく、まずはAtmelのホームページから入手したマイコンatmega88puのデータシートをダウンロード。567ページもある。英語を読むのはあまり苦痛ではないのだが、専門用語があると若干苦しい。

メモをしながら読んでいくとするか。
28ピンでI/Oは最大。GNDはGNDで、VCCもVCC。AREFはA/Dコンバータの基準電圧であろう。
PC6はリセットとしても使える。もちろんその場合はI/Oとしては使えん。
PB7,6は外部の発振子を繋ぐ場所。Internal Oscillatorもあるそうで。Internal OscillatorのときはPB7,6はタイマーに使うとか何とかかいているがまぁ後で詳しく書いてあるらしいのでとりあえずは気にしない。

CPUの構造
 レジスタは32×8bit でもって、32のうち6つを使って16bit×3を実現する。それを16bit X-, Y-, Z-と書く。ALU=Arithmetic Logic Unit (arithmetic:算術の) ではレジスタ同士、レジスタと定数の算術・論理演算ができる。(なんか和訳になり始めてしまった気が・・。)
・・つづく

--
Figures captured from Atmel Datasheets

0 件のコメント:

コメントを投稿