新浪博客

Arduino串口监视器发送命令开关灯

2018-01-04 14:59阅读:
通过Arduino自带的串口监视器来发送命令,发送k 就开灯,发送 g 就关灯。
使用软件:Mixly。
硬件:Arduino Nano+扩展板。
LED灯接在数字4号引脚的蓝色(+)和黑色接线柱(-)。注意:切忌不能接红色的正极接线柱。
Arduino串口监视器发送命令开关灯
程序代码如下:
Arduino串口监视器发送命令开关灯
现象:第
一次运行效果:输入 k,灯亮了,但输入g,灯还是不灭!
原因:Serial.read() 串口接收到的数据都会暂时存放在接收缓冲区中,使用read()是从接收缓冲区中读取数据。使用read()读取数据后,会将该数据从接收缓冲区中移除!!!!!
分析:程序的执行过程:先执行上面那个如果,再执行下面那个否则如果。第二次输入g,程序还是先判断上面那个如果,不是k,去到下面那个否则如果,但此时,接收缓冲区已经被清空了,所以下面那个否则如果就没有作用了。如果将下面那段否则如果的程序与如果的程序互换位置,道理一样。

改进:用一个变量来存储读取到的串口数据。
Arduino串口监视器发送命令开关灯

我的更多文章

下载客户端阅读体验更佳

APP专享