Arduino串口通信实验
1、如下图所示准备实验需要使用的硬件设备

2、如下图所示进行硬件的连接,此步我们先不连接发光二极管,只需将Arduino UNO控制器连接到电脑

3、将下列程序复制到Arduino IDE中,如下图所示:
void setup() {
Serial.begin(9600);
}
void loop() {
char val = Serial.read();
if(val == 'r')
{
Serial.println(" Hello Arduino ");
Serial.println(val);
}
}

4、将代码上传到Arduino控制器中,打开串口监视器,设置串口通信波特率为9600,然后如图所示输入“r”,点击发送,在Arduino串口监视器会打印“Hello Arduino”,并且打印输入的字符。

5、扩展例程:按照图下图所示的电路连接硬件

6、将下列程序复制到Arduino IDE中
#define led1 9
#define led2 8
char val = '1';
void setup() {
Serial.begin(9600);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
}
void loop() {
if(Serial.available())
val = Serial.read();
if(val == '9')
{
digitalWrite(led1,HIGH);
delay(1000);
}
else
digitalWrite(led1,LOW);
if(val == '8')
{
digitalWrite(led2,HIGH);
delay(1000);
}
else
digitalWrite(led2,LOW);
}

7、将Arduino UNO 控制器连接到电脑,选择正确的板卡型号和端口,将程序上传到控制器中。


8、打开Arduino IDE的串口监视器,如图所示,进行串口波特率设置,程序中
Serial.begin()中设置的为9600,所以此处也需要选择波特率为9600,才可以正常通信。

9、扩展实验效果,如下图所示,在串口监视器中输入"9",连接在 Arduino UNO 控制器 D9 引脚的 LED 灯亮起 1s 后熄灭;在串口监视器中输入"8",连接在 Arduino UNO 控制器 D8 引脚的 LED 灯亮起 1s 后熄灭。


10、代码回顾:
Serial.begin(9600); 初始化串行端口,设置波特率为9600,注意 Arduino常用的波特率为9600,115200.
Serial.println(" Hello Arduino ");每次换行输出双引号内的字符串
val = Serial.read();读取串口数据,并将串口数据赋值给变量val
if(Serial.available()),判断串口是否有数据送来。
代码在程序中的位置如下图所示:

11、为了方便大家实验,防止在复制代码的时候出现错误,特将代码和电路图
Fritzing源文件上传至网盘供大家下载学习。下载地址:
http://pan.baidu.com/s/1hs2N8c0,打开链接后,如图所示,点击下载即可
