メイン

第12章赤外線2ch送信機TX2-006Pプログラミング アーカイブ

2008年5月 7日

12-1 LEDの点滅

第12章 赤外線2ch送信機のプログラミングを楽しみましょう

 赤外線2ch送信機TX2-006Pは無事完成しましたか?。

 TX2-006Pにはジョイスティック・PIC12F683のA-Dコンバータなどのプログラミングを楽しめる機能が満載です。12F683は今回初めて使うPICとなります。インドアプレーンを操縦する前にプログラミングに挑戦しましょう

 準備運動として、LEDを3回点滅させるプログラムを作成しましょう。今まで使っていたPIC16F84AとPIC12F683は同じ"PIC"の仲間ですが、12F683は後発のために小型ながら最新機能を搭載しています。

 TX-006Pでは外部発振子であるセラロックを省略し、PICの内部クロックを使い、回路を簡略化しています。

 これらの切り替えを含めたプログラミングにする必要があります。

 それでは、TX2-006Pにひとつだけ装備しているLEDを使ってPIC12F683をプログラミングしてみましょう。


続きを読む "12-1 LEDの点滅" »

2008年5月12日

12-2 A-Dコンバータを使いましょう

 PIC12F683にはA-Dコンバータ機能が搭載されています。この便利なA-Dコンバータを使えるようにしましょう。

A-Dコンバータとは?

 A-Dコンバータとして使用可能なポートに加えられている電圧を測定してディジタル・データに変換してくれる機能を、A-Dコンバータといいます。Anlog to Digital Converterの略称です。
 電源電圧か外部電源を基準電圧としてこの電圧と比較することにより、電圧を測定し、ディジタル・データに変換してくれます。通常は電源電圧を基準電圧とします。
 PICは2V~5Vの幅広い電源電圧で動作しますが、ここでは5Vで考えます。

続きを読む "12-2 A-Dコンバータを使いましょう" »

2008年5月20日

12-3 A-Dコンバータ ~その2~

 A-Dコンバータの使い方が、だいたいわかったでしょうか?
 課題3では、スティックの左右方向の制御に、A-Dコンバータを使いましょう。

課題3 

 エルロン・スティックを右または左へ倒すとLED点灯が点灯するプログラムを作りましょう。

 エルロン方向=横方向のA-Dコンバータはchannel(1)に割り当てられています。

   al_adc=read_adc(1)

により、読み込み、変数に代入します。

 読み込んだ値により、LEDの点灯を制御します。

続きを読む "12-3 A-Dコンバータ ~その2~" »

2008年5月27日

12-4 割り込み

 16F88/16F84Aでの割り込みは試された方もいらっしゃると思います。ここでは、12F683の割り込みに挑戦します。

割り込みとは・・・

 久しぶりの休日、機嫌良く電子工作に励んでいると、「ちょっとこれ手伝って」「こっちをお願い!」・・・もちろん、最優先で実行しなくてはなりません。ようやく落ち着くと、「これもやって欲しいんだけど」 どんなにはんだ付けに集中していても、呼ばれればいつでも最優先です。

 メインに動いているプログラムに対してなんらかのタイミングで別の処理を行うことを「割り込み」といいます。割り込み要求が入ると、メイン・プログラムに優先して実行されます。この割り込み処理があることで、PICの能力は飛躍的に向上していますが、一番わかりにくい部分であると思います。
 PICでもいくつかの割り込みが用意されています。ここでは、よく使うタイマ割り込みを使います。

続きを読む "12-4 割り込み" »

2008年6月 3日

12-5 割り込み ~その2~

 課題4でPIC12F683の割り込みプログラミングを説明しました。この課題では250msの間隔を100msに変更しましょう。

割り込み計算

  set_timer1(初期値);

 この初期値の数値で割り込み時間を変えることができます。

初期値をxとして、一次方程式を立てます。

  0.5*10^-6*8*(65535-x+1)=100ms


続きを読む "12-5 割り込み ~その2~" »

2008年6月11日

12-6 A-Dコンバータと割り込み

 課題5までにPIC12F683のA-Dコンバータとタイマ割り込みの使い方を学習しました。この二つを組み合わせて使いましょう。

■課題6


ex6_tx2_web.jpg

続きを読む "12-6 A-Dコンバータと割り込み" »

2008年6月18日

12-7 A-Dコンバータと割り込み ~その2~

 課題6では、スロットル方向(縦)をA-Dコンバータで読み込みました。この課題ではエルロン方向(横)を読み取り、割り込みによるLEDの点滅と連動します。

ex7_tx2_web.jpg

続きを読む "12-7 A-Dコンバータと割り込み ~その2~" »

2008年6月30日

12-8 A-Dコンバータと割り込み ~その3~

 A-Dコンバータと割り込みを使った応用課題です。ジョイスティックをスロットルHiで1/2以上、エルロンスティック左1/4以下または右1/4以上で、割り込みを許可しLEDを100msで点滅するプログラムを完成してください。

ex8_tx2_web.jpg1

続きを読む "12-8 A-Dコンバータと割り込み ~その3~" »

2008年7月 4日

12-9 A-Dコンバータと割り込み ~その4、電圧測定~

課題 9

 電源電圧が7V以下になるとLEDが100msで点滅を開始するプログラムを作りましょう。

 TX2-006Pは006P9V角電池に直結されている半固定抵抗を一つ装備しています。この半固定抵抗を利用して、電池の電圧を測定し、電圧低下アラームの役割をさせましょう。

ex9_tx2_web.jpg

1

続きを読む "12-9 A-Dコンバータと割り込み ~その4、電圧測定~" »

2008年7月14日

12-10 赤外線送信 ~その1~

 いよいよ、赤外線送信プログラムに入ります。まず、スロットル方向のA-Dデータを送信しましょう。

ex10_tx2_web.jpg

続きを読む "12-10 赤外線送信 ~その1~" »

2008年7月25日

12-11時間目 赤外線送信 ~その2~

課題11

スロットル方向の赤外線送信は完成しましたか? 続けて、エルロン方向の送信を可能にしましょう。

ex11_tx2_web.jpg

続きを読む "12-11時間目 赤外線送信 ~その2~" »

2008年7月30日

12-12 赤外線2ch送信機 TX2-006Pプログラミングの完成!

課題12

 スロットル、エルロン方向の赤外線送信は完成しましたか?。最後に電池電圧が7Vを切るとステータスLEDが100msまたは250msの間隔で点滅し、電池交換であることを教えてくれる電源インジケータ機能を実装し、完成します。

ex12_tx2_web.jpg


続きを読む "12-12 赤外線2ch送信機 TX2-006Pプログラミングの完成!" »

カレンダ

2008年9月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

おすすめ書籍

会社案内
情報セキュリティおよび個人情報の取り扱いについて

コメントとトラックバックは、spamを予防するために、編集担当が公開の作業をするまで非公開になっています。
コメントはそれぞれ投稿した人のものです。

About 第12章赤外線2ch送信機TX2-006Pプログラミング

ブログ「PICとインドア・プレーンの世界」のカテゴリ「第12章赤外線2ch送信機TX2-006Pプログラミング」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリは第11章 赤外線2ch送信機TX2-006P TypeMの設計製作です。

次のカテゴリは第13章 赤外線2ch受信機RX2-Tの設計製作です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 4.1