- Arduino Uno轻松入门48例
- 周宝善编著
- 1526字
- 2021-03-04 18:41:26
第2章 Arduino Uno编程实例
2.1 在串口监视器上显示“Hello!Friend!”
如何用Arduino Uno开发板编程?如何让计算机显示屏显示Arduino Uno开发板运行状态?让我们一起从学习串口监视器显示实验开始吧!
编程前需要准备好Arduino Uno开发板、USB B口电缆线,并在计算机上安装好Arduino软件,具体操作方法详见第1章。
2.1.1 实验描述
(1)让串口监视器每秒显示一行“Hello!Friend!”。
(2)让串口监视器显示秒计时器,即第1行显示“JISHIQI”,空一行,1s后显示“JISHI 1 s”,空一行,2s后显示“JISHI 2 s”,空一行,3s后显示“JISHI 3 s”……
2.1.2 知识要点
1.串口监视器
串口监视器是采用串口通信的终端设备,充当着监控人员的“眼睛”,是调试、分析、测试设备与设备之间串行通信过程的显示窗口,能直观显示程序运行状态,有助于编程人员有效提高编程效率。串口监视器显示技术简单且功能强大,是学习Arduino编程应知、应会的知识。
2.串口通信
串口通信是串口按位(bit)发送和接收字节的通信方式,用于ASCII码字符的传输。串口通信时只需使用发送、接收、地线共3条线即可实现长达1200m的远距离通信。两个端口的串口通信时,波特率、数据位、停止位和奇偶校验位必须完全相同。
Arduino Uno开发板上的数字端口0和1处标有RX(表示接收)和TX(表示发送),与内部CH340G USB-to-TTL芯片相连,提供TTL电压水平的串口信号,与外部设备串口通信。串口通信时,Arduino Uno开发板上标有RX和TX处,发光二极管会以不同速度闪烁。
2.1.3 编程要点
1.语句Serial.begin(9600);
在void setup(){}的花括号内,常用语句Serial.begin(9600);表示打开串口,设置数据传输速率为9600bps;串口即采用串行通信方式的接口,bps的中文名称是比特/秒,是数字信号传输速度的单位,也是网络带宽数据流量的单位,Arduino与计算机串行通信时,必须首先打开串口,设置数据传输速率,与Arduino串行通信的串口监视器的数据传输速率也必须设置为9600bps,设置按钮在串口监视器的右下方。
2.语句Serial.println();和Serial.print();
这两个语句表示将打印数据传输到串口,输出文本。两者的区别在于前者比后者多了换行。
例如:语句Serial.println("Hello!Friend!");表示将打印数据传输到串口,输出文本并换行。将双引号内的字符修改为“Good morning!”,串口监视器将输出文本“Good morning!”并换行。
语句Serial.println("");表示输出空的文本并换行,即空一行。
语句Serial.print("JISHIQI");表示将打印数据传输到串口,输出文本“JISHIQI”,没有换行操作。
语句Serial.print(val);表示将打印数据传输到串口,输出变量val的值。
语句Serial.print("");表示输出空的文本,即空一格。
3.语句delay(1000);
该语句表示延时1000ms,将括号内的数字修改为10000,表示延时10000ms。
4.语句int val=0;
该语句表示定义整型变量val,初始化赋值为0。整型变量即整数型变量,取值范围为-32768~32767,即-215~215-1。
5.语句val=val+1;
该语句表示变量val加1,每执行一次,val的值增加1,常用于循环程序中。
6.串口监视器显示的编程方法
第一步,在setup函数中,打开串口,设置数据传输速率为9600bps。
第二步,在loop函数中,将打印数据传输到串口,输出文本;为控制输出速度,有必要加入延时语句。
2.1.4 程序设计
1.代码一
(1)程序参考
(2)实验结果
双击Arduino软件图标,进入Arduino软件界面,新建文件,输入代码一,保存文件,验证编译,选择COM端口,选择Arduino主板,上传文件(具体操作方法详见第1章)。代码上传成功后,单击“工具”→“串口监视器”命令,串口监视器将1秒显示一行“Hello!Friend!”,如图2.1所示。
图2.1 串口监视器显示“Hello!Friend!”
2.代码二
(1)程序参考
(2)实验结果
代码上传成功后,单击“工具”→“串口监视器”命令,串口监视器第1行显示“JISHIQI”,再空一行,1s后显示“JISHI 1 s”,再空一行,2s后显示“JISHI 2 s”,空一行,3s后显示“JISHI 3 s”……如图2.2所示。
图2.2 串口监视器显示“JISHIQI”等
2.1.5 拓展和挑战
串口监视器每秒显示一行"Hello!Friend!",空一行后显示"Good morning!",再空一行后显示"Good afternoon!",再空一行后显示"Good evening!",再空一行后显示"Happy Birthday!",再空一行后显示"Good luck to you!"