シリアル通信
基本操作
シリアル通信では,データの受信と送信にRXピンとTXピンを使用する.
共通のクロック信号がないため,どちらのデバイスもいくつかのパラメータが一致しなければならない.マイクロコントローラの"Serial"指定に,必要に応じて以下のパラメータを使うことができる.
"BaudRate" | Automatic | データ転送レート(ビット/秒) |
"DataBits" | Automatic | 使用するフレームあたりのデータビット数 |
"Parity" | Automatic | パリティビット設定 |
"StopBits" | Automatic | 使用するストップビット数 |
UnoにはRXピンとTXピンが1つずつしかないので,可能な指定は"Serial"だけである.
また,この他,送信される実際のデータを設定するための指定もある.
"StartByte" | 19 (XOff) | 送信された,または受信する最初のバイト |
"DelimiterByte" | 44 (,) | データ間のバイト |
"EndByte" | 17(XOn) | 送信された,または受信する最後のバイト |
"FractionalPartDigits" | Automatic | 小数部の桁数 |
"DelimiterByte"は入力チャンネルまたは出力チャンネルが2つ以上ある場合に関与してくる.
配備されたコードのパラメータはMicrocontrollerCodeDataオブジェクトから取り出せる.
"BaudRateError"はボーレートの誤差率を与える."TransmissionSpeedMode"等の特性は,マイクロコントローラ特有である."BaudRateError"以外のすべての特性は"Serial"オプションで設定できる.
仮想COMポート
マイクロコントローラのシリアル機能はUSB上で設定できることがある.その場合,RXピンとTXピンではなく,代わりにUSBピンであるD-とD+を使用する.
通信は仮想ポート上で行われ,パラメータは"SerialOverUSB" を使って設定する.それ以外は通常の場合と同様のワークフローとなる.
デバイスフレームワーク
Arduino Micro等,シリアル機能がソフトウェアで実装されているボードもあるが,Arduino Uno等のようにUSB-シリアル変換器を持つボードもある.どちらのボードも,シリアルインターフェースを使い,USBポートを通してパーソナルコンピュータと通信できる.Wolfram Device Frameworkはこのシリアルインターフェースを通してこれらのボードと通信できる.
まず,データの送信または受信ができるようにマイクロコントローラを設定する必要がある.
マイクロコントローラがシリアルデバイスになったので,デバイスフレームワークを使ってシリアル接続を開く.