Cypress PSoC 4、PSoC 4 BLE、PRoC BLEテンプレート開発着手

PSoC 4、PSoC 4 BLE、PRoC BLE向けテンプレート開発にあたり、対象デバイスの仕様と動作確認ボードを示します。

CreatorのDevice Selector(Project>Device Selector…)を使ってFamily欄のPSoC 4200、PSoC 4200 BLE、PRoC BLE以外の☑チェックを外します。説明の都合上、本ブログ対象の3デバイスを抜粋表示した結果が下図です。Device Selectorは、Cypressデバイスの仕様が一覧表示できるので重宝します。

CreatorのDevice Selector出力(ブログ掲載3デバイスのみ抽出)
CreatorのDevice Selector出力(ブログ掲載3デバイスのみ抽出)

テンプレート動作環境

テンプレートは、先日紹介したPSoC 4 pioneer Kit: CY8CKIT-042とBluetooth Low Energy Pioneer KIT: CY8CKIT-042-BLEの2種ボードで動作確認します。このボードの実装デバイスが、Device Selectorで示した3デバイスです。

テンプレート動作環境:動作確認ボード ボード実装デバイス 通称
CY8CKIT-042 CY8C4245AXI-483 PSoC 4
CY8CKIT-042-BLE CY8C4247LQI-BL483 PSoC 4 BLE
CY8CKIT-042-BLE CYBL10563-56LQXI PRoC BLE

 

CY8CKIT-042-BLEのPSoC 4 BLEとPRoC BLEは、同じBaseboardに載せ替えて動作するDaughterボードです。Daughterボードは、IOピンコンパチで単体購入も可能、PSoC 4 BLEのCY8CKIT-142が1343円、PRoC BLEのCY5671が1208円です(2015年10月Digi-Key調べ)。
BLEアンテナ付きでブレッドボードにも実装できてこの価格、「IoTマイコンに最適」と思います。

CY8CKIT-042-BLEのDaughterボード(左:PSoC 4 BLE、右:PRoC BLE)
CY8CKIT-042-BLEのDaughterボード(左:PSoC 4 BLE、右:PRoC BLE)

PSoC 4、PSoC 4 BLE、PRoC BLEの仕様

テンプレート対象デバイスは、全てARM Cortex-M0コア、Max. 48MHz動作です。また、CapSenseやLCD Drive、TCPWM: Timer/Counter/PWMやUARTなどの通信関連、ADC/DACは全デバイス同一です(※API経由でソフト制御する限りは同じに見えます)。

IoTマイコン「PSoC 4 BLE」を中心に、UDB: Universal Digital Blockを特定用途にPre-configured Blockした低価格用に「PRoC BLE」があり、もう一方でBLE機能を除きROM/RAM削減、一般用途向けに「PSoC 4」があると解釈すれば良いでしょう。
オペアンプやコンパレータのアナログ回路は、PSoC 4/PSoC 4 BLEのみに実装されています。これはPRoC BLEをIoTセンサーマイコンとして使う時は、留意が必要です。

テンプレート実装機能

ROM/RAMが最も小さいPSoC 4でも容易に実装できるように、RL78/G1xテンプレートで開発したTinyテンプレート機能を、本対象デバイスに実装します。

テンプレート実装機能 RL78/G1xのTinyテンプレート(開発済み)
ROM/RAM
使用量=345/6バイト
PSoC 4/PSoC 4 BLE/PRoC BLE向けの
テンプレート
ROM/RAM
使用量:後日公開予定
周辺回路Start Up関数起動 実装 実装
複数関数の時分割起動 実装 実装
Sleep/Deep Sleep起動 実装 実装
WDTリセット 実装 実装
マニュアルリセット 実装 実装

 

Tinyテンプレートには、SysTick、WDT: Watch Dog Timer、場合によってはRTC: Real Time Clockが必要ですが、これらにDevice Selectorで示したコンポーネントは、「使いません」。

これらは、ARM Cortex-M0コア内に実装済みだからです。つまり、同じARM Cortex-M0/M0+コアのLPC8xxテンプレートやLPC111xテンプレート、Kinetis Eテンプレートで使ったテクニックがそのまま流用できます。これが、ARM Cortex-M0/M0+コアが32ビットマイコンの主流になりつつある理由の1つです。

マイコン必須機能は実装済みでARMコアが提供するので、利用ベンダは、周辺回路のみに注力して他社差別化ができ、一方マイコン開発者は、Tinyテンプレートのような基本機能は、ベンダ間差異を意識せずに共通のARMコア機能を使って開発できるのです。

つまり、本テンプレート応用例としてボード実装済みのLEDとSWを使った「シンプルテンプレート」と、「メニュードリブンテンプレート」用にUARTコンポーネントを1個使用しますが、それ以外のDevice Selectorで示したコンポーネントは、テンプレートの購入者様の独自応用例としてそのほとんどが活用できます。

※ルネサスRL78/G1x向け、NXP LPC8xx向け、LPC111x向け、Freescale Kinetis E向けテンプレートは、シンプルテンプレートとメニュードリブンテンプレートの2つをセット、1000円(税込)で販売中です。

Cypressテンプレート開発スケジュール

Cypress PSoC 4/PSoC 4 BLE/PRoC BLE向けの本テンプレートは、2015年末までに第1版リリースを予定しています。リリースまでは、Cypress CreatorのTipsやBLE: Bluetooth Low Energyの使い方などをブログ記載する予定です。

無償でも優れたIDEのCreator、個人でも購入できる低価格な評価ボード、BLEも簡単に試せるCypressデバイスと弊社テンプレート、IoTマイコン開発に使ってみませんか?