#author("2018-11-23T11:56:30+00:00","","") [[&ref(home.gif);:http://jaco.ec.t.kanazawa-u.ac.jp/kitagawa/]] ~ Visitor No. &counter(total); Cypress Semiconductor社PSoC Creator (PSoC3以上) 関連のメモです。 ~ ---- *目次 [#k218fc8f] #contents(); *コメント欄 [#d1b3049c] #pcomment(reply); *メモ [#z5b56d96] ***PSoC4ファミリー(ARM Cortex-M0版PSoC)の選択 [#def158c5] ADCが弱いことを除くと低消費電力で使いやすい。4200にはBluetoothLE版もある。 -CY8C4000ファミリ:クロック16MHz, フラッシュ16kB, シリアルポートはI2Cのみ(送信用ソフトウエアUARTはあり) -CY8C4100ファミリ:クロック24MHz, フラッシュ32kB, I2C/SPI/UART2個, LCD, 12bit-ADC -CY8C4200ファミリ:クロック48MHz, フラッシュ128kB, DMA, I2C/SPI/UART4個, CAN2個, LCD, 12bit-ADC ***電源構成 [#dcfb22cc] VDDD, VDDA, VDDR, VCCDなどいろいろあって忘れそうなのでデータシートを要約。 #ref(power_supply.png) -電源電圧は、1.8-5.5V --Bluetoth LE搭載ファミリは、1.9-5.5V(1.9V以下でも動作するが、BLEは停止) -内部LDOはデフォルトで有効 --無効にした場合は、VDD1.71-1.89V、VCCDとVDDDをショートする ***MiniProg3の接続 [#e1433a2c] 純正の書き込み器MiniProg3によるPSoC生チップのプログラムに関する覚え書き。もっとも、MiniProg3は値段が高いので、マニアには敬遠されているらしい。 #ref(HSSP.png) -プログラムとデバッグにSWD(ARM Serial Wire Debug)を利用する -どのポートがSWDかは、データシートでSWDを検索する -SWDポートは汎用IOと共有なので、プログラム専用にするとSWD_IO, SWD_CLKを割り当てた2ポート分の汎用IOが使えなくなることに注意 ***開発の流れ [#a78d5c64] 学部生、卒研生向け、プログラムとデバックの手順解説。ここでは、CY8CKIT-142 PSoC4 BLEモジュール(技適認証済み)を使用したが、BLEを使わないなら、PSoC CY8C4245あたりで。 -PSoC Creatorを起動 -File - New - Project... --Taget device = PSoC4, PSoC4200BLE (使用するデバイスに合わせて) - Nextボタン -Empty schematic - Nextボタン -- Workspace name, Location, Peoject nameを適当に設定 - Finishボタン -右欄のComponent Catalog - Cypressタブ - Ports and Pins - Digital Input Pin, Digital Output Pin をドラッグして各1個づつ回路図シート(TopDesign.cysch)に配置 #ref(pin_01s.png) -回路図に配置したPinのシンボルをダブルクリックして、下記のように設定 - OKボタン --HW connection: プログラム制御の場合チェック無し、回路制御の場合☑有り --Drive mode: 出力回路の設定。スイッチ入力の場合はResistive pull up (押さないときHighとする)、LED点灯の場合はStrong --Initial drive state(初期状態のHigh, Lowに合わせる) 入力ピン &ref(pin_input.png,,50%); 出力ピン &ref(pin_output.png,,50%);