OpenEdv-开源电子网
标题:
如何使用不同的波特率传输数据呢?
[打印本页]
作者:
林中独步2
时间:
2012-7-16 18:42
标题:
如何使用不同的波特率传输数据呢?
我想在一个主程序中用不同波特率传输数据,写法如下:
do {
if(flag==0)
{
set_opt(fd,57600,8,'N',1);
retv=write(fd,buf,2);
flag=1;
}
if(flag==1)
{
set_opt (fd,atoi(argv[1]),8,'N',2);
printf("%d",i);
printf("\n");
i++;
if(i==atoi(argv[2])) break;
retv = write (fd,sbuf,strlen(sbuf));
// memset(sbuf,0,strlen(sbuf));
}
} while(1);
怎么有时候会出现乱码?
作者:
正点原子
时间:
2012-7-16 21:58
设置完之后等个十秒八秒在发送.
或者发送完后等个十秒八秒再设置,看看还出现乱码不?
作者:
jtphacker
时间:
2012-7-18 21:24
等个10秒8秒,一看就是没做过项目的,只做个开发板的。
作者:
jtphacker
时间:
2012-7-18 21:26
uart波特率设置后需要等待多长时间生效,串口的时钟生效,需要看数据手册,我也不会,应该用不了10ms,呵呵。
作者:
正点原子
时间:
2012-7-18 22:59
回复【3楼】jtphacker:
---------------------------------
仅是建议,在出问题调试代码的时候,此种方法最简单方便.
项目我是做过的,呵呵.可能没你做的多吧.
作者:
林中独步2
时间:
2012-7-19 23:25
不行啊 接收端显示第二种波特率的第一帧数据是:“?”,那位大侠对串口比较熟悉呢?请指教
欢迎光临 OpenEdv-开源电子网 (https://www.openedv.com/)
Powered by Discuz! X3.4