Graceで生成したソースコードをCCSで使うには (2)


前回 書いた手順で、Graceでコード生成 → CCSでビルド → LauncPadでLED点滅 (Lチカ)まで、以下、実際にやってみる。

仕様:

  • LaunchPad Value Line (MSP-EXP430G2)を利用
  • マイコンはMSP430G2452IN20を選択
  • CPUクロックは16MHzに設定
  • ポート P1.0 のLED を、正確に500msでON/OFFさせる
  • 500msを作るために32.768KHzの水晶振動子を外付けし、LED点滅タイミングのクロック源とする
  • タイマー割込みを使用する

まず Graceスタンドアロン版 を起動する。

File メニュー → Newで新しいプロジェクトを作る。

プロジェクト名は G2452-GraceSA-Blink-Timer01 としてみた。
この名前で自動的にフォルダが掘られて、生成されるコードはその下に出力される。後ほど CCSでも同様にプロジェクトフォルダを作るが、とりあえずそれとは別の場所にしておく。
デバイス MSP430G2452 も選択する。

Welcome画面で、Device Overview をクリックすると、チップ内部のブロック図の画面になる。


ここで、電源電圧の DVCCの設定がデフォルトで 1.8Vになっているので、プルダウンして3.3Vを設定しておく。 これが1.8Vのままだと、クロック周波数を16MHzにできないなど制約が出る。

設定すべきブロックは、クロック系、ウォッチドッグタイマ、Timer、GPIOなので、それぞれ設定する。

ブロック図の中の  “Clock System” のブロックをクリックし、”Enable Clock in my configuration” にチェックを入れると、Basic User, Power User, Registers といったメニューが上に現れる。 Basic User をクリックする。

High speed clock source と Low speed clock source の設定で、それぞれ、16MHz,  32.768KHzを選ぶ。

そして左上の Grace (MSP430) をクリックすると、ブロック図に戻る。

次に、ウォッチドッグタイマー(WDT)のブロックをクリックし、同様に Basic User をクリックする。

WDTは、使わない場合は、止めておく必要がある。
なので、Stop Watchdog Timer が選択されている状態にする。

確認したら Grace (MSP430) をクリックして、ブロック図に戻る。

次は、Timer0_A3 のブロックをクリックする。

Enable Timer0_A3 in my configuration にチェックを入れると、Basic User の選択肢が現れるのでクリックする。

Timer Selection は Interval Mode に設定し(1)、 タイマー信号をピンに出力はしないので、TA0.0 Output Off を選ぶ(2)。
望むタイマー周期として 500msを入れてEnterキーを押す(3)。
割り込みを有効にするため、Interrupt Enablesにチェックを入れる(4)。

そして、Power User – CCR0 をクリックしてみる (5)。

最初のほう、Clock Systemブロックの設定では、高速クロックとして16MHz、低速クロックとして32.768KHzの設定をした。
MSP430の各内蔵周辺ブロックは、どちらのクロックを使って動作するか、選択できるようになっている。
16MHzのクロックは、DCO (Digital Controlled Oscillator) で作られる。DCOは、16MHzとか、8MHzとか、1MHzなど、周波数を設定できるのだが、精度は +/-3% くらいで、CPUを駆動するには問題ないが、時計の精度は無い。一方、低速クロックの 32.768KHzは、時計が作れる精度を持っている。

今回は500msを正確に作りたいので、クロックソースに ACLK が選択された状態にしておく。
Basic Userのメニューの中では詳しく表示のないクロックソースが、Power User – CCR0メニューでは表示されるので、確認しておく。

なお、MCLK, SMCLK, ACLK といったクロック信号系の呼び名は、色々な場面で出てくるので、最低この3つだけでも理解しておきたい。ざっくり言うと MCLK, SMCLKは高速系、ACLKは低速系とだけ覚えておけば大体足りる。
詳しくは、 ドキュメント 「MSP430x2xxx Family ユーザーズ・ガイド」に載っている下図を参照。 和訳版が公開されている (→ jaju037a )。

ブロック図に戻って、最後に GPIOの設定をする。
GPIOブロックをクリックして、

20ピンデバイスを選び、P1.0の▼マークでプルダウメニューを出して、出力ポートに設定する。

さて、これで必要な周辺機能の設定は終った。
Fileメニューの Generate Source を選択すると、しばらくして、Cソースファイル一式が、出力される。

次はこのソースを CCSのプロジェクトに持って行く。
(続く)

 

「Graceで生成したソースコードをCCSで使うには (2)」への1件のフィードバック

コメントは停止中です。