关于嵌入式扩展串口方案探讨

gooogleman 2012-03-27 04:59:19
最近特别多网友根据我博客写的wince扩展串口驱动调试找到我,问我关于扩展串口的方案的问题。
以前我做过NXP的16C554 以及16C552 之类的芯片。在2440+wince5.0 上调试过驱动,但是我对这个16C554 以及16C552 之类的芯片不太感冒,主要是这些芯片引脚太多了。需要引出处理器的地址总线和数据总线,如果要做这种核心板出来,就因为这种芯片导致引出这么多引脚,那是挺浪费资源的事情。
我想有没有不需要这种数据总线和地址总线的串口扩展芯片呢?
...全文
422 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
gooogleman 2012-05-29
  • 打赏
  • 举报
回复
结贴先了。
liumingd 2012-04-12
  • 打赏
  • 举报
回复
我们在WinCE 6上用了FTDI FT4232H,1个芯片转4个串口,不过它的驱动文档太烂了。为了解决输入数据延迟问题折腾了好几周,后来发现是要在注册表里更改驱动线程优先级。注册表里不提供的话,默认的优先级是251!那是应用程序的优先级范围,TMD。
gooogleman 2012-04-12
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]
用USB来扩展,可以想要几个就有几个。或者用高速硬件开关来切换串口。
[/Quote]

USB?有什么芯片介绍,兄弟?
zhengmeifu 2012-04-12
  • 打赏
  • 举报
回复
用USB来扩展,可以想要几个就有几个。或者用高速硬件开关来切换串口。
gooogleman 2012-04-12
  • 打赏
  • 举报
回复
FT4232H

FT4232H 提供四种可配置的接口,FT2232H 提供两种可配置的接口。FT4232H 的其中两个接口以及FT2232H 的全部两个接口均可配置为UART、JTAG、SPI、I2C 或带独立波特率发生器的位响应模式串口。FT4232H 的另外两个接口具有 UART 功能或位响应功能。此外,可将 FT2232H 配置为双 FT245 FIFO、主机总线仿真模式、CPU 接口 FIFO 模式或光隔离串行接口模式。当配置为RS-232/-422/-485 UART 接口时,这两个器件均可支持数据传输率达 12 Mb/s;当配置为并行FIFO 接口时,数据传输率达 25 MB/s(仅适用于FT2232H)。 USB接口已经成为今天数字电子产品的标准接口,不仅在与PC相关的各种电子产品中被大量采用,而且在越来越多的大批量消费电子产品中也被广泛地应用,如今天出货的许多DVD播放器都带有USB端口。而采用了专用操作系统和处理器平台的各种嵌入式应用,更是因为今天闪烁存储器价格的大幅度下降,通过USB接口而扩大了数据来源和提高了传输速度,从而使其性能大为提高或者开发出了新的应用,如数字相框、MP3音响系统和数字保安设备等等。为了实现其"USB Made Easy"的愿景,FTDI开发了全系列的USB Slave桥接器芯片系列产品和USB Host桥接器芯片产品系列。其USB Slave桥接器产品包括FT232、FT245和FT2232三大系列,可以广泛地应用在GPS终端、RFID读卡器、会议电话系统、输出打印设备、POS外设、智能输入设备和智能玩具等等需要与PC相连进行数据交换的产品中,承担控制、通讯、数据刷新和固件升级等功能。这些芯片系列可以支持从串行UART、并行FIFO、SPI、I2C和JTAG等等协议转换到USB协议,并且所有转换都是在该芯片上完成,因而该公司的三大USB Slave系列芯片具有包含各种标准驱动程序、支持各种操作系统和处理器平台等优势。针对加强数据输入和传送功能来实现嵌入式系统性能提升和新功能开发的重要趋势,FTDI此次在中国发布了Vinculum家族VNC1L系列芯片,它是该公司推出的业界首款智能USB Host桥接器芯片。其特点是通过芯片上集成的高性能处理器和闪存,在支持USB Host接口以及数据传输功能的同时,也直接支持到 USB Device Class的层次。该项技术在数字嵌入式系统中尤为重要,因为今后的许多系统都需要直接与U盘、数码相机或者PDA等数字存储设备直接相连。Vinculum系列新一代USB Host桥接器单芯片解决方案,主要用于实现语音、MP3、数据、图像和文本等数据的高速上传和下载,它能够自动辨识并支持FAT文件格式,支持4线串行UART、4线串行SPI和12线并行FIFO接口来和Vinculum沟通。而系统设计师仅需了解简单易懂的高级指令集,避免了研读USB协议来开发相关系统芯片和系统的负担。为了帮助系统设计师开发基于VNC1L的系统,FTDI展出了利用该芯片开发的、即可供货的VDRIVE2闪烁存储器接口参考设计。今天许多包括中国在内的亚洲电子企业大力投入开发数字机顶盒、高性能测试仪器、数字广告传播设备、数字相框、先进数字保安系统、数字答录机和POS终端机等等应用,吸引了FTDI加大对亚洲和中国市场的长期投入FTDI公司提供一系列极为容易导入设计的USB桥接器芯片,在USB端支持Host以及Slave模式,另一端则支持UART、FIFO、SPI、以及I2C等常见的嵌入式系统控制接口,并提供完整的驱动程序及固件,以及评估模块,以支持并简化客户端的嵌入式系统产品设备

————————这个USB 扩展的,好强啊。不错,不错。
也是一个很好的方案之一。可以扩展N个。呵呵。
gooogleman 2012-03-29
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

可以用CPLD做扩展,一个56pin的。 可用IO有40多个,除去总线串口就随便扩。价格也便宜才13元一片。
没看你在群里发这个问题呢!?
[/Quote]

你在哪个群啊,我只在我最新的一个群讨论了一下。
在linux下 有人16c554 扩展了 四片16 个串口能够正常使用呢。使用了共享中断的方式居然能稳定工作。

但是我wince 没用共享可安装中断就不能同时使用,呵呵。看来是我没做到家。
不过这个16c554 需要这么多引脚,我觉得不太合理,尤其是采用核心板方案的,太麻烦了,所以以后我推荐用SPI转串口,一个能扩展四个。也不错的。
falloutmx 2012-03-28
  • 打赏
  • 举报
回复
16C554管脚多, 价格也不便宜。
SPI扩2~4路串口是可行的,速率是够的,VK32就可以扩4个。
atmel的ARM最多可以支持6-7个串口
net_friends 2012-03-28
  • 打赏
  • 举报
回复
直接fpga 还有什么说的
bsnow 2012-03-28
  • 打赏
  • 举报
回复
如果要扩10多个需要缓存的话可以考虑用个小FPGA也就20多元便宜!
bsnow 2012-03-28
  • 打赏
  • 举报
回复
可以用CPLD做扩展,一个56pin的。 可用IO有40多个,除去总线串口就随便扩。价格也便宜才13元一片。
没看你在群里发这个问题呢!?
woshi_ziyu 2012-03-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

http://www.exar.com/connectivity/uart-and-bridging-solutions/

这个有个网友讨论,说一个可以扩展八个呢。
[/Quote]
确实不错
gooogleman 2012-03-27
  • 打赏
  • 举报
回复
http://www.exar.com/connectivity/uart-and-bridging-solutions/

这个有个网友讨论,说一个可以扩展八个呢。
gooogleman 2012-03-27
  • 打赏
  • 举报
回复
16c554 那种需要地址总线和数据总线,不仅引脚多,关键是更致命的是所有串口都是公用数据总线,地址总线,这种导致串口不能同时使用,在裸奔当中一些低端的MCU 又没区分地址总线和数据总线没法用,
到了ARM9 ,ARM11 等Cortex A8 等处理器 ,上系统了,因为总线竞争关系,是没法同时使用的,我试过2440+wince5.0 同时打开两个外部串口同时收发数据,丢失数据严重。这种总线竞争问题很难搞。
所以我想用SPI扩展串口的方式来扩展,一个SPI可以扩展两个到四个串口不等,虽然这个SPI 扩展的串口也存在总线竞争,但是至少每组SPI 扩展的串口不会存在竞争能够同时使用,最重要的还是引脚少,扩展容易。网上百度了一下NXP也有这种芯片卖,比如SC16IS752 ,这个是外扩两个的,不知道有没有四个的,百度一下先。

6,120

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧