小皮小皮 发表于 2012-9-16 19:54 static/image/common/back.gif
请问,comdata=""是什么意思呢???
这个我懂,;P就是为了设一个名称的
mark 刚好在调试时出现这个问题。:D
这确实不错啊。
太好了。收藏!
//逐个显示不正确啊 ,每次显示的是第一个字符,求高手解决
String comdata = "";//comdata是一个字符串类型变量
void setup()
{
Serial.begin(9600);
}
void loop()
{
while (Serial.available() > 0)//Serial.available()是当前串口缓冲池的数据量
{
comdata += char(Serial.read());//Serial.read()是读缓冲池的语句,每次只能读一个字节
delay(2);
}
if (comdata.length() > 0)
{
Serial.println(comdata);
int L=comdata.length();
Serial.println(L);//显示字符串的长度
for (int i=0; i <L; i++)//逐个显示comdata,comdata。。。comdata
{
Serial.println(comdata);
}
comdata = "";
}
}
好东西收藏!
comdata += int(Serial.read()) - '0' 这句看不懂啊
一般comdata += int(Serial.read())这个等效于 comdata=comdata+int (Serial.read())
后面加个-‘0’ 是什么意思啊?
可以对照楼主的代码写一个上位调试软件
{:soso_e113:}:(:)
就是不明白
上面例子中,第二个例子的
digitalWrite(i + 2, comdata - '0');
中,
comdata-'0'
是啥意思?干嘛用的?
字符串减字符串???
这个减号是干啥用的:(
GeekNapster 发表于 2013-4-5 16:12 static/image/common/back.gif
就是不明白
上面例子中,第二个例子的
digitalWrite(i + 2, comdata - '0');
comdata-'0'
comdata是我们输入那个文字的ascii码,即字符‘0’~‘9’,需要减去一个‘0’得出实际的数字。
求教那个delay延时的时间怎么计算?假设我的波特率是115200而不是9600,那个delay(2)就无效了,依旧显示是乱码,所以求计算时间怎么算的
Dark_Angel 发表于 2013-4-6 00:56 static/image/common/back.gif
求教那个delay延时的时间怎么计算?假设我的波特率是115200而不是9600,那个delay(2)就无效了,依旧显示是乱 ...
;P这个我还没算过,试出来的,你也试试
Ansifa 发表于 2013-4-5 23:29 static/image/common/back.gif
comdata-'0'
comdata是我们输入那个文字的ascii码,即字符‘0’~‘9’,需要减去一个‘0’得出实际的数 ...
哦。明白了。comdata = ""; 在ascii中,用0表示 null。
嗯。这个用法确实很有深度,楼主很强。赞一个!
谢谢指出
非常不错,学习了!