シリアル通信(発光ダイオードの点灯・消灯)

このエントリーをはてなブックマークに追加

 

 前回、送ったデータをそのまま送り返すシリアル通信を行いました。今回は、シリアル通信を使って発光ダイオードの点灯と消灯を制御します。
 基本的な部分は前回を参照してください。回路の違いは発光ダイオードがついているかどうか、プログラムの違いは受信したデータにより発光ダイオードの点灯・消灯を行う、受信したデータを送信しない、以上の3か所です。

1.今回使用するPICについて

 今回使用するPICは「PIC12F1822」です。

 

2.回路

シリアル通信で使用するピンについて
RA4:TxD(送信)
RA5:RxD(受信)
(PICのRxDとコンピュータのTxDとつなげます)

発光ダイオードに接続しているピンについて
RA2:発光ダイオード

 パソコンとつなげているシリアル通信の機器は「AE-UM232RL」です。
(参考までに販売サイト紹介:秋月電子通商AE-UM232RL製品サイト

 


     

 

3.プログラム

 受信したデータが「0x31」と等しければ点灯、違う場合、消灯させます。ちなみに「0x31」とはASCII(ウィキペディア)で数字の1のことです。

if( rx_flg )
{
    // 受け取ったデータを比較
    if( rx_data == 0x31 )
    {
        RA2 = 1;
    }
    else
    {
        RA2 = 0;
    }
    rx_flg = false;
}

 

ソースコード

 プログラムの全文を掲載します。

  プログラム

<注意>
本サイトの注意事項を確認してください。
ソースコードや回路図などを使用する場合、上記注意とともに、自己責任でお願いします。

 

   
   

 

3.動作確認

 PCとPICを接続し、PCからシリアル通信でデータを送ってください。数字の1(0x31)を送信すると点灯、それ以外を送信すると消灯します。

注:PCでシリアル通信を行う場合、シリアルポートとシリアル通信を行うソフトが必要になります。
(参考ソフト:Tera Term

<更新履歴>

新規作成:2015年4月12日
第2版:2016年9月30日:フォーマット変更(内容の変更はなし)

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)