2 シリアル通信

AVRマイコン及びXbeeを使って,シリアル信号を送信します.そして,PCに挿入したXbeeがそれを受信し,pythonのプログラムでPCの画面に受信値を表示させます.
こんな感じ.

203

1.まずは以下のプログラムをAVRマイコンのatmega64に書き込んでください.
ひたすら’a’という文字を送信し続けるというプログラムになっています.

2.以下の回路を製作してください.

84

これで,PCに’a’という文字をシリアル通信で送信する準備ができました.次は受信側です.

3.もう一つのXbeeをPCに差し込みます.

DSC00078

4.どのCOMポートがXBeeを認識しているかを確かめます.(windows7の場合です.)
スタートメニュー→コンピュータの上で右クリック→プロパティをクリック.

204

こんなwindowが開きます.左上にあるデバイスマネージャーをクリック.

205

ポートをクリックし,どこのCOMポートにXBeeが接続されているか確かめます.筆者の場合はCOM4でした.

206

次にこのUSB Serial Port(COM*)の上で右クリック→プロパティをクリック.
プロパティ画面が開いたら,ポートの設定のタブをクリックし,以下の値に設定します.

207

5.pythonのpyserialというシリアル通信のプラグラムライブラリをダウンロードします.
以下のサイトにログインします.(ここでは,windows向けのライブラリが紹介されています)
Unofficial Windows Binaries for Python Extension Packages
アルファベット順に並べられています.結構下の方にPyserialがあります.
Pyserialの自分のPCに合ったバージョンをダウンロードします.

6.IDLEを開き,以下のプログラムを入力します.

com04 = serial.Serial(3)の行では,XBeeが接続しているポートの設定をしています.筆者はCOM4でした.
ポート番号は0からスタートします.
ですので,COM1の時はcom01 = serial.Serial(0)
COM2の時はcom02 = serial.Serial(1)に設定します.
また,res = com04.read(1)のcom04も各自で設定しなおしてください.

7.プログラムを実行し,マイコンの電源も入れてください.
このように’a’という文字がIDLEの画面に表示されたらシリアル通信成功です.

208

次はpygameというプログラムライブラリを使って簡単なグラフをPC画面に表示してみましょう.
3 簡単なグラフを作成  に続く.

You may also like...

1 Response

  1. sof より:

    大変参考になります。
    serialutil.pyの仕様が変わったのかどうかわかりませんが、COMポートを指定するときに、
    掲載の
    com04 = serial.Serial(3)
    ですと、エラー
    “port” must be None or a string, not
    と出て、実行できず、
    com04 = serial.Serial(‘COM4′)
    ※COM4を使っている場合
    と、文字列にして、1減らさないで、実際のCOMポート番号を指定することで動きました。

    こちらのセットアップやPCなど環境に依存するかもしれませんが、ご報告まで。

コメントを残す

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

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">