打印
[MCU]

关于串口通信中 FIFO的问题

[复制链接]
2300|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
asasasd|  楼主 | 2014-3-12 19:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
FIFO缓存的作用是   用来确保高速设备和低速设备之间  通信的稳定性  对于单片机来说  它有接收FIFO缓存和  发送FIFO缓存  PC是高速设备   单片机是低速设备  当我们通过pc向单片机发送数据时  会用到单片机的接收缓存   但是当我们用单片机给PC发送数据  也用不到  发送缓存啊   这个发送缓存  什么情况下用啊??还有  FIFO  功能在什么情况下  才有使用的必要??

相关帖子

沙发
每天进步多一点| | 2014-3-12 20:18 | 只看该作者
FIFO起到数据缓存作用,单片机也可以通过FIFO方式发送数据啊,这样提高了单片机的响应速度、降低功耗。
其实MCU在发送和接收数据时,只是与TXBUF和RXBUF通信,像PC和单片机通信时,PC可以通过FIFO方式将数据发送到串口缓存起来,CPU可以随时读取,相反的为了提高CPU的工作效率和降低功耗,也可以通过FIFO方式将数据发送到串口缓存起来,然后去干其他工作,这样PC可以从串口中随时读取数据。

使用特权

评论回复
板凳
airwill| | 2014-3-13 07:12 | 只看该作者
这个发送缓存  什么情况下用啊??
CPU 处理数据的速度超过外设的处理能力, 就可以考虑用 FIFO.
CPU 处理数据往往就是几条指令的事情, 外设发生一个数据可是要特定的波形, 时序和时长的.

使用特权

评论回复
地板
wolension| | 2014-3-13 09:02 | 只看该作者
同意楼上。
依楼主的想法那么应该IO口直接模拟串口发送就可以满足要了。
因为串口是按Bit通信的,硬件串口(TXD)其实相当于一个8bit的FIFO。
有FIFO能让单片机处理数据更方便,效率更高。
你会觉得没有硬件串口那怎么行?但不会觉得没有FIFO会有多痛苦,那是因为实际应用上串口的数据量不大而已。
别外一种串行通信USB,一般的USB接口芯片都有FIFO,因为USB速度更快,数据量更大。
以上仅为个人看法,不同勿喷。

使用特权

评论回复
5
asasasd|  楼主 | 2014-3-13 09:16 | 只看该作者
wolension 发表于 2014-3-13 09:02
同意楼上。
依楼主的想法那么应该IO口直接模拟串口发送就可以满足要了。
因为串口是按Bit通信的,硬件串口 ...

哦哦??你是说FIFO的实用性   不大吗???

使用特权

评论回复
6
ningling_21| | 2014-3-13 09:18 | 只看该作者
有的以太网应用的时候,经常用到FIFO...
有时消息队列的处理也会用到FIFO...

使用特权

评论回复
7
asasasd|  楼主 | 2014-3-13 10:33 | 只看该作者
ningling_21 发表于 2014-3-13 09:18
有的以太网应用的时候,经常用到FIFO...
有时消息队列的处理也会用到FIFO...

哦哦  正在学习中:lol

使用特权

评论回复
8
asasasd|  楼主 | 2014-3-13 20:36 | 只看该作者
wolension 发表于 2014-3-13 09:02
同意楼上。
依楼主的想法那么应该IO口直接模拟串口发送就可以满足要了。
因为串口是按Bit通信的,硬件串口 ...

突然  想到一个问题   这个不是串口通信吗??而我只是 用一根数据线   将单片机和PC之间连接起来   而不是用串口线  上回有人问我这是为什么  我一下子就晕了   这个USB  是不是你所说的  串行通信USB啊???

使用特权

评论回复
9
wolension| | 2014-3-14 08:26 | 只看该作者
asasasd 发表于 2014-3-13 20:36
突然  想到一个问题   这个不是串口通信吗??而我只是 用一根数据线   将单片机和PC之间连接起来   而不 ...

因为PC端有232接口,跟PC通信可以利用PC现有的硬件,单片机的串口接上232转接芯片就可以跟PC连接了,没必要自己再去整。
通用串行USB通信是利用差分信号,有点像485。
USB也是固定波特率的,通常有1.5Mbps、2Mbps、480Mbps等几种,没有串口那么多,但快很多。
所以一般情况下485能比USB传得更远。

使用特权

评论回复
10
wolension| | 2014-3-14 08:27 | 只看该作者
怎么有个1不见了,更正一下,1.5Mbps、12Mbps、480Mbps.

使用特权

评论回复
11
asasasd|  楼主 | 2014-3-14 09:12 | 只看该作者
wolension 发表于 2014-3-14 08:27
怎么有个1不见了,更正一下,1.5Mbps、12Mbps、480Mbps.

非常感谢:lol

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

67

帖子

0

粉丝