<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>PIC,78K,R8,HC(S)08/RS08,AVR,MSP430などのマイコン活用　　初歩のマイコン</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/" />
   <link rel="self" type="application/atom+xml" href="http://www.eleki-jack.com/mycom2/atom.xml" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4</id>
   <updated>2008-08-28T02:40:15Z</updated>
   <subtitle>PIC,78K,R8,HC08,AVR,MSP430などのマイコン活用</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.1</generator>


<entry>
   <title>PICマイコンを使った赤外線リモコン　(2)</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/pic2_2.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1937</id>
   
   <published>2008-08-28T00:53:58Z</published>
   <updated>2008-08-28T02:40:15Z</updated>
   
   <summary>　まず走らせたいモデル・カーの仕様ですが、進行方向はサーボ・モータで、進行速度は...</summary>
   <author>
      <name>yoshida</name>
      
   </author>
   
      <category term="赤外線リモコン" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1586" label="赤外線リモコン" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[　まず走らせたいモデル・カーの仕様ですが、進行方向はサーボ・モータで、進行速度はスピード・コントローラを介してマブチモーターで、それぞれ制御することにしました。<br />　LEDを用いたライトの点灯も、リモコン操作でできると面白いと思い実装しました。この目的に沿って作成した赤外線リモコンの送信機の回路図を次に示します。<br /><br /> ]]>
      <![CDATA[<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/28/2-1.gif"><img alt="2-1.gif" src="http://www.eleki-jack.com/mycom2/2008/08/28/2-1-thumb-400x290.gif" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="290" width="400" /></a></span><div>　PICマイコンは、定番の16F84Aを用いました。サーボ・モータとスピード・コントローラの制御のためには、ジョイスティック内の二つの可変抵抗の値を、PICマイコンのB0とB7およびB1とB6の各ポートでの信号の時間変化を演算処理してディジタル化することで行いました。A-D変換機能のないPICマイコンでよく使われている方法です。<br />　ライトのON/OFFは、A3ポートにつながっているスイッチで制御するようにしました。<br />　PICマイコンの内部で各入力信号を演算処理した後、３チャネルの送信ディジタル信号としました。このA0ポートからの信号は、FETで増幅することにより12個の赤外LEDを用いて送信できるようにしています。<br />　PICマイコンのプログラムを下に示すので、どのような演算処理が行われているかをみてください。<br /><br />リスト1　送信機用PICプログラム<span class="mt-enclosure mt-enclosure-file" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/28/list1.txt">　list1.txt</a></span><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/28/2-5.gif"><img alt="2-5.gif" src="http://www.eleki-jack.com/mycom2/2008/08/28/2-5-thumb-400x784.gif" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="784" width="400" /></a></span><br />　では、送受信に使用したディジタル信号について詳しく説明します。次の図を見ながら読んでください。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/28/2-2.jpg"><img alt="2-2.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/28/2-2-thumb-400x289.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="289" width="400" /></a></span>　赤外LEDと赤外受光素子の組み合わせを用いて送受信するシグナルは、38 kHzで変調したものを用います。つまり、26μsを１サイクルとする矩形波が送信されている場合が１、送信されていない場合が０です。<br />　この１組の１と０のセットが一つのチャネルで、CH1はスピード・コントローラに、次のCH2はサーボ・モータの制御に用います。この二つのチャネルに含まれる情報は、１のシグナルにあるのではなく、実は０が継続する時間（ギャップ時間）にあるのです。<br />　前半で示した送信機のプログラムと、次回に示す予定の受信機のプログラムをもう一度読んでいただくとさらに理解が深まると思います。<br />　一方、モデル・カーのライト（LED）を点滅させるCH3の情報は、逆に１が継続する時間に込めてあります。そしてこの三つのチャネルを送信後はしばらく０の状態が続いて、再び最初にもどってCH1を送信し始めます。<br />　18msごとに、そのときそのときの送信機の入力に応じた情報が送信されているわけです。<br /><br />&nbsp;　そのようにして送信された赤外線のディジタル信号は、受信機の受光素子で受け取ります。この受光素子には、フォト・ダイオードとともにアンプや演算回路も組み込まれています。その結果、38kHzで変調された信号が入力されている間は受光素子の出力は０，信号が入力されていない間は出力が１という、「負論理の出力」が得られます。この受光素子からの出力を、受信機のPICで処理するわけです。<br /><br />　次回は、受信機について紹介します。<br /><br /><div align="right">塩山 洋<br /></div></div><div><br /></div>]]>
   </content>
</entry>

<entry>
   <title>PICマイコンを使った赤外線リモコン　(1)</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/pic1_1.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1919</id>
   
   <published>2008-08-26T01:26:35Z</published>
   <updated>2008-08-26T01:42:42Z</updated>
   
   <summary>　エレキジャックのNo.3は「空へ インドア・プレーンの製作」特集でした。筆者も...</summary>
   <author>
      <name>yoshida</name>
      
   </author>
   
      <category term="赤外線リモコン" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2778" label="BASIC" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="735" label="コンパイラ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[　<a href="http://www.eleki-jack.com/pdf/Elc03_005%7E007_contents.pdf">エレキジャックのNo.3</a>は「空へ インドア・プレーンの製作」特集でした。筆者も数年前からPICマイコンに魅力を感じ、LEDを点滅させたりして遊んでいましたが、この特集を読んで赤外線リモコンに挑戦したくなりました。<br />　しかしこの特集記事に載っているのとまったく同じことをするだけでは面白くありませんし、かといってインドア・プレーンを自分で設計して製作するには経験不足だと思っています。機体の工作や軽い電池の選択にも自信がありません。またソフトは自分で組みたいのですが、アセンブリ言語を駆使する自信もありません。<br />　そこで今回は、次のような方針を立てました。<br /><ol><li>PICマイコンを利用して赤外線リモコン送受信機を自作する。</li><li>PICマイコンについては、コンパイラを使ってBASIC言語を使用してソフトを組めるようにする。 </li><li>コントロールする対象を乾電池式のモデル・カーとするために、マブチモーターのスピード・コントローラの駆動や、サーボ・モータについても勉強する。</li></ol> ]]>
      <![CDATA[　これまでLEDの点滅で遊んでいるときは、ソフトをアセンブリ言語で組んでいました。ところが残念ながらアセンブリ言語というのは、ちょっと気を抜くとすぐにわからなくなってしまいます。そこで方向転換して、もっとわかりやすい高級言語を使うことにしました。そうすれば、今後も高度なPICソフトが簡単に作れるようになるからです。<br />　PICマイコンで使用する高級言語を選択する際も、<br />(1) PICの世界ではポピュラなＣ言語も筆者にとっては難解で使えない<br />(2) インタープリタを使ったBASIC言語もマイクロ秒単位の制御ができずに赤外線リモコンが作れないために却下<br />などのまわり道を経て、<br />(3) コンパイラを使ってベーシック言語を使用する というところに落ち着きました。<br /><br />　PICマイコンで使えるBASICのコンパイラをインターネットで調べて比較した結果、筆者は PICBasic Pro Compiler を使うことにしました。この製品はマイクロテクニカという会社から購入することができます（ <a href="http://www.microtechnica.net/">http://www.microtechnica.net/</a> ）。ソフトの開発はWindows上で、グラフィカルに開発が行える統合開発環境、MicroCode Studio(MCS) にて行います。<br />　例として、PIC16F84AのPORTB.0とPORTB.1につないだLEDを１秒おきに交互に点滅させるプログラムを次に示します。どうですか、アセンブリ言語よりずっと簡単ですね。後日読み直してもすぐに思い出せます。あとはこのプログラムをコンパイルして、HEXファイルを作り、PICマイコンにインストールするだけです。<br />　インストールには、秋月電子通商の AKI-PICプログラマーver.3.5 を用いました。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/26/1-1.jpg"><img alt="1-1.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/26/1-1-thumb-400x300.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></a></span>　次に完成した送受信機を見てください。回路やプログラムの詳しい解説は、次回以降に行います。<br />&nbsp;<br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/26/1-2.jpg"><img alt="1-2.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/26/1-2-thumb-400x225.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="225" width="400" /></a></span><br /><div align="right">塩山 洋</div><div><br /></div>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《7》 マイコンでテスト・プログラムを動かそう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/hc08qy4a_7.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1883</id>
   
   <published>2008-08-22T01:01:20Z</published>
   <updated>2008-08-22T00:36:19Z</updated>
   
   <summary><![CDATA[（前回からの続きです） ◆ プログラムをMakeする&nbsp; 　それでは、プ...]]></summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2745" label="Class 1" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2747" label="Connection Manager" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2749" label="Debug" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2750" label="Make" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1101" label="コンパイル" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2751" label="フラッシュ書き込み" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1198" label="リンク" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2736" label="日本語フォント" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p>（前回からの続きです）</p>
<p><font color="#0000cc"><strong>◆ プログラムをMakeする</strong></font>&nbsp;</p>
<p>　それでは、プログラムの変更が終わったところで 【Make】 アイコンをクリックしてください。</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm15.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm15.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm15.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm15-thumb-400x301.gif" height="301" width="400" /></a></span>
<p>&nbsp;</p>]]>
      <![CDATA[<p>　コンパイル(*1) と リンク(*2) が実行され、エラーや警告がなければ下のようになります。main.c の左側に付いていたチェック・マークがなくなりましたね。チェック・マークがない状態でもう一度 【Make】 アイコンをクリックしても何も起こりません。更新すべきものがないと判断されるからです。<br />　</p>
<p></p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm16.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm16.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm16.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm16-thumb-400x301.gif" height="301" width="400" /></a></span>
<p>&nbsp;</p>
<p><font color="#0000cc"><strong>◆ フラッシュの書き込みを行う</strong></font>&nbsp;</p>
<p>　次はいよいよ、フラッシュ書き込みです。最初に通信条件の設定を行います。スターター・ボードの電源スイッチは、まだオフのままにしておきます。 【Debug】 アイコンをクリックしてください。<br />　</p>
<p>
</p><p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm17.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm17.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm17.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm17-thumb-400x301.gif" height="301" width="400" /></a></span>
<p>　途中、もしも 「Windowsセキュリティの重要な警告」 が出た場合は、【ブロックを解除する】 をクリックして先へ進んでください。</p>
<p>　Connection Manager が現れました。これは接続に関する設定を行う画面です。<br />　</p>
<p></p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm18.html','popup','width=693,height=560,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm18.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm18.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm18-thumb-400x323.gif" height="323" width="400" /></a></span>
<p>　【Add Connection】 をクリックして、インターフェースを選択します。<font color="#ff8000"><strong>Class 1</strong></font> を選択して 【OK】 をクリックしてください（HC08スターター・ボード・キットは DTR による自動電源オン/オフに対応しているので Class 1 を選択します。別の機会に紹介する HC08デバッグ・ツールなどの場合は自動オン/オフ非対応なので Class 3 を選択します）。<br />　<br />
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm19.html','popup','width=693,height=560,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm19.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm19.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm19-thumb-400x323.gif" height="323" width="400" /></a></span>&nbsp;　新しい接続方法が追加され、最初に表示されたときは 4800 Baud になっています。左下の Baud Rate: を 9600 にしてください。そうすると上部の表示も 9600 Baud に変わります。<br />　パソコンのシリアル通信ポートは、<font color="#ff8000"><strong>COM1</strong></font> を選択してください（COM1 が選択できない場合は、前回の一番上にある <font color="#ff8000"><strong>★始める前に★</strong></font> を読んで設定し直し、パソコンを再起動する必要があります）。 Security Options は 【Ignore Security】 を選択します。<br />&nbsp;
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm20.html','popup','width=693,height=560,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm20.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm20.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm20-thumb-400x323.gif" height="323" width="400" /></a></span>
<p>　スターター・ボードの電源スイッチをオンにします。 POWER を示す LED が点灯していますね。【Contact Target with These Settings...】 をクリックしてください。すると、デバッガ画面が開き、さらに Erase and Program Flash? ダイアログが出ます。<br />　</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm21.html','popup','width=767,height=530,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm21.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm21.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm21-thumb-400x276.gif" height="276" width="400" /></a></span><u><font color="#0066cc"></font></u>
<p>　マイコンの中身を書き換える場合は、【Yes】 をクリックしてください。<br /></p>
<p>
</p><blockquote>　ここで 【Yes】 をクリックすると、マイコンのフラッシュ・メモリの中身がいったんすべて消去されます。もしもマイコンの中に書かれているプログラムやデータを消したくない場合は、【No】 をクリックしなくてはなりません。たとえば新品の QY4A マイコンを購入したとき $FFC0 番地には TRIM 値と呼ばれるデータが最初から書き込まれています。これを今から読み出そうとしている場合は、【No】 をクリックします。TRIM 値が消去されてしまっても、後でまた最適な TRIM 値を求める方法がありますから、ここでは 【Yes】 をクリックして作業を続けることにしましょう。</blockquote>
<p></p>
<p>　CPROG08SZ Programmer 画面が開いて、書き込み中のログ表示がスクロールしていきます。無事に書き終わったら、 CPROG08SZ Programmer 画面は自動的に閉じます。デバッガ画面が開いた状態で動きが収まりましたね。<br />　</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm22.html','popup','width=768,height=530,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm22.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm22.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm22-thumb-400x276.gif" height="276" width="400" /></a></span>
<p><font color="#0000cc"><strong></strong></font>&nbsp;</p>
<p><font color="#0000cc"><strong>◆ デバッガの表示を日本語フォントにする</strong></font>&nbsp;</p>
<p>　デバッガでも日本語が文字化けしないように設定を変えておきましょう。【Component】 メニューから 【Fonts...】 を選択します。日本語の文字セットにして、【OK】 をクリックします。<br />　　</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm23.html','popup','width=508,height=326,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm23.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm23.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm23-thumb-400x256.gif" height="256" width="400" /></a></span>
<p>　これで文字化けが解消されます。そのまま 【Save】 アイコンをクリックして、設定を保存しましょう。次回、またデバッガを開いたときに文字化けにならずに済みます。<br />　</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm24.html','popup','width=768,height=530,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm24.html"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="flash_pgm24.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm24-thumb-400x276.gif" height="276" width="400" /></a></span>
<p>　フラッシュ書き込みは、以上で終わりです。デバッガ画面を閉じてください。CodeWarrior IDE 画面も閉じてよいです。そして、HC08スターター・ボードの電源スイッチをオフにしてください。</p>
<p>&nbsp;</p>
<p><font color="#0000cc"><strong>◆ フラッシュ書き換え後の動作確認</strong></font>&nbsp;</p>
<p>　書き込みがうまくできたか確認してみましょう。HC08スターター・ボードの ICソケットからマイコンを外さずに、ジャンパ・リンクを次のように差し替えてください。</p>
<p>　JP1 のジャンパ・リンクはショートさせる。JP2 はジャンパ・リンクなし。JP3 は 1-2間をショート。JP4 は 1-2間をショート。VR1 は任意。パソコンと接続しているシリアル・ケーブルは付けたままでも外してもどちらでもかまいません（HC08スターター・ボード・キット Ver.2 の場合は、JP5 から JP8 はすべてショート）。</p>
<p>　セッティングを変更したら、HC08スターター・ボードの電源スイッチをオンしてください。POWER を示す LED が点灯していますね。PUSH SW を押してみてください。押している間だけ、PTA1 に接続された LED (D4) が点灯するはずです。</p><p>　どうってことはないようにも思えますが、これが先ほど書き込んだプログラムによって制御されていることを考えると、大いなる一歩を踏み出したといってもそう恥ずかしくはありません。<br />　</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="starter03.jpg" src="http://www.eleki-jack.com/mycom2/starter03.jpg" height="281" width="400" /></span>　うまく書き込みができたでしょうか？<br />　次回からの方針ですが、中身の詳しい説明をするより前に、いろいろな機能を一通り動かしてみることを優先します。そうした体験をしておいてから、中身の説明に入ります。<br />　
<p>(*1) コンパイル・・・・・C言語などの高級言語のソース・プログラムを、アセンブリ言語やオブジェクト・モジュール（マシン語のかたまり）に変換すること。 </p>
<p>(*2) リンク・・・・・必要なオブジェクト・モジュールを結合させて実行可能なプログラムを作ること。<br />&nbsp;</p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）</a><br />第10章　統合開発環境 CodeWarrior を使ってみる<br />Appendix D　フリースケールの8ビットマイコンと開発ツール</p>
<p align="right">組み込みエンジニア　川野亮輔<br /></p>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《6》 CodeWarriorでテスト・プログラムを作ろう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/hc08qy4a_6_codewarrior.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1873</id>
   
   <published>2008-08-19T05:41:48Z</published>
   <updated>2008-08-20T10:57:15Z</updated>
   
   <summary><![CDATA[◆ CodeWarrior を起動する&nbsp; ★ 始める前に ★　使用する...]]></summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2732" label="COMポート番号" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1086" label="CodeWarrior" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2550" label="MC908QY4A" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2734" label="Mon08 Interface" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2735" label="内部プルアップ抵抗" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2736" label="日本語フォント" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p><font color="#0000cc"><strong>◆ CodeWarrior を起動する</strong></font>&nbsp;</p>
<blockquote><font color="#ff8000"><strong>★ 始める前に ★</strong></font>　使用する COMポート番号を COM1 にしてあることを確認してください。本物のシリアル・ポートでも、USBシリアル変換による仮想COMポートでも、どちらでも当てはまります。 Windows XP の場合は　マイコンピュータを右クリック → プロパティを選択 → ハードウェア タブを選択、デバイスマネージャをクリック → ポート（COMとLPT）　で確認、変更ができます。<br />　ほかのデバイスが COM1 を使用している場合は、それを COM1 以外の番号に変更して逃がしておいてから、使用する COMポート番号を COM1 にします。設定したら必ずパソコンを再起動してください。 参考文献[1] にも詳しい説明があります。</blockquote>]]>
      <![CDATA[<p>　<br />　それでは、第4回でインストールを済ませたCodeWarrior を起動してみましょう。通常は、パソコン画面の左下にあるスタート・ボタンから → （すべての）プログラム → Freescale CodeWarrior → CW for Microcontrollers V6.1 → CodeWarrior IDE を選択して起動させてください。 V.6.2 の場合も同様ですが、使い始めて 30日以内は登録をうながす画面が開くので、【Register Later】 （後で登録、つまり今は登録しない） をクリックしてください。　</p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="276" alt="cw_regist00.jpg" src="http://www.eleki-jack.com/mycom2/cw_regist00.jpg" width="400" /></span>&nbsp;　もし下図のような Startup Dialog が出た場合は、Display on Startup のチェックを外して【Start Using CodeWarrior】 をクリックすれば、次回の起動時から出なくなります。<br />　&nbsp; 
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a href="http://www.eleki-jack.com/mycom2/flash_pgm27.gif"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="306" alt="flash_pgm27.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm27-thumb-400x306.gif" width="400" /></a></span>&nbsp;<strong><font color="#0000cc">◆ CodeWarrior を起動する</font></strong> 
<p>　それでは、新たなプロジェクトを作ってみましょう。【New Project... 】 アイコンをクリックします。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm1.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm1.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="301" alt="flash_pgm1.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm1-thumb-400x301.gif" width="400" /></a></span>
<p>　使用する細かい品種と接続方法を指定します。MC908<font color="#ff8000">QY4A</font> のときは derivative の欄で HC08 → Q Family → MC68HC908<font color="#ff8000">QY4A</font> を選択します。このとき、使用するマイコンに合わせて HC と HLC を間違えないように、また、末尾に A が付くか付かないかも注意して選択してください。 Connection は Mon08 Interface を選択して 【次へ】 をクリックします。<br />　&nbsp;</p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm2.html','popup','width=749,height=371,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm2.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="198" alt="flash_pgm2.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm2-thumb-400x198.gif" width="400" /></a></span>
<p>　Ｃ言語のみにチェックを入れておいてください。プロジェクト名と格納位置を決めるために 【Set... 】 をクリックします。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm3.html','popup','width=749,height=371,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm3.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="198" alt="flash_pgm3.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm3-thumb-400x198.gif" width="400" /></a></span>
<p>　例として、C: ドライブのルートに HC08 というフォルダを作り、そこに test61 を作成しました。【保存】 をクリックします。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm4.html','popup','width=507,height=253,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm4.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="199" alt="flash_pgm4.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm4-thumb-400x199.gif" width="400" /></a></span>
<p>　下の画面のようになりました。【完了】 をクリックします。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm5.html','popup','width=749,height=371,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm5.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="198" alt="flash_pgm5.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm5-thumb-400x198.gif" width="400" /></a></span>
<p>　Did you know... （こんなことご存知ですか？） が出る場合がありますが、読まなくても問題はないので、【Close】 をクリックして閉じてしまいます。Show Tips on StartUp のチェックを外しておくと、次回の起動時からは出なくなります。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a href="http://www.eleki-jack.com/mycom2/flash_pgm9.htm"></a></span>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm9-thumb-400x281.html','popup','width=400,height=281,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm9-thumb-400x281.html"></a></span>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm9.html','popup','width=470,height=331,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm9.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="281" alt="flash_pgm9.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm9-thumb-400x281.gif" width="400" /></a></span>　統合開発環境（IDE）の画面が出てきました。左の枠の中にある main.c をダブルクリックして開いてください。<br />　<br />
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm10.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm10.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="301" alt="flash_pgm10.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm10-thumb-400x301.gif" width="400" /></a></span>
<p>　右側の枠に main.c のソース・ファイルが開きました。このままでは 「何もしないプログラム」 なので、プログラムを少し書き換えましょう。<br />　<br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm11.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm11.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="301" alt="flash_pgm11.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm11-thumb-400x301.gif" width="400" /></a></span>
<p><strong><font color="#0000cc"><br />◆ エディタの表示を日本語フォントにする</font></strong></p>
<p>　その前に、コメントに日本語が使えた方が便利ですから、フォントの設定を変えておきます。【Edit】 メニューから 【Preferences...】 を選択します。フォントとタブの設定は、自分の好みに合わせて変えても問題ありません。<br /><br /></p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm12.html','popup','width=620,height=425,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm12.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="274" alt="flash_pgm12.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm12-thumb-400x274.gif" width="400" /></a></span>
<p>　ついでに、Ｃプログラムの形について、設定を変更したい人はここで変更ができます（変えなくてもまったく問題ありません）。　決まったら 【OK】 をクリックしてください。<br />　　<br /></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm13.html','popup','width=620,height=425,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm13.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="274" alt="flash_pgm13.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm13-thumb-400x274.gif" width="400" /></a></span>
<p><strong><font color="#0000cc">　<br />◆ スイッチとLEDを扱うプログラムを作る</font></strong></p>
<p>　プログラム・ソースは、コメント部分に矢印（<strong><font color="#ff8000">←</font></strong>）を入れた<strong><font color="#ff8000">３行</font></strong>を追加しました。クリックして拡大できますので、よく見て同じように変更してください。<br />　なお 「 <strong><font color="#ff8000">//</font></strong> 」 から右はコメントなので、書いても書かなくても問題ありません。<br />　&nbsp;</p>
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><a onclick="window.open('http://www.eleki-jack.com/mycom2/flash_pgm14.html','popup','width=696,height=524,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.eleki-jack.com/mycom2/flash_pgm14.html"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="301" alt="flash_pgm14.gif" src="http://www.eleki-jack.com/mycom2/flash_pgm14-thumb-400x301.gif" width="400" /></a></span><br />
<blockquote><u>プログラムの説明 （今は理解しなくても大丈夫です）</u><br />　ごく簡単な内容で、PUSH SW（スイッチ） につないだ PTA3 が Low になったときだけ PTA1 につないだ LED（カソード側）が Low になって点灯するというものです。<br />　PTA3 は内部プルアップ抵抗を有効にしています。簡略化した下記の回路図を参考にしてください。　PTA3 に付けた抵抗は、もし PTA3 を出力に設定して High レベルにしてしまった場合、PUSH SW を押したとき大電流が流れないようにするための保護部品です。ちなみに PUSH SW を PTA2 につなぐ場合は、PTA2 が入力専用のポートなので同様の問題は起きないため 1kΩの保護部品は不要です。&nbsp;<br />　&nbsp; 
<p></p>
<span class="mt-enclosure mt-enclosure-image" style="DISPLAY: inline"><img class="mt-image-center" style="DISPLAY: block; MARGIN: 0px auto 20px; TEXT-ALIGN: center" height="142" alt="starter_qy4test.gif" src="http://www.eleki-jack.com/mycom2/starter_qy4test.gif" width="411" /></span></blockquote>
<p>&nbsp;</p>
<p>　次回は、引き続きフラッシュ・メモリにプログラムを書き込み、マイコンを動かしてみます。<br />　 </p>
<p></p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）</a><br />第10章　統合開発環境 CodeWarrior を使ってみる</p>
<p align="right">組み込みエンジニア　川野亮輔<br /></p>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《5》 パソコンとスタータ・ボードを接続しよう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/hc08qy4a_5.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1840</id>
   
   <published>2008-08-08T22:41:08Z</published>
   <updated>2008-08-08T02:59:32Z</updated>
   
   <summary>　だいたい準備ができたところで、一度マイコンを実際に動かしてみましょう。HC08...</summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2702" label="HC08スタータ・ボード" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2550" label="MC908QY4A" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2703" label="USB-シリアル変換ケーブル" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2692" label="USBポート" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2693" label="シリアル・ポート" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2695" label="スイッチングACアダプタ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2696" label="デフォルトのセッティング" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p>　だいたい準備ができたところで、一度マイコンを実際に動かしてみましょう。HC08スタータ・ボード・キットVer.2 には MC908QY4A マイコンが 1個含まれています（*1）。 これを、プリント基板上に QY/QB と記された 16ピン ICソケットに正しく装着してください。プリント基板のシルク印刷の絵と、マイコンの切り欠きの向きを合わせるようにします。　</p>
<p align="center">&nbsp;&nbsp; 
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="connect00.jpg" src="http://www.eleki-jack.com/mycom2/connect00.jpg" height="321" width="400" /></span><div align="center">&nbsp;スタータ・ボードをパソコンのシリアル・ポートに接続した例
</div><p>&nbsp;</p>]]>
      <![CDATA[<p>　電池ホルダには単三形の新しいアルカリ乾電池を2本入れてください（*2）。 まだスターター・ボードの電源スイッチは入れないでください。</p>
<p><br /><font color="#0000cc"><strong>◆ パソコンのシリアル・ポートまたは USBポートに接続する</strong></font></p>
<p>　HC08スタータ・ボードとパソコンを接続するためには、接続ケーブルが必要です。 お使いのパソコンに <font color="#ff8000"><strong>シリアル・ポート</strong></font> がある場合は、9ピン・ストレートのシリアル・ケーブル(*3) を使用します。 <br /></p>
<p>&nbsp;</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="serial_port00.jpg" src="http://www.eleki-jack.com/mycom2/serial_port00.jpg" height="200" width="400" /></span>
<p align="center">&nbsp;シリアル・ポート</p>
<p>&nbsp;</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="serial_cable00.jpg" src="http://www.eleki-jack.com/mycom2/serial_cable00.jpg" height="265" width="300" /></span>
<p align="center">9ピン・ストレートのシリアル・ケーブル（オス・メス）</p>
<p align="center">&nbsp;</p>
<p>　スタータ・ボードの電源スイッチがオフであることを確認して、シリアル・ケーブルをパソコンとスタータ・ボードに接続します（最初の写真を参照）。<br /></p>
<p>　もしもパソコンにシリアル・ポートがない場合は、<strong><font color="#ff8000">USB-シリアル変換ケーブル</font></strong> (*4) を使って USBポートに接続しましょう。 USB-シリアル変換のためのドライバ・ソフトウェアをパソコンにインストールする方法は、その変換ケーブルのマニュアルをよく読んでください。 </p>
<p>&nbsp;</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="connect01.jpg" src="http://www.eleki-jack.com/mycom2/connect01.jpg" height="358" width="400" /></span>
<p align="center">&nbsp;USB-シリアル変換ケーブルを使って USBポートへ接続した例</p>
<p>&nbsp;</p>
<p><strong><font color="#0000cc">◆ デフォルトのセッティング</font></strong></p>
<p>　HC08スタータ・ボードは、ジャンパと半固定抵抗を下記に示す 「デフォルトのセッティング」 にしておいてください。 <br /><font color="#ff8000"><strong>　JP1 のジャンパ・リンクはショートさせないようにする。JP2 はジャンパ・リンクなし。JP3 は 2-3間をショート。JP4 は 1-2間をショート。VR1 は左に回しきっておく（HC08スタータ・ボード・キット Ver.2 の場合は、JP5 から JP8 をすべてショート）。</strong></font><br />　</p>
<p align="center"><a href="http://www.eleki-jack.com/mycom2/starter02b.jpg" target="_blank"><img src="http://www.eleki-jack.com/mycom2/starter02b-thumb-200x217.jpg" height="217" width="200" /></a></p>
<p align="center">&nbsp;デフォルトのセッティング （クリックで拡大）<br /></p>
<p>&nbsp;</p>
<p>　フラッシュ書き込みをしてマイコンを動かすところまで一度に説明すると非常に長くなってしまうので、ここでいったん区切ります。次回は、 CodeWarrior を起動させるところから始めます。</p>
<p>&nbsp;</p>
<p>(*1) HC08スタータ・ボード・キットVer.1 と、初期の Ver.2 には A の付かない MC68HC908QY4 が 1個入っています。この連載では A 付きで説明しますので、QY4 しか持っていない方は別途 QY4A をお求めください。</p>
<p>(*2) うっかり忘れがちですが、電池が減ってくると正しく動作しなくなります。また、充電式の電池は電圧が低いので使用できません。 HC08スタータ・ボード・キットVer.2 は ACアダプタを使うこともできます。その場合は安定化された 3V または 5V の ACアダプタを使用してください。&nbsp;<strong><font color="#ff8000">スイッチングACアダプタ</font></strong> と呼ばれるものは安定化されています。 秋月電子の [M-00816] [M-00814] などが使えます。安定化されていないものや、5Vより電圧が高いACアダプタを接続すると、IC やマイコンが破壊されてしまいます。 DCジャックの極性はセンタ・ピンがプラスです。</p>
<p>(*3) シリアル・ケーブルは秋月電子の [C-00004] などが使えます。</p>
<p>(*4) USBシリアル変換ケーブルは秋月電子の [M-00721] などが使えます。ただし HC08スタータ・ボード・キットで USB-シリアル変換ケーブルを利用できることを保証するものではありません。<br />　</p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）</a><br />第10章　統合開発環境 CodeWarrior を使ってみる</p>
<p align="right">組み込みエンジニア　川野亮輔<br /></p>]]>
   </content>
</entry>

<entry>
   <title>第1回　dsPICマイコン基板を使った「セラミック・ヒータはんだゴテ用温度コントローラ」の製作</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/08/1dspic.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1832</id>
   
   <published>2008-08-05T02:26:23Z</published>
   <updated>2008-08-28T05:35:27Z</updated>
   
   <summary>　2007年から2008年にかけて，トランジスタ技術2007年8月号に付録された...</summary>
   <author>
      <name>katou</name>
      
   </author>
   
      <category term="セラミック・ヒータはんだゴテ温度コントローラの製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2679" label="dsPIC30F2012" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2680" label="温度コントローラ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<blockquote>　<strong>2007年から2008年にかけて，トランジスタ技術2007年8月号に付録されたdsPICマイコン基板を使った「dsPICマイコン基板 デザイン・コンテスト」が行われました．<br />　ここでは，このコンテストで敢闘賞を受賞した「セラミック・ヒータはんだゴテ温度コントローラ」を紹介します．</strong><br /></blockquote>

<blockquote><font style="font-size: 0.8em;"><font style="font-size: 1em; color: red;">ご注意;</font><font style="font-size: 1.25em;"><font style="font-size: 1em;">　</font><font style="font-size: 1.25em;"><font style="font-size: 0.64em;">この回路のＧＮＤはＡＣ回路に接続されていますから、動作中に 触れれば感電します。パネルのアルミ板は金属ですが、完全に回路からは絶縁した構造を 取っています。また、ＳＷ類は手に触れる部分はすべて樹脂製の物を使用しています。</font></font></font></font><br /><font style="font-size: 0.8em;"><font style="font-size: 1.25em;"><font style="font-size: 1.25em;"><font style="font-size: 0.64em;">　制御部のＧＮＤも当然ですが筐体には接続されずに絶縁された状態で組んでいます。今回の作品で使用した５Ｖアダプタの ＡＣトランスは１次と２次の巻線が完全に絶縁された構造になっており、制御部回路がＡＣ１００Ｖにリークする可能性も低い物となっていります。しかし、デバッグ中にＰＣとかオシロスコープに 回路ＧＮＤを接続する際にはＡＣのアイソレーションが必要ですし、人がGNDに触れないような構造に注意して組み上げる必要があります。この記事を参照される読者の方は、これらの点について注意してください。</font></font></font></font><br /></blockquote><p><font style="font-size: 0.8em;"><font style="font-size: 1.25em;"><font style="font-size: 1.25em;"><br /></font></font></font></p><p><font style="font-size: 0.8em;"><font style="font-size: 1.25em;"><font style="font-size: 1.25em;"><strong>●はんだゴテを一定の温度で保つ</strong><br /></font></font></font>　トランジスタ技術2007年8月号付録のdsPIC30F2012基板を使用したデザイン・コンテスト敢闘賞受賞作品の紹介です．</p>
<p>　10年以上前のトランジスタ技術1995年10月号の「はんだごてとセンサレス温度コントローラの小研究」で竹田保氏がアナログ回路で紹介していたセラミック・ヒータはんだゴテ用温度コントローラを，筆者は手持ち部品で製作しました．<br />　現在も，はんだ付けになくてはならない工具として愛用しています．</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/05/p01.jpg"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="p01.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/05/p01-thumb-400x304.jpg" height="304" width="400" /></a></span><br />]]>
      <![CDATA[<p>　この回路はヒータ自体を温度計として用いて，設定温度とはんだゴテの温度差をフィードバック制御するものです．セラミック・ヒータの特性である抵
抗値が大きな温度係数をもつことを利用しました．</p><p>　オープン・ループ制御の一定値電圧駆動ではなく，設定温度制御ではんだ付けによるコテの温度低下を補って設
定温度を保とうとするものです．</p>
<p>　今回の作品は，竹田氏が発表されていたアナログ・サーボ・コントローラをdsPIC30F2012基板を使ってソフトウェア・ディジタル・サーボに置き換えたものです．</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/05/%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E5%9B%B3.jpg"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="ブロック図.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/05/%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E5%9B%B3-thumb-400x178.jpg" height="178" width="400" /></a></span>
<p><font style="font-size: 1.25em;"><strong>●2本の使い分けと温度設定</strong><br /></font>　ハードウェアを最大限に単純化するため，はんだゴテはDC（直流）駆動とします．dsPICマイコンとのインターフェースとして，A-Dコンバータ入力とPWM（Pulse Width Modulation） ON/OFFの時間出力を備えました．</p>
<p>　基本動作は，30Hzの周期でサンプリングを取って数値制御します．はんだゴテの駆動は30Hzの周波数のPWMとし，平均入力電力で温度を制御する，設定温度に対するPI制御方式を採りました．</p>
<blockquote>
<p><u>PI制御とは</u></p>
<p>　PI制御という方法は，設定値と現在値の差（比例項：P）と，その差の累積値（積分項：I）を用いて制御します．ハッコー社製の20Wと25Wの
コテをSW（スイッチ）のみで切り替えができます．AC（交流）100Vのブリッジ整流でDC130V駆動とするため，実質約26Wと約33Wの最大容量
として使用可能になります．</p>
<p>　定格がAC100Vの製品なので，最大電圧であるDC130Vは絶縁的に問題はないと思われます．ですが，電力容量を上げて使用することについては，問題が発生しても自己責任と考えます．</p>
<p>　通常の使用範囲である380℃～430℃は，最大電力が連続で印加されることはありません．設定値に対してはんだゴテの温度が下がったときと，パワーオンからの約数十秒の間に，定格電力以上の入力がされることになるだけなので、リスクは小さいと判断します．</p>
<p>　デューティ比が77%（100V定格相当）以上の動作については，コテの最大温度を上げるためではなく熱容量の大きな対象物を処理するときに設定温度を保つための余力と考えられます．</p></blockquote>
<p>&nbsp;<font style="font-size: 1.25em;"><strong>●LCDを見ながらスイッチで操作する</strong><br /></font>　16けた×2行のLCD（Liquid Crystal Display）を使用し，設定温度，現在温度，コテのW数，制御出力値としてのON デューティを表示して，はんだゴテと制御系の状態を表示します．</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/05/p02.jpg"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="p02.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/05/p02-thumb-400x286.jpg" height="286" width="400" /></a></span>
<p>　温度設定はアップとダウンのプッシュ・スイッチで，1回押すごとに10℃上がったり下がったりします．設定範囲は200℃～450℃で，装置電源のオン
時のディフォルト（無操作時の初期値）温度は400℃としました．<br />　ただし，赤外線温度計などの直接コテ先の温度を実測する道具を持っていないので、値は不明
です．</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/05/p03.jpg"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="p03.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/05/p03-thumb-400x204.jpg" height="204" width="400" /></a></span>
<p>●<b>動作の概略</b><br /></p><p>　TIMER-1を30Hzのフリーランで走らせて基準クロックを作り，TIMER-2をPWMのON/OFF時間の制御に使用します．プッシュ・スイッチも30Hzでサンプリングし，チャタリング除去も兼ねて3回のサンプリングがOFF→ON→ON状態になったときのみを検出するDラッチ動作としま
す．<br />　このスイッチの読み取りも、30Hz～50Hzくらいが最適です．20Hzまで下げると，100ms以上押し続けないと検出できないので、反応が遅いと感
じます．</p>
<p>　ソフトウェアもなるべく単純化したいので，これも基準クロックを30Hzに決定した理由の一つです．10Hzまでのスイッチ速度まで検出可能なので，
押し続けたときの連続アップ/ダウンは不要としましたが，ソフトウェアだけで変更できるので，試作される方は追加してみてください．<br />　TIMER-1と
TIMER-2はオーバ・フロインタラプトを使用して動作させています．</p>
<blockquote>
<p><u>はじめから5Vがお勧め！</u></p>
<p align="left">　dsPIC30F2012とLCDの5V電源は，ジャンクのトランス式ACアダプタ（9V/0.5A）の整流出力を
TL497のスイッチングICで案手かして効率を上げました．手持ちの部品を使った設計なので，新しく製作される方は5V/1AくらいのACアダプタ（スイッチングかリ
ニア電源いずれでも可）がお勧めです．</p>
</blockquote>

<p><font style="font-size: 1.25em;"><strong>●dsPIC30F2012のピン配置の説明</strong><br /></font>　
次に、dsPIC30F2012のピン配置の説明です．ピンは，LCDとの接続にデータが8本，コントロールが3本の合計11本を使いました．コテの電流
を読むためのA-Dコンバータ入力が1本．コテをON/OFFするために1本．アップとダウン，コテのW数を切り替えるSWに3本が必要です．<br />　LCDの
11本はLCD側がCMOSレベルなので，どのピンでも使用可能です．スイッチの3本もレベル入力なので，どのピンでも使用可能です．</p>
<p>　A-Dコンバータ入力は使用可能なピンが決まっているので，アナログ入力が可能なピンを使用します．<br />　また、PWM出力として使用するピンは，
直接トランジスタを駆動するので，汎用I/Oと定義されているピンを使用します．汎用I/Oは、IOL＝8.5mA，IOH＝－3.0mAがスペック値で
す．筆者の設計はIOL＝約1mAでコテがオンになる計算です．</p>
<p>　トランジスタ技術の付属基板は、モニタとの切り替えやLED，UARTなどのすでに使用されていて動かせないピンがあり，自由に使えるピンを全部使用してなんとか接続できました．詳細は回路図を参照してください．</p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/08/05/%E5%9B%9E%E8%B7%AF%E5%9B%B3%E5%AE%8C.jpg"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="回路図完.jpg" src="http://www.eleki-jack.com/mycom2/2008/08/05/%E5%9B%9E%E8%B7%AF%E5%9B%B3%E5%AE%8C-thumb-400x269.jpg" height="269" width="400" /></a></span>
<p align="right">中川　裕三</p>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《4》 CodeWarrior と開発ツールを準備しよう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/hc08qy4a_4_codewarrior.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1810</id>
   
   <published>2008-07-29T02:06:41Z</published>
   <updated>2008-07-29T01:16:14Z</updated>
   
   <summary>　フリースケールの HC08マイコンを使った電子工作を始めるためには、二つの準備...</summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2640" label="ANSI C" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1086" label="CodeWarrior" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2642" label="HC08スターター・ボード・キットVer.2" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2644" label="HC08マイコン" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2646" label="Special Edition" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2647" label="統合開発環境" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2421" label="開発ツール" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p>　フリースケールの HC08マイコンを使った電子工作を始めるためには、二つの準備が必要です。一つはソフトウェア面の準備で、パソコン上でプログラムを書いたりコンパイルしたりデバッグするために使う <font color="#008080"><strong>統合開発環境</strong></font> と呼ばれるソフトウェアをパソコンにインストールすること。もう一つはハードウェア面の準備で、HC08マイコンとパソコンを接続してプログラムをマイコンに書き込んだりデバッグするために使う <font color="#008080"><strong>開発ツール</strong></font> を用意することです。<br />　</p>
<p align="center">&nbsp; <img height="293" src="http://www.eleki-jack.com/mycom2/starter00.jpg" width="400" /> </p>
<p>&nbsp;</p>]]>
      <![CDATA[<p><strong><font style="FONT-SIZE: 1.25em">【 統合開発環境 CodeWarrior の入手とインストール 】<br /></font></strong>　統合開発環境 (IDE) は、フリースケールから提供されている CodeWarrior（コード・ウォリア）を利用します。本来これはプロ向けの本格的な C/C++ 開発ツール群で、もちろん有料なのですが、機能を少し限定した <font color="#008080"><strong>Special Edition</strong></font>（スペシャル・エディション） が無料で利用できます。この Special Edition は、<font color="#ff8000">ANSI C準拠の使いやすいCコンパイラ</font> も含まれており、しかも <font color="#ff8000">使用期限がありません</font> から安心して利用することができます。<br />　幸いにして CodeWarrior のインストールに関しては、田中範明さんがこのエレキジャックのWebサイト上で解説をしてくださっているので、そちらを参考にすることができます。</p>
<p>　なお、下記の参考記事では CodeWarrior for Microcontrollers （CodeWarrior for MCUs とも表記される） のバージョンが V6.1 ですが、現在（この記事の執筆時点）では V6.2 が最新になっています。従来タイプの HC08マイコンを使うにあたっては、どちらを利用してもかまいません。すでに V6.1 をインストールしてある方は、そのまま使えるのでご安心ください （V6.0 以前のものはユーザ・モード・モニタが説明通りに使えません）。</p>
<p>　</p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_1.html" target="_blank"><font color="#0000cc"><strong>◆ CodeWarrior for MCUs V6.1 のインストール (1)</strong></font></a></p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_1.html" target="_blank">　http://www.eleki-jack.com/mycom2/2007/11/<br />　codewarrior_for_mcus_v61_1.html</a>&nbsp;</p>
<p>　概要と、CD-ROM を入手した場合のインストーラの起動方法について書かれています。</p>
<p>　CodeWarrior for MCUs V6.1 の CD-ROM は、<a href="https://www.marutsu.co.jp/user/shohin.php?p=46742" target="_blank">マルツパーツ館で 書籍 「試しながら学ぶHC08マイコン入門」</a> を購入すると、オマケで付けてもらうことができます。数に限りがあるでしょうから問い合わせたほうがよいでしょう。<br />　フリースケールの代理店の一つ、<a href="http://www.marubun.co.jp/product/semicon/microprocessor/qgc18e000000djqn.html" target="_blank">丸文（株）では CodeWarrior for MCUs V6.1 の CD-ROM を希望者に無料で配布</a> しているので、そちらを利用することもできます。仕事以外で学生さんや個人の趣味の用途でも問題なく請求できます。<br /></p>
<p>&nbsp;</p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_2.html" target="_blank"><font color="#0000cc"><strong>◆ CodeWarrior for MCUs V6.1 のインストール (2)</strong></font></a></p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_2.html" target="_blank">　http://www.eleki-jack.com/mycom2/2007/11/<br />　codewarrior_for_mcus_v61_2.html</a><font color="#000000">&nbsp;</font></p>
<p>　　freescale のウェブサイトからソフトウェアをダウンロードする場合の入手法と、インストーラの起動方法について書かれています。</p>
<p>　現在ではダウンロードを行うために <font color="#ff8000">ユーザ登録をする必要がなくなっています</font> ので、上記の参照記事よりもっと気軽にダウンロードができるようになりました。 <br />　<a href="http://www.freescale.co.jp/" target="_blank">日本のフリースケールのサイト</a> を開いてみてください。 <br />&nbsp;</p>
<p align="center"><img height="313" src="http://www.eleki-jack.com/mycom2/cw_install01b.jpg" width="400" /></p>
<p>&nbsp;</p>
<p>　このページの中ほどの 【製品】 の下にある 【CodeWarrior開発ツール】 をクリックします。 すると、CodeWarriorのページが表示されます。</p>
<p>&nbsp;</p>
<p align="center"><img height="261" src="http://www.eleki-jack.com/mycom2/cw_install02c.jpg" width="400" /></p>
<p>&nbsp;</p>
<p>　このページの 【ダウンロード（英語）】 というところをマウスでポイントすると、【Special Edition Software（英語）】 という項目が現れるので、クリックします。</p>
<p>&nbsp;</p>
<p align="center"><img height="162" src="http://www.eleki-jack.com/mycom2/cw_install03b.jpg" width="400" /></p>
<p>&nbsp;</p>
<p>　Special Edition の種類がいくつか並んでいるので、HC(S)08/RS08/ColdFire V1用の <font color="#008080"><strong>CodeWarrior for Microcontrollers</strong></font> を見つけ出し、その右端にある 【 Download 】 をクリックします。 CodeWarrior for HCS12(X) Microcontrollers と間違えないように気を付けてください。</p>
<p>　使用許諾の説明文が現れるので、問題がなければ 【 I Accept 】 をクリックします。　するとダウンロードが始まるので、どこかわかりやすいところに保存してください。 筆者はデスクトップに保存しました。 ファイル名は CW_MCU_V6_2_SE.exeで、ファイルサイズは約400Mバイト でした。 ダウンロードができたら、上記参照記事（<a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_2.html" target="_blank">CodeWarrior for MCUs V6.1 のインストール (2)</a>） の後半部分の指示に従ってください。</p>
<p>&nbsp;</p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_3.html" target="_blank"><font color="#0000cc"><strong>◆ CodeWarrior for MCUs V6.1 のインストール (3)</strong></font></a></p>
<p><a href="http://www.eleki-jack.com/mycom2/2007/11/codewarrior_for_mcus_v61_3.html" target="_blank">　http://www.eleki-jack.com/mycom2/2007/11/<br />　codewarrior_for_mcus_v61_3.html</a><font color="#000000">&nbsp;</font></p>
<p>　　<br />　CD-ROM またはダウンロードによってファイルを入手した後、インストーラを起動してから実際にインストールを行う作業手順が書かれています。</p>
<p>&nbsp;</p>
<p></p>
<blockquote>CodeWarrior for MCUs V6.2 をダウンロードした場合は、使い始めてから 30日の間は 「評価版」 として機能します。これは Special Edition の制限がなく、製品版と同じ状態で使うことができます。起動するたびに登録するかどうか聞いてきますので、【Register Later】 をクリックしてください。30日が経過すると自動的に通常の Special Edition になり、登録するかどうかの確認は出なくなります。</blockquote>
<p></p>
<p>&nbsp;</p>
<p><strong><font style="FONT-SIZE: 1.25em">&nbsp;【 HC08スターター・ボード・キットを組み立てる 】<br /></font></strong>　CodeWarrior のインストールが済んだら、早く使ってみたいという気持ちを抑えて、ハードウェア面の準備をしておきましょう。この連載では、<font color="#008080"><strong>HC08スターター・ボード・キットVer.2</strong></font> （川野電子回路設計） を使います。 <a href="https://www.marutsu.co.jp/user/shohin.php?p=35600" target="_blank">マルツパーツ館</a>、<a href="http://www.sengoku.co.jp/modules/sgk_cart/search.php?k3=0&amp;list=2&amp;code=7AV5-K7D2" target="_blank">千石電商</a>、<a href="http://6811.teacup.com/miconfan/shop" target="_blank">マイコン工作ファンSHOP</a> で購入することができます。 参考価格 2,800円（税込み）</p>
<p>　</p>
<p align="center"><img height="320" src="http://www.eleki-jack.com/mycom2/starter01.jpg" width="400" /></p>
<p align="center">キットに含まれる部品 （予告なく代替品に変更されることがあります）</p>
<p>&nbsp;</p>
<p>　<font color="#ff8000">詳しい製作マニュアル</font> がこちらから <a href="http://micon.arrow.jp/uploads/files/HC08_starter_board_kit_manual.pdf" target="_blank">ダウンロード</a> できますので、利用してください。キットに入っている説明書と同じものです。 表面実装部品を使っていないので製作は容易です。専用プリント基板を使っていますから、マニュアルを読みながら進めていけばどなたでも簡単に製作できるでしょう。 完成すると下の写真のようになります。電池ホルダは写っていません。 <br />　</p>
<p align="center"><a href="http://www.eleki-jack.com/mycom2/starter02b.jpg" target="_blank"><img height="217" src="http://www.eleki-jack.com/mycom2/starter02b-thumb-200x217.jpg" width="200" /></a></p>
<p align="center">このジャンパと半固定抵抗の位置を 「<font color="#ff8000">デフォルトのセッティング</font>」 と呼ぶ<br />（クリックで拡大）<br /></p>
<p>&nbsp;</p>
<p>　次回は CodeWarrior と HC08スターター・ボード を使い、C言語による簡単なテストプログラムを動かす予定です。<br />　</p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）</a><br />第2章 　工具の使い方に慣れよう<br />第10章　統合開発環境 CodeWarrior を使ってみる</p>
<p align="right">組み込みエンジニア　川野亮輔<br /></p>]]>
   </content>
</entry>

<entry>
   <title>LEDイルミネーションの製作(第6回 最終回)　応用編・星のまたたき</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/led6.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1751</id>
   
   <published>2008-07-22T01:20:25Z</published>
   <updated>2008-08-18T02:16:14Z</updated>
   
   <summary>　最終回は、応用編として同じ回路で星型オブジェをちらちら点灯させてみます。   ...</summary>
   <author>
      <name>yoshida</name>
      
   </author>
   
      <category term="クリスマス・デコレーションの製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2426" label="16F88" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="65" label="LED" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[　最終回は、応用編として同じ回路で星型オブジェをちらちら点灯させてみます。<br />
<object height="350" width="425"> <param name="movie" value="http://www.youtube.com/v/XUjivJwqcd8" />  <embed src="http://www.youtube.com/v/XUjivJwqcd8" type="application/x-shockwave-flash" height="350" width="425">  </object>
<br /> ]]>
      <![CDATA[●<b>星型のオブジェ</b><br />　原理は雪の結晶と同じですが、頂点が奇数のためにLED 3個ずつ並列の回路がうまいこといきません。LEDを一つダミーとするか、2個と3個の明るさを抵抗で微調整するなど現実的ではありません。そこで、5個直列にして電源を15Ｖ以上（18Ｖ以上がベター）にしました。電流制限抵抗は47Ωです。また、この電圧で今までの雪の結晶を点灯させても多少明るくなる程度で、何の問題もありません。<br />　なお、LEDはチップ型を使って頂点ではなく谷部に透明な接着剤で直接貼り付けました。LEDの取り付けは、この方法が1番簡単です。使った接着剤は多用途型の「スーパーＸ」です。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img alt="チップ取り付け.jpg" src="http://www.eleki-jack.com/mycom2/2008/07/22/%E3%83%81%E3%83%83%E3%83%97%E5%8F%96%E3%82%8A%E4%BB%98%E3%81%91.jpg" class="mt-image-center" style="margin: 0pt auto 2px; text-align: center; display: block;" height="240" width="320" /></span><br />&nbsp;<br /><br />●<b>ちらちら点灯は「１/ｆのゆらぎ」で作る</b><br />　「１/ｆのゆらぎ」とは、周波数が高くなるにつれ反比例して信号レベルが小さくなる波形のことで、「信号レベル－周波数」を両対数グラフにすると下図になります。ゆっくり明滅しながら時折パパッとまたたくようなイメージです。<br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/07/22/%E6%8A%95%E7%A8%BF%E3%82%AF%E3%83%AA%E3%82%B9%E3%83%9E%E3%82%B9%E3%82%A4%E3%83%AB%E3%83%9F%E6%8C%BF%E7%B5%B5_%EF%BC%91%EF%BC%8Ff%E3%82%86%E3%82%89%E3%81%8E.png"><img alt="投稿クリスマスイルミ挿絵_１／fゆらぎ.png" src="http://www.eleki-jack.com/mycom2/2008/07/22/%E6%8A%95%E7%A8%BF%E3%82%AF%E3%83%AA%E3%82%B9%E3%83%9E%E3%82%B9%E3%82%A4%E3%83%AB%E3%83%9F%E6%8C%BF%E7%B5%B5_%EF%BC%91%EF%BC%8Ff%E3%82%86%E3%82%89%E3%81%8E-thumb-200x183.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="183" width="200" /></a></span>
<br />&nbsp;<br /><blockquote>　「１/ｆのゆらぎ」作成方法は数々ありますが、シンプルな間欠カオス法という方法で作成します。0～1の範囲の変数xについて、<br />x&lt;0.5の場合&nbsp;&nbsp; &nbsp;x=x+2×x×x<br />x&gt;=0.5の場合&nbsp;&nbsp; &nbsp;x=x-2×(1-x)×(1-x)<br /></blockquote>でループさせます。<br />　この数式でほぼOKですが、0と1付近で張り付きやすい(点いたまま・消えたままの状態が長く続く)ので実際のプログラムでは0/1に近づいたときにランダムな要素を加えています。このあたりは見る人の感覚なので、点灯させてみて調整するとよいでしょう。<br /><br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/07/22/%EF%BC%91%EF%BC%8F%EF%BC%A6%E6%B3%A2%E5%BD%A2.png"><img alt="１／Ｆ波形.png" src="http://www.eleki-jack.com/mycom2/2008/07/22/%EF%BC%91%EF%BC%8F%EF%BC%A6%E6%B3%A2%E5%BD%A2-thumb-400x205.png" class="mt-image-center" style="margin: 0pt auto 2px; text-align: center; display: block;" height="205" width="400" /></a></span><br /><div align="center">プログラムで作成した１／ｆゆらぎの波形<br /></div>&nbsp;<br /><br />●<b>プログラムを改造する</b><br />　出力0～7のうち0と1をまたたき出力にします。「if (nightcount&lt;STOP_TIME) 」以下を下記のように変更しました。<br />


<pre>if (nightcounti&lt;STOP_TIME) {  // ５時～１０時？
	if((nightcount &amp; 0x3)==0) {	// 速すぎるので四回に一回にする(40ms)
		for(i=0;i&lt;2;i++) {
			x = x1[i];
			if(x&lt;0.5) {
				x = x + 2 * x * x ;
			} else {
				x = x - 2 * (1.0 - x) * (1.0 - x);
			}
			// 1.0と0.0に張付きやすいのでランダム要素を入れる
			if (x&lt;0.005) {
				x = (float)(rand())/256;
			}
			if (x&gt;0.999) {
				x = (float)(rand())/256;
			}
			x1[i] = x;
			x = x * 251.0 + 5.0;		// 完全な消灯にはしない
			led[i] = (unsigned int8)x &gt;&gt; 3;	// 32段階に圧縮
		}
	}
	for(i=2;i&lt;8;i++) {
		cond[i]++;
		if (cond[i]&lt;128) {				// 点灯中
			led[i]=(int8)(32-(cond[i]&gt;&gt;2)); 	// 32段階で暗くなる
		} else {					// 消灯中
			led[i]=0;
			if (cond[i]&gt;term[i]) {		// 消灯終了直前に次の消灯時間を計算しておく
				cond[i]=0;
				term[i]=calc_rand();
			}
		}
	}
}</pre>


<br />　上記のプログラムのコンパイル結果ではPIC16F88のROM領域は46%、RAMは32%の使用なので、まだまだ余裕があります。もっといろいろなことができそうですね。<br />　「またたき」の演算には浮動小数点演算を使います。その演算時間は2個の点灯制御で約1.5ms/20MHzです。8MHzクロックの時は4ms弱かかることになります。多ピンのマイコンでより多くの星をコントロールするように修正するときには処理時間も確認しましょう。<br /><br />　雪の結晶ではなく全部星型にしてしまえば、冬季に限らず一年中飾っておいてもよいですね。<br />　それでは、結晶５個と星2個をいっぺんに点灯させてみましょう。密集して点灯すると賑やかです。<br />
<object height="350" width="425"> <param name="movie" value="http://www.youtube.com/v/liJ5PQYHbiY" />  <embed src="http://www.youtube.com/v/liJ5PQYHbiY" type="application/x-shockwave-flash" height="350" width="425">  </object>


<br /><br /><div align="right">&lt;高野慶一&gt;</div><div><br /></div><div>(2008/08/18 プログラムリストの一部が欠けていたので修正。)<br /><br /></div><div><br /></div>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《3》 英文・和文データシートを眺めよう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/hc08qy4a_3.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1777</id>
   
   <published>2008-07-16T01:09:29Z</published>
   <updated>2008-07-16T01:14:41Z</updated>
   
   <summary>　HC08マイコンを使い始めるにあたって、参考にできる資料はなるべく見ておきたい...</summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2595" label="COPモジュール" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1441" label="HC08" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2597" label="QC16" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2515" label="QY4A" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2598" label="キーボード割り込み" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2599" label="シングル割り込み" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2600" label="データシート" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2601" label="ブロック図" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2602" label="低電圧インヒビット" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2603" label="自動ウェイクアップ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p>　HC08マイコンを使い始めるにあたって、参考にできる資料はなるべく見ておきたいものです。フリースケールに限らず、ほとんどのマイコン・メーカから、自社製品の詳しいデータシートが無料で公開されています。ふた昔前では考えにくいことですね（当時は１冊8,000円も出してデータブックを買っていたことを考えると、非常にありがたいことです）。</p>
<p><br /><br /></p>
<p>
</p><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><img class="mt-image-center" style="margin: 0px auto 20px; display: block; text-align: center;" alt="qy4a_qy4_qc16.jpg" src="http://www.eleki-jack.com/mycom2/qy4a_qy4_qc16.jpg" height="302" width="400" /></span>]]>
      <![CDATA[<p align="center"><strong>左から QY4A , QY4 , QC16 マイコン<br />QC16 には DIPタイプがないので変換基板を使っている</strong></p>
<p><strong><br /></strong>　「データシート」 には、その製品を使うために必要な情報が一通り書かれていますから、ある程度マイコンというものに慣れた人なら、データシートさえ読めばそのマイコンを自由に使いこなすことができます。 とはいえ、実際にはメーカごとにいろいろなクセというか特徴があるので、初めて見るメーカのデータシートの場合は、そうすんなりといかないというのも事実です。</p>
<p><br /><font style="font-size: 1.25em;"><strong>【 HC08マイコンのデータシートを入手しよう 】<br /></strong></font>　この連載で主に使っていく MC908QY4A には、残念ながら日本語のデータシートがありません。 英語がまったく障害にならないという人はよいのですが、筆者のように、あまり英語が得意でない人にしてみれば、日本語のデータシートがある方がありがたいです。<br />　そこで、参考になる日本語データシートもあわせて紹介しておきましょう。</p>
<p><br /><font color="#0000cc"><strong>◆MC68HC908QY4A Data Sheet（英文）</strong></font><br /><a href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC908QY4A.pdf" target="_blank">http://www.freescale.com/files/microcontrollers/doc/data_sheet<br />/MC68HC908QY4A.pdf</a></p>
<p><a href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC908QY4A.pdf" target="_blank"><img src="http://www.eleki-jack.com/mycom2/qy4a_ds_cover.jpg" height="258" width="200" /></a> 
</p><p>
</p><p>　<font color="#008080"><strong>MC908QY4A</strong></font> 最新の英文データシートです（執筆時点では Rev.2　4/2007）。<br /><font color="#ff8000">QT/QY の改良版（Ａ付き）</font>を使うとき、機能・内容の正確な説明や電気的特性を調べる場合にこれを参照します。 <br />　探し方： <a href="http://www.freescale.com/" target="_blank">米国フリースケール</a> のサイトにアクセスして、Support → Documentation を選択。 Enter Keyword に QY4A と入れて、 Search All Documentation をプルダウンして Data Sheets を選び、その右にある Search ボタン ［&gt;&gt;］ をクリックすると出てきます。</p>
<p><br /><font color="#0000cc"><strong>◆MC68HC908QY4データシート（和文）</strong></font><br /><a href="http://www.freescale.co.jp/pdf/mc68hc908qy4j-r1.pdf" target="_blank">http://www.freescale.co.jp/pdf/mc68hc908qy4j-r1.pdf </a></p>
<p><a href="http://www.freescale.co.jp/pdf/mc68hc908qy4j-r1.pdf" target="_blank"><img src="http://www.eleki-jack.com/mycom2/qy4j_ds_cover.jpg" height="254" width="200" /></a> 
</p><p>　<font color="#008080"><strong>MC68HC908QY4</strong></font> の和文データシートです。（Rev.1　10/2003）<br />　改良前の QT/QY（Ａなし）を使うときに参考になります。ただし、これは英文の初版を和訳したものであり、QT/QY（Ａなし）の機能・内容を正確に記述できていない部分があります。 たとえば、QT/QY（Ａなし）の新しい英文データシートには、 TIM のクロック・ソースを外部から入力できる機能が記載されています。 <br />　探し方： この和文データシートは内容が古いためか、残念ながらフリースケールのサイトで検索しても探すことができません。それでもしっかり存在していますので、<font color="#ff8000">日本語の資料</font>が見たいというときは非常に参考になります。 QT/QY（Ａなし）の最新英文データシートを探す場合は、上記の QY4A と同様にして Enter Keyword を QY4 として検索してください　（執筆時点の最新は Rev.5 で、表紙に　7/2005 と記載あり）。</p>
<p><br /><font color="#0000cc"><strong>◆MC68HC908QC16データシート（和文）</strong></font><br /><a href="http://www.freescale.co.jp/pdf/MC68HC908QC16J_Rev1.pdf" target="_blank">http://www.freescale.co.jp/pdf/MC68HC908QC16J_Rev1.pdf </a></p>
<p><a href="http://www.freescale.co.jp/pdf/MC68HC908QC16J_Rev1.pdf" target="_blank"><img src="http://www.eleki-jack.com/mycom2/qc16j_ds_cover.jpg" height="258" width="200" /></a> </p>
<p>　<font color="#008080"><strong>MC908QC16</strong></font> の和文データシートです。（執筆時点では Rev.1　7/2007）<br />　QC16 は QB8 を強化したような内容のマイコンで、シリアル通信モジュールも内蔵しています。 その他の機能モジュールはほとんど QTxA/QYxA と共通なので、QB8 ユーザや QY4A ユーザにもたいへん参考になります。何しろ 2008年 6月に登録されたばかりの<font color="#ff8000">新しい日本語資料</font>なのが嬉しいです。<br />　探し方： <a href="http://www.freescale.co.jp/" target="_blank">日本のフリースケール</a> のサイトにアクセスして、サポート → ドキュメント → 日本語資料 と選択し、8/16ビット・マイクロコントローラ関連資料 をクリックすると出てきます。</p>
<p>　ここで紹介したデータシートは Web 上で参照することができますが、いったん自分のパソコンに保存して、いつでもそれを開けるようにしておくことをお勧めします。</p>
<blockquote>　その他注意すること。　MC908QY8 は末尾に A が付きませんが、改良前のQT/QY の仲間ではなく、QB4/QB8 の仲間ですので間違えないようにしてください。データシートも QB8 と同じものを参照する必要があります。 <br /><a href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC908QB8.pdf" target="_blank">http://www.freescale.com/files/microcontrollers/doc/data_sheet<br />/MC68HC908QB8.pdf</a> <br />　また、古い低電圧タイプ(HLC) の QT/QY の英文データシートは ↓こちらです。 <a href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HLC908QY4.pdf" target="_blank">http://www.freescale.com/files/microcontrollers/doc/data_sheet<br />/MC68HLC908QY4.pdf</a></blockquote>
<p>&nbsp;</p>
<p><font style="font-size: 1.25em;"><strong>【 HC08マイコンのブロック図を眺める 】<br /></strong></font>　それでは、QY4A のデータシート MC68HC908QY4A.pdf を開いてみましょう。<br /><strong>Chapter 1　General Description　1.3 MCU Block Diagram</strong> （第1章 概要　1.3 MCUのブロック図）　を見てください。<br />　下図に示したのは、筆者が日本語に翻訳したものです。フリースケール・セミコンダクタ社の承諾を得て掲載させていただきました。 クリックすると、もう少し大きい図が開きます。</p>
<p>&nbsp;</p>
<p align="center"><a href="http://www.eleki-jack.com/mycom2/qy4a_block_diagram.gif" target="_blank"><img src="http://www.eleki-jack.com/mycom2/qy4a_block_diagram-thumb-400x364.gif" height="364" width="400" /></a></p>
<p>　　　　　　(C) freescale semiconductor</p>
<p>　どのようなモジュールが含まれているか、ざっと眺めておいてください。少し耳慣れない専門用語がありますから、簡単に説明しておきます。<br /><font color="#0000cc"><strong>◆キーボード割り込み</strong></font>　入力端子をこの機能に割り当てておくと、入力レベルが変化したときに割り込みを発生できます。ストップ状態からの復帰にも使えます。 KBI0～KBI5 端子を個別に設定して使うことができます。<br /><font color="#0000cc"><strong>◆シングル割り込み</strong></font>　いわゆる外部割り込みです。IRQ 端子を使うことができます。<br /><font color="#0000cc"><strong>◆自動ウェイクアップ</strong></font>　タイマ・モジュールとは独立したハードウェアで、周期的に割り込みを発生させることができます。ストップ状態から定期的に復帰させるときに使用します。<br /><font color="#0000cc"><strong>◆低電圧インヒビット</strong></font>　電源電圧が低下したことを検出できます。検出のしかたについてはまた改めて説明します。<br /><font color="#0000cc"><strong>◆COPモジュール</strong></font>　コンピュータ正常動作といって、一般にいうところの WDT（ウォッチドッグ・タイマ）のことです。プログラムが暴走した場合に備えて設定することができます。<br /><font color="#0000cc"><strong>◆モニタROM と ブレーク・モジュール</strong></font>　主にデバッガが使用します。特別な場合を除いて普通はユーザが意識しなくても大丈夫です。</p>
<p>　その他には、とくに変わった専門用語はないと思います。PTA、PTB というのは汎用入出力ポートA，B のことですし、 ADCというのは A-Dコンバータのことです。<br />　関心のある方は QC16 和文データシートなども見てみると面白いでしょう。 ただし、QY4A と QC16 で構造が異なる機能モジュールもあるので、両方を参照する場合はよく見比べてみてください。</p>
<p><br />　次回は CodeWarrior のインストールを簡単に紹介して、HC08スターター・ボード・キット Ver.2 の組み立てまでを説明する予定です。</p>
<p>『PDF ファイルの扱いについて』<br />データシートは PDF 形式なので、表示するためには表示ソフトが必要です。<br />アドビシステムズ社のサイト（<a href="http://www.adobe.com/jp/products/reader/" target="_blank">http://www.adobe.com/jp/products/reader/</a>） から　AdobeReader が無料でダウンロードできます。</p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）</a><br />Appendix F 表F-1 MC908QY4A と KMC908QY4A の特徴比較（機能一覧）<br />　</p>
<p align="right">組み込みエンジニア　川野亮輔<br /></p>]]>
   </content>
</entry>

<entry>
   <title>LEDイルミネーションの製作(第5回)　マイコンのプログラムの流れとポイント</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/led5.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1750</id>
   
   <published>2008-07-14T01:19:33Z</published>
   <updated>2008-08-18T02:30:38Z</updated>
   
   <summary>　前回のマイコン動作を実際のプログラムで確認してみましょう。 ...</summary>
   <author>
      <name>yoshida</name>
      
   </author>
   
      <category term="クリスマス・デコレーションの製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2426" label="16F88" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="65" label="LED" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      　前回のマイコン動作を実際のプログラムで確認してみましょう。 
      <![CDATA[●<b>ヘッダ・ファイル</b>
<pre>#include &lt;16F88.h&gt;

// Clock Select
//#define  INT8M
//#define  EXT10M
#define  EXT20M

#ifdef   INT8M
   #fuses NOWDT,INT_RC, PUT, NOMCLR, BROWNOUT, NOLVP, CCPB0, NOCPD, NOWRT, NODEBUG, NOPROTECT, FCMEN, IESO
#else
   #fuses NOWDT,HS, PUT, NOMCLR, BROWNOUT, NOLVP, CCPB0, NOCPD, NOWRT, NODEBUG, NOPROTECT, FCMEN, IESO
#endif

#use fast_io(B)
#use fast_io(A)</pre>　3行目以下の部分、ClockSelectは、使うクロック・ソースのコメントを外します。内蔵8MHz、外部10MHz、外部20MHzの三種類を想定しており、上記の例では外部20MHzを設定しています。この部分は、後で説明する定時起動タイマの時間計算に影響します。<br />　1行目と末行はデバイス設定に必須な記述です。<br /><br />●<b>グローバル変数</b><br />
<pre>unsigned int8	led[8];		// PWM作成用バッファ(明るさ設定)
unsigned int16	cond[8];		// 点灯時のカウント
unsigned int16	term[8];		// 消灯時間カウント
unsigned int8	scanc;		// PWMカウント(32カウント)
unsigned int8	timec;		// ウェイト作成用カウンタ
unsigned int32	nightcount;	// 夜間タイマ計算カウンタ</pre>
　変数led、cond、termは前回の説明にありましたが、オブジェ8個分確保するために8個の配列にしています。<br />　timecはメイン・プログラムで割り込み回数をカウントして指定数のウェイトを作成するのに使います。nightcountは一日のうち午後五時から十時までの間点灯させるための定時起動タイマ変数です。&nbsp;<br /><br />●<b>Timer0割り込み</b><br />

<pre>#int_RTCC
RTCC_isr()		// 256us(204.8us:10/20MHz) timer
{
	if(timec!=0) timec--;		// ウェイト・カウンタ-1
	if(++scanc&gt;=32) {		// PWMカウンタ+1
		scanc = 0;
	}
   // 各オブジェの点灯制御
	if (scanc&gt;=led[0]) output_bit(PIN_A0,0); else output_bit(PIN_A0,1);
	if (scanc&gt;=led[1]) output_bit(PIN_A1,0); else output_bit(PIN_A1,1);
	if (scanc&gt;=led[2]) output_bit(PIN_B0,0); else output_bit(PIN_B0,1);
	if (scanc&gt;=led[3]) output_bit(PIN_B1,0); else output_bit(PIN_B1,1);
	if (scanc&gt;=led[4]) output_bit(PIN_B2,0); else output_bit(PIN_B2,1);
	if (scanc&gt;=led[5]) output_bit(PIN_B3,0); else output_bit(PIN_B3,1);
	if (scanc&gt;=led[6]) output_bit(PIN_B4,0); else output_bit(PIN_B4,1);
	if (scanc&gt;=led[7]) output_bit(PIN_B5,0); else output_bit(PIN_B5,1);
}　</pre>
　RTCCとはPICのTimer0の特別な呼び方です。#int_TIMER0としても同じことです。この中では前半はtimec、scancのカウント、後半の8行は、scancと明るさ変数ledと比較してPWMの作成を行っています。<br />&nbsp;<br />●<b>乱数計算ルーチン</b><br />

<pre>// 8ビット・ランダム作成(ビルトイン関数rand()でも可)
unsigned int8	rand()
{
	static	unsigned int32	ival;

	ival1 = ival1 * 214013 + 2531011;
	ival1 = (ival1 &gt;&gt; 16);
	return((int8)(ival1 &amp; 0xff));
}

// 2.62s(256)-5.24s(511)の間の乱数に変換
int16	calc_rand()
{
	int16	i;

	i=(int16)rand();
	i=i+256;
	return i;
}</pre>　term用の乱数を作成します。まず、8ビットの乱数を作成してから16ビットに展開し、512～1024の範囲に拡張します。rand()関数は某コンパイラで使われていた簡易乱数作成サブルーチンです。CCS-Cにもビルトイン乱数発生rand()が存在するので、どちらを使ってもかまいません。

<br /><br />●<b>定時起動タイマ定数の宣言</b>

<pre>#define	START_TIME	0
#ifdef   INT8M
   #define	STOP_TIME	1757812L	// 1/(256 * 40)us * 3600 * 5H
   #define	HOUR24	8437500L	// 1/(256 * 40)us * 3600 * 24H
#else
   #define	STOP_TIME	2197266L	// 1/(204.8 * 40)us * 3600 * 5H
   #define	HOUR24	10546875L	// 1/(204.8 * 40)us * 3600 * 24H
#endif</pre>

　五時から十時までの五時間分：STOP_TIME、2４時間分：ＨＯＵＲ24が定義されています。単位は割り込み周期を40倍した約10mSですが、ヘッダ・ファイルで設定したとおりクロック・ソースの違いで内容が異なることになるので、それを吸収するためにクロック別に宣言します。

<br /><br />●<b>メイン・ループ</b>
<pre>// メイン・ループ
void	mloop()
{
	int8	i;

	for(;;) {
  		timec = 40;	// 10.24ms
		if (nightcount&lt;STOP_TIME) {  // ５時～１０時?
			for(i=0;i&lt;8;i++) {
				cond[i]++;
				if (cond[i]&lt;128) {     // 点灯中
					led[i]=(int8)(32-(cond[i]&gt;&gt;2)); 	// 32段階で暗くなる
				} else {               // 消灯中
					led[i]=0;
					if (cond[i]&gt;term[i]) {
						cond[i]=0;
						term[i]=calc_rand();	// 消灯終了直前に次の消灯時間を計算しておく
					}
				}
			}
		} else {                     // １０時から翌日５時は強制消灯
			for(i=0;i&lt;8;i++) led[i]=0;
			if (nightcount &gt; HOUR24) {
				nightcount = 0;
			}
		}
		while(timec!=0);             // ゼロになるまで待つ
		nightcount++;
	}
}</pre>

　メイン・ループ内はfor(;;)の無限ループです。1回のループは割り込み周期×40で、timec変数で作成します。<br />　ループの初めではnightcountを調べて、午後十時以降・翌日五時までならば全部のLEDを消灯させます。それ以外は、8個のオブジェを制御します。forループで0～7までを前回の説明に沿った方法で計算し、led[]に格納します。格納された値は、先の割り込みプログラムの中でPWM点灯処理します。

<br /><br />●<b>メイン・プログラム</b>
<pre>void main()
{
	int	i;

	scanc = 0;
	for(i=0;i&lt;8;i++) cond[i]=0;
	for(i=0;i&lt;8;i++) term[i]=calc_rand();
	nightcount=0;
	output_a(0);
	output_b(0);
	setup_oscillator(OSC_8MHz); 	// 内蔵RC発振のみ必要
	setup_adc_ports(NO_ANALOGS|VSS_VDD);
	setup_adc(ADC_OFF);
	setup_spi(FALSE);
	set_tris_a(0x00);			// RA all out
	set_tris_b(0x00);			// RB2:in other out
#ifndef   EXT20M
	setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2); // 8/10MHz
#else
	setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4); // 20MHz only
#endif
	setup_timer_1(T1_DISABLED);
	setup_comparator(NC_NC_NC_NC);
	setup_vref(FALSE);
	enable_interrupts(INT_RTCC);
	enable_interrupts(GLOBAL);
	id = read_eeprom(0);
	mloop();
}</pre>

　変数と内蔵モジュールの初期設定を行っています。ここでもクロック・ソースによって割り込み周期の設定が変わっています。

<br />　すでに、おわりのこととは思いますが、定時起動タイマとは時間を計数しますが、時計ではありませんので、最初に電源を投入する時間で決まってしまいます。つまり五時～十時にしたければ、午後五時に電源を投入してください。時間精度は内蔵RCで数分/日、セラロックで数十秒/日、水晶発振子では数分/月です。<br />　したがって、内蔵RCでは1週間に1回程度、決まった時間に電源を入れなおす必要が出てきます。また、ずれる割合がある程度解った時は、プログラムソースのSTOP_TIMEやHOUR24を調整してしまうという手もあります。

<br />　次回は応用編です。

<br /><div align="right">&nbsp;&lt;高野慶一&gt;</div><br /><blockquote>（編集部注）　リストの右側が切れて表示されていますが、データは入っています。全選択で本文をコピーしていただき、メモ帳などに張り込んでいただければ、リストを取り出すことができます。</blockquote>
(2008/08/18 メインループプログラムの一部が欠けていたので修正。)]]>
   </content>
</entry>

<entry>
   <title>LEDイルミネーションの製作(第4回)　マイコンの動作の概要</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/led4.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1749</id>
   
   <published>2008-07-10T01:17:29Z</published>
   <updated>2008-07-10T04:51:34Z</updated>
   
   <summary>連載の前半ではハードを中心に説明しました。第1回　　クリスマス・イルミネーション...</summary>
   <author>
      <name>yoshida</name>
      
   </author>
   
      <category term="クリスマス・デコレーションの製作" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="2426" label="16F88" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="680" label="PWM" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[連載の前半ではハードを中心に説明しました。<br /><ul><li><a href="http://www.eleki-jack.com/mycom2/2008/05/1.html">第1回</a>　　クリスマス・イルミネーション用に、窓に雪の結晶を光らせるオブジェの概要と使用したマイコン</li><li><a href="http://www.eleki-jack.com/mycom2/2008/06/led2led.html">第2回</a>　結晶の製作とLEDの実装</li><li><a href="http://www.eleki-jack.com/mycom2/2008/06/led3.html">第3回</a>　組み立てと配線</li></ul><br />　後半はソフトウェアを説明していきます。<br />　第4回は「パッ」と点いて「ジワーッ」と消えていく動作をマイコンで実現している方法を説明します。<br /><br /> ]]>
      <![CDATA[●<b>メイン・プログラムと周期割り込み</b><br />　光り方やタイミングはメイン・プログラムで作成しています。また、一定周期で割り込みを発生させ、その中でPWMの出力、タイミング用の基本時間を作成します。その橋渡しは変数を使います。<br />　メイン・プログラムで明るさを算出したときはledという変数に格納しておけば、割り込みで勝手に出力してくれます。また、割り込みではtimecという変数を調べ、0より上のときに-1しています。メイン・プログラムではtimecに数値を格納しておいて0になるのを待つことでウェイトを作ることができるのです。<br /><br />●<b>光り方はノコギリ波</b><br />　「パッ」と点くときは、明るさに127をセットし、約10msごとに一つずつ減らしていけば約1.2秒かけて「ジワーッ」と消えていきます。その後ランダムな時間消灯させます。実際には、約10msごとに1ずつ加算されるcondという変数を基準にし、ランダムな消灯時間をtermという変数に格納します。termの値は256～511(時間にして約2.5～5.2秒)の範囲です。この二つの変数から、下記のルールで繰り返すことで一連の光り方を実現しています。<br /><br /><blockquote>　<u>ルール</u><br />condが128未満の時は(128-cond)を明るさ出力にセットする。<br />condが128以上のときは、明るさは0にして、termと比較しterm未満の場合は何もしない。term以上になったら、condをゼロにして、明るさを127にセットし、termを再計算して次のランダムな消灯時間を決めておきます。<br /></blockquote>&nbsp;<br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/07/10/3-1.png"><img alt="3-1.png" src="http://www.eleki-jack.com/mycom2/2008/07/10/3-1-thumb-400x133.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="133" width="400" /></a></span><div align="center">ノコギリ波プログラム<br /><br /></div>　これをさらに、8個分をループさせて全部を制御します。<br /><br />●<b>明るさの分解能は32段階</b><br />　実際は後述する理由から明るさは32段階です。人間の目にはこの程度の分解能でも段階的な変化には見えないものです。0～127の128段階を32段階に減らすには右2シフトして1/4にします。式は((128-cond)&gt;&gt;2)となります。<br /><br />●<b>マイコンで時間を計数する</b><br />　時間計数にはタイマ・モジュールを使います。今回のPICでは3個あるタイマのうちTimer0だけを使用し、オーバフローしたところで割り込みを発生させ、定期イベントを起こします。<br />　具体的には原振が8MHzの場合、主クロックは2MHz、その1/2のクロックをタイマに入力します。256カウントで割り込みが入るので、その周期は256μsということになります。メイン・プログラムではこの周期を40カウントした10.24msで上記ノコギリ波作成などのタイミングを作り、それをさらに8437500 カウントして24時間を計測します。<br />　割り込みの中では、メイン・プログラムから橋渡し変数ledに書き込まれた明るさ数値をPWMとして出力しています。<br /><br />●<b>PWM信号を発生させる</b><br />　アナログ回路のノコギリ波とコンパレータの組み合わせと同じことを割り込みごとにソフトウェアで行います。一回の割り込みで+1ずつ増えるscancという変数を用意します。scancは32になると0に戻します。これがノコギリ波の役割をしています。毎回明るさ変数とscancを比較して明るさが大きければ出力をHigh、以下ならばLowにセットします。PWMの周期は割り込み32回分なので、256μs×32で8.192ms(8MHzクロックの場合)となります。<br />&nbsp;<br /><span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/2008/07/10/p3-2.png"><img alt="p3-2.png" src="http://www.eleki-jack.com/mycom2/2008/07/10/p3-2-thumb-400x335.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="335" width="400" /></a></span><div align="center">PWM説明<br /></div><br />　この周期の選定ですが、一般的にはちらつきを防ぐには30ms以内の周期にします。そのために分解能は30ms/256μs=117以下となりますが、シフトに適する117以下の2の倍数は64です。今回の作品は離れた距離から観るため、ちょっと視線を動かしただけでちらつく可能性が大きいので、もう一段階周期を短くして32としました。このため分解能が犠牲になりました。<br /><br />　次回は、実際のマイコンのプログラムの流れとポイントを説明します。<br /><br /><div align="right">&lt;高野慶一&gt;</div><div></div>]]>
   </content>
</entry>

<entry>
   <title>HC08マイコンの使い方QY4A編 -《2》 HC08マイコンを購入しよう</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/_hc08qy4a_2_hc08.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1736</id>
   
   <published>2008-07-09T01:17:30Z</published>
   <updated>2008-07-09T06:12:30Z</updated>
   
   <summary>　前回は従来型の HC08マイコンについて簡単な紹介をしました。今回からはマイコ...</summary>
   <author>
      <name>kawano</name>
      <uri>http://www.cts-net.ne.jp/~kawano-r/</uri>
   </author>
   
      <category term="HC08マイコンの使い方QY4A編" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1441" label="HC08" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2548" label="HC08スターター・ボード・キット" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="837" label="HCS08" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="2550" label="MC908QY4A" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1118" label="RS08" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<p>　前回は従来型の HC08マイコンについて簡単な紹介をしました。今回からはマイコン初心者（またはHC08マイコン初心者）の方が実際に HC08マイコンを使い始めることを想定して、役に立つ情報を紹介していきます。<br /></p>
<p></p>
<p align="center"><img height="301" src="http://www.eleki-jack.com/mycom2/lotus_fs_logo.jpg" width="400" /></p>
<p></p>
<p><br />&nbsp;</p>]]>
      <![CDATA[<p><font style="FONT-SIZE: 1.25em"><strong>【 HC08マイコンの種類を知る 】<br /></strong></font>　この連載では主に MC908QY4A という 16 ピンのマイコンを使いますが、HC08マイコンを秋葉原や大阪日本橋、またはインターネット・ショップで購入する際、どれを買えばよいのか迷うかもしれません。そこで、まずはマイコンの選び方を説明します。<br />　フリースケールの HC08マイコンは、大きく分けて次の三つに分類できます。</p>
<p><font color="#0000cc"><strong>◆従来からある HC08 マイコン</strong></font> ： フラッシュROM とは別の領域に作りこまれたマスクROM にモニタ・プログラムが格納されていて、1本の線でパソコンと接続してフラッシュ書き込み・デバッグができる。MC908QY4A , MC908QB8 , MC908QC16 , MC68HC908JB8 など。</p>
<p><font color="#0000cc"><strong>◆HCS08 マイコン</strong></font> ： BDM インターフェースを備えたわりと新しいタイプで、単に S08 マイコンとも呼ばれる。MC9S08QG8 , MC9S08QD4 , MC9S08QE128 など。</p>
<p><font color="#0000cc"><strong>◆RS08 マイコン</strong></font> ： HCS08マイコンの CPU コアを 30%以上も縮小して、コストを極限まで抑えたもの。BDM インターフェースを備えている。MC9RS08KA2 , MC9RS08KA8など。</p>
<p>　これらをすべてひっくるめて HC08マイコンと呼ぶこともあります。<br />　ただしこの連載では、今後 HC08 マイコンと言えば HCS08 や RS08 ではなく従来からある HC08 マイコンを指すことにします。ご承知置きください。</p>
<p>　そんなわけで、これから扱う HC08 マイコンは、型番で言えば <font color="#008080"><strong>MC908xx や MC68HC908xx</strong></font> （xx には何らかの文字・数字が入る） になります。間違えないように覚えておいてください。　</p>
<p><font style="FONT-SIZE: 1.25em"><strong>【 HC08マイコンの販売店を知る 】<br /></strong></font>　次に、どこで買うことができるか、ということについて具体的に説明します。<br />　それぞれのインターネット・ショップで型番検索をするときには、キーワード <font color="#008080"><strong>C908</strong></font> で探すと上手に検索できます （くどいようですが HCS08 や RS08 は除外しています）。</p>
<blockquote>
<p>型番について大雑把な説明をしておきます。例として、QY4 には改良型の MC908QY4A と改良前の MC68HC908QY4 があります。ところが MC908QY4A は MC68HC908QY4A と表記される場合もあります。A が付いているかどうかで見分けてください。MC908QB8 と MC68HC908QB8 は同じものです。また、末尾にCP , MP が付いているのは DIP パッケージであることを示しています。最後に E が付いているものは鉛フリーの環境対応型であることを示しています。&nbsp; </p></blockquote>
<p align="center">　　　　<a href="http://www.marutsu.co.jp/" target="_blank"><img height="180" src="http://www.eleki-jack.com/mycom2/marutsu01.jpg" width="320" /></a></p>
<p><strong><a href="http://www.marutsu.co.jp/" target="_blank">◆マルツパーツ館</a></strong>（秋葉原、大阪日本橋、福井など全国12 店舗と、通販）　・・・・・ HC(S)08マイコン各種、HC08スターター・ボード・キットVer.2 、書籍 「試しながら学ぶHC08マイコン入門」 ミニマイコン扇風機製作<a href="https://www.marutsu.co.jp/user/shohin.php?p=46738" target="_blank">部品セット</a> を販売中。<br />　執筆時点における取り扱い品目（HC08マイコンに限る） MC68HC908QY1CP , MC68HC908QY2CP , MC908QB4CPE , MC908QT2ACPE , MC908QT4ACPE , MC908QY8CPE , MC68HC908QT1CP , KMC908QY4A</p>
<p>&nbsp;</p>
<p align="center"><a href="http://www.sengoku.co.jp/" target="_blank"><img height="180" src="http://www.eleki-jack.com/mycom2/sengoku01.jpg" width="320" /></a></p>
<p><strong><a href="http://www.sengoku.co.jp/" target="_blank">◆(株) 千石電商</a></strong>（秋葉原、大阪日本橋、通販）　・・・・・HC(S)08マイコン各種、HC08スターター・ボード・キットVer.2 を販売中。<br />　執筆時点における取り扱い品目（HC08マイコンに限る） MC68HC908QY1CP , MC68HC908QY2CP , MC68HC908QY4ACPE(MC908QY4ACPE) , MC68HC908QT1ACPE(MC908QT1ACPE) , MC68HC908QT2ACPE(MC908QT2ACPE) , MC68HC908QT4ACPE(MC908QT4ACPE) , MC908QB4CPE , MC908QB8CPE　カッコ内には別名を示しました。</p>
<p><strong><a href="http://www.corestaff.co.jp/" target="_blank">◆コアスタッフ</a></strong><a href="http://www.corestaff.co.jp/" target="_blank"><strong></strong><strong><a href="http://www.sengoku.co.jp/" target="_blank">(株) </a></strong></a>（通販）　・・・・・Zaikostore に HC(S)08 いろいろあります。<br />　取り扱い品目・・・・・自社在庫、C908 で検索してみると、即日出荷可能な商品がたくさん出てきます。</p>
<p><strong><a href="http://www.rswww.co.jp/" target="_blank">◆アールエスコンポーネンツ</a></strong>（通販）　・・・・・キーワード freescale で検索すると多種多様な品揃えが見られます。<br />　取り扱い品目・・・・・ C908 で検索すると、即日出荷可能な商品がたくさん出てきます。<br />DIP ではありませんが <a href="http://www.freescale.co.jp/pdf/MC68HC908QC16J_Rev1.pdf" target="_blank">日本語データシート が出たMC908QC16</a> もあります。</p>
<p><strong><a href="http://www.wakamatsu-net.com/biz/" target="_blank">◆</a></strong><a href="http://www.wakamatsu-net.com/biz/" target="_blank"><strong></strong><strong><a href="http://www.sengoku.co.jp/" target="_blank">(株) </a></strong></a><strong><a href="http://www.wakamatsu-net.com/biz/" target="_blank">若松通商</a></strong>（秋葉原、通販）　・・・・・DIP版HC(S)08 と開発ツールを販売中。<br />　執筆時点における取り扱い品目（HC08マイコンに限る） MC68HC908QB8MP(MC908QB8MP)　カッコ内には別名を示しました。 MP は温度保証範囲の広い DIP品です。</p>
<p><strong><a href="http://www.kamaden.com/" target="_blank">◆</a></strong><a href="http://www.kamaden.com/" target="_blank"><strong></strong><strong><a href="http://www.sengoku.co.jp/" target="_blank">(株) </a></strong></a><strong><a href="http://www.kamaden.com/" target="_blank">カマデン</a></strong>（東京・蒲田、通販）　・・・・・DIP版HC(S)08 と開発ツールを販売中。<br />　執筆時点における取り扱い品目（HC08マイコンに限る） MC68HC908QT2CP , MC68HC908QY4CP , MC908QB8MPE , MC908JL8CPE , MC908AP16ACB , MC68HC908JB8JPE 蒲田のお店では目に付くところには並んでいませんでした。店員さんに声を掛けると出してくれます。</p>
<p><strong><a href="http://www.digikey.jp/" target="_blank">◆Digi-Key Corporation Japan</a></strong>（通販）　・・・・・海外通販の日本窓口です（日本語で注文して、円で買えます）。<br />　キーワードC908 で検索 → 「在庫品目」にチェックマ－クを付けて再検索 → マイクロコントローラをクリック →　実に 220点もの HC08 製品が出てきます。</p>
<p><strong><a href="http://6811.teacup.com/miconfan/shop" target="_blank">◆マイコン工作ファンSHOP</a></strong>（通販）　・・・・・筆者のサイト 「マイコン工作の実験室」 の関連ネットショップ。HC08マイコン各種、HC08スターター・ボード・キットVer.2 を販売中。<br />　執筆時点における取り扱い品目（HC08 マイコンに限る） MC908QY4A , MC908QB8 , MC908JB16 , MC68HC908JB8 , MC68HLC908QY4（特価品の100円マイコン） などがあります。</p>
<p>　上記の販売店にて、お好みの HC08マイコンを購入してください。とくに QY4Aマイコン を購入していただくと、これからの実験がスムースに進みます。 なお、まだ買っていない方は HC08 スターター・ボード・キットVer.2 を購入することを強くお勧めします（キットにはMC908QY4A が１個入っています）。</p>
<p></p>
<p></p>
<p>　次回は、英文データシートと和文データシート、<a href="http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC908QY4A.pdf" target="_blank">QY4A</a> と <a href="http://www.freescale.co.jp/pdf/MC68HC908QC16J_Rev1.pdf" target="_blank">QC16</a> マイコンのブロック図 について説明します。<br />&nbsp;</p>
<p align="center"><a href="http://www.freescale.co.jp/" target="_blank"><img height="175" src="http://www.eleki-jack.com/mycom2/fs_hc08qy.jpg" width="270" /></a></p>
<p>　　　　　　　　　　　　　　　(C) freescale semiconductor </p>
<p>『参考になるWebサイト』<br />フリースケール 8ビット・マイクロコントローラ（製品の検索・絞り込みができる）<br />　<a href="http://www.freescale.co.jp/products/8bit/index.html" target="_blank">http://www.freescale.co.jp/products/8bit/index.html</a><br />フリースケール 8ビット・マイクロコントローラ開発ツール概要<br />　<a href="http://www.freescale.co.jp/products/8bit/dvlp_tool.html" target="_blank">http://www.freescale.co.jp/products/8bit/dvlp_tool.html</a><br />エレキジャックWebSite連載　超Low-EndマイコンRS08を使おう（田中範明氏）<br />　<a href="http://www.eleki-jack.com/mycom2/hcs08hc08/lowendrs08/" target="_blank">http://www.eleki-jack.com/mycom2/hcs08hc08/lowendrs08/</a><br />筆者のサイトにあるリンク集<br />　<a href="http://www.cts-net.ne.jp/%7Ekawano-r/" target="_blank">http://www.cts-net.ne.jp/~kawano-r/</a>　にアクセスして　■ HC(S)08 LINK</p>
<p>『参考文献』<br /><a href="http://shop.cqpub.co.jp/hanbai/books/46/46051.html" target="_blank">「試しながら学ぶHC08マイコン入門」 （CQ出版）<br /></a>Appendix A　工具や部品の購入先<br />Appendix C　モトローラ系マイクロコントローラの歴史<br />Appendix D　フリースケールの8ビットマイコンと開発ツール</p>
<p align="right">組み込みエンジニア　川野亮輔</p>
<p>&nbsp;</p>]]>
   </content>
</entry>

<entry>
   <title>超Low-EndマイコンRS08を使おう - MC9RS08KA2に多くのLEDを接続する (13)</title>
   <link rel="alternate" type="text/html" href="http://www.eleki-jack.com/mycom2/2008/07/lowendrs08_mc9rs08ka2led_13.html" />
   <id>tag:www.eleki-jack.com,2008:/mycom2//4.1526</id>
   
   <published>2008-07-07T01:47:03Z</published>
   <updated>2008-07-07T02:34:17Z</updated>
   
   <summary>超Low-EndマイコンRS08を使おう #090</summary>
   <author>
      <name>noritan.org</name>
      <uri> http://noritan.org/</uri>
   </author>
   
      <category term="超Low-EndマイコンRS08を使おう" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="1086" label="CodeWarrior" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1088" label="MC9RS08KA2" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1118" label="RS08" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="648" label="USBSPYDER08" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="1126" label="デバッガ" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.eleki-jack.com/mycom2/">
      <![CDATA[<u><big>プログラムを実行する</big></u>
<p>
　プログラムができあがりました。
<strong>USBSPYDER08</strong>を使って、マイコンにプログラムを書き込み実行します。
</p>
]]>
      <![CDATA[<p>　メニュー・バーから
<strong>Project</strong> → <strong>Make</strong>を選択するか、
<strong>F7</strong>キーを押してコンパイルを行います。
プロジェクト・ウィンドウの上のほうにある<strong>Make</strong>ボタンを
クリックすることもできます。
</p>
<p>　さらに、メニュー・バーから
<strong>Project</strong> → <strong>Debug</strong>を選択するか、
<strong>F5</strong>キーを押してデバッガを呼び出します。
プロジェクト・ウィンドウの上のほうにある<strong>Debug</strong>ボタンを
クリックすることもできます。
</p>
<span class="mt-enclosure mt-enclosure-image"><img alt="Make &amp; Debugボタン" title="Make &amp; Debugボタン" src="http://www.eleki-jack.com/mycom2/noritan/rs08compiler-05-52.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="132" width="400" /></span>
<p>　デバッガが開いたら、
メニュー・バーから
<strong>Run</strong> → <strong>Start/Continue</strong>を選択するか、
<strong>F5</strong>キーを押すとプログラムの実行が始まります。
ツール・バーにある<strong>Start/Continue</strong>ボタンを
クリックして、実行を開始することもできます。
</p>
<span class="mt-enclosure mt-enclosure-image"><img alt="Start/Continueボタン" title="Start/Continueボタン" src="http://www.eleki-jack.com/mycom2/noritan/rs08compiler-05-38.png" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="120" width="400" /></span>
<p>　実行が始まると、0.5秒ごとにLEDが順番に点灯します。
</p>
<span class="mt-enclosure mt-enclosure-image"><img alt="順番に光が移動するLED" title="順番に光が移動するLED" src="http://www.eleki-jack.com/mycom2/noritan/rs08compiler-06-18.jpg" class="mt-image-center" style="margin: 0pt auto 20px; text-align: center; display: block;" height="300" width="400" /></span>
<div style="text-align: center;"><a style="left: 330px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab-07351875468046573 visible ontop" href="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469"></a><a style="left: 330px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab-07351875468046573 visible ontop" href="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469"></a><a style="left: 330px ! important; top: 0px ! important;" title="Click here to block this object with Adblock Plus" class="abp-objtab-07351875468046573 visible ontop" href="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469"></a><a style="left: 271px ! important; top: 0px ! important;" title="Adblock Plus クリックでブロックします" class="abp-objtab-04601689256037593 visible ontop" href="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469"></a><object height="350" width="425">
 <param name="movie" value="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469" />
 <param name="wmode" value="transparent" />
 <param name="vid" value="288230376152118469" />
 <embed src="http://videocast.yahoo.co.jp/player/vsuexy.swf?vid=288230376152118469" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425">
</object></div>
<hr>
<u><big><big>プロジェクト・アーカイブ</big></big></u>
<p>
『MC9RS08KA2に多くのLEDを接続する』で作成したプロジェクトのアーカイブを用意しました。
どうぞ、ご利用ください。
</p>
<dl>
<dt><span class="mt-enclosure mt-enclosure-file" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/noritan/RS08C13.zip">RS08C13.zip</a></span></dt>
<dd>『MC9RS08KA2に多くのLEDを接続する (7)』で紹介したRS08C13プロジェクトのアーカイブ</dd>
<dt><span class="mt-enclosure mt-enclosure-file" style="display: inline;"><a href="http://www.eleki-jack.com/mycom2/noritan/RS08C14.zip">RS08C14.zip</a></span></dt>
<dd>『MC9RS08KA2に多くのLEDを接続する (11)』で紹介したRS08C14プロジェクトのアーカイブ</dd>
</dl>
<hr>
<p>　『MC9RS08KA2に多くのLEDを接続する』は、今回で終わりです。
次回からは、ソフトウェアを変更して、カウンタを作ります。
</p>
<div style="text-align: right;">田中範明</div>]]>
   </content>
</entry>

<entry>
   <title>超Low-EndマイコンRS08を