SSブログ

PSoC Express でUSB UART [PSoC]

 鉄は熱いうちに打て、というよりも借り物があるうちにお試しということで、結構使いでのありそうなUSB-UARTを試してみました。

0-5Vを入力し、PCに送信、PCから0,1,2を書き込むとそれにあわせてLEDがON,OFF,点滅という動作をさせます。

 まず完成したところ。

 入力部はVoltageの0-5Vのやつです。

特に設定はないですね。

 ついでInterfaceからUSB-UARTモジュールを置きます。

これはVID,PIDの設定のみです。

外部インターフェース関連の信号授受はわかりにくいのですが、、入力や出力モジュールと線で結ばれるのではなくて、表からは見えないレジスタ経由で行われる用になっています。

VALUATORでは、PCから送られた来た数値とコマンドの関連付けを行います。Interface Valuatorをチェックし、NEXTをクリックします。

 ここでAdd Statesをクリックし

 ここで状態を定義します。

今回はLEDなので、OFF,ON,BLINKに0,1,2を割り当てます。

終わったらOKをクリックします。

チェックボックスはまとめて削除する時に使います。

 LEDのpropatyでは点滅速度を設定します。

とりあえず、0.5秒おき(2Hz)に設定。

 Transfer functionを選択

ここで、PCからのコマンドとLEDの動作の関連付けを設定します。

 ここでは、簡単なtable lookupを使用します。

 ここでの設定はないので、NEXTをクリック。

 左のUSB_VALがPCからのコマンド、右がLEDの動作です。

 ドラッグして、上のように定義します。

 これで一通り完成。

メニューバーのProject-Assign Register MapメニューでPCとの送受信に使われるレジスタが一覧できます。

 Buildを選択すると、デバイスの指定画面になります。

 ここで、ピン配置の設定を行います。青のレンガ上のものをドラッグして変更します。

未配置のピンがあれば、右上に表示されます。

 buildが終わると上のような画面になります。

画面下のリンクをクリックすると、部品表、設計したデバイスのデータシート、回路図を見ることができます。

 これがデータシート。

専用ICのイメージですね。

 ここにドライバをどうするとか、データの構成、コマンドの発行の仕方が書いてあります。

基本的には市販のUSB-シリアル変換ケーブルのように振舞います。

ボーレートは自動認識です。

全部で4byte構成なので読み出しはRD 04とタイプします。

そうすると先ほどのassign register mapの順で4byte表示されます。

CRD 04で連続読み出しです。

書き込みレジスタのオフセットは0なので、WR 00 XX(XXは任意値)で書き込みます。

LEDに変化ありました?

 

これはなかなかお手軽です。

ログをexcelなどに取り込めば、グラフにしたりできますね。

休眠していた、電池放電モニタ復活させよう...。


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:日記・雑感

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

Cypress PSoC Express..にこにこのそのご ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。