• 公開日:2018年08月29日
  • | 更新日:2022年11月21日

25個の機能をこの価格で。MSP430の一風変わった使い方を紹介します!

はじめに

本記事を執筆している2018年8月現在、テキサス・インスツルメンツ社 (Texas Instruments社、以下、TI社) は「25個の機能が0.25ドル(25 Functions for 25 Cents)」と題してMSP430のバリューライン・シリーズを売り出しています。

このキャッチフレーズは一体どういう意味なのか、少し気になりますよね。MSP430のバリューライン・シリーズについて紹介をしつつ、このキャッチフレーズの意味を紐解いていきましょう。

MSP430のバリューライン・シリーズ

まず、MSP430のバリューライン・シリーズとは何なのか、というところから説明していきます。

MSP430のバリューライン・シリーズはMSP430の中でも低価格帯に位置付けられた製品シリーズです。

たとえば、MSP430FR2000はウェブ価格で0.3ドル以下(※2018年8月現在。価格は時期や数量によって変動します。)と、MSP430シリーズの中でもかなり安い価格設定がされています。

バリューライン・シリーズは価格が安いぶん、メモリーのサイズはかなり小さくなっていますが、プログラム保存用の不揮発メモリーとしてFRAMを搭載しています。このFRAMは低い消費電力で動作することができますので、バッテリー駆動のアプリケーションなど、消費電力がキモとなるアプリケーションには最適です。FRAMについての詳細は以下の記事で説明していますので、ぜひご参照ください。

TI FRAMマイコンで実現!Flash/EEPROMを越えた低消費電力メモリー機能

バリューライン・シリーズの特徴は低消費電力、低価格だけではありません。TI社から25種類のサンプル・コードが提供されており、これらに書き換えることで、多くの部品の機能をまかなうことができます。これが冒頭にあった「25個の機能」のことを指しています。

トータルで25種類のサンプル・コードを提供中

前述の通り、TI社からバリューライン・シリーズで実現できる25個の機能のサンプル・コードが全て無償で提供されています。

以下の表がそのサンプル・コードの一覧です。

No. 名前 サンプル・コード 資料番号
1 シングルワイヤコミュニケーションインターフェース Single-Wire_Host.zip SLAA768
2 UARTからSPIへのブリッジ uart-to-spi_bridge.zip SLAA796
3 UARTからUARTへのブリッジ UART-to-UART_Bridge.zip SLAA797
4 SPI IOエキスパンダ SPI_IO_EXPANDER.zip SLAA807
5 UART付き、ソフトウェア制御のRGB LED調光 UART_SW_Controlled_RGB_LED_Color_Mixing.zip SLAA766
6 サーボモータ制御 Servo_Motor_Control.zip SLAA784
7 ステッピングモータ制御 Stepper_Motor_Control.zip SLAA785
8 2出力、8ビットPWM DAC PWM_DAC_Software.zip SLAA804
9 アナログ入力信号からPWM出力を生成 FR2000_ANALOG_PWM.zip SLAA803
10 EEPROMのエミュレーション SPI_EEPROM.zip SLAA769
11 低消費電力で動作する16ボタンキーパッド Low_Power_Keypad.zip SLAA773
12 複数機能を持ったリセットコントローラ Reset_Controller.zip SLAA794
13 直交エンコーダ位置カウンタ Quadrature_Encoder.zip SLAA795
14 シングルスロープのアナログ-デジタル変換テクニック slope-adc.zip SLAA806
15 閾値検出機能付きADC (ウェイクアップ/読み値転送) ADC_report_on_threshold.zip SLAA802
16 UARTインターフェースのヒステリシス機能付きコンパレータ Hysteresis_Comparator_with_UART.zip SLAA805
17 タンパー検出 Tamper_Detect.zip SLAA813
18 プログラム可能なFLL (Frequency Locked Loop) Programmable_FLL.zip SLAA791
19 プログラム可能なクロックソース Programmable_Clock_Source.zip SLAA774
20 バックアップメモリ付き外部RTC External_RTC_with_Backup_Memory.zip SLAA767
21 プログラム可能なシステムウェイクアップコントローラ ProgrammableSystemWakeupController.zip SLAA790
22 プログラム可能な外部ウォッチドッグタイマ External_WDT_Projects.zip SLAA789
23 シンプルなRTCベースのシステムウェイクアップコントローラ SimpleSystemWakeupController.zip SLAA792
24 7セグメントLED ストップウォッチ 7-Segment_LED_Stopwatch.zip SLAA808
25 タイムスタンプ付き電圧監視 VoltageMonitorWithTimeStamp.zip SLAA809
* All all_25_examples.zip

 

「UARTからUARTへのブリッジ」やら、一風変わったサンプル・コードも用意されていますので、一通り見ていただくと面白いと思います。とはいえ少し量が多いので、この25個の中から3つピックアップして機能の紹介をしましょう。

ピックアップ1:EEPROMのエミュレーション

まず1つ目はEEPROMのエミュレーション機能です。

MSP430FR2000が搭載しているFRAMは不揮発性のメモリー、つまり、電源をオフにしても情報を保持し続けることが可能なメモリーです。そのため、このFRAMをEEPROMの代わりとして使用する事ができます。

TI社から提供されているこのサンプル・コードでは、4線式のSPIインターフェース(CLK、MOSI、MISO、CS)とWrite Protect (WP)で接続するEEPROMのように使用することができます。

ホスト・プロセッサとの接続
図1. ホスト・プロセッサとの接続

例えば、アドレス0x0Fに0xCEB4というデータを書き込む場合、以下のような通信をすることでMSP430FR2000内蔵のFRAMにデータを保存することができます。書き込みコマンド番号(0x02)、書き込むアドレス (0x0F)、書き込むデータ (0xCE、0xB4)の順に並んでいます。

EEPROM書き込みシーケンス
図2. EEPROM書き込みシーケンス
(出典:Texas Instruments Inc. SLAA769アプリケーション・ノート)

ピックアップ2:タンパー検出

2つ目はタンパー(tamper:改ざん)検出機能です。例えば、スマートメーターや電子錠など、筐体を不正に開けられては困るアプリケーションに対して使用することができます。

TI社から提供されているサンプル・コードでは、2本のIOを使用し、一方からクロック信号を出し続け、もう一方がそれを受けるという構成を取っています。ある一定周期毎に入力されるクロックのエッジ数をカウントし、想定されるカウント数かどうかで不正を検出する仕組みです。

タンパー検出ハードウェア接続図
図3. タンパー検出ハードウェア接続図
(出典:Texas Instruments Inc. SLAA813アプリケーション・ノート)

ピックアップ3:タイムスタンプ付き電圧監視

3つ目はタイムスタンプ付き電圧監視です。

バッテリーやバス電力で動作するようなアプリケーションにおいて、電力ロスが発生した際にシステムの状態を保存する必要がある場合があります。タイムスタンプ付き電圧監視を使えばこの機能を実現することができるでしょう。

MSP430FR2000は前述の通り、FRAMを搭載しています。FRAMは不揮発性のメモリーですので、電源が切れる直前の状態まで保存する事が可能ですので、こういったシステム状態の保存といった使い方にはうってつけです。

TI社から提供されているサンプル・コードでは、内部のコンパレータを使用して電圧監視を行います。また、ホストとのインターフェースはUARTを使用し、RTCの時刻の初期設定や時刻の応答を行う構成となっています。

電圧監視ブロック図
図4. 電圧監視ブロック図

さいごに

MSP430バリューライン・シリーズはTI社から25種類の機能を実現可能なサンプル・コードが提供されており、ソフトウェアを書き換えるだけで多くの機能に対応する事が可能です。また、ソースコードで提供されていますので、機能の修正や拡張を自由に行う事が可能です。

TI社からは評価ボードも提供されており、以下のターゲット開発ボードとエミュレーション・ツールを組み合わせる事でご評価することができます。

MSP430FR2000、MSP430FR21x、MSP430FR23x マイコン向けターゲット開発ボード:20 ピン

また、デバイスのサンプルが必要な方は以下のフォームからサンプルリクエストすることができます。興味のある方は是非お問い合わせください。

お問合せはこちらから!

関連情報はこちら