[PR]口が臭う人の共通点…:臭いが見える対策は?
マイコン制御
プログラムの一環としてマイコン制御をやってみようと思いました。
マイコン制御はハードウェアを理解するのにもってこいの教材です。
よく、本屋さんでPIC関係の書籍を目にします。
初心者にも敷居の低いマイコンプログラムができそうです。
使う言語もアセンブラなので言語の勉強にもなります。
とりあえずおすすめの書籍を一冊買いました。
誠文堂新光社:遠藤敏夫著:わかるPICマイコン制御
この本はおすすめです、簡単なサンプルにつまずき易い点や実用的に使うための
ノウハウがよくまとまっています。
PICライタの作成
PICライターがないと何も出来ません。
ということで作ります安く…
参考になるサイトを探しました、ありました。
ROCさんのホームページ
部品表を参考にして、秋月電子に部品発注し半田ごてで作成
1台目は動きませんでした…慌てて作るとだめです。
ブレッドボードを購入し回路を見直ししっかりチェックして2台目作成
動きました。
しっかり読み書きしてくれています。
ライターソフトにIC-Progを使いましたが、オッシレータ設定を間違っていたため
書き込みに失敗していたことに気づきました。
マイコンは16F84Aというものを使いました。

評価ボードの作成
書き込みは出来るようになりましたが、プログラムの動作チェックをするにはハードを作らないと
いけません。
そこで参考書をまねて評価ボードの作成をしました。
仕様はポートAにディップスイッチで入力、ポートBは全部出力でLEDを発光という簡単なもの


プログラム
; Generated by WinDis84, (c) Nigel Goodwin 1998.
LIST P=16F84, F=INHX8M
include "P16FXX.inc"
ORG 0x0000
CLRF PORTB
CLRF PORTA
BSF STATUS , RP0
MOVLW 0x00
MOVWF TRISB
MOVLW 0x1F
MOVWF TRISA
BCF STATUS , RP0
Label_0002 BTFSS PORTA , 00 ←ポートAの0番に入力が無ければ0001に飛ぶ
GOTO Label_0001
MOVLW 0xFF ←ポートBの全部に出力設定
MOVWF PORTB ←ポートBに出力
GOTO Label_0002
Label_0001 MOVLW 0x00 ←ポートBの全部に出力無しを設定
MOVWF PORTB ←ポートBに出力
GOTO Label_0002
ORG 0x2000
DATA 0x0F
DATA 0x0F
DATA 0x0F
DATA 0x0F
ORG 0x2007
DATA 0x16
END
スイッチの入り切りでLEDが8個光ります。
あとはプログラムを応用していけば、さまざまな事が出来るのでしょう…
