1.プログラミングをする前に・・・
アセンブラ言語を勉強していこうと思ったのですが、PICマイコンというものを知らないと何を制御して良いのか判らないので、もう少しPICマイコンというものを研究しましょう!
※ゴメンなさい。私自身も勉強中なのでよく判らないので・・・。
★先ほどの章で出てきた「レジスタ」とか何も判っていないので、そこから調べていきたいと思います。
2.(ファイル)レジスタって?
前頁までの「PICマイコンを触ってみる」では、いきなりアセンブラで記述したプログラムをコンパイルして、シミュレーションしました。
この時「レジスタ(Register)」という言葉が突如出てきました。これって何でしょう???
ネットで調べると「レジスタ」は、マイコン内にあるRead/Write出来る記憶素子(RAM?)とのこと。周辺装置の設定をしたり、演算結果を保存したり、電気信号の入出力設定するのに使うみたいです。
前項で出てきたレジスタは、
・ファイルレジスタ(“f”と記述されている書籍が多いみたいです。このページでも今後は、「fレジスタ」と記述します。)
・wレジスタ
wレジスタは、演算結果を格納するのに使用しました。
fレジスタは、PICマイコンの中で、以下のように定義されています。PICマイコン(PIC16F877A)の資料「PIC16F877A.pdf」のP.17「FIGURE 2-3: PIC16F876A/877A REGISTER FILE MAP」を参照して下さい(年月でファイル名やページ数が異なるかも知れません)。資料が無い方は、マイクロチップテクノロジー社か部品屋さんから取得ください。
※たぶんこのページで直接ファイルのダウンロードするのは、著作権の問題で駄目だと思うので・・・。
ファイルレジスタは、上記のような構成になっています。
あと、図の下の部分の注意書きですが、英語は良く判らないので、日本語版を見てみると、
1.灰色の部分
:データメモリなし。読み出しても0 とリードされる。
2.「*」の部分
:物理的に存在しない。
3.「Note 1(上記図の”(1)”と記述されているところ)」の部分
:このレジスタはPIC16F876Aにはない。
4.「Note 2(上記図の”(2)”と記述されているところ)」の部分
:このレジスタは将来使用する場合がある。0 にしておいて下さい。
・・・とのこと(へぇ~、だから何?って感じですね・・・)。