串口是Arduino与其它设备进行通信的接口
所有的Arduino控制板有至少一个串口(又称作为UART或USART)。它通过0(RX)和1(TX)数字引脚经过串口转换芯片连接计算机USB端口与计算机进行通信。因此,如果你使用这些功能的同时你不能使用引脚0和1作为输入或输出
Arduino Mega有三个额外的串口:Serial 1使用19(RX)和18(TX),Serial 2使用17(RX)和16(TX),Serial3使用15(RX)和14(TX);若要使用这三个引脚与您的个人电脑通信,你需要一个额外的USB转串口适配器,因为这三个引脚没有连接到Mega上的USB转串口适配器,若要用它们来与外部的TTL串口设备进行通信,将TX引脚连接到您的设备的RX引脚,将RX引脚连接到您的设备的TX引脚,将GND连接到您的设备的GND,(不要直接将这些引脚直接连接到RS232串口;他们的工作电压在+/- 12V,可能会损坏您的Arduino控制板。)
Serial.begin(9600);//开启串行通信接口并设置通信波特率
if (Serial)//表示指定的串口是否准备好
比较囧的是,这个方法只适用于Leonardo和micro的Serial
Arduino Mega 特有:
if (Serial1)
if (Serial2)
if (Serial3)
Serial.available();//获取从串口能够读取有效的字节数
这是已经传输到,并存储在串行接收缓冲区(能够存储64个字节)的数据。available()继承了Stream类
注意使用时通常用delay(100)以保证串口字符接收完毕
仅适用于Arduino Mega:
Serial1.available()
Serial2.available()
Serial3.available()
Serial.end()停用串行通信,使RX和TX引脚用于一般输入和输出。