トップページへ

MSP430のすすめ

このページはTIl社のワンチップマイコンMSP430シリーズの特徴と使い方を紹介するページです。
(MSP430を使うまでに自分が検討した内容を記したメモでもあります)

1.MSP430の特徴

・低消費電力
・乗算器あり
・最大8MHz
・最大64KBのフラッシュROM、2048バイトのSRAM、8ch-12ビットADC、2chのUSART/SPI(MSP430F14x)。

Product BrochureにProduct Tableが載っています。ADCが必要ならMSP430F148(64ピンQFP)またはMSP430F1222(20ピンTSSOPまたはSOP)あたりが良いでしょう。

2.開発環境

コンパイラ・アセンブラ:

・TIのホームページからダウンロードできるIAR Embedded Workbench Kickstart 。Windows用の統合開発環境ですが、コードサイズ4kBの制約付きです。正規版は298,000〜448,000円します。
sourceforgeGCC toolchain for MSP430 。GNU開発環境。

開発キット・評価ボード

・TI製MSP430F13x/14x/15x/16x Flash Emulation Tool 
・CQ出版社の MSP-FET430開発ツール評価キット(たぶんTIのMSP-FET430P140相当)
www.digikey.jp(在庫がないことがよくあります)。
olimexの評価ボード

・フラッシュROMの書き込み方法は2通り提供されています。
1)ブートストラップローダ
  シリアルポートとMSP430の専用ピンを接続して書き込む方法です。 TIのホームページからslaa096bをダウンロードするとインタフェース回路の回路図と、MSP430との接続方法が書いてあります。 シリアルポートはUSB-シリアル変換ケーブルではだめです。

2)JTAG
  PCのパラレルポートとMSP430のJTAGポートを接続して書き込む方法です。MSP-FET430P140などに付属しているパラレル用インタフェースケーブルを使用します。TIのMSP430-FETのページにある「MSP-FET430 FLASH Emulation Tool (for use with IAR Version 3.x) User's Guide (Rev. A) (slau138a.pdf, 2940 KB)」をダウンロードするとインタフェース回路の回路図と、MSP430との接続方法が載っています。

チップの入手先

www.digikey.jp(実際に買いました)。
chip1stop(実際に買ったことはないです)。
olimexでも買えるようです。

3.開発メモ

開発環境のセットアップ方法から、実際の開発までを説明します。
開発環境には、IARは高いので、ここではGCC toolchain for MSP430を使います。(Windows用とLinux用がありますが、ここではWindowsを使用します)。

開発環境のインストール方法:

sourceforgeからmspgcc-win32をダウンロードしてきてインストーラを起動するだけ。

・libcのソースファイル(msp430-libc-xxxx.tar)のdocフォルダにあるdoc.txtには開発者が書いた有用なことが載っているので読むべし。コンパイラの最適化のことなどが書いてあるのになぜlibcのdocに入っているのかは不明。

GCC toolchain for MSP430でできること

・C言語/アセンブラのソフトをコンパイルする。。
・シリアル経由でフラッシュROMの書き込みをする。(MSP430のブートストラップローダを使用)。
・パラレル経由でフラッシュROMの書き込みをする。(MSP430のJTAGポートを使用)。
・GDBでデバッグする。

4.サンプルのコンパイルと実行

c:\mspgcc\examples\にあるledsというサンプルを使って説明します。

ledsディレクトリをどこかにコピーして、cmd.exeを起動。(私はcygwinを使っているけど)。

TIのホームページからslaa096bをダウンロードして解凍します。
ここにあるBL_130v.txtを上記ledsディレクトリにコピーしておきます。

そして
 make
とするとleds.elfというファイルができます。

COM1にシリアルフラッシュダウンロードケーブルを接続して、
 msp430-bsl -c1 -BBL_130v.txt -e -p -r -w leds.elf
と実行するとポートP1がON/OFFします。

パラレルJTAGケーブルの場合は
 msp430-jtag -e -p leds.elf
と実行します。


Last update: 2004/12/15