(別室)PICプログラムで遊ぼうのページ

 ※このページはあくまで個人的な趣味によって書かれており、著者は全ての内容について、いかなる責任も負いません。

 このページは、「PICのページ Version 1.0」で紹介した基板の応用プログラムを紹介しています。



進化(変化)するプログラムを作る

●その1)文字を表示するインタプリタ(18F8720/18F452マザーボード + AT24C256)

PICで、文字を表示する簡単なインタプリタを作ってみた。
プログラムは、マザーボードに載せているシリアルEEP−ROMに書き込んで使用する。
シリアルEEP−ROMはプログラムからの書き換えが容易にできるので、プログラムをプログラムから
書き換えるような構造のプログラムを簡単に作る事ができる。
また、シリアルEEP−ROMは、増設が簡単にできるので、大きなプログラムを作成する事も可能だ。

 ※注)シリアルEEP−ROMの書き込み方法(例)
   @MPASMWIN(マイクロチップ社のMPLABに同封されている)でコンパイルする
   ASerial EEPROM Programer(秋月電子のバージョンアップキットに同封されている)で、@をEEPに書き込む 

  ・サンプル言語(表示A)の仕様
    0x80; 画面クリア
    0x81; 改行
    0x82; 0.1秒のWait
    0x83; 1.0秒のWait
    0x84; 次の1バイトをPortBに出力する
    0xFF; プログラムを先頭アドレスに戻す

  ・PORTBには、モニタ用に、300Ωの抵抗をつないだLEDを8個つないでおくとよい。
  

sm001.asm

18F8720マザーボード用プログラムソース(MPLAB用 ASMファイル)

sm002.asm

18F452マザーボード用プログラムソース(MPLAB用 ASMファイル)

eep001.asm

24C256用EEPプログラムソース(MPASMWIN用 ASMファイル)





マザーボードを使ってみる

●赤外線リモコン解析プログラム(18F8720/18F452マザーボード + 赤外線受信モジュール[SPS442-1])

TVやビデオのリモコンを解析するプログラムを作ってみた。
多目的なリモコンを作るために作ったものだ。
電源をつなぐとデモが表示されるので、表示が終了したら、マザーボードに接続した赤外線受信モジュールに
向けてリモコンのボタンを押せば、測定結果(パルスと各パルス幅[16進表示:10μ秒])が表示される。

測定データは、測定しながら直接EEPに書き込むほうがプログラムが簡単になるのだが、数μSの測定では、
EEPの処理速度が問題となるので、一端、データメモリーに保存している。
このデータを、EEPに書き込むなり、パソコンに連動するなり、プログラムを変更するのは容易であるが、
このサンプルでは、測定結果を、単にLCDに表示させている。
表示が速すぎて読めない場合は、WAITを追加する。
また、測定ポイントが足りなければ、同じようなプログラムの記述を追記するだけだ。

赤外線受信モジュールは電源リップルで誤動作する事があるので、電源にはリップルが少ないものを使う
必要がある。
このボードでは、DC電源器を使うと誤動作していたため、乾電池+シリーズ型レギュレタの専用電源を用意した。

写真

sm011.asm

18F8720マザーボード用プログラムソース(MPLAB用 ASMファイル)

sm012.asm

18F452マザーボード用プログラムソース(MPLAB用 ASMファイル)





●温度計プログラム(18F8720/18F452マザーボード + 温度センサーアダプタ)

温度センサー(S8100B)を使って、1分おきに温度データを収集するプログラムを作ってみた。
測定間隔を変更するなり、データをEEPに書き込むなり、パソコンに送信するなり、変更するのは簡単だ。

写真

sm011.asm

18F8720マザーボード用プログラムソース(MPLAB用 ASMファイル)

sm012.asm

18F452マザーボード用プログラムソース(MPLAB用 ASMファイル)








PICのページへ戻る





問い合わせ先(代表者)E_MAIL BYP03364@nifty.ne.jp

 ※ウイルス感染防止のため、容量の大きなもの、添付ファイルのあるもの、テキスト形式以外のメールは
全て削除されます。
 また、個々の質問については、お答えできません。