でばいすの山小屋

デバイスとかクラウドを実験中。IoTのふもとあたりをうろうろ。

PSoC 6 Pioneer Kit で、Lチカしてみる (1)

PSoC Advent Calendar 2017の18日目の記事です。

PSoC 6 Pioneer Kit で、Lチカしてみます。
2回にわけて記事にしてみました。
今回は、コードを少し書いて、Lチカします。
PSoC 6 Pioneer Kit を使うには、PSoC Creator 4.2 以降のものが必要になります。

PSoC Creator 4.2 について
2017/12/18 現在、正式リリースはされていません。ベータバージョンとして提供されています。
下記の PSoC 6 のページからリンクが張られており、ダウンロードには、ユーザ登録が必要です。

Cypress PSoC 6
http://www.cypress.com/products/32-bit-arm-cortex-m4-psoc-6


プロジェクトを作成

PSoC Creator 4.2 を起動します

f:id:blgkns:20171217165542p:plain:w640
「Create Project」を押す

f:id:blgkns:20171217165543p:plain:w640
「Target kit」「CY8CKIT-062-BLE (PSoC 63)」を選択して、「Next >」を押す

f:id:blgkns:20171217165544p:plain:w640
「Empty schematic」を選択して、「Next >」を押す

f:id:blgkns:20171217165545p:plain:w640
「Next >」を押す

f:id:blgkns:20171217165546p:plain:w640
ワークスペース名など、任意に設定して、「Finish」を押す

Digital Output Pin を配置する

f:id:blgkns:20171217165547p:plain:w640
右上のComponent Catalogの検索窓に、「pin」と入力
「Digital Output Pin」を、TopDesign.cysch にドラッグ&ドロップする

f:id:blgkns:20171217165548p:plain:w640
Digital Output Pinは、「Pin_1」という名で、生成される。
※写真は、Zoom In で拡大してます。
これをダブルクリックする。

f:id:blgkns:20171217172306p:plain:w640
Nameを「LED8」に変更。
「HW connection」のチェックをはずして、OKを押す。
※Nameには、任意の名前をつけられます。その場合、以下のすべての「LED8」を読み替えてください。

f:id:blgkns:20171217165550p:plain:w640
Pins をダブルクリックする。
「LED8」の Port のドロップダウンリストから、P1[5]を、選択する。

コードを書く

左の Workspace Explorer の main_cm0p.c を、ダブルクリックする。
forのなかに、2行加えます。
※コメントは削除しています。

#include "project.h"

int main(void)
{
    __enable_irq();
    Cy_SysEnableCM4(CY_CORTEX_M4_APPL_ADDR); 

    for(;;)
    {
        Cy_GPIO_Inv(LED8_PORT, LED8_NUM);
        CyDelay(500);
    }
}

コードの説明(ざっくり)
LED の GPIO の出力を反転させる。
500msec(0.5秒)待つ。
これを繰り返す。

f:id:blgkns:20171217165551p:plain:w640
Program ボタンを押すと、コードが書き込まれ、実行されます。

f:id:blgkns:20171217165552p:plain:w640
LED が点滅します。

おまけ

この Kit には、ほかにも LED が、のっていますので、光らせる LED を変えてみてください。
※Pins の LED の Port の接続先を変えることで光らせる LED を変えられます。
LED の Port は、このようになっています。

Port
LED5 RGB (R) P0[3]
LED5 RGB (G) P1[1]
LED5 RGB (B) P11[1]
LED8 オレンジ P1[5]
LED9 P13[7]


参考:
PSoC 6 Pioneer Kit の回路図は、下記にインストールされます。
C:\Program Files (x86)\Cypress\CY8CKIT-062-BLE PSoC 6 BLE Pioneer Kit\1.0\Hardware\CY8CKIT-062-BLE\CY8CKIT-062-BLE Schematic.pdf

PSoC 6 Pioneer Kit / E-ink ディスプレイの表示データを作ってみる

PSoC Advent Calendar 2017の7日目の記事です。

PSoC 6 Pioneer Kit の E-ink ディスプレイで遊んでみます。
今回は、PSoC 側のコードは書きません。
PSoC 6 Pioneer Kit を使うには、PSoC Creator 4.2 が必要になります。

PSoC Creator 4.2 について
2017/12/07 現在、正式リリースはされていません。ベータバージョンとして提供されています。
下記の PSoC 6 のページからリンクが張られており、ダウンロードには、ユーザ登録が必要です。

Cypress PSoC 6
http://www.cypress.com/products/32-bit-arm-cortex-m4-psoc-6


プロジェクトを作成

PSoC Creator 4.2 を起動します

f:id:blgkns:20171207030242p:plain:w480
「Create Project」を押す

f:id:blgkns:20171207030243p:plain:w480
「Target kit」「CY8CKIT-062-BLE (PSoC 63)」を選択して、「Next >」を押す

f:id:blgkns:20171207030244p:plain:w480
「Code example」を選択して、「Next >」を押す

f:id:blgkns:20171207030245p:plain:w480
「CE218133_EINK_CapSense」を選択して、「Next >」を押す

f:id:blgkns:20171207030246p:plain:w480
「Next >」を押す

f:id:blgkns:20171207030247p:plain:w480
ワークスペース名など、任意に設定して、「Finish」を押す


サンプルプロジェクトの実行

f:id:blgkns:20171207030248p:plain:w480
screen.c の 140行目に BreakPoint をしかけて、デバッグ実行(デバッグ実行ボタンを押すか、F5を押す)する

f:id:blgkns:20171207030249p:plain:w480
デバッグターゲット選択画面が表示される場合は、
PSoC 63 CY8C6347BZI-BLD53(CM0p)」を選択して、「OK / Connect」を押す

ビルドされ、書き込みが完了し、実行される。
実行されると、main_cm0p.c の main 関数の頭で、止まるので、F5 を押して進めると.... f:id:blgkns:20171208011113p:plain:w480
E-ink ディスプレイにイメージが描画される。

Shift+F5 で、デバッグ実行を止める。

ここで、デバッグ実行を止めずに、そのまますすめると、このサンプルプロジェクトを試すことができます。
Pioneer Kit の右下のタッチセンサー部分をスライドしたり、タッチすることで、画面が書き換わります。


画像データを書き換えてみる

次に、このサンプルプロジェクトの起動画面を書き換えてみます。

f:id:blgkns:20171207030251p:plain:w480
screen_contents.c : 509行目から、起動画面のイメージがあります。
ここの最初の1バイトを、0xFF から 0x00 に書き換えて、デバッグ実行します。
さらに、F5を押して、進めると....

f:id:blgkns:20171207030252p:plain:w480
E-ink ディスプレイの左上に、小さな線(縦1ピクセル/横8ピクセル)が描かれていることがわかります。
画像イメージは、1ビットが1ピクセルに対応しています。つまり、1バイトで、8ピクセル
この E-ink ディスプレイは、縦横264x176なので、全画面の画像データは、264×176÷8 = 5808バイトとなります。
そんなデータをひたすら書いていくのはつらいので、BMP から画像データへのコンバータを作ってみました。


画像データコンバータ

やることは単純です。
BMP ファイルを読み込み、1ピクセルずつ色を見て、1バイトに詰めて、16進数表示でテキストにしています。
処理を簡単にするために、BMP の赤のみをみています。
下記のコードは、WPF/C# の一部です。
Linuxな方!PNG対応したい方!Advent Calendar 書くネタないなぁという方!コンバータ作って、ぜひ投稿してください)

MainWindow.xaml

<Window (snip)
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Button Content="File Select" HorizontalAlignment="Left" Margin="10" VerticalAlignment="Top" Width="80" Height="20" FontSize="12" Click="Button_Click"/>
        <TextBox Name="tbResult" Margin="10,40,10,10" />
    </Grid>
</Window>


MainWindow.xaml.cs

using Microsoft.Win32;
using System;
using System.Windows;
using System.Drawing;

namespace (Your Namespace)
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            string result = "";
            ofd.DefaultExt = ".bmp";
            ofd.Filter = "BMP|*.bmp";
            if (ofd.ShowDialog() == true)
            {
                Bitmap bitmap = new Bitmap(ofd.FileName);
                for (int y = 0; y < bitmap.Height; y++)
                {
                    result += "  ";
                    for (int x = 0; x < bitmap.Width; x+=8)
                    {
                        int a = 0;
                        for (int i = 0; i < 8; i++)
                        {
                            a = a << 1;
                            Color c = bitmap.GetPixel(x+i, y);
                            if (c.R > 127)
                                a |= 1;
                        }
                        result += string.Format("0x{0:X02}, ", a);
                    }
                    result += string.Format("// {0}", y + 1) + Environment.NewLine;
                }
                tbResult.Text = result;
            }
        }
    }
}

読ませるBMPファイルは、縦横264x176の物を準備してください。
サイズが間違っていると、画像がずれたり、動作がおかしくなります。


f:id:blgkns:20171207030253p:plain:w480
実行後、出力された16進数のデータを、screen_contents.c の 511~686行目と部分に上書きします。
※画像ではわかりにくいですが、176行分上書きしてください。


これを、デバッグ実行すると....

f:id:blgkns:20171207030254p:plain:w480
うまく表示されました!

IoTおもちゃを作ってみた

PSoC Advent Calendar 2016の13日目です。

以前、作った「IoTおもちゃ」について書いてみます。

IoTおもちゃ「ハロウィンのお城」

f:id:blgkns:20161213031434p:plain:w320
6cm角のサイコロ型の箱におさまる大きさのペーパークラフトです。 これを、PC やスマホから、照明を操作できるようにしました。

f:id:blgkns:20161213031435p:plain:w240

操作画面です。ブラウザから操作できます。

ペーパークラフト

株式会社さんけい の ペーパークラフトキット「みにちゅあーとmini」を改造して使用しています。 窓ガラス部分を、光りが通るように、プラバンに変え、中に LED を入れ、配線を床下に出しています。
f:id:blgkns:20161213031436p:plain:w320
床下には、PSoC 4 BLE Module (ピンソケットをはずしたもの)と ボタン電池が入っています。

システムの全体構成

通信経路は、下記のようになっています。
f:id:blgkns:20161213031441p:plain PSoC 4 BLE と Android が、BLE 通信。
Android と PC/スマホクラウドを介して、通信できるようになっています。
はじめて見る人は、「なんでー?」って言ってくれる人が少なくないのですが、わかってしまえば簡単です(^^)

Android端末

f:id:blgkns:20161213031438p:plain:w240
BLE通信 と インターネット通信を仲介するために、それぞれに接続できるようになっています。
もちろん、BLE通信だけで、直接、ペーパークラフトを操作できます。

Cloud / Webアプリ

Microsoft Azure 上に、Web Apps をたてています。
WebアプリとAndroid端末は、SignalR を使って通信しています。
Cloud 側は、ほぼ設定だけで、コードといえる物は、ありません。
Webアプリもボタンを押したら、Cloud に、コマンドを投げるだけというレベル。

BLE 通信

BLE の通信もシンプルです。
f:id:blgkns:20161213031439p:plain:w320
Custom Profileにして、Service / Characteristic を1つ作っています。
Characteristic は、uint8 が 1byte です。 Android から、コマンド 1byte 書き込むことで、動作するようにしています。
2つの LED をどのように光らせるかということを設定するだけなので、8bit で十分です。(単純に手抜き)

ひとこと

いろんな技術を使っていますが、どれも入門編レベルです。
IoTブームとか言われますが、まだまだ、インターネットとやりとり出来たらおもしろくなる物は、たくさんあると思います。
なにか作ってみてはいかがでしょうか?

おまけ

今回使用した「みにちゅあーとmini」は、他にもたくさん発売されており、いくつか改造して遊んでみようと思っています。
そこで、勉強がてら、専用基板つくっちゃいました(笑)
f:id:blgkns:20161213031440p:plain:w320
PSoC 4 BLE で基板を作ってしまうと、技適を通す必要が出てくるため、EZ-BLE PSoC を使っています。
しかし、こんな基板を設計して、気軽に発注できるなんていい時代ですよね。

PSoC 4 BLE で、はじめての BLE

PSoC Advent Calendar 2016の4日目の記事です。

Cypress Bluetooth Low Energy Pioneer Kit を入手して、PSoC Creator をインストールすれば、スマホですぐに BLE通信 を試すことができます。

導入後のファーストステップとして、コードも書かず、電子部品も使わずに、BLE の実験してみます。

1. スマホに「CySmart」アプリをダウンロード

BLE に対応した iPhone / Android スマホに、「CySmart」アプリをダウンロードします。
CySmart (iPhone) : App Store からダウンロード
CySmart (Android) : Google Play からダウンロード
(この記事の CySmart のスクリーンショットは、iPhone のものです。)

2. 新規プロジェクトの作成

2-1. PSoC Creator 起動

PSoC Creator を起動します。
f:id:blgkns:20161211234556p:plain:w480
「Create Project」ボタンを押す。

2-2. デバイスの選択(CY8CKIT-042-BLE の場合)

f:id:blgkns:20161211234557p:plain:w320
「Target device」にチェックを入れ、
PSoC 4」「PSoC 4200 BLE」を選択。

2-2. デバイスの選択(CY8CKIT-042-BLE-A の場合)

f:id:blgkns:20161211234558p:plain:w320
「Target device」にチェックを入れ、
PSoC 4」「Launch Device Selector...」を選択。

f:id:blgkns:20161211234559p:plain:w320
「Series」で、「PSoC 4200 BLE」を選択し、「CY8C4248LQI-BL583」を選択して、「OK」を押す。

2-3. テンプレートの選択

f:id:blgkns:20161211234600p:plain:w320
「Code example」を選択し、「Next >」を押す。

2-4. Example Project の選択

f:id:blgkns:20161211234601p:plain:w320
「BLE_FindMe」を選択し、「Next >」を押す。

2-5. 作成するプロジェクトの設定

f:id:blgkns:20161211234610p:plain:w320
ワークスペース名/保存先/プロジェクト名を設定し、「Finish」を押す。

3. 接続/ビルド/実行

f:id:blgkns:20161211234603p:plain:w320
Baseboard を PC と接続します。

f:id:blgkns:20161211234604p:plain:w480
「Program」ボタンを押すと、自動的にビルドが実行され、書き込みが行われます。
書き込みが完了すると、自動的に、実行されます。

f:id:blgkns:20161211234605p:plain:w320
このプロジェクトが正常に動作すると、右上のLEDが緑色に点灯します。
緑色に点灯している間は、BLE接続できる状態で、一定時間で、接続出来ない状態(赤色点灯)になります。
Baseboard の Resetボタンを押すことで、再度、接続出来る状態になります。

4. スマホで、BLE 通信する

スマホ側で、CySmartを起動します。
うまく動作していれば、「Find Me Target」がみつかります。

f:id:blgkns:20161211234606p:plain:w240

※見つからない場合は、Baseboard の Reset ボタンを押してみてください。

4-1. 接続する

「Find Me Target」をタッチすると、接続され、通信が確立します。

4-2. Find Me

f:id:blgkns:20161211234607p:plain:w240

メニューを左右にスライドさせて、「Find Me」を正面にもってきてタッチします。

f:id:blgkns:20161211234608p:plain:w240

「Select」を押す。

f:id:blgkns:20161211234609p:plain:w240

「No Alert」「Mid Alert」「Hige Alert」のいずれかを選択すると、Baseboard の LED の光り方が変わります。
スマホと、PSoC 4 BLE が通信できていることが確認できたでしょうか?

5. ひとこと

今回の Find Me 以外にも、たくさんの Example Project がありますので、お好みの物を試してみてください。

PSoC Creator 4.0 をインストールしてみる

PSoC Advent Calendar 2016の2日目の記事です。

PSoC Creator 4.0 を Windows10 にインストールします。
PSoC 4、PSoC 4 BLE、PRoC BLE、PSoC 5LP、EZ-BLE (PRoC/PSoC) 開発する際のインストール手順になります。
PSoC 3 開発をする場合は、Keil のライセンス認証が必要になります。認証登録については扱いません。)
(FM系MCU 開発をする場合は、PDLのインストールが必要になります。この記事では扱いません。)

ログイン

PSoC Creator をダウンロードするには、Cypress のホームページにログインする必要があります。
https://www.cypress.com/user/login
f:id:blgkns:20161201185931p:plain:w320
上記ページよりログイン(アカウントがない場合は、アカウントを作成します)

ダウンロード

PSoC Creator のページに行き
http://japan.cypress.com/products/psoc-creator-integrated-design-environment-ide
f:id:blgkns:20161201163745p:plain:w320
右側の「PSoC Creator for Windowsのダウンロード」をクリックし、ダウンロードします。

Akamai ダウンロードマネージャがインストールされてない場合は、こちらの画面が表示されます。
f:id:blgkns:20161201163746p:plain:w320
Akamai ダウンロードマネージャをインストールする場合は、表示に従って、ダウンロード/インストールして、再度、上記URLにアクセスします。

直接、PSoC Creatorをダウンロードする場合は、ダイアログを閉じて、「download the file without using the download manager」を選択します。
f:id:blgkns:20161201163747p:plain:w320


インストール

インストーラ ( PSoCCreatorSetup_4.0_es100_b432.exe ) (2016/12/01時点) を実行する。

.NET Framework 3.5」がインストールされていない場合
下記のような表示が出てインストールが中止されます。
f:id:blgkns:20161201163748p:plain

.NET Framework 3.5」をインストールします。
「コントロールパネル」の「Windowsの機能の有効化または無効化」で、
.NET Framework 3.5(.NET 2.0 および 3.0を含む)」にチェックをつけて、「OK」
f:id:blgkns:20161201163749p:plain

.NET Framework 3.5」のインストールが終わったら、再度、PSoC Creator のインストーラを実行します。


画面に従いインストールしていきます。
f:id:blgkns:20161201163750p:plain

f:id:blgkns:20161201163751p:plain

f:id:blgkns:20161201163753p:plain

f:id:blgkns:20161201163752p:plain

f:id:blgkns:20161201163754p:plain

f:id:blgkns:20161201163755p:plain
名前とメールアドレスを入力

f:id:blgkns:20161202004722p:plain
FM系MCU開発用なので、Cancelを選択

f:id:blgkns:20161201163757p:plain
Cypressのウェブサイトでログインした時のメールアドレスおよびパスワードを入力

インストール完了!

開発キット

持っている開発キット(ハードウェア)にあったパッケージをインストールすることで、PSoC Creator をより便利に使うことができます。

たとえば、「PSoC 5LP Prototyping Kit」の場合、
CY8CKIT-059 PSoC 5LP Prototyping Kit With Onboard Programmer and Debugger
このページの「Related Files」の
「CY8CKIT-059 Kit Only (Kit Design Files, Documentation, Examples) 」をダウンロードし、インストールします。

新規プロジェクト作成時に、対象のキットが表示されるようになります。
f:id:blgkns:20161201163758p:plain


BLE Pioneer Kit の場合も下記からダウンロードして、インストールしてください。
※キットによっては、別のソフトウエアのインストールを要求されることがあります。

CY8CKIT-042-BLE Bluetooth Low Energy (BLE) Pioneer Kit
「Download CY8CKIT-042-BLE Kit Only Package (Kit Design Files, Documentation, Examples)」

CY8CKIT-042-BLE-A Bluetooth Low Energy 4.2 Compliant Pioneer Kit
「CY8CKIT-042-BLE-A Kit Only (Kit Design Files, Documentation, Examples) 」

その他、たくさんの開発キットがありますので、お持ちのキットのページからダウンロードしてください。
また、キットによっては、回路図やBOMを置いてあるので、いろいろ参考になります。

Keil ライセンス取得ダイアログについて

しばらく使っていると、Keil のライセンス取得を求められるようになります。
以下の手順で、ダイアログ表示を止めることができます。
(※PSoC 3 で開発する方は、ライセンスを取得してください。本記事では扱いません。)
メニューの「Tool」「Options」で、
f:id:blgkns:20161201163759p:plain
「Don't show Keil registration....」に、チェックをつけます。

さて準備は出来ました!

PSoC Creator でいろいろ作ってみましょう!

PSoC 4 BLE で、シリアル通信してみる

PSoC 4 BLE で USBシリアル変換モジュールを使ってシリアル通信してみました。

使ったもの

・Cypress Bluetooth Low Energy Pioneer Kit (PSoC 4 BLE)
・USBシリアル変換モジュール

1. USBシリアル変換モジュール

秋月電子通商 超小型USBシリアル変換モジュール
http://akizukidenshi.com/catalog/g/gM-08461/
こちらを使用しました。3.3V でも 5V でも使用できます。
3.3V対応のものであれば、他のモジュールでもそのまま使えるかと思います。

2. プロジェクトの準備

メニューから「File」「Example Project」を選択
f:id:blgkns:20150919005433p:plain:w320
Device Family を PSoC 4200 BLE、
Keyword を UART にして、
SCB_UartComm を選択し、「Create New Workspace」を押す。
プロジェクトの保存先を指定して、「OK」を押す。
プロジェクトが生成され、データシートが表示されます。

3. ピンアサインを変更

データシートに、Bluetooth Low Energy PIONEER KIT (CY8CKIT-042 BLE) の場合、ピンアサインを変更するように書かれています。
f:id:blgkns:20150919005434p:plain:w320
UART:rx を P1[4] に、UART:tx を P1[5] につなぎ変えます。

4. 書き込み

「Build」「Generate Application」を押します。
Program ボタンを押します。

5. 配線

一度、 Baseboard の USB ケーブルを抜いた上で、下記のように配線します。
f:id:blgkns:20150919005438p:plain:w320

PSoC 4 BLE USBシリアル変換モジュール
GND - GND
P1[5] UART:tx - RxD
P1[4] UART:rx - TxD

また、USBシリアル変換モジュールと PC をUSBケーブルで、つなぎ、Baseboard と PC を USBケーブルでつなぎます。

6. シリアル通信してみる

ターミナルソフトを起動する。今回は、Tera Term を使用しました。
f:id:blgkns:20150919005435p:plain:w320
「シリアル」を選択し、対象のCOMポートを選択し、「OK」を押します。
※環境によって、COMポートは変わります。
f:id:blgkns:20150919005436p:plain:w320
「設定」「シリアルポート」において、シリアルポートの設定を変更します。
PSoC 4 BLE のシリアルポート設定にあわせます。データシートに記述されています。

f:id:blgkns:20150919005437p:plain:w320
Baseboard のリセットボタンを押すと、Tera Term 上にメッセージが表示されます。また、PC 側でキー入力を行うと、そのまま表示されます。

7. コードについて

PSoC Creator で、main.c を見てみると、起動後、5行のテキストを、UART に吐きます。
その後、UART から受けた文字をそのまま UART に返します。PC でターミナルソフト上で、入力された文字は、いったん PSoC 4 BLE に送られた文字が帰ってきたものであることがわかります。

EZ-BLE で、Lチカしてみる

EZ-BLE 小さくていいですね。1cm角のモジュールに、CPU / BLEモジュール / チップアンテナが載ってます。 今回は、EZ-BLE PRoC Evaluation Board が入手出来たので、これでLチカしてみます。

1. Baseboardの準備

f:id:blgkns:20150909120743p:plain:w320
Bluetooth Low Energy Pioneer Kit の Baseboard に、EZ-BLE PRoC Evaluation Board をセットします。

2. プロジェクトの準備

メニューから「File」「New」「Project」を選択
PSoC 4100 BLE / PSoC 4200 BLE Design を選択
プロジェクト「EZ-BLE_LED01」とし、
Project templete を「Empty schematic」にして、「OK」を押す

3. プロジェクトの対象デバイスの変更

参照:
yamagoya.hatenablog.jp

  1. Components タブを選択します。
  2. Project を選択、右クリックから、Device Selector を呼び出します。
  3. Family のフィルタで、PSoC 4 BLE のチェックをはずし、PRoC BLE のチェックをつけます。
  4. CYBLE-022001-00 を選択し、OK を押します。
    f:id:blgkns:20150909120739p:plain:w320

4. コンポーネントを配置する

4-1. コンポーネントの配置

TopDesign.cysch を開き、 Component Catalog から、Digital Output Pin を3つ配置する。

4-2. Digital Output Pinコンポーネントの設定

f:id:blgkns:20150909120740p:plain:w320
写真のように、LED_R を設定する。
同様に、LED_G、LED_B を設定する。

4-3. 配置・設定完了 ####

f:id:blgkns:20150909120741p:plain:w320


5. 配線する

f:id:blgkns:20150909120742p:plain:w320
EZ-BLE_LED01.cydwr を開き、
LED_R を P3[4] に
LED_G を P3[6] に
LED_B を P3[7] につなぐ。
「Generate Application」ボタンを押す

6. コードを書く

Workspace Explorer から main.c を、開いて下記のようにコードを書きます。

#include <project.h>

int main()
{
    int count = 0;
    
    CyGlobalIntEnable;

    for(;;)
    {
        LED_R_Write( count & 0x01 ? 0:1 );
        LED_G_Write( count & 0x02 ? 0:1 );
        LED_B_Write( count & 0x04 ? 0:1 );
        CyDelay(500);
        
        count++;
        if(count > 7)
            count = 0;
    }
}


7. 実行

Programボタンを押して、実行。
うまく動けば、LED が0.5秒ごとに、色を変えていきます。

8. 参考

Bluetooth Low Energy Pioneer Kit に挿した時、LED と User Switch は、下記のようになっています。

  PSoC 4 BLE / PRoC BLE EZ-BLE
LED (R) P2[6] P3[4]
LED (G) P3[6] P3[6]
LED (B) P3[7] P3[7]
User Switch P2[7] P3[5]