マイコンテンプレートサイト更新完了

12月30日のPSoC 4、PSoC 4 BLE、PRoCテンプレート発売に間に合わなかったマイコンテンプレートサイトの更新が完了しました。

今回の更新では、LED照明ページを削除し、マイコンテンプレート関連のみのサイトとしました。昨年10月のサイト障害時の、“Simple is Best”の経験が理由です。

LPCXpresso v8.0.0へ更新

Freescaleを買収した新NXP、ARM Cortex-M0/M0+マイコンの今後のラインアップについては、気になるところですが解りません。NXPサイトを観ると、LPC8xx/111x、旧FreescaleのKinetisシリーズ全てがそのまま残っています。暫くは、様子を観察する必要がありそうです。

例えば、Cypressは、2014年末に買収したSpansionのFM0+マイコンを1年経過後の2015年11月、Cypress名で発売しました。このように、買収や合併で既販マイコンがどうなるかの判断は難しいものです。

そんななか、LPCXpressoは、v8へ更新されました(更新日は合併完了直前の2015/11月、LPCOpenは、V2.19のまま更新無し)。また、Kinetis Design StudioやProcessor Expertも更新されております。新マイコン追加等はありませんが、最新版へのUpdateをお勧めします。

Windows XPサポート終了とWindows 10への対応だと思います。どちらのIDEもEclipseベースですので、これも統合などがあるかもしれません。

PSoC 4、PSoC 4 BLE、PRoCテンプレート1.0版発売

CypressのPSoC 4、PSoC 4 BLE、PRoC向けマイコンテンプレート1.0版を1000円(税込)で発売します。
※CypressはマイコンではなくICと仰いますが、ここは解り易く「マイコンテンプレート」と記します。何とか年内発売に間に合いました…(^_^;)。

マイコンテンプレート概要、仕様、動作ボード

テンプレート概要と仕様、PSoC 4開発キットPSoC Pioneer Kit:CY8CKIT-042と、PSoC 4 BLE/PRoC開発キットPSoC 4 BLE Pioneer Kit:CY8CKIT-042-BLEでテンプレートを動作させた時の様子を示します。
これらは、テンプレート付属のもくじ資料P1~P3を抜粋したものです。

PSoC 4/PSoC 4 BLE/PRoCテンプレート概要
PSoC 4/PSoC 4 BLE/PRoCテンプレート概要(もくじP1)
PSoC 4/PSoC 4 BLE/PRoCテンプレート仕様
PSoC 4/PSoC 4 BLE/PRoCテンプレート仕様(もくじP2)
PSoC 4/PSoC 4 BLE/PRoCテンプレート動作(もくじP3)
PSoC 4/PSoC 4 BLE/PRoCテンプレート動作(もくじP3)

開発キット単独でテンプレートを動作させた時を「シンプルテンプレート」、開発キットとBaseboardを接続しLCDやUARTドライバ等の機能を追加して動作させた時を「ベースボードテンプレート」、CY8CKIT-042-BLEのBluetooth Low Energyを動作させた時を「BLEテンプレート」と名付けました。
Bluetooth 4.2認証デバイスの載せ替え搭載については、前回記事を参照ください。

機能追加に使用したBaseboardは、NXPのLPCマイコンテンプレートで使ったものと同じです。詳しくはコチラを参照ください。

Cypress開発キットは、単独でもCapSenseやUART- USB変換等かなりの機能を実装済みで、良質なサンプルファームや自習Videoも多数あります。
そこで、「PSoC 4/PSoC 4 BLE/PRoCの習得」だけでなく、これらサンプルファームを活用、流用したアプリケーションの早期開発、いわゆる「プロトタイピング開発にも役立つテンプレート」として開発しました。

P4以降のもくじに示したように、組込OSを使わずに簡単にマルチタスク処理ができるテンプレートの仕組みや、複数のサンプルファームを流用/活用してテンプレートへ組込み、アプリケーションを開発する方法に重点を置いて説明しています。

既に発売済みのRL78/G1x、LPC8xx、LPC111x、Kinetis Eマイコンテンプレートは、マイコンテンプレートサイトをご覧ください。

マイコンテンプレートサイトは2016年に更新

このサイトへ本PSoC 4、PSoC 4 BLE、PRoCテンプレートの情報も追加予定ですが、今日現在、サイト更新が本テンプレート発売に間に合っておりませんので、ブログでの通知のみとなりました。

全てのもくじ内容を含む「PSoC 4、PSoC 4 BLE、PRoCテンプレート」のご購入方法は、サイト記載と同じですので、ご希望の方は、コチラを参照してください。

年明け後、ゆっくりマイコンサイトの更新をいたします。本年も、いろいろお世話になりました。皆さま、よいお年をお迎えください。

PSoC 4 BLE Bluetooth 4.2認証済み

PSoC Creator起動時に表示されるStart Pageには、最近使ったプロジェクトやサンプルファームだけでなく、Cypressの最新情報が新しい順に表示されます。現在の最上位は、”PSoC 4 BLE now Bluetooth 4.2 Qualified”で、クリックすると当該ページがブラウザで表示されます。

PSoC 4 BLE now Blutooth 4.2 Qualified
PSoC 4 BLE now Bluetooth 4.2 Qualified

上記の関連日本語記事が、12月14日コチラに記載されました。Bluetooth 4.2仕様の4.1からの3つの変更点や、今のところBluetooth SIGの4.2フル機能認証デバイスが、Cypress製品のみであることが解ります。

CY8CKIT-042-BLEへBluetooth 4.2ボード搭載可能

このBluetooth 4.2認証済みのPSOC 4 BLEとPRoC BLEデバイスで、CY8CKIT-042-BLEへ搭載可能なDaughterボードがCypressサイトで各$15で販売中です。

Bluetooth 4.2仕様と4.1仕様のPSoC 4 BLEとPRoC Daughterボード
通称 Bluetooth 4.2 認証済み Bluetooth 4.1認証済み(CY8CKIT-042-BLE搭載)
PSoC 4 BLE CY8C4248LQI-BL583

CY8CKIT-143A
CY8CKIT-143A
CY8C4247LQI-BL483

PSoC BLE Daughterボード
PSoC BLE Daughterボード
PRoC BLE CYBL10573-56LQXI

CY5676
CY5676A
CYBL10563-56LQXI

PRoC BLE Daughterボード
PRoC BLE Daughterボード

 

Bluetooth 4.2仕様のBLEコンポーネントも、BLE 4.1現行版同様、簡単なプロパティ設定で使えます。
現行のCY8CKIT-042-BLE搭載のデバイスで4.2仕様は出来ませんが、同じ設計手法が使えるので安心です。
※CY8CKIT-042-BLE搭載デバイスは、以前の記事を参照してください。

Nexus 5Xなどの新スマホには、Bluetooth 4.2が搭載されています。弊社推薦開発環境のCY8CKIT-042-BLEは、Bluetooth 4.2/4.1両仕様のPSoC 4 BLEとPRoC BLEのDaughterボードが載せ替えられるので便利です。

PSoC 4, PSoC 4 BLE, PRoC習得Videoとテンプレート

2015年11月5日更新のPSoC 101 Video Library、Lesson00~Lesson17を紹介します。
CY8CKIT-042: PSoC 4 Pioneer Kitを使ってCreator基本操作からPSoC 4プログラミングまでが良く分かります。

Lesson内容

  • PSoC 101_Lesson00_Intro
  • PSoC 101_Lesson01_OutputPins
  • PSoC 101_Lesson02_InputPins
  • PSoC 101_Lesson03_Interrupts
  • PSoC 101_Lesson04_HardwarePins
  • PSoC 101_Lesson05_ToggleFF
  • PSoC 101_Lesson06_Basic_Counter
  • PSoC 101_Lesson07_Counter
  • PSoC 101_Lesson08_PWM
  • PSoC 101_Lesson09_Timer
  • PSoC 101_Lesson10_I2CRx
  • PSoC 101_Lesson11_I2CTx
  • PSoC 101_Lesson12_UART
  • PSoC 101_Lesson13_CapSense
  • PSoC 101_Lesson14_StatusReg
  • PSoC 101_Lesson15_ControlReg
  • PSoC 101_Lesson16_Sleep
  • PSoC 101_Lesson17_DeepSleep

英語版ですが、たとえ英語が全く分からなくても、私の下手な解説よりも内容が濃く、解り易いことは確実です。解像度は落ちますが、Videoダウンロードも可能ですので、スマホ等でオフライン視聴もできます。

CY8CKIT-042-BLEプロジェクトもダウンロード可能

CY8CKIT-042にBluetooth Low Energyを追加した弊社推薦開発キットCY8CKIT-042-BLE: Bluetooth Low Energy Pioneer Kit用のプロジェクトファイルもダウンロード可能です。CY8CKIT-042-BLEをお使いの方は、こちらを使って同じ内容が習得できるので便利です(BLE機能のVideoは、以前の記事参照)。

これらの内容を習得すれば、シングルタスクのPSoC 4、PSoC 4 BLE、PRoC開発は問題なくできると思います。

PSoC 4/PSoC 4 BLE/PRoCテンプレート

では、どのような時に開発中のテンプレートが役立つのでしょうか?

これらにより、さらに「実務に向いた実践的で、かつ効率的なアプリケーション開発」ができます。PSoC4/PSoC 4 BLE/PRoCテンプレートは、本年末リリース予定です。ご期待ください。

発売中のRL78/G1x、LPC8xx、LPC111x、Kinetis E対応マイコンテンプレートはコチラを参照してください。

PSoC 4 BLE Video Libraryの勧め

弊社推薦の評価キットCY8CKIT-042-BLE: Bluetooth Low Energy Pioneer Kitを使ってCypressのPSoC 4 BLEを自習する際に、とても役立つVideo Libraryを紹介します。

英語版ですが、PSoC CreatorのBluetooth Low Energy: BLEコンポーネント設定方法の解りやすい解説が得られます。Bluetooth仕様を全く知らなくても(=Zero Knowledge)、BLEコンポーネントの設定ができ、BLEを使ったアプリケーション開発ができる(かもしれません)。

ここが、このPSoC 4 BLE Video Library の優れた点です。
つまり、Bluetooth仕様理解よりも実用的な「BLEアプリケーション開発を重点に解説」しているので、解りやすく、かつ評価キットのみで動作確認ができます。「Bluetoothの必要最低限仕様を理解すれば開発ができる」のです。

Video Libraryアクセス方法

  1. PSoC Creator Start PageタブのProduct InformationのPSoC 4 BLEをクリックします。

    PSoC Creatorのクリック
    PSoC Creatorのクリック
  2. Cypressサイトが表示されますので、右のDESIGN SUPPORTのVideo Libraryをクリックします。

    Cypressサイトのクリック
    Cypressサイトのクリック
  3. Video Libraryページが表示されますので、PSoC > PSoC 4 BLEと選択すると、PSoC 4 BLE 101:1~6を含め2015年11月現在13個の動画が閲覧可能です。番号101は、内容が初心者向きであることを表すと思います(たぶん、20X、30Xが、中級/上級内容)。

    Video Libraryのクリック
    Video Libraryのクリック

ネットワーク回線が遅い、またはパソコンVideo能力が低い場合には、解像度は落ちますが個別にダウンロードも可能です。

Videoダウンロードのクリック
Videoダウンロードのクリック

* * *

内容が解りやすいことに加え、CreatorのAPI入力支援機能を使ったファームウエアソースの作成が「みもの」です。少量のソース追記で、実用的なBLEアプリケーション開発ができ、かつ拡張性も高いことが解ります。

これらソースは、Videoのように手動入力も可能ですが、CreatorのCode Exampleやキット付属ファームに同じものがあります。

BLEコンポーネントのGUIでBluetooth仕様が設定でき、さらに基本的な項目の設定さえできれば、その他はデフォルトで良さそうです。これなら、「UARTと同レベル」とまでは言い過ぎですが、簡単にBLEアプリケーションが開発できそうです。

Video Libraryには、紹介したPSoC 4 BLE以外にも多くの動画があります。聞きやすい英語で語られていますので、Cypressマイコン開発時は、是非視聴されることをお勧めします。

PSoC 4、PSoC 4 BLE、PRoC BLEサンプルファーム利用方法

Cypress評価キットCY8CKIT-042とCY8CKIT-042-BLEのサンプルファームを整理して示します。
前回の両キットへ機能追加する方法と合わせて、多くのCypress提供サンプルファームを効率よく使って、PSoC 4、PSoC 4 BLE、PRoC BLEを習得するためです。

Cypressの3サンプルファーム提供方法

一般的なマイコンベンダーは、AN:Application Noteと、IDE付属の「2つ」の方法でサンプルソフトを提供します。
※Cypressは、サンプルソフトを上位アプリケーションソフトと区別し、サンプルファームと呼びますので、以後ファームと記述します。

IDE付属は、マイコンの基本機能毎のファーム例、一方ANは、説明:Noteが必要な機能のファーム例です。

Cypressでは、さらに評価キット毎のファーム例も提供しますので、合計「3つ」のサンプルファーム提供方法があります。
評価キット付属ファームは、「キットのみ」で動作確認ができ、IDE付属ファームは、前回示した評価キットに「別途回路追加」が必要なものも含まれる点がその違いです。一覧にすると下表になります。

ファーム提供方法 提供場所 状況と概要(2015/11現在)
評価キット付属 CY8CKIT-042評価キットサイト 下記4種提供中

CY8CKIT-042サンプルファーム

CY8CKIT-042-BLE評価キットサイト 下記9種提供中

CY8CKIT-042-BLEサンプルファーム

AN AN90799などの個々にサイト提供 多数提供中

2015/10/2記事など

IDE付属 PSoC CreatorのCode Exampleで
PSoC 4200 BLEなどデバイス毎に提供
多数提供中

Code Exampleファーム

サンプルファーム留意点

CY8CKIT-042とCY8CKIT-042-BLEどちらの評価キット付属ファームもインストールすること

留意が必要なのは、CY8CKIT-042-BLEキット付属サンプルファームに、CY8CKIT-042キット付属のBlinking_LED(いわゆるLチカ)やDeep Sleepなどの最もベーシックなプロジェクトが無いことです。
理由は、これらプロジェクトが-042キットだけでなく、-042-BLEへも適用できるからです。

従って、CY8CKIT-042-BLEのみ購入した開発者でも、PSoC CreatorへCY8CKIT-042付属サンプルファームもインストールすることをお勧めします。
※⊞Kitsタブを開くとPSoC Creatorにインスト済みのキット付属ファームが表示されます。

なお、キット付属サンプルファーム単体の更新も行われます。因みに、CY8CKIT-042-BLE最新版は、10/06に更新されRevision *Fになりました。更新は、Update Managerまたは自動更新です。

IDE付属ファームのPDF説明書は、CY8CKIT-042を主として記述

CY8CKIT-042のリリースがCY8CKIT-042-BLEよりも早かったために、IDE付属ファームは、ADCなどの基本機能ほどCY8CKIT-042を主体に解説されています。
しかし、IDE付属ファームを基にプロジェクト化した時、Workspace Explorerに表示されるPDF説明書を注意して読めば、両キットのピン対応表などの注意事項が記載されているので、問題はないでしょう。

Workspace ExplorerのPDF説明書
Workspace ExplorerのPDF説明書

* * *

前回の評価キットへ簡単に機能追加するmbed-Xpresso Baseboardを使う方法と、今回の整理結果を念頭に置けば、サンプルファームを利用して効率良くPSoC 4 BLE、PRoC BLE、PSoC 4の習得ができると思います。

先ず評価キットのみで動作させるなら、評価キット付属サンプルファームで動作確認します。CY8CKIT-042-BLEのみ購入した開発者の方でも、CY8CKIT-042のサンプルファームをインストールし、Sleepなどのベーシック機能の動作確認もします。

プロジェクト変換方法

CY8CKIT-042プロジェクトをCY8CKIT-042-BLEプロジェクトへ変換するには、下記2方法が可能です。

  1. CY8CKIT-042-BLEで新規プロジェクトを作成し、CY8CKIT-042のTopDesign.cyschをコピー後、デザイン・ワイド・リソースを設定
  2. プロジェクト毎コピーして、Device SelectorでデバイスをCY8C4245AXI-483からCY8C4247LQI-BL483へ変更。さらにデザイン・ワイド・リソースを修正。

CY8CKIT-042とCY8CKIT-042-BLEへの機能追加

ベンダ提供のマイコン評価キットには、豊富なサンプルソフトが提供されますが、これらサンプル動作確認に、別途回路の追加が必要な場合も少なくありません。

この対応に、Arduinoシールドコネクタ付き評価ボードや評価キットが多くなりました。1枚数千円程度の既成Arduinoシールドボードを、評価キットに乗せれば、簡単に回路や機能の追加ができるからです。

別の方法として、mbed – Xpresso Baseboardオスーオス結線を使った機能追加例を示します。
CY8CKIT-042:PSoC 4 Pioneer Kit、CY8CKIT-042-BLE:Bluetooth Low Energy Pioneer Kitは、Arduinoシールドコネクタが実装されていますので、この2キットで機能拡張方法を示します(キットはコチラの記事参照)。

CY8CKIT-042へLCD追加

mbed – Xpresso Baseboardは、2 x 16文字LCD(HD44780コンパチブル)や電子ブザー、24LC256のI2C EEPROM、ADC入力用のポテンショメータ、D-Subコネクタ付きUARTドライバなど、標準的なマイコン周辺回路が実装済みです。また、5Vと3.3V電源がBaseboardデバイスへ直接供給されるので、機能追加時、マイコン評価キット側の電力負荷があまり増えないのも安心材料です。

CY8CKIT-042のLCD表示機能追加例を示します。サンプルファームは、PSoC CreatorのCode Example「CharLCD_CustomFont」です。CYPRESS文字は、Character LCDモジュールのカスタム文字エンコーディング出力例です。

CharLCD_CustomFont出力
CharLCD_CustomFont出力
CY8CKIT-042への機能追加
CY8CKIT-042への機能追加

数年前までは、弊社もブレッドボードへUARTドライバなどを追加し、サンプルソフトの動作確認をしていました。しかしこの方法は、配線ミスや部品実装の手間がかかります。
mbed – Xpresso Baseboardを使うと、33ピンx2コネクタ(P9/P10:メスとP11/P12:オス)と評価キットのArduinoコネクタ間の配線のみに注意すれば良くなります。

CY8CKIT-042-BLE Auduinoコネクタとmbed – Xpresso Baseboardコネクタ

CY8CKIT-042-BLEとmbed – Xpresso Baseboardのコネクタを示します。ブレッドボードで使うジャンパー線:オスーオスが、機能拡張の結線に使えることが解ります。

CY8CKIT-042-BLEへの機能追加
CY8CKIT-042-BLEへの機能追加

サンプルソフトが直ぐに試せるマイコン開発環境

mbed – Xpresso Baseboardは、NXPのLPCXpresso評価ボード専用の機能追加BaseBoardですが、一般的なArduinoシールドコネクタ付きのマイコン評価ボードや評価キットなら、ブレッドボードを使ってディスクリートでハード追加するよりも確実で手軽に、かつ、シールドボードを複数枚購入するよりも低価格で、機能と回路追加ができます。

  • Arduinoシールドコネクタ付きマイコン評価キットや評価ボード
  • mbed Xpresso Baseboard
  • ブレッドボードジャンパー(オスーオス)

この3つが、低コストで多くのサンプルソフトをすぐに試用できるマイコン開発環境です。

PSoC 4 Pioneer Kit: CY8CKIT-042解説良書

CY8CKIT-042-BLE

弊社のCypress PSoC 4推薦開発ボードは、CY8CKIT-042-BLE: BLE Pioneer Kitです。

IoTマイコン無線技術のBLE: Bluetooth Low Energy(Bluetooth SIGのBluetoothコア仕様4.1認定済み、4.2ではないことには注意)を手軽に試せること、ROM/RAMが128KB/16KBと十分なこと、同じボードで価格を抑えたPRoC BLEも試せることなどがその理由です(ボード実装デバイスPSoC 4 BLE、PRoC BLE、PSoC 4の仕様比較は、前回記事参照)。

CY8CKIT-042を知るには?

但し、もう1つのテンプレート動作環境、PSoC 4 Pioneer Kit: CY8CKIT-042ボードについて、知りたいとお考えの方も多いと思います。2年前の記事ですが、このCY8CKIT-042についての解説書が、大原雄介氏がマイナビに投稿されている「夏休み工作向け? - PSoC 4でお手軽マルチファンクションデバイスを作る」です。

PSoC 4の位置づけ、ボード構成、PSoC Creatorの使い方、サンプルファームの応用の仕方などが解りやすく解説されています。記事記載のプロジェクトソースも提供されており参考になります。

最新PSoC Creator 3.3 CP1で、このプロジェクトをビルドした時のリソースメータが下図です。リソース使用量、残量が一目で解ります。

PSoC Creator 3.3のリソースメータ出力
PSoC Creator 3.3のリソースメータ出力

この記事をご覧になったうえで、ご自分のPSoC 4開発ボードとしてCY8CKIT-042で十分か、それとも弊社推薦のCY8CKIT-042-BLEにするかを判断されれば良いでしょう。

因みに、開発中のPSoC 4テンプレートは、PSoC 4 BLE、PRoC BLE、PSoC 4全てに対応するため、どちらのボードでも動作確認し提供いたします。間口を広げて、少しでも販売個数を拡大したいからですが、PSoC 4でできることは全てPSoC 4 BLEでもできることも理由です。

また、メニュードリブンテンプレート動作にデバイスのUARTコンポーネントを使う際、CY8CKIT-042では、CY8CKIT-042-BLEでは不要な、下図のようなボード上でPSoC 5LPとの結線が必要です。チョット面倒ですね!

CY8CKIT-042のPSoC 5LP機能
CY8CKIT-042のPSoC 5LP機能

PSoC 5LPは、ボードデバイスのデバッグ環境を提供し、同時にUART-USB変換も行います。これによりUSBケーブル1本で、Creator開発ソフトのダウンロードとデバッグ(ルネサスのE1デバッガ相当機能)、Tera TermなどのターミナルソフトでUART送受信ができます。

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マイコン開発に使ってみませんか?

PSoC開発手順

PSoC無償IDEの最新版:PSoC Creator 3.3を使ったPSoC開発手順を示します。

このIDEは、Windows 10へ対応、PSoC 3/4/5とPRoC BLEのデバイス全てと標準評価ボードへ対応、無償版でもROM容量制限なし、PDF資料やCypressサイトへのアクセスがIDEから直接可能など、他社IDEと比較して使い易いマイコンIDEです。

Lチカ処理の開発手順

初めてCreatorを使う方のために、最新版3.3と評価ボードBluetooth Low Energy Pioneer KIT: CY8CKIT-042-BLEを用いたLチカ処理の開発手順を示します(評価ボードは、前記事参照)。PSoC Pioneer Kit: CY8CKIT-042でもプロジェクトタイプ選択が異なるのみで同じです。

CY8CKIT-042-BLEは、CY8CKIT-042搭載のPSoC 4にBLE: Bluetooth Low Energy、Bluetooth 4.1機能を追加したPSoC 4 BLEと、コスト重視のPRoC BLEモジュールが載せ替え可能な評価ボードです。BLEを使う可能性が少しでもある方は、CY8CKIT-042-BLEをお勧めします。

Creator第1段階設定手順
Creator第1段階設定手順

PSoC理解の必読書で示した3種のLチカ実現方法の中から、最も標準的なCortex-M0単独制御の場合を示します。ポイントは、「HW connectionの☑を外す」ことです。☑がデフォルトで、これがコンポーネント制御の場合に相当します。

Creator第2段階設定手順
Creator第2段階設定手順

使用コンポーネント、この場合はDigital Output Pinを回路図へ配置後、プロジェクト名.cydwr:デザイン・ワイド・リソースで、ピン配置やMCU動作クロック、割込みの設定などを行います。標準評価ボードの場合は、ピン配置以外は、デフォルト設定でOKです。

P3[7]横の緑マークは、Creator 3.3新機能で、配置可能性(緑:OK、黄:注意、灰色:NG)を示します。評価ボードで青LEDをLチカさせる場合はP3[7]、赤LEDならP2[6]、緑LEDならP3[6]を設定します。コンポーネント入出力を、物理ピンへ自由に配置できるPSoCならではの機能です。

使用コンポーネントと物理ピン配置が終わったこの段階で、ビルト(Shift+F6)を実行します。
この目的は、mainソース作成時に、API入力支援を機能させるためです。これはVisual Studioに似た機能で、関数はマゼンタ、変数はシアンでリスト表示されるプロパティを選択しさえすれば、API関数を使ったC言語ソースを高速に作成可能です。

Creator第3段階設定手順
Creator第3段階設定手順

ソース作成後ビルドし、プログラム(Ctrl+F5)、またはデバック(F5)で評価ボードでの動作確認ができます。スッテプオーバー(F10)やステップイン(F11)を使うデバッグ作業は、他社IDEと同じです。

Creatorで生成されるmain関数は、無限ループとループ前処理の「シンプルな2構成」です。
テンプレート選択時に、Code Exampleを選ぶと、多くのサンプルファームが参照できます。どれも、このシンプル構成に機能追加したサンプルです。サンプルのPDF説明資料もWorkspace Explorerに表示されます。
API関数は、コンポーネント毎にGenerated_Sourceフォルダ内にあります。入力支援が働くのでGenerated_Sourceフォルダを覗く必要は、ほとんど無いと思います。

PSoC開発手順まとめ

マイコンIDE早期習得のコツでも示したように、第1段階で使用マイコン、この場合は評価ボードを設定し、第2段階で使用コンポーネントとピン配置などのハード関連を設定しビルド、第3段階でIDE生成スケルトンソースへAPI使用順序を記入し、ビルド&ボードデバッグすることは一般的なIDEと同じです。

手順をまとめて、一覧にすると下記になります。

PSoC開発手順
PSoC開発手順

IoTマイコン必須技術:無線通信の習得

Creatorは、良くできた無償マイコンIDEです。添付サンプルも多く、詳しい説明資料も付いているので自習にも最適です。付属ツールのUpdateは、Update Managerで、PDFも含めた資料のUpdateは、Document Managerで行えるなど機能も豊富です。仕事で使うマイコンがPSoCやPRoC以外の開発者でも、低コストでPSoC開発環境が整い、その使い方もここで示したように簡単なのでお勧めです。

BluetoothやWi-Fiなどの無線通信は、今後のIoTマイコン開発にとって必須技術になりつつあります。BLEを持つIoT向きマイコン:PSoC 4 BLEやPRoC BLEを、パソコンやスマホで実際に通信をしながら試すのなら、評価ボードはCY8CKIT-042-BLEが良いでしょう。

※Creatorは、PSoC 3開発のみに無料Keil Compiler for 8051の1年毎インストールが必要です。未インストール時は、ワーニングが表示されます。
※Creatorでネット接続エラーが発生する場合は、ChromeからFirefoxなどブラウザを変えると改善されます。