2011年3月21日月曜日

MSP430 LaunchPad デモプロジェクト(温度センサー)の検証 その2



1.解析
 Processingソース:LaunchPad_Temp_GUI.pdeより
 1)シリアル通信の仕様
  ①Baud Rateは 2400
  ②LaunchPad => PC 1バイト アスキーコード送信
    ”A”:65°”B”:66°  :華氏の温度表示
  ちょっと修正(デモプロジェクト改修 その1)
   ・Processing(GUI)ソースの修正
   dataRead = (dataRead-32)*5/9; 華氏=>摂氏変換コード追加
2)シリアル通信の構成
  タイマ割り込み、タイマ出力を使い1ビットづつの送信を実現しているようです。
  ①システムクロック設定
   ・ベースクロック(DCO):1MHz  1048576Hz 訂正(3/26) => 1,000,000Hz
   ・サブシステムマスタクロック(SMCLK) : ベースクロック1/8 : 128KHz 131072Hz
                          訂正(3/26) =>125KHz 125,000Hz

  ②タイマカウンタ
   ・クロックにSMCLK選択
   ・タイマカウンタCompare設定値(TACCR0)に13*4を設定
     1/131072*13*4 = 0.0003967285  ・・・ タイマ周期 0.3967285mS ==> 2520bps ≒2400bps 
訂正(3/26) => 1/125000*13*4 = 0.000416  ・・・ タイマ周期 0.416mS ==> 2403.846bps ≒2400bps 

      (2400bpsとの誤差5%は少々気になります。20ビット送信で1ビットのずれが発生。)
訂正(3/26) => 2400bpsとの誤差0.16%は、624ビットで1ビットのずれ。30バイト程度の文字列の送受信は問題ないと思います。

  ちょっと修正(デモプロジェクト改修 その2)
   ・CCSプロジェクトの修正   
   データ送信用のバッファを設け、そのデータを1バイトづつ、スタートビット、ストップビットを付加して送信
   温度センサに関する機能は削除

2.課題
 ①現状でなんとかMSP430からPCへのデータ送信(TX)は実現できました。あとは、PCからMSPへのコマンドの送信(RX)の実現を考慮中です。
 ②現在、デジキーに発注したMSP430G2452IN20(20ピン)の到着を待っています。たしか、リードタイムは3/31だったような記憶があるのですが、現在、未定となってしまいました。到着しだい、LCD(キャラクタ)の表示に挑戦してみたいと思います。

MSP430はとにかく使い勝手が良いのが魅力です。
(ユニバーサル基板上に、3端子レギュレータを使った電源回路+MSP430+その他電子パーツで自作のマイコン基板が手軽に組めてしまいます。)
MSP430の能力をフルに使った場合、どこまでプログラムが組めるのか。その限界を試してみたいと思います。

そろそろ、インターフェース誌の付属基板が発売されます。今度はRXマイコンで、昨年のSHマイコン程の期待は無いものの、使い勝手が良いものであってほしいと思います。今年は、TIのMSP430と並行していじっていきたいと思います。

0 件のコメント:

コメントを投稿