打印
[ZLG-ARM]

周工,UART的FIFO问题!

[复制链接]
1539|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
火光|  楼主 | 2007-9-9 18:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
火光|  楼主 | 2007-9-9 19:49 | 只看该作者

???


 周工,LPC2210上面的UART的功能该是和16C550的完全一致吧?是工业标准?
 但看起来,感觉似乎不同...

 我对16C550比较熟悉,不用FIFO,用起来很稳定的...

 ARM上的这个"U0SCR (高速缓冲寄存器)",不明白有什么用处...

使用特权

评论回复
板凳
火光|  楼主 | 2007-9-10 09:19 | 只看该作者

"U0SCR (高速缓冲寄存器)"似乎没有什么用途啊!


  谁知道?
  解释一把!

使用特权

评论回复
地板
ruraliter| | 2007-9-11 19:50 | 只看该作者

主要是效率问题

如果开发一个操作系统,一般都会使用UART0,作为输入输出的通道,有些系统使用串口来支持slip网络功能。

这些系统一般都是要靠中断驱动的,也就是只有当中断来到时,才转让中断处理程序,对中断进行相应,接收或发送数据。

如果没有缓冲寄存器,每接收(发送)一个字符,就产生一次中断,系统的效率会变得非常低,因为中断处理程序,要占用一定的系统资源。
如果8个字符,才产生一次中断,一次中断处理,就可以处理8个字符,那么系统的性能就会得到很大的提高,最少是60%的提高,这对于系统优化是非常重要的。

使用特权

评论回复
5
火光|  楼主 | 2007-9-11 20:58 | 只看该作者

哈哈

ruraliter:

   您的关于提高效率的观点我非常的赞赏,我实际上也是这样考虑的.

   但关键是如何正确的使用FIFO呢?书上很少有讲的明白的...

   我现在需要的是这个FIFO的使用细节.

   另外,"U0SCR (高速缓冲寄存器)"似乎没有看到用途啊

使用特权

评论回复
6
ruraliter| | 2007-9-12 14:46 | 只看该作者

我现在也在开发UART0关于FIFO的中断处理

主要是通过串口,来实现一个shell的功能
通过PC的软件,就像输入dos命令一样,来控制arm设备的运转
如果对你的开发有帮助的话,请到
www.qingyangos.org/bbs
来讨论

使用特权

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

本版积分规则

19

主题

75

帖子

0

粉丝