uart通信时数据传送速度问题
时间:10-02
整理:3721RD
点击:
大家好,,,
我是一名硬件编程初学者,,,
最近在做uart通信,,,,
但是实在是不太明白 数据传送速度 与uart传送速率之间的问题,,,
我要传送的数据是在25MHz下产生的8位数据,,,
但是要通过uart传送的话,,,我的数据太快,,uart传送端的时钟太慢(算了一下好像几百KHz这个样子)
而且我要传送的数据还要和串行的8位(暂且只说数据位)的长度相同才能不丢数据,,,
这时候应该用什么办法解决这样的问题?
还有看到很多程序里都用到了FIFO,,,这个除了数据存储的功能外,,,还起别的作用吗?
希望大家能帮帮我。 谢谢。
我是一名硬件编程初学者,,,
最近在做uart通信,,,,
但是实在是不太明白 数据传送速度 与uart传送速率之间的问题,,,
我要传送的数据是在25MHz下产生的8位数据,,,
但是要通过uart传送的话,,,我的数据太快,,uart传送端的时钟太慢(算了一下好像几百KHz这个样子)
而且我要传送的数据还要和串行的8位(暂且只说数据位)的长度相同才能不丢数据,,,
这时候应该用什么办法解决这样的问题?
还有看到很多程序里都用到了FIFO,,,这个除了数据存储的功能外,,,还起别的作用吗?
希望大家能帮帮我。 谢谢。
要么进行数据压缩,要么换成更快的总线,比如SPI,使用FIFO对于你的这个应用无济于事
那你的意思就是如果我的输出数据是以25MHz输出的话。基本上就不能用uart?(如果一定要用uart通信的话?有办法吗?)
还有即使我使用spi这样的通信方法。 是不是也一样要用到fifo这样的模块 来降低数据的频率来对应spi的数据传输呢?
谢谢
小编可以再研究下Uart协议。 其主要是用于对接串口得通迅,因此需要保持两端Uart的波特率保持一致。
Uart是低速接口,远远跑不到25MHz的波特率的。你可以配置下Uart的参数,使其与对端波特率一致。
Uart数据传输速率最高可达波特率的80%,这是由Uart协议决定的。
好东西,谢谢小编
学习了。
清楚了
串口速率跑到上1M都不错了,最近在用LPC2378 最大只能到700K 左右,反而是C8051F020 串口能跑到1.5M左右。让我很是郁闷。哎