AVRマイコンで始めるC言語の使い方
学習用ハードウエア
アトメル社の8ビットマイコンATmeag328を使用してC言語学習用ハードウエアを作ります。入力は4ビットのスイッチ、出力は4ビットのLEDとキャラクタLCDです。キャラクタLCDはChaNさんのEZ-LCDを使用します。
1.ブロック図
ブロック図
(1)マイコンの動作クロック
マイコンは内部クロック1MHzで動作させます。
内部クロック8MHzを8分周しています。
(2)キャラクタLCD
4ビットモードで動作させます。
キャラクタLCDの制御にはChaNさんの
EZ-LCDを使用します。端子機能の詳細につ
いては気にしなくてすみます。
PB0、PB2、PB4~PB7に接続します。
RS:PB0 インストラクションとデータの切り替
えです。
RW:Low固定として書込のみとします。
E:PB2 LCDにデータを書き込みます。H→Lで
DATA(PB4~PB7)の値をLCDに書き込
みます。
DATA:PB4~PB7
(3)スイッチ入力
PD0~PD3をスイッチ入力に割り当てます。スイ
ッチを操作しないときはHとなるようにプルアッ
プします。
(4)LED出力
PD4~PD7をLED出力に割り当てます。
マイコンからHを出力したときに、LEDが点灯します。
(5)ISP6ピンコネクタ
プログラマAVR ISP mkⅡに接続するためのコネクタです。これでパソコンで作ったプログラムをマイコンに書き込み
ます。
2.回路図
回路図
(1)動作用電源
DC5V用のACアダプタまたは、ニッケル水素電池
4本(1.2VX4=4.8V)で動作させます
(2)マイコンのリセット
マイコンのリセットを行うため、RESETスイッチ
を設置しています。
(3)LCDコントラスト調整
LCDのコントラスト調整用としてVR1 10kΩの
半固定抵抗を使用します。
(4)スイッチのプルアップ抵抗は10kΩとします。
(5)LEDの制限抵抗は680Ωとします。
LEDの制限抵抗 = (電源5V - LEDの順方向電圧
1.8V) / LEDに流れる電流5mA = 640Ω
これに近い抵抗は(E-12系列から選択)680Ωとなります。
抵抗の選択はE-12またはE-24標準数から選択します。E-24系列を一通り揃えられると良いのですがかなりの数となりますので、E-12標準数から必要な定数のものを揃えておけば最初は十分と思います。標準数については[ツール->電子部品の使い方->抵抗の標準数]に記載していますので参考にしていただければと思います。
3.部品表
名称 |
仕様 |
購入先 |
数量 |
マイコン |
アトメル社8ビットマイコン ATmega328 |
秋月電子 |
1 |
タクトスイッチ |
入力用4個、リセット用1個使用します。 |
秋月電子 |
5 |
LED |
φ3赤色LED |
秋月電子 |
4 |
抵抗 |
680Ω 1/4W |
秋月電子 |
4 |
抵抗 |
10kΩ 1/4W |
秋月電子 |
5 |
半固定抵抗 |
10kΩ |
秋月電子 |
1 |
キャラクタ液晶表示器 |
20文字X4桁、SC2004CS |
秋月電子 |
1 |
ブレットボード |
|
秋月電子 |
1 |
4.組立図
組立図
ブレットボード上組立は配線例を左図に示します。
左上はISPコネクタです。
右側上部はLED出力です。
右側下部はスイッチ入力です。
右側最下部はRESETスイッチです。
液晶表示器LCDの下の半固定抵抗はLCDのコントラスト調整用VR1です。
以上でハードウエアは完成です。
配線の確認は回路を動作させることになりますので、マイコンにソフトウェアを書き込んで行うこととなります。今後、ソフトウェアを勉強していきましょう。