关于Arduino 关于串口通信

关于Arduino 关于串口通信,第1张

首先你写的逻辑有问题

while(Serialavailable()>0)比如,这里我输入了1

{

if (sum<3) sum小于3时存入a

{insum=Serialread(); a[sum]=insum; sum=sum+1; } //insum读取出来是1了

if (sum>2) sum大于2时存入b

{insum=Serialread(); b[3-sum]=insum; sum=sum+1;}//这里又读了一次?

就是说 Serialavailable() 一次只能读一个出来的,另外的要留到下次判断

这个虽然回答不了你的问题,但是是一个明显的错误

首先是串口的读入: 基本的串口读入: void setup() { Serialbegin(9600); //设置波特率为9600,一般是这个波特率 } void loop() { if(Serialavailable()>0)//如果串口有数据进入的话 { char c=Serialread();//每次读一个字符,是ASCII码的 } } 然后就是相当于读入信息的处理了 比如说如果建一个字符串name,每读一次c若不是等号或空格就加进去, 当读到等号时就读完一个名字了,接下来一直读到空格的都是数据, 当读到空格后就完成一个循环,继续上面的循环这样

以上就是关于关于Arduino 关于串口通信全部的内容,包括:关于Arduino 关于串口通信、求arduino与串口屏通信的代码、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9696146.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存