<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>PICとインドア・プレーンの世界</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/" />
   <link rel="self" type="application/atom+xml" href="http://www.eleki-jack.com/indoorplane/atom.xml" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3</id>
   <updated>2008-10-01T02:56:51Z</updated>
   <subtitle>PICとインドア・プレーンの世界</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.1</generator>


<entry>
   <title>13-9　赤外線2ch受信機RX2-Tの組み立て　～その3～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/10/1392chrx2t3.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1678</id>
   
   <published>2008-10-01T02:10:35Z</published>
   <updated>2008-10-01T02:56:51Z</updated>
   
   <summary>■モータ確認用LEDユニットの製作 　モータを接続しなくても実験が楽しめるように...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2526" label="受信機" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="175" label="赤外線" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>■<b>モータ確認用LEDユニットの製作</b></p>
<p>　モータを接続しなくても実験が楽しめるように、LEDユニットを製作します。</p>
<p>　LEDは抵抗が接続されていない側がアノード(A、+)です。抵抗を接続した側を熱収縮チューブで絶縁します。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/12_led_mt.jpg"><img alt="12_led_mt.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/12_led_mt-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
<br />]]>
      <![CDATA[<p>■<b>マグネット・アクチュエータ確認用LEDユニット</b></p>
<p>　回路図を参考にしながら、2Pコネクタに配線します。基板などは使用せずに部品を直接はんだ付けして組み立ててください(空中配線といいます。)。</p><p>　二つ
のLEDのアノード(A、+)が内側(ピン側)に向き合う形になるように配線します。反対面も同じ配線になります。抵抗を接続した側を熱収縮チューブで絶
縁します。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/13_led_mga.jpg"><img alt="13_led_mga.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/13_led_mga-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>



<p>■<b>RX2-TとLED確認ユニットの完成</b></p>
<p>　完成した赤外線2ch受信機RX2-Tと確認用LEDユニットです。マグネット・アクチュエータ用2PソケットとFET2SK2961は、撮影用に基板と平行に取り付けてあります。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/15_kansei.jpg"><img alt="15_kansei.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/15_kansei-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>動作確認</b></p><p>　RX2-T動作確認用HEXファイルは、こちらよりダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2.lzh">rx2.lzh</a>】</p>
<p>(1) RX2-T動作確認用HEXファイルをダウンロードして、PIC12F683に転送します。<br />(2) 
赤外線2ch送信機TX2-006Pの電源を入れます。<br />(3) RX2-Tにバッテリを接続し、電源をONにします。</p>
<p>(4) TX2-006Pのスティックをスロットル方向に徐々に上げるとモータ確認用LEDが徐々に明るくなります。<br />(5) TX2-006Pのスティックを左右のエルロン方向に倒すと、対応する側のマグネット・アクチュエータ確認用LEDが徐々に明るくなります。</p>
<p>　以上の動作が確認できれば、RX2-Tはハード・ソフト共に正常動作しています。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/17_sousin.jpg"><img alt="17_sousin.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/17_sousin-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■ <b>うまく動作しない場合</b></p>
<p>・LEDが全く点灯しない・・・基板パターンの彫り込み不足によるショートをチェックしてください。</p>
<p>・対応しないLEDが点灯する・・・スロットルだけを上げているのに、エルロンLEDがちらちらと点滅する場合は、モータ制御PWMのノイズによる誤動作です。下記の写真を参考にして、2SK2961のゲート：Gとグランド間に0.1μFのコンデンサを追加してください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/16_kiban_ura.jpg"><img alt="16_kiban_ura.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/16_kiban_ura-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<p>　以上で赤外線2ch受信機RX2-Tの製作は終了です。お疲れ様でした。</p><div align="right">長野県飯田工業高校　竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>13-8　赤外線2ch受信機RX2-Tの組み立て　～その2～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/09/382chrx2t2.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1679</id>
   
   <published>2008-09-26T02:13:28Z</published>
   <updated>2008-09-26T04:17:21Z</updated>
   
   <summary>■3Pスライド・スイッチ 　スライド・スイッチは、短列3ピン、両列6ピンのどちら...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2526" label="受信機" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="175" label="赤外線" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>■<b>3Pスライド・スイッチ</b></p>
<p>　スライド・スイッチは、短列3ピン、両列6ピンのどちらでもかまいません。6ピンのものは片側がはみ出すので、基板側に折り曲げるか、切り取ります。</p><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/6_sw.jpg"><img alt="6_sw.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/6_sw-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
<br />]]>
      <![CDATA[<p>■<b>ハウジング</b></p>
<p>　小型コネクタ・ハウジングは、穴が開いている面を下側にして取り付けます。写真の右側が(+)です。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/7_zhr_torituke.jpg"><img alt="7_zhr_torituke.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/7_zhr_torituke-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>コンデンサ</b></p>
<p>　47μFの電解コンデンサは極性があります。左側に(+)がくるように取り付けてください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/8_47u.jpg"><img alt="8_47u.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/8_47u-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>トップベース</b></p>
<p>　別項を参考に裸線を取り付けた小型コネクタ用トップベースを取り付けます。穴面が表面を向くように取り付けます。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/9_top_base.jpg"><img alt="9_top_base.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/9_top_base-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>8ピン・ソケットとFET</b></p>
<p>　8ピン・ソケットを、切り欠けが上になるように取り付けます。FET2SK2961は印刷面が写真下を向くように取り付けてください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/10_8p.jpg"><img alt="10_8p.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/10_8p-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>確認</b></p>
<p>(1) 別項で加工を終えたリチウム・ポリマ・バッテリをハウジングに接続します。<br />(2) 8ピン・ソケットにテスタを当てて、電圧を測定し、4V程度の出力(=バッテリ電圧)を確認できればひとまず成功です。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/14_check.jpg"><img alt="14_check.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/14_check-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>■<b>基板の完成</b></p>
<p>　以上で、RX2-Tは完成です。誤配線線がないかどうか、改めて確認してください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/11_pic.jpg"><img alt="11_pic.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/11_pic-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

次回は、動作確認用LEDユニットを製作します。<br /><br /><div align="right">長野県飯田工業高校　竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>13-7　赤外線2ch受信機RX2-Tの組み立て　～その1～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/09/1372chrx2t1.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1677</id>
   
   <published>2008-09-12T02:04:19Z</published>
   <updated>2008-09-12T04:34:48Z</updated>
   
   <summary>　基板製作と部品の確認は終わりましたか?。RX2-Tの組み立てに入ります。組み立...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>　基板製作と部品の確認は終わりましたか?。RX2-Tの組み立てに入ります。組み立てはすべてはんだ付けにより行います。小さな基板なので、ゆっくりと確実に進めてください。</p>


<p>■<b>ジャンパ線の取り付け</b></p>
<p>　まず最初に、ジャンパ線を1本取り付けます。写真のようにL字型に曲げてください。ほかの部品の足に接触しないようにしてください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/1_jumper.jpg"><img alt="1_jumper.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/1_jumper-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br />]]>
      <![CDATA[<p>■<b>セラミック・コンデンサの取り付け</b></p>
<p>　セラミック・コンデンサ0.1μFを三つ取り付けます。極性はないのでどちら向きに取り付けてもかまいません。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/2_cermic.jpg"><img alt="2_cermic.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/2_cermic-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<p>　RX2-Tは小形の基板なので、写真のようなサポート・アームを併用するとスムーズに組み立てることができます(1000円ほどで購入できる基台・ルーペ付きセットのアーム部分を取り外して使用している)。</p><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/09/12/3_arm.jpg"><img alt="3_arm.jpg" src="http://www.eleki-jack.com/indoorplane/assets_c/2008/09/3_arm-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br />■<b>コネクタの取り付け</b></p>
<p>　赤外線受光素子用に3Pコネクタを取り付けます。マグネット・アクチュエータ用に2Pコネクタを取り付けます。コネクタはなくても基板を完成することができますが、基板の取り扱いが楽になるので、ぜひ、取り付けてください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/5_2p.jpg"><img alt="5_2p.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/5_2p-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><p>　次回で、基板は完成します。</p><div align="right">長野県飯田工業高校　竹内浩一<br /></div><div><br /></div>]]>
   </content>
</entry>

<entry>
   <title>13-6 RX2-T部品の確認</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/09/136_rx2t.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1676</id>
   
   <published>2008-09-07T22:53:22Z</published>
   <updated>2008-09-08T01:15:14Z</updated>
   
   <summary>■部品の確認 　基板が完成後、すべての部品を確認します。 ...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2165" label="PIC12F683" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<h3>■部品の確認</h3>
<p>　基板が完成後、すべての部品を確認します。</p>
]]>
      <![CDATA[<br />赤外線2ch受信機RX2-T　全部品<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/10_buhin_all.jpg"><img alt="10_buhin_all.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/10_buhin_all-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
<hr>

<p>■<b>赤外線受光部</b></p>
<p>　低電圧対応赤外線受光素子、47μF電解コンデンサ、3Pソケット(省略可)</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/11_buhin_ir.jpg"><img alt="11_buhin_ir.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/11_buhin_ir-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>■<b>FET</b></p>
<p>FET2SK2961、0.1μFコンデンサ</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/12_buhin_fet.jpg"><img alt="12_buhin_fet.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/12_buhin_fet-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>■<b>電源部</b></p>
<p>　小型3Pスライド・スイッチ、2Pソケット、小型2Pハウジング、小型2Pトップ・ベース(コンタクト含む)</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/13_buhin_dengen.jpg"><img alt="13_buhin_dengen.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/13_buhin_dengen-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>■<b>PIC周辺</b></p>
<p>　PIC12F683、8Pソケット、0.1μFコンデンサ</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/14_buhin_pic.jpg"><img alt="14_buhin_pic.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/14_buhin_pic-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>　小さな部品なので、紛失しないように注意してください。次回は組み立てに入ります。</p><div align="right">長野県飯田工業高校　竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>13-5 RX2-T基板の製作</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/09/135_rx2t.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1675</id>
   
   <published>2008-08-31T22:37:36Z</published>
   <updated>2008-09-01T06:45:31Z</updated>
   
   <summary>基板の製作 手彫り法により赤外線2ch受信機RX2-Tの基板を製作しましょう。 ...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1718" label="手彫り" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<h3>基板の製作</h3>
<p>手彫り法により赤外線2ch受信機RX2-Tの基板を製作しましょう。</p>


<h4>■ <strong>手彫り用基板パターンの印刷</strong></h4>
<p>　PCBEメニューより、</p>
<blockquote>
<p>ファイル→版下印刷・反転チェック→レイヤー→2,3,5,8にチェック→印刷</p></blockquote>
<p>を実行すると、手彫りパターンがプリンタから出力されます。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/1_kiban.jpg"><img alt="1_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/1_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<br />]]>
      <![CDATA[<p>■ <b>基板への貼り付け</b></p>
<p>　基板の銅箔面にスティック糊で貼り付け、基板を切断します。切断後、0.9mm程度のドリルで穴を開けます。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/2_kiban.jpg"><img alt="2_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/2_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>■<b>カッターによる切り込み</b></p>
<p>　新しい刃を出したカッターを使い、手彫り線に沿って切り込みを入れます。</p>
<p><br /></p>
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/3_kiban.jpg"><img alt="3_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/3_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
<p>　切り込みが完了しました。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/4_kiban.jpg"><img alt="4_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/4_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<hr>

<p>■<b>手彫り</b></p>
<p>　アクリル・カッターを使い、彫り込みます。角や交差する部分はしっかりと彫り込んでください。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/5_kiban.jpg"><img alt="5_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/5_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>


<hr>

<p>■ <b>洗浄と研磨</b></p>
<p>　手彫り完了後、真鍮ブラシなどで、銅箔面をぴかぴかになるまで磨きます。研磨後、中性洗剤でよく洗います。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/6_kiban.jpg"><img alt="6_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/6_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<hr>

<p>■<b>フラックス</b></p>
<p>　30cmホド離して、フラックスを塗布すれば基板は完成です。べたつかなくなるまで乾燥します。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/7_kiban.jpg"><img alt="7_kiban.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/7_kiban-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
■<b>基板の完成</b></p>
<p>　乾燥後、表面に部品極性などを鉛筆でシルク印刷代わりに記入すれば基板の完成です。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/8_kiban_kansei.jpg"><img alt="8_kiban_kansei.jpg" src="http://www.eleki-jack.com/indoorplane/2008/06/08/8_kiban_kansei-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><p>次回は、部品を確認します。</p><div align="right">長野県飯田工業高校　竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>13-4 赤外線2ch受信機RX2-Tの基板設計</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/08/134_2chrx2t.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1674</id>
   
   <published>2008-08-25T22:31:02Z</published>
   <updated>2008-08-26T01:54:48Z</updated>
   
   <summary>■基板設計 　基板はPCBE CADを使って制作します。 　実験基板なので、ゆっ...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<h4>■基板設計</h4>
<p>　基板はPCBE CADを使って制作します。</p>

<p>　実験基板なので、ゆったりとした配置にしました。PICの抜き差しを考慮して、電源スイッチを配置しました。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kiban.gif"><img alt="rx2-t_kiban.gif" src="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kiban-thumb-400x426.gif" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="426" width="400" /></a></span>
<p>・赤外線2ch受信機RX2-Tの回路図と基板パターンはこちらよりダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/06/08/28k0413tx2-t_kiban_kairozu.lzh">28k0413tx2-t_kiban_kairozu.lzh</a>】</p>
<p>　次回より、基板を製作します。</p><p align="right">長野県飯田工業高校　竹内浩一<br /></p>]]>
      
   </content>
</entry>

<entry>
   <title>13-3 赤外線2ch受信機RX2-Tの部品一覧</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/08/133_2chrx2t.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1673</id>
   
   <published>2008-08-14T22:28:37Z</published>
   <updated>2008-08-15T00:36:08Z</updated>
   
   <summary>　前回掲載した赤外線2ch受信機RX2-Tの回路図の部品を一覧です。■ 部品一覧...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>　前回掲載した赤外線2ch受信機RX2-Tの回路図の部品を一覧です。</p><p><br /></p><p>■ <b>部品一覧</b></p>
<table border="1">
<tbody>
<tr>
<td>使用個所</td>
<td width="267">部品名</td>
<td width="118">型番</td>
<td>個数</td></tr>
<tr>
<td rowspan="3">PIC周辺</td>
<td width="267">PIC</td>
<td width="118">12F683</td>
<td>1</td></tr>
<tr>
<td width="267">8ピン・ソケット</td>
<td width="118">丸ピン・タイプ</td>
<td>1</td></tr>
<tr>
<td width="267">セラミック・コンデンサ</td>
<td width="118">0.1μF</td>
<td>1</td></tr>
<tr>
<td rowspan="3">赤外線受光部</td>
<td width="267">赤外線受光素子(3V対応)</td>
<td width="118">NJL21V-380A</td>
<td>1</td></tr>
<tr>
<td width="267">電解コンデンサ</td>
<td width="118">47μF<br />(耐圧6．3V以上</td>
<td>1</td></tr>
<tr>
<td>3Pソケット</td>
<td>丸ピン・タイプ</td>
<td>1</td></tr>
<tr>
<td rowspan="3">電源</td>
<td width="267">3Pスイッチ</td>
<td width="118">2P以上可</td>
<td>1</td></tr>
<tr>
<td width="267">セラミック・コンデンサ</td>
<td width="118">0.1μF</td>
<td>1</td></tr>
<tr>
<td width="267">リポ1セル3．7VまたはNiMH・NiCD×4</td>
<td width="118"><br /></td>
<td>1</td></tr>
<tr>
<td rowspan="2">マグネット・アクチュエータ部</td>
<td width="267">セラミック・コンデンサ</td>
<td width="118">0.1μF</td>
<td>1</td></tr>
<tr>
<td>2Pコネクタ</td>
<td><br /></td>
<td><br /></td></tr>
<tr>
<td rowspan="2">モータ部</td>
<td width="267">セラミック・コンデンサ</td>
<td width="118">0.1μF</td>
<td>1</td></tr>
<tr>
<td>FET</td>
<td>2SK2961</td>
<td>1</td></tr>
<tr>
<td rowspan="3">小型コネクタ</td>
<td width="267">基板対電線圧着コネクタハウジング</td>
<td width="118">ZHR-2</td>
<td>2</td></tr>
<tr>
<td width="267">連鎖状コンタクト</td>
<td width="118">SZH-002T-P0.5</td>
<td>2</td></tr>
<tr>
<td width="267">トップ・ベース</td>
<td width="118">B2B-ZR-3.4(LF)(SN)</td>
<td>4</td></tr>
<tr>
<td rowspan="2">LEDユニット</td>
<td width="267">LED</td>
<td width="118"><br /></td>
<td>3</td></tr>
<tr>
<td width="267">抵抗</td>
<td width="118">1kΩ</td>
<td>3</td></tr></tbody></table>
<p><br /></p><p>　3P・2Pコネクタは秋月電子にて20P連鎖で販売されている製品を必要ピン数に切り離したものです。<br /></p><p>　次回は基板を設計します。</p><br /><div align="right">長野県飯田工業高校　竹内浩一<br /></div>]]>
      
   </content>
</entry>

<entry>
   <title>13-2 赤外線2ch受信機RX2-Tの回路設計</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/08/132_2chrx2t.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1672</id>
   
   <published>2008-08-11T22:25:46Z</published>
   <updated>2008-08-12T03:47:53Z</updated>
   
   <summary>■回路設計 　赤外線2ch受信機RX2-Tは、インドアプレーンに搭載する赤外線受...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<h4>■回路設計</h4>
<p>　赤外線2ch受信機RX2-Tは、インドアプレーンに搭載する赤外線受信機の製作のコツや、プログラミングを楽しむために設計しました。簡単な回路になっています。仕様は以下のとおりです。</p>
<p>【仕様】</p>
<blockquote><p>名称：赤外線2ch受信機RX2-T<br />PIC：PIC12F683(内蔵8MHzクロック使用)<br />電源：リチウム・ポリマ・バッテリ1セル3．7V、NicdまたはNiMH×3または4本<br />制御対象：100Ωマグネット・アクチュエータ×1、小型直流モータ×1</p></blockquote>
<br />]]>
      <![CDATA[<p>　マグネット・アクチュエータやモータがなくても受信機の動作が確認できるように、マグネット・アクチュエータ確認用LEDユニットとモータ動作確認用LEDユニットも同時に製作します。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kairozu.gif"><img alt="rx2-t_kairozu.gif" src="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kairozu-thumb-400x264.gif" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="264" width="400" /></a></span>次回は部品を確認します。<br /><br /><div align="right">長野県飯田工業高校　竹内浩一<br /></div>]]>
   </content>
</entry>

<entry>
   <title>13-1 赤外線2ch受信機RX2-Tの紹介</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/08/131_2chrx2t12.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1671</id>
   
   <published>2008-08-04T22:09:28Z</published>
   <updated>2008-08-05T04:29:46Z</updated>
   
   <summary> 第13章 赤外線2ch受信機RX2-Tの設計製作 　赤外線2ch送信機TX2-...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第13章 赤外線2ch受信機RX2-Tの設計製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2526" label="受信機" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="175" label="赤外線" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[
<h2>第13章 赤外線2ch受信機RX2-Tの設計製作</h2><br />

<p>　赤外線2ch送信機TX2-006P TypeMは無事に完成しましたか?</p>
<p>　これで、あなたはインドアプレーンを飛ばすために必要な赤外線送信機を手に入れることができました。次は、赤外線2ch受信機に挑戦しましょう。</p>]]>
      <![CDATA[<h4>■<b><font style="font-size: 0.8em;">赤外線2ch受信機 RX2-Tの紹介</font></b></h4>
<p>　総重量10g程度のインドアプレーンに搭載する赤外線受信機は、1g程度の重さで仕上げる必要があります。</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2_1g.JPG"><img alt="rx2_1g.JPG" src="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2_1g-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>

<p>　この重量を目指すには、DIPではなくフラット・パッケージ版のPICを直接基板にはんだ付けして取り付ける必要があります。プログラムを制作し、一発勝負で書き込むことになるわけです。</p>
<p>　それでは赤外線受信機のプログラミングを楽しむことができません。そこで、機体に搭載する受信機と同じ回路をもつ赤外線2ch受信機RX2-T(Trainer)を製作しましょう。</p>
<p align="center">製作する赤外線2ch受信機 RX2-T</p>
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kansei.JPG"><img alt="rx2-t_kansei.JPG" src="http://www.eleki-jack.com/indoorplane/2008/06/08/rx2-t_kansei-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
<p>　このRX2-Tは、大きめの基板にゆったりと部品を配置し、PICはソケットを使用して抜き差しすることができます。大きめの基板といっても縦横3cm程なので、小型基板製作に慣れることができるでしょう。</p>
<p>　ソケット類にはインドアプレーンに使用するものと同じ軽量タイプを使用したので、扱い方を試すことができます。</p>
<p>　さあ、インドアプレーンへの第一歩を踏み出しましょう。</p><div align="right">長野県飯田工業高校 竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>12-12 赤外線2ch送信機 TX2-006Pプログラミングの完成!</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/07/1212_2ch_tx2006p.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1473</id>
   
   <published>2008-07-30T02:39:36Z</published>
   <updated>2008-07-30T02:31:18Z</updated>
   
   <summary>■ 課題12 　スロットル、エルロン方向の赤外線送信は完成しましたか?。最後に電...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>■ <b>課題12</b></p>
<p>　スロットル、エルロン方向の赤外線送信は完成しましたか?。最後に電池電圧が7Vを切るとステータスLEDが100msまたは250msの間隔で点滅し、電池交換であることを教えてくれる電源インジケータ機能を実装し、完成します。</p><span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex12_tx2_web.jpg"><img alt="ex12_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex12_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br /><p><br />
</p>]]>
      <![CDATA[<p>■ <b>考え方</b></p>
<p>　9時間目で完成させた電源電圧監視プログラムをそのまま組み込むことにより、機能を実現します。</p><pre>set_adc_channel(2);<br />    delay_us(20);<br />    vdd_adc=read_adc();</pre><p>　channel(2)より電源電圧をA-Dコンバータで読み取ります。</p>
<p>　alart()関数を使い、割り込みによるLEDの点滅を実現します。</p><pre>alart()<br />{<br />  set_timer1(3036);//3036・・250ms、40536・・100ms<br />  led_sts=0x01-led_sts;<br />  LED=led_sts;<br />}</pre>
<p>　半固定抵抗の目盛りを真ん中に合わせた場合、電源電圧が7Vになると、半固定抵抗からは3．5Vが出力されます。電源電圧が低下しても、PIC12F683の電源電圧は安定化されているために5Vが供給されます。したがって、A-Dコンバータの出力は、</p>
<p>　　　3.5V/5V*1023=716</p>
<p>となります。</p>
<p>　　　vdd_adc &lt; 716</p>
<p>の条件でLEDの点滅割り込みを許可すれば、7V未満でLEDを点滅できるようになります。</p>
<hr>
<pre>// 赤外線2ch送信機 課題12<br />//　　ex12_006p.c PIC12F683用<br />//  総合プログラミング<br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10ビットで使用<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5<br /> #bit IROUT=GP.5<br /> #bit LED=GP.4<br /> #bit SW=GP.3<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />long th_adc,al_adc,vdd_adc;<br />int led_sts;<br /><br />// 38kHz変調出力関数<br />// 13μs On、13μs  OFFを19回繰り返して500μs のONを作る<br />// その後、VRのA-Dコンバータの値により、OFFタイム設定する。<br />//0・・1.000ms、512・・1.522ms、1024・・2.035ms<br />void ir_mod(long pulse){<br />  int dummy;<br />  long i;<br /><br />  disable_interrupts(INT_TIMER1);//割り込み禁止<br />  for(i=0;i&lt;19;i++){//38kHz変調になるように調整済み<br />      IROUT=ON;<br />      delay_us(13);<br />      IROUT=OFF;<br />      delay_us(6);<br />  }<br />  IROUT=OFF;<br />  delay_us(325);<br />  pulse=pulse/10;<br />  for(i=0;i&lt;pulse;i++){//1ループ10μs に調整済み<br />    dummy=ON;<br />    delay_us(2);<br />  }<br />  enable_interrupts(INT_TIMER1);//割り込み許可<br />}<br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);<br />    delay_us(20);<br />     （その１） ;<br />  set_adc_channel(1);<br />    delay_us(20);<br />    （その２） ;<br />  set_adc_channel(2);<br />    delay_us(20);<br />     （その３） ;<br />}<br /><br />#int_timer1//7V以下でLED点滅開始<br />alart()//100ms、250msごとに割り込みを発生する<br />{<br />  set_timer1(（その４） );<br />  led_sts=0x01-led_sts;<br />  LED=led_sts;<br />}<br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);<br />  <br />  setup_adc_ports(sAN0 | sAN1 | sAN2 | VSS_VDD);   //A-Dコンバータ使用宣言<br />  setup_adc(ADC_CLOCK_DIV_32);              //-ADコンバータのクロック<br />  setup_oscillator(OSC_8MHz);<br /><br />  setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);//250msごとの割り込み<br />  set_timer1( （その４）);//timer1初期値<br />  <br />  //enable_interrupts(INT_TIMER1);//割り込み許可<br />  enable_interrupts(GLOBAL);//割り込み全体許可<br /><br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br /><br />  while(1){<br />    adc_in();<br /><br />    //1chエルロン<br />    ir_mod( （その５） );<br /><br />    //2chエレベータ(なし)<br />    ir_mod(512);<br /><br />    //3chスロットル<br />    ir_mod( （その６） );<br /><br />    //4chラダー(なし)<br />    ir_mod(512);<br /><br />    //チャンネル・エンド<br />    ir_mod(512);<br /><br />    // 電圧チェック・・7V以下でLEDが点滅するように10k半固定抵抗を調整すること。目盛りが中立になるように小変更<br />    if( （その７） ){// 3.5V/5V*1023=716<br />      LED=OFF;<br />       （その８） ;//割り込み許可<br />    }<br />    else{<br />      （その９） ;<br />      LED=ON;<br />    }<br />    delay_ms(10);<br />  }<br />}</pre>
<hr>
<p>■正解</p>
<p>（その１）th_adc=read_adc() （その２）al_adc=read_adc() （その３）vdd_adc=read_adc() （その４）3036　（その５）al_adc　（その６）th_adc （その７）vdd_adc &lt; 716 （その８）enable_interrupts(INT_TIMER1) 
（その９）disable_interrupts(INT_TIMER1)</p><p>・課題12のC言語ソース・ファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex12_006p.lzh">ex12_006p.lzh</a>】</p>

<hr>

<p>　赤外線送信の確認は別書の赤外線受信ボードか、次に製作する赤外線2ch受信機トレーニング・ボードで確認してください。以上で赤外線2ch送信機 
TX2-006Pのプログラミングは完成です。</p>
<p align="right">長野県飯田工業高校　竹内浩一</p>]]>
   </content>
</entry>

<entry>
   <title>12-11時間目 赤外線送信 ～その2～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/07/1211_2.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1472</id>
   
   <published>2008-07-25T03:31:33Z</published>
   <updated>2008-07-25T03:59:42Z</updated>
   
   <summary>■課題11 スロットル方向の赤外線送信は完成しましたか?　続けて、エルロン方向の...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1418" label="エルロン" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>■<b>課題11</b></p>
<p>スロットル方向の赤外線送信は完成しましたか?　続けて、エルロン方向の送信を可能にしましょう。</p><span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex11_tx2_web.jpg"><img alt="ex11_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex11_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>
]]>
      <![CDATA[<p>■ <b>考え方</b></p>
<p>　スロットル方向と同じ考え方で大丈夫です。</p><pre>set_adc_channel(1);<br />    delay_us(20);<br />    al_adc=read_adc();</pre><p>　エルロン方向はchanner(1)により読み出します。結果はal_adcに入ります。</p><br /><pre>ir_mod(al_adc);</pre>
<p>　ir_mod()関数により送信します。</p>
<p>　以上でスロットル・エルロンの送信可能な2ch送信機が完成します。</p>
<hr>
<pre>// 赤外線2ch送信機<br />//課題11　スロットル・エルロンの赤外線送信する<br />//　　ex11_tx006p.c PIC12F683用<br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10bitで使用<br />//10bit=2^10=0～1023<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5//GPポート使用<br /> #bit IROUT=GP.5//赤外線LED<br /> #bit LED=GP.4//LED<br /> #bit SW=GP.3//ジョイスティック付属スイッチ<br /> <br />//　A-Dコンバータ割り当て<br />//ch0：スロットル<br />//ch1：エルロン<br />//ch2:10kΩ半固定抵抗<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />long th_adc,al_adc,vdd_adc;<br />int led_sts;<br /><br />// 38kHz変調出力関数<br />// 13μs On、13μs OFFを19回繰り返して500μsのONを作る<br />// その後、VRのA-Dコンバータの値により、OFFタイム設定する。<br />//0・・1.000ms、512・・1.522ms、1024・・2.035ms<br />void ir_mod(long pulse){<br />  int dummy;<br />  long i;<br /><br />  disable_interrupts(INT_TIMER1);//割り込み禁止<br />  for( （その１） ){//38kHz変調になるように調整済み<br />       （その２）  ;<br />      delay_us(13);<br />       （その３）  ;<br />      delay_us(6);<br />  }<br />  IROUT=OFF;<br />  delay_us(325);<br />  pulse=pulse/10;<br />  for(i=0;i&lt;pulse;i++){//1ループ10μsに調整済み<br />    dummy=ON;<br />    delay_us(2);<br />  }<br />  enable_interrupts(INT_TIMER1);//割り込み許可<br />}<br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);<br />    delay_us(20);<br />     （その４） ;<br />  set_adc_channel(1);<br />    delay_us(20);<br />     （その５） ;<br />  set_adc_channel(2);<br />    delay_us(20);<br />    vdd_adc=read_adc();<br />}<br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);//GP0～GP4入力、GP5出力<br />  <br />  setup_adc_ports(sAN0 | sAN1 | sAN2 | VSS_VDD);   //A-Dコンバータ使用宣言<br />  setup_adc(ADC_CLOCK_DIV_32);              //A-Dコンバータのクロック<br />  setup_oscillator(OSC_8MHz);<br /><br />  setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);//250msごとの割り込み<br />  set_timer1(3036);//timer1初期値<br />  <br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br />  LED=ON;<br /><br />  while(1){<br />    adc_in();<br /><br />    //1chエルロン<br />    ir_mod( （その６）  );<br /><br />    //2chエレベータ(なし)<br />    ir_mod(512);<br /><br />    //3chスロットル<br />    ir_mod( （その７）  );<br /><br />    //4chラダー(なし)<br />    ir_mod(512);<br /><br />    //チャンネル・エンド<br />    ir_mod(512);<br /><br />    delay_ms(10);//送信間隔<br />  }<br />}</pre>
<hr>

<p>■<b>正解</b></p>
<pre>（その１） i=0;i&lt;19;i++ （その２）IROUT=ON （その３） IROUT=OFF <br />（その４） th_adc=read_adc()<br />（その５）al_adc=read_adc() （その６） al_adc （その７） th_adc</pre>
<p>・課題11のC言語ソース・ファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex11_006p.lzh">ex11_006p.lzh</a> />】</p>
<p><br /></p>
<hr>

<p>　次回は、電源電圧監視プログラムを実装し、完成します。</p>
<p align="right">長野県飯田工業高校　竹内浩一</p>
]]>
   </content>
</entry>

<entry>
   <title>12-10　赤外線送信 ～その1～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/07/1210_1.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1471</id>
   
   <published>2008-07-13T23:37:28Z</published>
   <updated>2008-07-14T01:30:55Z</updated>
   
   <summary>　いよいよ、赤外線送信プログラムに入ります。まず、スロットル方向のA-Dデータを...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1420" label="スロットル" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="175" label="赤外線" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[　いよいよ、赤外線送信プログラムに入ります。まず、スロットル方向のA-Dデータを送信しましょう。<br /><br />
<span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex10_tx2_web.jpg"><img alt="ex10_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex10_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br />]]>
      <![CDATA[<p>■<b> 課題10</b></p>
<p>　スロットル・スティック=縦方向のA-Dコンバータの値を読み取り、38kHzに変調した赤外線を送信します。後日製作予定の赤外線2ch受信機・赤外線受信ボードなどで確認することができます。</p><span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/28_ir.JPG"><img alt="28_ir.JPG" src="http://www.eleki-jack.com/indoorplane/2008/04/12/28_ir-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 2px; text-align: center; display: block;" height="300" width="400" /></a></span><div align="center">LEDを正面から見た様子<br /></div><br />

<p>■ <b>読み取り</b></p>
<p>　A-Dコンバータよりスロットル方向のスティック位置を読み取ります。</p><pre>set_adc_channel(0);<br />    delay_us(20);<br />    th_adc=read_adc();</pre>　このth_adcの値により、ir_mod()関数が赤外線変調により送信します。
<hr>

<p>■　<b>赤外線変調</b></p>
<pre>void ir_mod(long pulse){}</pre>
<p>　38kHz変調出力関数です。13μs On、13μs 
OFFを19回繰り返して500μsのONを作ります。VRのADコンバータの値により、OFFタイム設定します。ON+OFFの合計時間により受信機側で制御を行います。</p>
<pre>　　　0・・1.000ms、512・・1.522ms、1024・・2.035ms</pre>
<p>　ON+OFFの合計時間により制御する方法をPPMといいます。</p>
<hr>

<p>■　<b>課題10</b></p>
<pre>// 赤外線2ch送信機 課題10<br />//　スロットルの赤外線送信する<br />//　　ex10_tx006p.c PIC12F683用<br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10bitで使用<br />//10bit=2^10=0～1023<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5//GPポート使用<br /> #bit IROUT=GP.5//赤外線LED<br /> #bit LED=GP.4//LED<br /> #bit SW=GP.3//ジョイスティック付属スイッチ<br /> <br />//　A-Dコンバータ割り当て<br />//ch0：スロットル<br />//ch1：エルロン<br />//ch2:10kΩ半固定抵抗<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />long th_adc,al_adc,vdd_adc;<br />int led_sts;<br /><br />// 38kHz変調出力関数<br />// 13μS On、13μS OFFを19回繰り返して500μsのONを作る<br />// その後、VRのADコンバータの値により、OFFタイム設定する。<br />//0・・1.000ms、512・・1.522ms、1024・・2.035ms<br />void ir_mod(long pulse){<br />  int dummy;<br />  long i;<br /><br />  disable_interrupts(INT_TIMER1);//割り込み禁止<br />  for(i=0;i&lt;（その１）;i++){//38kHz変調になるように調整済み<br />      IROUT=（その２）;<br />      delay_us(13);<br />      IROUT=（その３）;<br />      delay_us(6);<br />  }<br />  IROUT=OFF;<br />  delay_us(325);<br />  pulse=pulse/10;<br />  for(i=0;i&lt;pulse;i++){//1ループ10μSに調整済み<br />    dummy=ON;<br />    delay_us(2);<br />  }<br />  enable_interrupts(INT_TIMER1);//割り込み許可<br />}<br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);<br />    delay_us(20);<br />    （その４）;<br />  set_adc_channel(1);<br />    delay_us(20);<br />    al_adc=read_adc();<br />  set_adc_channel(2);<br />    delay_us(20);<br />    vdd_adc=read_adc();<br />}<br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);//GP0～GP4入力、GP5出力<br />  <br />  setup_adc_ports(sAN0 | sAN1 | sAN2 | VSS_VDD);   //A-Dコンバータ使用宣言<br />  setup_adc(ADC_CLOCK_DIV_32);              //A-Dコンバータ・クロック<br />  setup_oscillator(OSC_8MHz);<br /><br />  setup_timer_1(T1_INTERNAL | T1_DIV_BY_8);//250msごとの割り込み<br />  set_timer1(3036);//timer1初期値<br />  <br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br />  LED=ON;<br /><br />  while(1){<br />    adc_in();<br /><br />    //1chエルロン<br />    ir_mod(512);<br /><br />    //2chエレベータ(なし)<br />    ir_mod(512);<br /><br />    //3chスロットル<br />    ir_mod(（その５）);<br /><br />    //4chラダー(なし)<br />    ir_mod(512);<br /><br />    //チャンネル・エンド<br />    ir_mod(512);<br /><br />    delay_ms(10);//送信間隔<br />  }<br />}</pre>
<hr>

<p>■<b>正解</b></p><pre>（その１）19 （その２）ON （その３）OFF （その４）th_adc=read_adc() （その５）th_adc</pre>
<p>・課題10のC言語ソース・ファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex10_006p.lzh">ex10_006p.lzh</a>】</p>

<hr>
　次回は、エルロン方向の送信を可能にします。<br /><div align="right">&nbsp;長野県飯田工業高校　竹内浩一</div>]]>
   </content>
</entry>

<entry>
   <title>12-9 A-Dコンバータと割り込み　～その4、電圧測定～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/07/129_ad4.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1470</id>
   
   <published>2008-07-03T23:30:29Z</published>
   <updated>2008-07-04T01:12:21Z</updated>
   
   <summary>■課題　9 　電源電圧が7V以下になるとLEDが100msで点滅を開始するプログ...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="391" label="A-Dコンバータ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1323" label="割り込み" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>■<b>課題　9</b></p>
<p>　電源電圧が7V以下になるとLEDが100msで点滅を開始するプログラムを作りましょう。</p>
<p>　TX2-006Pは006P9V角電池に直結されている半固定抵抗を一つ装備しています。この半固定抵抗を利用して、電池の電圧を測定し、電圧低下アラームの役割をさせましょう。</p>

<span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex9_tx2_web.jpg"><img alt="ex9_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex9_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br /><p><img alt="1" src="http://bc.geocities.yahoo.co.jp/serv?s=382116061&amp;t=1207992638" height="1" width="1" /></p>]]>
      <![CDATA[<p>■　<b>考え方</b></p>
<p>　半固定抵抗の両端は電池に直結されているので、通常は9Vが加わっています。7Vに低下したときに半固定抵抗の真ん中の端子より3．5Vを出力させるには目盛りを真ん中に合わせればOKです。</p>
<p>　このとき、A-Dコンバータの出力は、</p>
<p>　　　3．5/5*1023=716</p>
<p>電源電圧のA-Dコンバータ値はvdd_adcに入っています。</p>
<p>　　　vdd_adc &lt; 716</p>
<p>　この条件により、LED点滅用割り込みを開始させると「7V以下のときにLEDが点滅を開始する」という目的を達成することができます。</p>
<p>　電池の代わりに安定化電源を接続し、電圧を徐々に低下させると、LEDの点滅開始を確認できます。電源がない場合は、半固定抵抗を動かして、確認してください。確認後は、目盛りを真ん中に合わせてください。</p>

<pre>// 赤外線2ch送信機<br />//　　ex9_006p.c PIC12F683用<br />//  7V以下でLEDが100msで点滅を開始する。安定化電源が使えないときは、VRを回して確認する。<br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10bitで使用<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5<br /> #bit IROUT=GP.5<br /> #bit LED=GP.4<br /> #bit SW=GP.3<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />long th_adc,al_adc,vdd_adc;<br />int led_sts;<br /><br />#int_timer1//7V以下でLED点滅開始<br />alart()//100msごとに割り込みを発生する<br />{<br />  set_timer1( （その１） );<br />  led_sts= （その２） ;<br />  LED= （その３） ;<br />}<br /><br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);//スロットル・スティック読み込み<br />    delay_us(20);<br />    th_adc=read_adc();<br />  set_adc_channel(1);//エルロン・スティック読み込み<br />    delay_us(20);<br />    al_adc=read_adc();<br />  set_adc_channel(2);//10kΩボリューム読み込み<br />    delay_us(20);<br />     （その４） ;<br />}<br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);<br />  <br />  setup_adc_ports(sAN0 | sAN1 | sAN2 | VSS_VDD);   //A-Dコンバータ使用宣言<br />  setup_adc(ADC_CLOCK_DIV_32);              //A-Dコンバータ・クロック<br />  setup_oscillator(OSC_8MHz);<br /><br />  setup_timer_1( （その５） );//250msごとの割り込み<br />  set_timer1( （その６） );//timer1初期値<br />  <br />  //enable_interrupts(INT_TIMER1);//割り込み許可<br />  enable_interrupts(GLOBAL);//割り込み全体許可<br /><br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br /><br />  while(1){<br />    adc_in();<br /><br />    // 電圧チェック・・7V以下でLEDが点滅するように10k半固定抵抗を調整すること。目盛りが中立になるように小変更<br />    if(vdd_adc &lt; 716){// 3.5V/5V*1023=716<br />       （その７） ;//割り込み許可<br />    }<br />    else{<br />       （その８） ;<br />      LED=ON;<br />    }<br />  }<br />}</pre>
<hr>

<p>■正解</p>
<pre>（その１）40536 （その２）0x01-led_sts （その３）led_sts （その４）vdd_adc=read_adc( ) （その５）T1_INTERNAL | <br />T1_DIV_BY_8（その６）40536 （その７）enable_interrupts(INT_TIMER1) <br />（その８）disable_interrupts(INT_TIMER1)</pre>
<p>・課題9のC言語ソース・ファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex9_006p.lzh">ex9_006p.lzh</a>】</p>

<hr>

<p>次回より赤外線送信をプログラムします。</p>
<p align="right">長野県飯田工業高校　竹内浩一</p>]]>
   </content>
</entry>

<entry>
   <title>12-8 A-Dコンバータと割り込み　～その3～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/06/128_ad3.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1469</id>
   
   <published>2008-06-30T01:25:34Z</published>
   <updated>2008-06-30T01:00:51Z</updated>
   
   <summary>　A-Dコンバータと割り込みを使った応用課題です。ジョイスティックをスロットルH...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="391" label="A-Dコンバータ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2063" label="ジョイスティック" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1323" label="割り込み" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[　A-Dコンバータと割り込みを使った応用課題です。ジョイスティックをスロットルHiで1/2以上、エルロンスティック左1/4以下または右1/4以上で、割り込みを許可しLEDを100msで点滅するプログラムを完成してください。<br /><br /><span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex8_tx2_web.jpg"><img alt="ex8_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex8_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><noscript><img src="http://visit.geocities.jp/visit.gif?1st1207992344" alt="setstats" border="0" width="1" height="1" / / / /></noscript><img alt="1" src="http://bc.geocities.yahoo.co.jp/serv?s=382116061&amp;t=1207992344" height="1" width="1" />]]>
      <![CDATA[<p>■ <b>考え方</b></p>
<p>与えられた条件をまとめると次のようになります。</p>
<p>　　　スロットル：　th_adc&gt;　512</p>
<p>かつ</p>
<p>　　　エルロン： al_adc &lt; 256 または al_adc &gt; 768</p>
<p>以上を割り込み許可条件にすれば、プログラムは完成します。</p>
<hr>

<p>■　<b>課題8</b></p><pre>// 赤外線2ch送信機TX2-006P　課題8<br />//　割り込み<br />//  ジョイスティック・スロットル1/2以上、エルロン・スティック左1/4以下、右1/4以上で、割り込みを許可しLEDを100msで点滅する。<br />//　ex8-006p.c PIC12F683用<br /><br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10bitで使用<br />//10bit=2^10=0～1023<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5//GPポート使用<br /> #bit IROUT=GP.5//赤外線LED<br /> #bit LED=GP.4//LED<br /> #bit SW=GP.3//ジョイスティック付属スイッチ<br /> <br />//　A-Dコンバータ割り当て<br />//ch0：スロットル<br />//ch1：エルロン<br />//ch2:10kΩ半固定抵抗<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />int led_sts;<br />long th_adc,al_adc,vdd_adc;<br /><br />// 0.5*10^-6*8*(65535-x+1)=100ms<br />//x=40536<br />#int_timer1//割り込み関数定義<br />alart()//100msごとに割り込みを発生する<br />{<br />  set_timer1(40536);<br />  led_sts=0x01-led_sts;<br />  LED=led_sts;<br />}<br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);//スロットル・スティック読み込み<br />    delay_us(20);<br />     （その１） ;<br />  set_adc_channel(1);//エルロン・スティック読み込み<br />    delay_us(20);<br />     （その２）  ;<br />  set_adc_channel(2);//10kΩボリューム読み込み<br />    delay_us(20);<br />    vdd_adc=read_adc();<br />}<br /><br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);//GP0～GP4入力、GP5出力<br />  <br />  setup_oscillator(OSC_8MHz);<br />   （その３）  (sAN0 | sAN1 | sAN2 | VSS_VDD);//A-Dコンバータ使用宣言<br />   （その４）  (ADC_CLOCK_DIV_32);//A-Dコンバータ・クロック<br />   （その５）  (T1_INTERNAL | T1_DIV_BY_8);//250msごとの割り込み<br />  set_timer1( （その６）  );//timer1初期値<br />  <br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br /><br />  enable_interrupts(GLOBAL);//割り込み全体許可<br /><br />  while(1){<br />    adc_in();<br />    <br />    if( （その７） ){ <br />       （その８） ;//割り込み許可<br />    }<br />    else{<br />      LED=ON;<br />       （その９） ;//割り込み許可<br />    }<br />  }<br />}</pre>
<hr>
<pre>■ 正解</pre><pre>（その１） th_adc=read_adc()　（その２） al_adc=read_adc()　（その３） setup_adc_ports　（その４） setup_adc<br />（その５） setup_timer_1　（その６） 40536　（その７）  th_adc&gt;512 || al_adc &lt; 256 || al_adc &gt; 768<br />（その８） enable_interrupts(INT_TIMER1)　（その９） disable_interrupts(INT_TIMER1)</pre>
<p>・課題8のC言語ソース・ファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex8_006p.lzh">ex8_006p.lzh</a><br />】</p>

<hr>

<p>次回は電源電圧監視プログラムについて考えます。</p>
<p align="right">長野県飯田工業高校　竹内浩一</p>]]>
   </content>
</entry>

<entry>
   <title>12-7 A-Dコンバータと割り込み　～その2～</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/indoorplane/2008/06/127_ad2.html" />
   <id>tag:www.eleki-jack.com,2008:/indoorplane//3.1468</id>
   
   <published>2008-06-17T23:18:42Z</published>
   <updated>2008-06-18T00:30:40Z</updated>
   
   <summary>　課題6では、スロットル方向(縦)をA-Dコンバータで読み込みました。この課題で...</summary>
   <author>
      <name>takeuchi</name>
      
   </author>
   
      <category term="第12章赤外線2ch送信機TX2-006Pプログラミング" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="391" label="A-Dコンバータ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1323" label="割り込み" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/indoorplane/">
      <![CDATA[<p>　課題6では、スロットル方向(縦)をA-Dコンバータで読み込みました。この課題ではエルロン方向(横)を読み取り、割り込みによるLEDの点滅と連動します。</p><span class="mt-enclosure mt-enclosure-image"><a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex7_tx2_web.jpg"><img alt="ex7_tx2_web.jpg" src="http://www.eleki-jack.com/indoorplane/2008/04/12/ex7_tx2_web-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span><br />]]>
      <![CDATA[<p>■<b>考え方</b></p>
<p>　考え方はスロットル方向と同じです。</p><pre>set_adc_channel(1);//エルロン・スティック読み込み<br />    delay_us(20);<br />    al_adc=read_adc();</pre><p>　A-Dコンバータのchannel(1)より値を読み出し、al_adcにセットします。</p><pre>al_adc &lt; 256  または al_adc &gt; 768</pre><p>のときに割り込みを許可、それ以外では禁止になるようにプログラミングしてください。</p>
<hr>
■<b>課題7</b>
<p>　ジョイスティックをエルロン方向へ左1/4以下、右1/4以上で、割り込みを許可しLEDを100msで点滅する。</p><pre>// 赤外線2ch送信機TX2-006P　課題7<br />//　割り込み<br />//  ジョイスティックのエルロン・スティック左1/4以下、右1/4以上で、割り込みを許可しLEDを100msで点滅する。<br />//　ex7-006p.c PIC12F683用<br /><br /><br />#include&lt;12f683.h&gt;<br />#DEVICE ADC=10　//A-Dコンバータを10bitで使用<br />//10bit=2^10=0～1023<br /><br />#fuses INTRC_IO,NOWDT,PUT,NOPROTECT,NOMCLR<br />//ウオッチドック・タイマなし、パワーアップ・タイマ使用<br />//プロテクトなし、MCLRなし<br /><br />#use delay(CLOCK=8000000)  //8MHz駆動<br />#byte GP=5//GPポート使用<br /> #bit IROUT=GP.5//赤外線LED<br /> #bit LED=GP.4//LED<br /> #bit SW=GP.3//ジョイスティック付属スイッチ<br /> <br />//　A-Dコンバータ割り当て<br />//ch0：スロットル<br />//ch1：エルロン<br />//ch2:10kΩ半固定抵抗<br /><br />#define ON 1<br />#define OFF 0<br />#define HI 1<br />#define LOW 0<br /><br />int led_sts;<br />long th_adc,al_adc,vdd_adc;<br /><br />// 0.5*10^-6*8*(65535-x+1)=100ms<br />//x=40536<br />#int_timer1//割り込み関数定義<br />alart()//100ms毎に割り込みを発生する<br />{<br />  set_timer1(40536);<br />  led_sts=0x01-led_sts;<br />  LED=led_sts;<br />}<br /><br />//VR入力をA-Dコンバータより読み出し、各変数にセットする。<br />void adc_in(void)<br />{<br />  set_adc_channel(0);//スロットル・スティックの読み込み<br />    delay_us(20);<br />    th_adc=read_adc();<br />  set_adc_channel(1);//エルロン・スティックの読み込み<br />    delay_us(20);<br />    （その１）;<br />  set_adc_channel(2);//10kΩボリュームの読み込み<br />    delay_us(20);<br />    vdd_adc=read_adc();<br />}<br /><br /><br />//メイン・ルーチン<br /><br />void main()<br />{<br />  int i;<br />  set_tris_a(0x0f);//GP0～GP4入力、GP5出力<br />  <br />  setup_oscillator(OSC_8MHz);<br />  （その２）;//A-Dコンバータ使用宣言<br />  （その３）;//A-Dコンバータクロック<br />  （その４）;//250msごとの割り込み<br />  set_timer1(40536);//timer1初期値<br />  <br />  IROUT=OFF;<br />  LED=OFF;<br />  led_sts=0;<br /><br />  for(i=0;i&lt;3;i++){<br />    LED=ON;<br />    delay_ms(250);<br />    LED=OFF;<br />    delay_ms(250);<br />  }<br /><br />  enable_interrupts(GLOBAL);//割り込み全体許可<br /><br />  while(1){<br />    adc_in();<br /><br />    if( （その５）){<br />      （その６）;//割り込み許可<br />    }<br />    else{<br />      LED=ON;<br />      （その７）;//割り込み許可<br />    }<br />  }<br />}<br /></pre>
<hr>
■ 正解
<p>（その１）al_adc=read_adc()　<br />（その２）setup_adc_ports(sAN0 | sAN1 | sAN2 | VSS_VDD)　<br />（その３）setup_adc(ADC_CLOCK_DIV_32)<br />（その４）setup_timer_1(T1_INTERNAL | T1_DIV_BY_8)　<br />（その５）al_adc &lt; 256 || al_adc &gt; 768　<br />（その６）enable_interrupts(INT_TIMER1)<br />（その７）disable_interrupts(INT_TIMER1)</p>
<p>・課題7のC言語ソースファイルとHEXファイルはこちらからダウンロードできます【<a href="http://www.eleki-jack.com/indoorplane/2008/04/12/ex7_006p.lzh">ex7_006p.lzh</a>】</p>

<hr>

<p>次回も、A-Dコンバータと割り込みプログラムを続けます。</p>
<p align="right">長野県飯田工業高校　竹内浩一</p>]]>
   </content>
</entry>

</feed>
