アプリケーションの説明 2014/02/04 -...

18
1 Access_SerialPort アプリケーションの説明 2014/02/04 RS232C インターフェースで PC に接続した CPU 基板と UART 通信(非同期シリアル通信)を行うためのプログラムです。 USB の VCP(仮想 COM ポート)による通信を行う場合は、Access_VCP アプリケーションを使用してください。 Microsoft Visual C# 2010 Express を使用して作成した PC アプリケーションです。 Access_SerialPort アプリケーションは、実行中はいつでも受信可能にしておくために COM ポートを開いたままにしています。 アプリケーションを終了すると COM ポートをクローズします。 他のアプリケーションで同一の COM ポートを使用する場合は、Access_SerialPort アプリケーションを閉じてください。 目次 1. PC と CPU 基板との接続.............................................................................................................................................................................................................................. 2 1) UART1 による接続 ...................................................................................................................................................................................................................................... 2 2) UART2 による接続 ...................................................................................................................................................................................................................................... 3 1.1. 「飛石伝ひ I/F 基板」 を使用して RS232C 接続する場合......................................................................................................................................... 4 1.2. STM32F4 Discovery の場合 ......................................................................................................................................................................................................... 6 1.3. STM32L-Discovery の場合.......................................................................................................................................................................................................... 7 2. インストールして使用したい場合 .............................................................................................................................................................................................................. 8 3. Microsoft Visual C# 2010 Express プロジェクトを起動して実行したい場合 ................................................................................................................10 4. Access_SerialPort アプリケーションの動作 ......................................................................................................................................................................................12 4.1. エコーバック.........................................................................................................................................................................................................................................12 4.2. データ受信...........................................................................................................................................................................................................................................15 4.3. Access_SerialPort アプリケーションの使用上の注意....................................................................................................................................................16 5. 主なモジュールの概要..............................................................................................................................................................................................................................17

Upload: others

Post on 01-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • 1

    Access_SerialPortアプリケーションの説明 2014/02/04

    RS232CインターフェースでPCに接続したCPU基板と UART通信(非同期シリアル通信)を行うためのプログラムです。

    USBのVCP(仮想COMポート)による通信を行う場合は、Access_VCPアプリケーションを使用してください。

    Microsoft Visual C# 2010 Expressを使用して作成した PCアプリケーションです。

    Access_SerialPortアプリケーションは、実行中はいつでも受信可能にしておくためにCOMポートを開いたままにしています。

    アプリケーションを終了するとCOMポートをクローズします。

    他のアプリケーションで同一のCOMポートを使用する場合は、Access_SerialPortアプリケーションを閉じてください。

    目次

    1. PCとCPU基板との接続 .............................................................................................................................................................................................................................. 2

    1) UART1による接続 ...................................................................................................................................................................................................................................... 2

    2) UART2による接続 ...................................................................................................................................................................................................................................... 3

    1.1. 「飛石伝ひ I/F基板」 を使用して RS232C接続する場合 ......................................................................................................................................... 4

    1.2. STM32F4 Discoveryの場合 ......................................................................................................................................................................................................... 6

    1.3. STM32L-Discoveryの場合 .......................................................................................................................................................................................................... 7

    2. インストールして使用したい場合 .............................................................................................................................................................................................................. 8

    3. Microsoft Visual C# 2010 Expressプロジェクトを起動して実行したい場合 ................................................................................................................ 10

    4. Access_SerialPortアプリケーションの動作 ...................................................................................................................................................................................... 12

    4.1. エコーバック ......................................................................................................................................................................................................................................... 12

    4.2. データ受信 ........................................................................................................................................................................................................................................... 15

    4.3. Access_SerialPortアプリケーションの使用上の注意 .................................................................................................................................................... 16

    5. 主なモジュールの概要 .............................................................................................................................................................................................................................. 17

  • 2

    1. PCとCPU基板との接続

    RS232Cの非同期シリアル通信で接続するものなら何でも接続できますが、ここでは Cortex-M3またはCortex-M4シリーズ

    のCPUを対象に説明します。

    PC と CPU基板との接続は次のようになります。

    1) UART1による接続

    a) 信号接続

    UART1による接続信号は次のようになります。

    (STM32F4 Discoveryでは PA9と PA10を USBの制御に使用しているため UART1としては使用できません。)

    番号 CPU機能名 CPU信号名 方向

    (RS232C ドライバ挿入)

    接続相手の

    信号名

    D-SUB 9S

    ストレート接続

    1 USART1_TX PA9 --- > RxD 2

    2 USART1_RX PA10 < --- TxD 3

    3 GND GND < --- > GND 5

    b) RS232C ドライバ接続例

    RS232C

    ドライバ

    CPU基板

    UART

    PC RS232Cケーブル

  • 3

    2) UART2による接続

    a) 信号接続

    UART2による接続信号は次のようになります。

    番号 CPU機能名 CPU信号名 方向

    (RS232C ドライバ挿入)

    接続相手の

    信号名

    D-SUB 9S

    ストレート接続

    1 USART2_TX PA2 --- > RxD 2

    2 USART2_RX PA3 < --- TxD 3

    3 GND GND < --- > GND 5

    b) RS232C ドライバ接続例

  • 4

    1.1. 「飛石伝ひ I/F基板」 を使用してRS232C接続する場合

    1) UART1を使用する場合

    UART1を使用する場合、PCとの接続は以下のようになります。

    コネクタ P8-UART0を使用して PCなどとRS232C接続することができます。

    (P8-UART0にCPUの USART1の信号が接続されています。まぎらわしくて、すみません。)

    「飛石伝ひ I/F基板」の UART信号表

    飛石伝ひ I/F基板

    P8 ピン番号

    信号名 CPU機能名 CPU信号名 飛石伝ひCPU基板

    コネクタピン番号

    接続相手の信号名

    1 TxD USART1_TX PA9 P1-41 --- > RxD

    2 RxD USART1_RX PA10 P1-40 < --- TxD

    3 GND GND GND P1-1, P1-2, P1-5

    P1-17, P1-49, P1-50

    P2-1, P2-2, P2-50

    < --- > GND

    DSUB-9Sとの接続

    飛石伝ひ I/F基板

    P8 ピン番号

    信号名 DSUB-9S 備考

    1 TxD 2

    2 RxD 3

    3 GND 5

    DSUB-9Sには上記の3本の信号以外は接続されていません。

    飛石伝ひ I/F基板

    P8 DSUB-9S

    PC

    RS232C変換ケーブル

    飛石伝ひCPU基板

    P3 P4

    図1.1. 1)

  • 5

    2) UART2を使用する場合

    UART2を使用する場合、PCとの接続は以下のようになります。

    「飛石伝ひ I/F基板」はRS232C ドライバを搭載しています。

    コネクタ P9-UART1を使用して PCなどとRS232C接続することができます。

    (P9-UART1にCPUの USART2の信号が接続されています。まぎらわしくて、すみません。)

    「飛石伝ひ I/F基板」の UART信号表

    飛石伝ひ I/F基板

    P9 ピン番号

    信号名 CPU機能名 CPU信号名 飛石伝ひCPU基板

    コネクタピン番号

    接続相手の信号名

    1 TxD USART2_TX PA2 P2-40 --- > RxD

    2 RxD USART2_RX PA3 P2-39 < --- TxD

    3 GND GND GND P1-1, P1-2, P1-5

    P1-17, P1-49, P1-50

    P2-1, P2-2, P2-50

    < --- > GND

    DSUB-9Sとの接続

    飛石伝ひ I/F基板

    P9 ピン番号

    信号名 DSUB-9S 備考

    1 TxD 2

    2 RxD 3

    3 GND 5

    DSUB-9Sには上記の3本の信号以外は接続されていません。

    飛石伝ひ I/F基板 P9 D

    SUB-9S

    PC

    RS232C変換ケーブル

    飛石伝ひCPU基板

    図1.1. 2)

  • 6

    1.2. STM32F4 Discoveryの場合

    PCとの接続は以下のようになります。

    RS232C

    ドライバ

    DSUB-9S

    PC

    RS232C変換ケーブル

    図1.2.

    STM32F4 Discovery

  • 7

    1.3. STM32L-Discoveryの場合

    PCとの接続は以下のようになります。

    RS232C

    ドライバ DSUB-9S

    PC

    RS232C変換ケーブル

    STM32L-Discovery

    図1.3.

  • 8

    2. インストールして使用したい場合

    Access_SerialPort.zipをダウンロードして解凍すると、下図のようにフォルダAccess_SerialPortの下の publish内に

    インストールのためのファイルが格納されています。

    setup.exeをダブルクリックすると次の警告のダイアログが開きます。

    [インストール(I)] ボタンをクリックしてインストールしてください。

    次ページに続く

  • 9

    プログラムがインストールされて自動的にAccess_SerialPortプログラムが実行されて次のダイアログが表示されます。

  • 10

    3. Microsoft Visual C# 2010 Expressプロジェクトを起動して実行したい場合

    Microsoft Visual C# 2010 Expressがインストールされている必要があります。

    フォルダAccess_SerialPortの下のファイルAccess_SerialPort.slnをダブルクリックしてプロジェクトを起動してください。

    プロジェクトが起動すると以下の画面になります。

  • 11

    メニューの {デバッグ(D)} -> {デバッグ開始(S)} をクリックするとプログラムが実行されて次のダイアログが開きます。

    図3.

  • 12

    4. Access_SerialPortアプリケーションの動作

    4.1. エコーバック

    1) COMポートの選択

    COM選択のComboBoxで COMポートを選択してください。

    選択すると次のメッセージが表示されます。

    [はい(Y)] ボタンをクリックしてください。

    次ページに続く

  • 13

    この例では 「COM4に設定しました。」 とメッセージが表示されています。

    2) 次に送信データにASCII文字を入力して [送信] ボタンをクリックしてください。次のようになります。

    この例では “How are you?” と入力しています。(このプログラムではASCII文字のみ入力可能です。)

    エコーバックされて、受信の部分に “How are you?” が表示されています。

  • 14

    3) 送信データの入力について

    送信データにはASCII文字のみ入力可能です。

    データの値が 0x20未満、 0x7F以上の場合、 &xx の 3byteで表現します。

    a) 例1

    : 0x0D 0x0A を入力する場合 : &0D&0A と入力します。

    b) 例2

    & を入力する場合 : && と&を2個入力します。

    受信データ表示選択が ASCII の場合、受信データの欄に表示されるデータもこの規則に従います。

  • 15

    4.2. データ受信

    データを受信すると、受信データの欄に受信データが表示されます。

    CPU基板がUART_STM32F4プログラムを実行している場合、Userスイッチを押すたびに8byteデータを送信します。

    他のプロジェクトサンプル実行時は、この限りではありません。それぞれのプロジェクトサンプルの動作に従います。

    コマンドを送信して応答データを返すプロジェクトサンプルでは、応答データを表示します。

    1) ASCII表示

    受信データ表示選択でASCIIを選択している場合の受信データの表示を示します。

    この例では Userスイッチを3回押しました。 “ABCDEFGH” と “abcdefgh” が表示されています。

    (UART_STM32F4プログラムを実行している場合の例です。)

  • 16

    2) HEX表示

    受信データ表示選択でHEXを選択している場合の受信データの表示を示します。

    Userスイッチを3回押しました。 “abcdefgh” と “ABCDEFGH” がHEXコードで表示されています。

    (UART_STM32F4プログラムを実行している場合の例です。)

    4.3. Access_SerialPortアプリケーションの使用上の注意

    Access_SerialPortアプリケーションは、実行中はいつでも受信可能にしておくためにCOMポートを開いたままにしています。

    アプリケーションを終了するとCOMポートをクローズします。

    他のアプリケーションで同一のCOMポートを使用する場合は、Access_SerialPortアプリケーションを閉じてください。

  • 17

    5. 主なモジュールの概要

    1) COMポートのオープン

    指定されているCOMポートをオープンします。

    private int SerialPortOpen()

    2) COMポートのクローズ

    指定されているCOMポートをクローズします。

    private void SerialPortClose()

    3) 送信ボタンクリック時のイベント

    送信ボタンをクリックしたときの処理です。

    送信データ_textBoxのデータを送信して受信データをReceiveData_listBoxに表示します。

    private void 送信_button_Click(object sender, EventArgs e)

    4) UART受信のイベント

    UARTデータを受信したときにイベントが発生します。

    //Serial Port データ受信イベント

    private void Communicate_serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)

    5) ReceiveData_listBoxにデータを表示する。

    ReceiveData_listBoxに指定したデータを表示します。

    //ListBoxにデータを表示する。

    public void SetReceiveData_listBox(string strData)

  • 18

    6) 送信データチェック

    送信データ_textBoxに入力されたデータをチェックします。

    //戻り値 :

    // 0 : OK

    // 1 : NG

    private int 送信データチェック(string strSendData)

    7) 送信データ作成

    送信データ_textBoxに入力された stringデータを byteデータに変換して送信できる形にします。

    //戻り値 : 送信データ数

    // 0 : NG

    // 1以上 : OK

    int 送信データ作成(string strSendData)