こんにちは。koraです。
今回はHM-StarterKitにシリアル通信の機能を付け足します。この機能を使うと、HM-StarterKit内の情報を、PCに表示することができるようになります。
シリアル通信の準備
シリアル通信にはSCI(シリアルコミュニケーションインターフェース)という機能を使用します。サンプルプログラム内にシリアル通信用のライブラリがあるので、それを利用させてもらいます。サンプルプログラムのStep7から、sci.hとsci.cをmy_hm_starterkitフォルダ内にコピーして、ファイル -> 追加 -> 既存のファイルを追加 を選び、先ほどコピーしたファイルをプロジェクトに取り込みます。
以前のプログラムに以下の変更を加えて、シリアル通信できるようにします。
init.c
ヘッダーファイルをインクルードします。
#include "sci.h"
void init_all(void) に
init_sci();
を追加します。
my_hm_starterkit.c
#include "sci.h"
今までのmain関数内をコメントアウトして、次の行を追加します。
SCI_printf("Hello World");
書き込み基板
プログラムを書き込み終わったら、書き込み基板のスライドスイッチを実行モードに切り替えます。この設定で、書き込み基板を介してPCにデータを送ることができます。
動作確認
PC側からはTeraTermというターミナルソフトを使ってマイコンと通信します。PCにインストールされていない場合はOSDNのページからダウンロードできます。
「設定」 -> 「シリアルポート」を開き、スピードを38400に設定します。
本体の電源を入れて、TeraTermにHello Worldと表示されたら成功です。
数字の出力も可能です。C言語でお馴染みのstdio.hのprintfと似たような使い方ができます。
次回
HM-StarterKitから値の出力ができるようになりましたので、次からセンサの値を取り込んでいきます。ゆくゆくは走行にフィードバックできるようにします。