arduino学习笔记11-硬件串口通信
Ardunio与计算机通信最常用的方式就是串口通信。在Arduino控制器上,串口位于Rx(输入)和Tx(输出)两个引脚,Arduino的USB口通过一个转换芯片与这两个串口引脚连接。该转换芯片会通过USB接口在计算机上虚拟出一个用于Arduino通信的串口。
一、实验现象
通过串行监视器输入字符串,通过Arduino将它在监视器中打印出来。
二、实验器材:控制板。
三、实验所用函数及语句
①Serial.begin(speed):初始化Arduino的串口通信功能,其中参数speed指串口通信波特率,用于设定串口通信速率的参数。串口通信双方必须使用相同的波特率才可以正确通信。 波特率是一个衡量通信速度的参数,表示每秒传送的bit的个数。如9600波特表示每秒发送9600bit的数据。
②Serial.available():当前缓冲区中接收到的数据字节数。通常我们都要判断缓存区中是否有数据,然后才调用read方法。
③Serial.read():读取传入的串口的数据,每次都会返回1字节的数据。
④Serial.print(val) Serial.println(val):打印输出数据 Serial.println 函数会在输出完指定数据后,再输出一组回车换行符。
四、实验电图
只需将USB插上控制板即可。
五、程序编写
String str;//定义字符串变量
void setup() {
Serial.begin(9600); // 初始化串口
}
void loop() {
str="";
while(Serial.available()>0){ //如果缓冲区中有数据,则读取
str=str+ Serial.read();//每次读取1个字符赋给字符串str
}
If(str!= ""){
Serial.println(str); //串行监视器中打印出字符串中的字符
}
}