主题:EM9160 V6.0的串口问题 共有35983人关注过本帖 |
---|
jonnyju |
1楼 |
EM9160 V6.0的串口问题 Post By:2009-12-15 17:13:00 [只看该作者]
我想问下EM9160 V6.0的串口接收缓冲区多大
|
|
单帖管理 | 引用 | 回复 |
x10 |
2楼 |
Post By:2009-12-15 21:08:00 [只看该作者]
串口的硬件被设计成有16个字节的缓冲,中断驱动的驱动程序有2KB字节的接受缓冲区。
|
|
单帖管理 | 引用 | 回复 |
jonnyju |
3楼 |
Post By:2009-12-16 21:53:00 [只看该作者]
那为什么我每次读串口,只要从串口调试工具发送的字符数大于8个时,ReadFile从串口中读出的字符数是8。
我的意思是:比如,我用串口调试工具发送了36个字符,ReadFile读取的字符数会是:8+28,分两次读;也有可能是8+24+4,这是为什么呢?麻烦指点下,那个程序是开发板自带的程序。 谢谢 |
|
单帖管理 | 引用 | 回复 |
x10 |
4楼 |
Post By:2009-12-17 8:50:00 [只看该作者]
因为串口内部有硬件FIFO,当FIFO中的数据大于8时,将生产中断,驱动程序将把数据读到内部的缓冲区(2KB)中,若应用程序立即读数,则读到8个字节,若应用程序按一定时间间隔读数(比如20ms),则可能读取的是上一个20ms收到的数据。我们的串口是工业标准的16C550。可参考16C550的数据手册了解FIFO与中断的详细说明。
|
|
单帖管理 | 引用 | 回复 |
jonnyju |
5楼 |
Post By:2009-12-17 14:22:00 [只看该作者]
谢谢,不过能否给个数据手册的下载地址,网上不好找
|
|
单帖管理 | 引用 | 回复 |
lqk |
6楼 信息 | 搜索 | 邮箱 |
加好友 发短信 |
Post By:2009-12-17 17:38:00 [只看该作者]
可在http://www.alldatasheet.com/中找到。
|
单帖管理 | 引用 | 回复 |
jonnyju |
7楼 |
Post By:2009-12-17 21:22:00 [只看该作者]
EM9160 V6.0
选那个公司的PDF呢 |
|
单帖管理 | 引用 | 回复 |