首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

串口传输速度的有关问题,+++++++++++++++++++++++++++++++++++++++++

2012-04-18 
串口传输速度的问题,+++++++++++++++++++++++++++++++++++++++++我使用的是avr的单片机ATmega16L来做串口

串口传输速度的问题,+++++++++++++++++++++++++++++++++++++++++
我使用的是avr的单片机ATmega16L来做串口通讯,使用的是14.7456MHz的晶振,115200的波特率,2.0的蓝牙传输,传输数据只有七位Buff[7],使用的是时间中断来发送。
为什么我传输数据速度很慢?接收一组数据需要十几毫秒的时间,哪位高手帮我一下

[解决办法]
既然用的是串口通讯,115200的波特率,那理论上1S应该能传输115200位数据。你接受一组数据需要十几毫秒,看看是不是每两组数据之间的等待时间是不是太长了。
[解决办法]
会不会是蓝牙有速度限制?如果你是串口发数据给蓝牙模块,蓝牙再发数据出去,那么应该考虑一下蓝牙发送数据的问题。
[解决办法]
串口本身有协议的,起始要有同步帧,结束有超时

115200只是传输数据时的速度,发送前后都有时间开销的

除此之外,还要看你是怎么检测“接收一组数据需要十几毫秒的时间”的
[解决办法]
你采用的是同步串口吗?串口通讯进行读写,需要配置读写超时呢!
[解决办法]
理论和实际是有较大差距的,10多毫秒完全正常。
[解决办法]
两组数据发送时间隔时间太长了,是程序问题
[解决办法]
1. 一组数据多大
2. 如何测量时间
3. 采用什么协议
4. 如何实现

热点排行