エレキジャックのNo.3は「空へ インドア・プレーンの製作」特集でした。筆者も数年前からPICマイコンに魅力を感じ、LEDを点滅させたりして遊んでいましたが、この特集を読んで赤外線リモコンに挑戦したくなりました。
しかしこの特集記事に載っているのとまったく同じことをするだけでは面白くありませんし、かといってインドア・プレーンを自分で設計して製作するには経験不足だと思っています。機体の工作や軽い電池の選択にも自信がありません。またソフトは自分で組みたいのですが、アセンブリ言語を駆使する自信もありません。
そこで今回は、次のような方針を立てました。
しかしこの特集記事に載っているのとまったく同じことをするだけでは面白くありませんし、かといってインドア・プレーンを自分で設計して製作するには経験不足だと思っています。機体の工作や軽い電池の選択にも自信がありません。またソフトは自分で組みたいのですが、アセンブリ言語を駆使する自信もありません。
そこで今回は、次のような方針を立てました。
- PICマイコンを利用して赤外線リモコン送受信機を自作する。
- PICマイコンについては、コンパイラを使ってBASIC言語を使用してソフトを組めるようにする。
- コントロールする対象を乾電池式のモデル・カーとするために、マブチモーターのスピード・コントローラの駆動や、サーボ・モータについても勉強する。
これまでLEDの点滅で遊んでいるときは、ソフトをアセンブリ言語で組んでいました。ところが残念ながらアセンブリ言語というのは、ちょっと気を抜くとすぐにわからなくなってしまいます。そこで方向転換して、もっとわかりやすい高級言語を使うことにしました。そうすれば、今後も高度なPICソフトが簡単に作れるようになるからです。
PICマイコンで使用する高級言語を選択する際も、
(1) PICの世界ではポピュラなC言語も筆者にとっては難解で使えない
(2) インタープリタを使ったBASIC言語もマイクロ秒単位の制御ができずに赤外線リモコンが作れないために却下
などのまわり道を経て、
(3) コンパイラを使ってベーシック言語を使用する というところに落ち着きました。
PICマイコンで使えるBASICのコンパイラをインターネットで調べて比較した結果、筆者は PICBasic Pro Compiler を使うことにしました。この製品はマイクロテクニカという会社から購入することができます( http://www.microtechnica.net/ )。ソフトの開発はWindows上で、グラフィカルに開発が行える統合開発環境、MicroCode Studio(MCS) にて行います。
例として、PIC16F84AのPORTB.0とPORTB.1につないだLEDを1秒おきに交互に点滅させるプログラムを次に示します。どうですか、アセンブリ言語よりずっと簡単ですね。後日読み直してもすぐに思い出せます。あとはこのプログラムをコンパイルして、HEXファイルを作り、PICマイコンにインストールするだけです。
インストールには、秋月電子通商の AKI-PICプログラマーver.3.5 を用いました。
次に完成した送受信機を見てください。回路やプログラムの詳しい解説は、次回以降に行います。

PICマイコンで使用する高級言語を選択する際も、
(1) PICの世界ではポピュラなC言語も筆者にとっては難解で使えない
(2) インタープリタを使ったBASIC言語もマイクロ秒単位の制御ができずに赤外線リモコンが作れないために却下
などのまわり道を経て、
(3) コンパイラを使ってベーシック言語を使用する というところに落ち着きました。
PICマイコンで使えるBASICのコンパイラをインターネットで調べて比較した結果、筆者は PICBasic Pro Compiler を使うことにしました。この製品はマイクロテクニカという会社から購入することができます( http://www.microtechnica.net/ )。ソフトの開発はWindows上で、グラフィカルに開発が行える統合開発環境、MicroCode Studio(MCS) にて行います。
例として、PIC16F84AのPORTB.0とPORTB.1につないだLEDを1秒おきに交互に点滅させるプログラムを次に示します。どうですか、アセンブリ言語よりずっと簡単ですね。後日読み直してもすぐに思い出せます。あとはこのプログラムをコンパイルして、HEXファイルを作り、PICマイコンにインストールするだけです。
インストールには、秋月電子通商の AKI-PICプログラマーver.3.5 を用いました。
塩山 洋
