PSoC 5LP Prototyping KitでUSB-UARTを使う


この記事では,PSoC 5LP Prototyping Kit(CY8CKIT-059)でUSB-UART-Brigeを使う手順を示します.この手順は,Cypressの「KitProg User Guide」に記載されている内容をピックアップしたものです.「PSoC4でUSB-UART-Bridgeを使うメモ」のPSoC 5LP版です.

必要なもの

  • CY8CKIT-059
  • PSoC Creator

サンプルプログラムを作ってみる

プロジェクトの作成

空のプロジェクトを作成し,UARTコンポーネントをおきます.

UARTの設定

UARTコンポーネントをダブルクリックして,通信速度を設定します.

ビルド

一度,プロジェクトをビルドして,必要なソースを生成します.

ピンの設定

プロジェクト名.cydwr を開いて,ピンアサインを設定します.図のように設定をしておきます(重要).

Name Port Pin
RX_1 P12[6] 20
TX_1 P12[7] 21

main.c のサンプルプログラム

例えば,以下のようなプログラムを記述してみます.

int main()
{
    CyGlobalIntEnable; /* Enable global interrupts. */

    UART_1_Start();
    UART_1_PutString("USB-UART");
    UART_1_PutCRLF(1);
    for(;;)
    {
        uint8 ch = UART_1_GetChar();
        switch(ch){
        case 0:
            /* Nothing */
            break;
        case '?':
            UART_1_PutString("Sample Program. ");
            UART_1_PutCRLF(1);
            break;
        case '!':
            CySoftwareReset();
            break;
        }
    }
}

ビルド&書き込み

ビルドして,ボードに書き込みます.

ターミナルソフトで接続する

TeraTermなどのターミナルソフトで接続してみます.シリアルポートに接続します.「KitProg」と表示されているポートを選択します.

通信速度の設定をします.

実行

実行を確認できます.「!」キーでボードのリセットが行われ,「USB-UART」と表示されます.「?」キーで「Sample Program.」と出力されます.

参考

UARTコンポーネントでよく使いそうな関数を示します.XXXがコンポーネント名です.

関数名 説明
void XXX_Start(void) UARTの通信を開始します
uint8 XXX_GetChar(void) 1文字を受信します
uint16 XXX_GetByte(void) 1バイトを受信します
void XXX_PutChar(uint8 txDataByte) 1文字を送信します
void XXX_PutString(const char8 string[]) 文字列を送信します
void XXX_PutCRLF(uint8 txDataByte) 改行文字を送信します
void XXX_Sleep(void) スリープモードにします
void XXX_Wakeup(void) スリープモードから復帰します