tshell_blog

ソフトウェアと車輪がついた乗り物のはなし

PSoC 5LP Prototyping Kit プログラム書き込み手順

PSoC Programmerの使い方

PCとの接続

基盤の左側はUSB端子になっているので,PCのUSBポートに差し込む。
f:id:tshell:20190526181604j:plain

以下のようなイメージになる。
f:id:tshell:20190526181646j:plain

PSoC Programmerの起動

f:id:tshell:20190526181742p:plain

以下の赤丸のアイコンをクリックし,書き込みたいHexファイルをロードする。 PSoC Creatorでのビルドが成功すると,以下の場所にHexファイルが作成される。
C:\Users\ユーザー名\Documents\PSoC Creator\CE195352_PSoC_5LP_Blinking_LED01\CE195352_PSoC_5LP_Blinking_LED01.cydsn\ARM_GCC_541\Debug

Hexファイルの読み込み後,右側のMemory TypesグループボックスにあるLoad from hexをクリックする。
f:id:tshell:20190526181851p:plain

以下の赤線部をクリックするとKitProg(PSoCプログラム書き込み器)に接続する。
f:id:tshell:20190526182011p:plain

接続に成功すると以下のような画面になる。赤丸のアイコンをクリックしてHexファイルを書き込む。
f:id:tshell:20190526181915p:plain

書き込みが成功するとProgramming Succeededが表示される。
f:id:tshell:20190526182056p:plain

Hexファイルの書き込み後は基板上の青色LEDが一定間隔で点滅し,プッシュボタンを押している間は消灯するような動作になる。

PSoC Creatorの使い方

PSoC 5LP Prototyping Kitの開発環境を構築したときに入ったPSoC Creatorの使い方。
とりあえずサンプルを開いてビルドするところまで
tshell.hatenablog.com

新規プロジェクトの作成

Create Projectアイコンをクリックする。
f:id:tshell:20190525085033p:plain

Target kitを選択する。CY8CKIT-059以外は選択できない。
f:id:tshell:20190525085108p:plain

Code Exampleを選択する。
f:id:tshell:20190525085138p:plain

Blinking LEDを選択する。
f:id:tshell:20190525085228p:plain

プロジェクト名とプロジェクトの保存場所を選択する。
f:id:tshell:20190525085252p:plain

生成されたプロジェクトの確認

ピンアサイン設定を確認する。
pin63がPWM出力,pin64がKillスイッチに割り当てられている。
f:id:tshell:20190525085321p:plain

CY8CKIT-059_Schematics.pdfを確認すると以下のように,pin63に青色LEDが接続され,pin64にプッシュボタンが接続されているので,これでOK
f:id:tshell:20190525085408p:plain

f:id:tshell:20190525085424p:plain

ビルド

メニューからBuild - Build プロジェクト名を選択する。
(スクショ間違った)
f:id:tshell:20190525085456p:plain

OutputにBuild Succeededが表示されればビルド成功。
f:id:tshell:20190525085521p:plain

PSoC 5LP Prototyping Kit 開発環境の構築

公式サイトから以下のインストーラをダウンロードする。Cypressのユーザー登録を行わないとダウンロードできない(名前と会社名,メールアドレスの登録でOK)

f:id:tshell:20190524235407p:plain

インストーラを実行する。
f:id:tshell:20190524235444p:plain

Nextをクリックする。
f:id:tshell:20190524235516p:plain

f:id:tshell:20190524235519p:plain

Installation Type からTypicalを選択してNextをクリックする。
f:id:tshell:20190524235600p:plain

CypressのEULAに同意する。
f:id:tshell:20190524235621p:plain

armのEULAに同意する。
f:id:tshell:20190524235642p:plain

インストールが始まる。結構時間がかかる。途中でコマンドプロンプトが表示されてもあわてない。
f:id:tshell:20190524235709p:plain

名前とメールアドレスの入力
メールアドレスはユーザー登録したアドレスであってもなくてもOK
f:id:tshell:20190524235727p:plain

インストールされたソフトに更新があればアップデートしておく。
f:id:tshell:20190524235757p:plain

以上で環境構築は終了。

サンプルプロジェクトを開く

WindowsのスタートメニューなどからPSoC Creatorを起動する。
初回起動時にユーザー登録画面が表示される。とりあえずRegister Laterをクリックして先に進める。
f:id:tshell:20190525000036p:plain

サンプルプロジェクトはC:\Program Files (x86)\Cypress\PSoC Creator\4.2\PSoC Creator\examples\sampleprojectsに保存されている。
この場所を開こうとすると以下のようなエラーが出るので,マイドキュメントなどにコピーしてからPSoC Creatorで開く必要がある。(インストール時にマイドキュメントの下にPSoC Creatorフォルダが作成されているのでそこにコピーするのがよさそう)
f:id:tshell:20190525000203p:plain

File - Open - Project/Workspaceを選択する。
f:id:tshell:20190525000242p:plain

PWMxampleを開く
f:id:tshell:20190525000325p:plain

プロジェクトを開くと以下のように,左側のツリーに構成ファイルが表示される。
f:id:tshell:20190525000404p:plain

PSoC 5LP Prototyping KitでFreeRTOSを使う

PSoC 5LP評価キットでFreeRTOSを動かしたときのメモ
PSoC 5LP Prototyping Kit公式ページ

必要なもの

ソースのダウンロード

FreeRTOSのダウンロードページからダウンロードする。
以下にリンクされているので,直接行っても可
SourceForge

自己解凍形式のexeを実行する。
f:id:tshell:20190523210706p:plain

解凍するとFreeRTOSv10.2.0\FreeRTOS\Demoの中にいろいろなCPU向けのプロジェクトが入っている。
PSoC Creator向けのCORTEX_CY8C5588_PSoC_Creator_GCCを開く

f:id:tshell:20190523210841p:plain

コンポーネントのアップデート

以下のようにコンポーネントが見つからないエラーが大量に出るので,コンポーネントをアップデートする。
f:id:tshell:20190523210941p:plain

Project - Update Componentsを選択する。
f:id:tshell:20190523211015p:plain

コンポーネントをどのバージョンにアップデートするか選択する。
特に何も変更せずNextをクリックする。
f:id:tshell:20190523211111p:plain

コンポーネントがアップデートされると,以下のようにエラーが消える。
f:id:tshell:20190523211228p:plain

プロジェクトを右クリックし,Device Selectorを選択する。
f:id:tshell:20190523211314p:plain

評価キットに搭載されているCY8C5888LTI-LP097を選択する。
f:id:tshell:20190523211348p:plain

ピン設定

UARTのRXが12[6],TXが12[7]になるようにピンアサインを変更する。
f:id:tshell:20190523211426p:plain

実行

ビルドし,PSoC Programmerで書き込む。

Teratermなどのターミナルエミュレータを接続するとA-Zが連続して表示される。ボーレートは57600
FreeRTOSのPSoCサンプルとしてはこのような動作になるらしい
f:id:tshell:20190523211511p:plain

YZがない?アンチYAMAHA