RM-922にはUARTの通信ポートが備わっており,デフォルトの設定では受信したデータを出力しています.しかし,今回の放射線量測定システムの場合にはRM-922でAirCounterを制御するため,UARTをこちらのために使うことにします.従いまして,UART周りの設定を変えなければなりません.まずは,AirCounterの通信速度である9600[bps]にするのとともに,デフォルトで電源起動時に動作する,対話的設定を止めるようにします.そのために行ったことは下記4点です.

  1. CommonParameter_Init()関数の呼び出しをやめる.
  2. ParaConf_Init()関数を1の代わりに呼び出す.
  3. ParaConf[24]の値を6(115200[bps])から 1(9600[bps])に変更する.
  4. 一方のRM-922において,ParaConf[2]=1, ParaConf[3]=2とし,もう一方のRM-922にはParaConf[2]=2, ParaConf[3]=1にする.

1によって,対話的設定を止めることができます.しかしこれだと各種設定がなされないため,2を行います.2ではParaConf構造体に書かれた設定を行ってくれますので,ParaConf_Init関数内でParaConfに設定を行います.これが3と4です.3では通信速度を変更しています.4では2個のRM-922がお互いに通信できるよう,自ノード番号と宛先番号を記入しています.

以上の設定で,とりあえず9600[bps]で通信していることを確認しました.あとは,Network.cにあるデータ受信時に行うprintfをやめて,代わりに受信したデータを解釈してソの動作をするようにすればよいはずです.まだ先は長そうです.