- DIP28pのPSoC1 (CY8C27443/29466)の入出力ピン(のほとんど)をArduinoShield互換のコネクタに引き出しています。(頒布版ではCY8C27443が搭載されています) そのため、Arduino用のシールドは基本的に使用できます(ただしプログラムやライブラリはPSoC1用に移植する必要があります)。
- USB-UART変換のFT232RLを搭載し、ブートローダ経由のプログラム転送やデバッグ用UART通信ができます。そのため、このボード単体でのプログラム開発が容易になります。(またいわゆるDTRリセットができるので、UART経由のデバッグに便利です)
- プログラム開発は、CypressのPSoC1開発環境であるPSoC Designerを使用し、PSoC1の能力を最大限使用できます。
- デバッグ用のLEDを1個搭載しています。
- 電源はUSBバスパワーまたは+7〜12VのACアダプタ(ArduinoUno用を使用できます)から供給します。
- PSoC1の動作電源電圧は3.3V/5Vを選択できます。
- 専用のアプリケーションPSoC1termで、プログラム転送&シリアルターミナルを配布しています。
- PSoC DesignerとPSoC1termはいずれもWindowsでのみ動作しますので、Windows環境をご用意ください。
- 使い方マニュアル(PDF) / この中で紹介しているPSoC1duino_Touch.zip→PSoC1duino_Touch.zip
ピン配置
Arduino | PSoC1 (CY8C27443/29466) |
D0-D7コネクタ |
D0(RX) | P2.0 |
D1(TX) | P2.1 |
D2 | P2.2 |
D3 | P2.3 |
D4 | P2.4 |
D5 | P2.5 |
D6 | P2.6 |
D7 | P2.7 |
D8-D13コネクタ |
D8 | P1.0 |
D9 | P1.1 |
D10 | P1.2 |
D11 | P1.3 |
D12 | P1.4 |
D13 | P1.6 |
GND | GND |
AREF | - |
A0-A5コネクタ |
A0 | P0.0 |
A1 | P0.1 |
A2 | P0.2 |
A3 | P0.3 |
A4(SDA) | P0.4/P1.5 (ショートピンで切替) |
A5(SCL) | P0.5/P1.7 (ショートピンで切替) |
電源/A6-A7コネクタ |
A6 | P0.6 |
A7 | P0.7 |
RESET | RST (PSoC1のXRESとは逆極性でArduinoと同じ負論理です) |
3.3V | 3.3V(レギュレータ出力) |
5V | 5V(レギュレータ出力) |
GND | GND |
GND | GND |
Vin | ACアダプタからの供給電圧 |
- PSoC1とFT232RLのI/O端子の電圧(表中のVin) は、3.3Vまたは5Vをボード上のスイッチで切り替えられます。
- D0端子(P2.0)は、1kΩ抵抗を通してFT232RLのTX端子に接続されています。
- D1端子(P2.1)は、1kΩ抵抗を通してFT232RLのRX端子に接続されています。
- D13端子(P1.6)は、オレンジ色LEDが接続されています。
- 名刺サイズピン配置図(PDF) / ←InkscapeSVG形式
ICSPコネクタ
Cypress MiniProg等の書き込み機を接続します。
新品のPSoC1やブートローダ経由のプログラム転送に失敗したときのプログラム書き込みに使います。
1 | VDD |
2 | GND |
3 | XRES |
4 | SCL |
5 | SDA |
プログラムの開発と書き込み
専用アプリPSoC1termを使ってUSB経由でのプログラムの書き込みができます。
このPSoC1termは、シリアルモニタの機能もあるので、PSoC1とシリアル通信(UART)でのやりとりができます。
(プログラムの書き込みは、Cypress Application Note AN2100の方法(を改良した方法)で行っています)
プログラムの開発は、Cypress標準ののPSoC Designerを使用します。以下のCypress社のWebサイトからあらかじめダウンロードしておいてください。
またプログラム作成用のテンプレートもあらかじめダウンロードしておいてください。
この他、USBドライバをダウンロード・インストールしておきます(既にArduinoなどでFTDI社のUSB-シリアル変換機を使ったことがある場合は、このドライバのインストールは不要ですが、念のため最新版をインストールしておくことをお薦めします)。
新規にプログラム(プロジェクト)をつくるには、以下の手順をふみます。
- PSoC Designerで新規プロジェクトを作成する
- 「既存のプロジェクトをコピー」を選び、ダウンロードしたテンプレート中にある以下のいずれかを選択する。
- 「PSoC1duino27443_Template_with_Modules」(ボード上のUARTやLEDのためのユーザモジュールが配置済み:通常はこちらを選ぶとよい)
- 「PSoC1duino27443_Template」(ユーザモジュールなし)
- このとき、「boot.tplを更新する("Replace the boot.tpl")か」を聞かれた場合は、「更新しない("keep the current boot.tpl")」を選ぶ。
- テンプレート内にある「boot.tpl」というファイルを、プロジェクト内の「boot.tpl」に上書きしコピーして置き換える。
- 通常通りプログラムを作成(Device Editor、main.cなど)し、Buildする
- PSoC1termを起動し、PSoC1duinoのCOMポートを選択し、できあがったHEXファイルを指定して「Write」ボタンを押す。(書込対象プロジェクトが同じであれば、コンパイル後はWriteボタンを押すだけでOK)
- 転送したプログラムが実行される。PSoC1termのTerminalOpenボタンを押すと、シリアルターミナルが開き、リセットがかかってプログラムが実行される。ここではテキストまたはバイナリデータの送受信ができる。
なお新品のPSoC1 (CY8C27443)に載せ換える場合や、上記の手順以外の方法で作成したプロジェクトのプログラム書き込みを行ってプログラム転送に失敗する場合には、ブートローダつきテスト用プログラムをMiniProg等の書き込み機で書き込んでください。
(ボード上のCY8C27433には初期出荷時にこの「ブートローダつきテスト用プログラム」が書き込んであります。リセット、まはたシリアルターミナルを開くと、ます"S"を送信し、その後1バイト受信するとごに、ボード上LEDの点灯消灯が切り替わるとともにその受信した文字の次の文字(例えば'a'→'b)を送信します。)
設計データ等
PSoC1duinoはOpen Source Hardwareです。
以下のPSoC1duinoに関する以下のデータは、クリエイティブコモンズライセンスの「表示-非営利-継承(CC BY-NC-ND)」に従って利用できます。
設計上の工夫の小話
CY8C29466での使用
同じピン配置のPSoC1で内部リソースの多いCY8C29466に載せ換えての使用もできます。
CY8C29466を使う場合は、最初に以下のテストプログラムを書き込んでください。
またプロジェクト作成時のテンプレートも、以下のものを使用してください。
なおこのテスト用プログラムは電源電圧3.3V用です。
5Vで使用する場合はGlobalResourceのPowerSettingを変更してください。
お問い合わせはこちらまで: akita@akita11.jp