关键词:嵌入式系统 Cortex-A9 串口扩展 FT4232H
Abstract: The main characteristics and performance of USB interface multiple serial port expansion chip FT4232H are introduced in this paper. The realization principle of multi serial port expansion based on Cortex-A9 microprocessor i.MX6+FT4232H is analyzed. The hardware and software interface design of i.MX6 and FT4232H is realized. The results have been successfully applied into a vehicle system, the extended serial port runs steadily, reliability and has a good BER performance.
Key words: Embedded system Cortex-A9 Serial port expansion FT4232H
【中图分类号】TN99 【文献标识码】B 文章编号1606-5123(2018)08-0000-00
1 引言
在工业智能化领域,随着嵌入式系统飞速的发展,智能设备对通讯接口的需求量也越来越多,其中包含以太网接口、CAN总线接口、串口、并口等。其中,串口因其接口协议简单、兼容工业仪表和设备多、成本较低、占用系统资源较少等特点,应用尤为广泛。以笔者参与的某车载项目为例,主控板芯片采用基于Cortex-A9内核的i.MX6微处理器,自带4路串口,但系统需求8路串口,单芯片无法满足设计要求。为了解决该问题,经过综合对比分析,我们采用了飞特蒂亚公司生产的USB扩展型4路串口扩展芯片FT4232H进行多串口扩展,实现了增强系统的通信接口能力。
2 多串口系统硬件设计
2.1 主控板软硬件环境
主控板的CPU为NXP公司生产的基于Cortex-A9内核的i.MX6 1GHz;板载DDR3 1GB内存,4GB eMMC Nand Flash,集成1路以太网接口、1路VGA输出接口、1路USB2.0、1路USB2.0 OTG接口、1路PCIe接口。主控板的软件环境为Linux,内核版本为3.10.17。
由主控板的软硬件环境来看,既可以通过PCIe扩展串口,也可以通过USB OTG扩展串口。通过PCIe来扩展串口软硬件设计较为复杂,硬件电路设计不合理以及芯片驱动安装不好极易导致串口稳定性差,易受外界干扰。而采用USB扩展串口,电路简单、性能可靠,占用面积小,厂家也提供Linux环境下的驱动程序支持。综合考虑,采用USB OTG扩展串口的方式。
2.2 FT4232H芯片简介
FT4232H是一款USB到RS232/RS485/RS422之间的多串口电平转换芯片,收据收发和协议转换工作全由芯片独立完成,无需人工干预,只需要少量的外围电路即可实现相应的转换。该芯片通过USB接口可用专用软件MProg对芯片的固件和引脚进行配置。
FT4232H可实现单芯片到4路串口的转换;支持USB2.0的高速规范;配置为RS232接口时,可支持数据传输率达12MB/s;具有双端口2K字节的发送和接收缓冲单元;可支持UART 7/8bit数据位,1/2停止位,奇偶校验,硬件及Xon/Xoff流量控制;内部集成+1.8V电压输出;集成12-480MHz频率合成;具有低功耗、高速度、宽温等特征。
2.3 串口扩展电路设计
图1为FT4232H串口扩展电路图,7引脚DM和8引脚DP连接到i.MX6微处理器USB OTG接口的USB_DM和USB_DP引脚,49引脚VREFGOUT输出+1.8V电源供给VCORE,50引脚VREGIN连接+3.3V,4引脚VPHY和9引脚VPLL经磁珠、滤波电路后接入到+3.3V,20引脚、31引脚、42引脚和56引脚连接到+3.3V,6引脚REF经过12K的接地电阻接地,14引脚经过R71电阻上拉到+3.3V、经R123电阻下拉到GND。2脚OSCI和3脚OSCO连接12MHz的晶振和22pF的负载电容。引脚61、62、63连接EEPROM 93LC46B。该EEPROM可以配置自己产品的VID、PID、设备序列号以及设备相关的文字说明。同时,芯片的供电引脚接一个0.1uF的电容进行去耦和滤波。
16引脚ADBUS0、17引脚ADBUS1、18引脚ADBUS2和19引脚ADBUS3分别连接扩展串口1的TXD1、RXD1、RTS1和CTS1;26引脚BDBUS0、27引脚BDBUS1、28引脚BDBUS2和29引脚BDBUS3分别连接扩展串口2的TXD2、RXD2、RTS2和CTS2;38引脚CDBUS0、39引脚CDBUS1、40引脚CDBUS2和41引脚CDBUS3分别连接扩展串口3的TXD3、RXD3、RTS3和CTS3;48引脚DDBUS0、52引脚DDBUS1、53引脚DDBUS2和54引脚DDBUS3分别连接扩展串口4的TXD4、RXD4、RTS4和CTS4;扩展的串口电平为TTL电平,经过电平转换芯片MAX3232IPW即可实现标准的串口功能。60引脚PWREN#、36引脚SUSPEND#经3.3K电阻和LED后接地,用以指示芯片的工作状态。
3 多串口系统软件设计
嵌入式Linux系统采用模块化方式管理各设备驱动,并且将各种设备映射成设备文件,达到简化应用程序开发和屏蔽不同硬件设备的目的。FTDI公司为FT4232H芯片提供32bit和64bit的驱动文件,将对应的文件直接编译到内核,通过MfgTool工具软件下载最新的镜像文件,运行新的内核来测试芯片的工作情况。
5 结束语
本文设计了一种基于FT4232H芯片扩展的多路串口嵌入式系统,并且应用某车载项目中。该产品进行了大量的测试,实测结果表明扩展的串口稳定性高、可靠性高、数据通讯正常、在嵌入式智能设备中具有较高的实用性和广阔的应用领域。
参考文献
[1]夏为丙,杨朝明,张志文.多路高速串口并行传输系统设计[J].仪表技术与传感器,2018(02):97-100+108.
[2]郭敏,庄信武,任海波等.基于USB2.0的多串口数据采集设计[J].国外电子测量技术,2017,36(11):75-79.
[3]王淑平,杨卫,侯爽.基于XR16L788的多串口扩展及其应用[J].电子器件,2016,39(01):211-215.
[4]刘祝垣,郑建生,林炳章等.USB到多路RS422转换器的电路实现[J].电子设计工程,2011,19(08):186-189.
[5]戚建宇,何松.基于TL16C554的嵌入式系统的多串口扩展[J].计算机与信息技术,2011,19(06):9-12.
[6]张玉杰,冯仁剑,万江文.基于S3C44B0+uClinux的嵌入式系统多串口的实现[J].电测与仪表,2005(12):54-56+34.
作者简介
崔海朋 (1982-) 男 工学硕士 工程师 研究方向:嵌入式系统研发与自动化工程
共0条 [查看全部] 网友评论