您的位置:首页 > 产品设计 > UI/UE

【Arduino】Arduino接收字符串

2013-08-06 10:17 190 查看
【Arduino】Arduino接收字符串

相关文章 【Arduino】开发入门【十】Arduino蓝牙模块与Android实现通信

【Arduino】开发入门【十】Arduino蓝牙模块与Android实现通信 中,只实现了,单个字符的发送。

Arduino的Serial.read()每次只能读一个字节,下面的方法说明如何实现字符串通信。

编译只要一块Arduino,当然可以结合【Arduino】开发入门【十】Arduino蓝牙模块与Android实现通信

用Arduino编译器的串口监视器即可看到结果,我们打什么文字进去,下面就会返回什么文字。

实现代码,网上贴了很多

String comdata = "";

void setup()
{
Serial.begin(9600);
}

void loop()
{
while (Serial.available() > 0)
{
comdata += char(Serial.read());
delay(2);
}
if (comdata.length() > 0)
{
Serial.println(comdata);
comdata = "";
}
}


代码很简单,comdata是一个字符串类型变量。Serial.available()是当前串口缓冲池的数据量。Serial.read()是读缓冲池的语句,每次只能读一个字节。

用了String类型变量,很简单的实现了字符到字符串的加入,还有字符串输出,赋值等麻烦问题,所以很简单的代码就能处理串口数据。

特别留意的是读串口时的delay(2)不能删掉,否则串口缓冲区不够时间接受数据。即使调小延时也会出错。具体数值也可以实验决定。

再提醒一个:comdata说是一个字符串,也是一个数组,引用每个字的话可以用comdata[0],comdata[1]。。。comdata
。如果我们要每个字节取出的话,可以每个引用。

相关文章

【Arduino】开发入门教程【一】什么是Arduino
【Ardunio】开发入门教程【二】数据类型
【Arduino】开发入门教程【三】Arduino开发工具
【Arduino】开发入门教程【四】Arduino驱动安装
【Arduino】开发入门教程【五】Hello Arduino
【Arduino】开发入门教程【六】数据类型转换函数
【Arduino】开发入门教程【七】7段显示器实现+源代码
【Arduino】开发入门教程【八】舵机操作+源代码
【Arduino】开发入门【十】Arduino蓝牙模块与Android实现通信
//////////////////////////////////////////////

原创声明 转载请注明

本文出自 Ray-Ray的博客

文章地址 /article/4820690.html

感谢大家的推荐和收藏

你的支持! 我们的动力!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐