Serial

Serial 是让 86Duino 用来与电脑或其他装置沟通的管道;所有 86Duino 至少有一个串列埠 (也被称为 UART 或 USART)。Serial1 可藉由数位脚位 0 (RX) 和脚位 1 (TX) 与电脑通讯 (须经过一颗 USB-to-Serial TTL 转换晶片);若使用此功能,数位脚位 0 与脚位 1 则不能使用输入/输出功能。

你可以使用 86Duino 或 Arduino 开发环境下的串列监测功能与 86Duino 通讯。点击工具列的串列监测视窗图示,并设定和程式中 begin() 相同的鲍率。

86Duino ONE 和 EduCake 拥有两组额外的串列埠:Serial2 在脚位 17 (RX) 和脚位 16 (TX),而 Serial3 在脚位 15 (RX) 和脚位 14 (TX)。若要使用这些串列埠与你的个人电脑通讯,必须在个人电脑上加装一个 USB-to-Serial TTL 转换装置;若要与外部的 TTL 串列装置沟通,TX 要连接到外部装置的 RX,RX 要连接到外部装置的 TX,然后将 86Duino 与外部装置共地。(切勿直接将这些脚位连接至 RS232 串列埠;RS232 的逻辑电位为 +/- 12 伏特,86Duino 板可能因此损毁)

此外,所有 86Duino 板皆有一组原生的 USB 串列埠,Serial。此串列埠是使用 USB CDC 做为通讯方式,用法与 Arduino Leonardo 相同。欲瞭解更多资讯,可参考 Arduino Leonardo 的 getting startedhardware 页面。

半双工模式 (只限 86Duino):

每一组 TTL 串列埠 Serial1Serial2Serial3 皆支援半双工模式,只使用 TX 脚位来接收和传送串列资料。此模式可让 86Duino 直接与特定的 AI 马达连接,如 Robotis Dynamixel AX-12,无须额外的三态闸电路。半双工模式可透过 Serial1Serial2Serial3begin() 函式来设定。

RS232 与 RS485 串列埠:

86Duino EduCake 和 86Duino PLC 支援 9 支脚位的 RS232 串列埠,操作电压为 +/- 12 伏特,可透过 Serial232 去存取使用。86Duino ONE 和 86Duino PLC支援一组 RS485 串列埠,可透过 Serial485 去存取使用。

Serial232Serial485 的使用方式与 Serial1Serial2Serial3 相同,但这两组串列埠不支援半双工模式的设定。

函式

if (Serial)
available()
begin()
end()
find()
findUntil()
flush()
parseFloat()
parseInt()
peek()
print()
println()
read()
readBytes()
readBytesUntil()
setTimeout()
write()
serialEvent()

范例

以下 Serial 的使用范例源自 Arduino Tutorial,并且可在 86Duino 上执行:

ReadASCIIString
ASCII Table
Dimmer
Graph
Physical Pixel
Virtual Color Mixer
Serial Call Response
Serial Call Response ASCII


语法参考主页面

本页由热血青年 LBU 译自英文版。

The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.