マイコンを始めたいと思っているフレッシュマンへ。
電気のデの字も知らない超初心者の方でも、このブログどおりに実行すれば、マイコンをすぐに動かせるようになります。年齢関係なし、パソコンさえあれば、小さなお子様から、ご年配の方まで、誰でも、超簡単です。
文系の人にぜひ動かして欲しい!

↑ではpart9からのつづきです。
プログラムをプログラムらしいプログラムに
↑このプログラム、数値だらけで分かりづらいですよね。これをちょっと格好つけて書き直してみましょう。
では、「part5_1.asm」をコピーして名称を「part5_2.asm」にしましょう。「part5_2」というフォルダーをつくって「part5_2.asm」を入れます。わかる場所に置いてください。
※この「part5_1.asm」という名称、あまりよい名称ではなかったですね。こうしていつも失敗します。
あなたのお好みの名称にしてください。ただし、英数字のみで。
では、変えてみます。
list P=PIC18F4520 LATB EQU H’0F8A’ TRISB EQU H’0F93′ LED2 EQU 0 SETF LATB CLRF TRISB BCF LATB,LED2 NOP END
↑コピペ用ですが、下記のようにタブやスペースを入れて調整してください。
※上記はPICの型式が間違っています。正しくは「4520」←「452」です。
ちょっとプログラムっぽく見えませんか? え、あまり変わらない? で、ですよね。
この命令を「part5_2.asm」に書いて、「part5」~「part9」をご覧になって「Project Wizard」を実行してください。「Watch」ウィンドウも出します。↓
デバッグのやり方をおさらいします。
- メニューの「Configure」から「Select Devise」から「PIC18F4520」を選択。
- メニューの「Project」から「Project Wizard」。
- Step Oneで「PIC18F4520」を選択。
- Step Twoで「次へ」。
- Step Threeで「Browse」→「part5_2」を入れて「保存」で「次へ」。
- Step Fourで「part5_2.asm」を選択して「Add」。右の画面で入ったファイルを選択した「次へ」で「完了」をクリック。
- 開いたウィンドウの中の「part5_2.asm」をダブルクリックするとプログラムが開く。
- メニュー「Configure」から「Configuration Bits」で、出た画面の「Configuration Bits set in code.」のチェックを外して、一番上OSCの行を「HS oscillator……(4xFOSC)」変更して閉じる。
- メニューから「Debugger」→「Select Tool」→「PICkit3」を選択。
- メニュー→「Debugger」→「Erase Flash Device」でマイコンの中身を消す。
- メニューから「Project」→「Build All」。「Absolute」を選択。「Build All」必ず行ってください。
- メニューから「Debugger」→「Program」でマイコンに書き込む。デバッグ用書き込み。
- メニューの「View」→「Watch」を選択。
- 「Watch」ウィンドウの「Symbol Name」に「LATB」と「TRISB」を入力。
↓「Build All」でこんなエラーがでたら、「Configure」から「Select Device」や「Configuration Bits」を確認してください。
「Step Into」ボタンを一つひとつ押してデバッグしてください。
後手になりましたが、解説しましょう。
「LATB EQU H’0F8A’」とは
「LATB」に「H’0F8A’」を割り当てる疑似命令です。「EQU」はイコール。マイクロチップ社が定めた命令ではありませんが、頻繁に使用します。
「part7」にあるスペシャルファンクションレジスタ(SFR)の表を見ますと、「LATB」の番地が「F8Ah」になっていますので、この数値を割り当てました。
次の「TRISB EQU H’0F93’」も同じなので、番地を確認してください。
「LED2 EQU 0」も、0(0bit目)を「LED2」に置き換えました。しかしこれは、0のままの方が分かりやすいかもしれませんね。
ということで、「SETF LATB」や「CLRF TRISB」が表現が使用できるようになりました。どうです、分かりやすくなったと思いませんか? え、そうでもない……。
では、これでどうでしょう?
もっとプログラムをプログラムらしいプログラムに
list P=PIC18F4520 #include "P18F4520.inc" CONFIG OSC = HSPLL SETF LATB CLRF TRISB BCF LATB,0 NOP END
また命令文が変わりました。
「#include ”P18F4520.inc”」とは
C:\Program Files (x86)\Microchip\MPASM Suite
を開いてください。
たくさんあるファイルの中から、「p18f4520.inc」をテキストで開きます。中身は決していじくらないでください。
前記で解説した「EQU」がたくさんありますね。「LATB」と「TRISB」のEQU宣言もあります。
「#include “P18F4520.inc”」をプログラムに記述すると、「p18f4520.inc」の中身を記述したことになります。
従って、
LATB EQU H’0F8A’
TRISB EQU H’0F93′
の文がいらなくなるのです。
「CONFIG OSC = HSPLL」とは
ここでいうCONFIG(コンフィギュレーション)とは、PICマイコンの動作を決めるレジスタのことです。
クロック発信のモード、パワーオンリセット、ウォッチドッグタイマー、コードプロテクトなどの設定ができます。今は発信モードの設定のみを行っています。あとはデフォルト(初期値)のままです。
「CONFIG OSC = HSPLL」の記述でも設定できます。これで「HS oscillator……(4xFOSC)」に自動的に変更されます。
メニュー「Configure」から「Configuration Bits」で確認してください。
では「LED3」を点灯させてください。
ここまで理解できれば、あとはスラスラいけます。ここで一旦、小休止です。