串口扩展方案总结
- 格式:doc
- 大小:27.50 KB
- 文档页数:3
单路USB转多路串口方案分享串口,对于从事电子行业的朋友应该再也熟悉不过了,它是一种非常通用的设备通信的协议,大多数台式机箱都有RS232-DB9的接口,而且还有多个USB接口。
笔记本电脑通常只有3个USB口,而没有DB9端口,如果想使用串口功能,只能使用USB-TTL模块。
如果需要多个串口时,就要占用多个USB口,再加上鼠标、调试器等,PC提供的USB口就不够用了。
本文分享几种使用单USB口转多路串口的方案,串口之间相互独立,互不干扰。
1. CH9342单芯片实现双串口如果你最多只需要两路串口,那么CH9342是个不错的选择,它是一款单路USB转双串口芯片,提供两组全双工的9线异步串口UART0/1,用于为计算机扩展异步串口,或者将普通的串口设备升级到USB总线。
应用电路:评估板:2. CH9344单芯片实现4路串口如果两路串口不够用,不用担心,我们还有4路串口芯片,CH9344是一款单路USB转4串口控制芯片,提供4组全双工的异步串口UART0/1/2/3,用于为计算机扩展异步串口,或者将普通的串口设备升级到USB总线。
外部只需要一个30M的晶体和少量的电容即可使用,支持波特率1200-7.8125Mbps,LQFP-48封装。
应用电路:评估板:3. CH934X+CH438实现多串口如果需要更多的串口,可以试试CH934X配合CH438的方式。
CH943X是USB转多串口控制芯片,主要负责处理USB接口所有数据传输,并通过并行接口操作CH438,实现多个串口数据的接收和发送。
安装好驱动后,插入USB转串口模块,在电脑上会出现多个串口,这些串口操作方式上和电脑自带的串口一模一样,各个串口相互独立,互不干扰。
USB转多串口应用图如下:N可以为2、4、8、16,波特率支持1200-921600bps,各个串口操作与电脑自带硬件串口一模一样,相互独立,互不干扰。
在官网上并没有找到相关的应用资料,可能需要联系厂家获取资料。
串口扩展方案简介串口是计算机与外部设备进行数据交互的一种通信方式。
在某些场景下,需要扩展额外的串口来满足设备连接的需求。
本文将介绍几种常用的串口扩展方案,包括硬件扩展和软件扩展两种。
硬件扩展方案硬件扩展是通过增加硬件模块来实现串口的扩展。
下面介绍两种常用的硬件扩展方案。
方案一:串口芯片扩展一个常见的硬件扩展方案是使用串口芯片进行扩展。
这种方案主要通过在主板上添加一个或多个串口芯片,以增加额外的串口。
一般而言,串口芯片具有较好的兼容性和稳定性,并且能够支持多种串口协议。
常用的串口芯片有常见的UART芯片,常用的型号包括PL2303、CP2102等。
这些芯片一般支持USB接口,可以轻松地与计算机连接,方便进行数据传输。
方案二:扩展板另一种硬件扩展方案是使用扩展板。
扩展板是一种外部设备,一般通过插入到计算机的扩展槽口或接口上来实现与计算机的连接。
常用的扩展板类型包括PCI扩展板、PCIe扩展板和USB扩展板等。
PCI扩展板和PCIe扩展板适用于台式机等有PCI或PCIe插槽的计算机,可以通过插槽接口连接到计算机主板上。
而USB扩展板则适用于各种类型的计算机,通过USB接口与计算机连接。
使用扩展板进行串口扩展的好处是可以同时添加多个串口,满足多设备连接的需求。
同时,扩展板还可能提供其他功能,如并行端口、网络接口等。
软件扩展方案除了硬件扩展之外,还可以使用软件扩展方案来实现串口的扩展。
下面介绍两种常用的软件扩展方案。
方案一:虚拟串口驱动虚拟串口驱动是一种通过软件模拟串口功能的方案。
它将虚拟串口映射到计算机的物理串口或其他设备上,使得计算机可以像操作真实串口一样操作虚拟串口。
虚拟串口驱动通常是由一些软件开发人员开发的,并且提供了应用程序编程接口(API),可以与设备驱动程序交互。
通过虚拟串口驱动,可以实现串口的创建、配置和通信等功能。
方案二:串口转以太网设备串口转以太网设备是一种通过网络连接实现串口扩展的方案。
怎样给台式电脑扩展串口
前有很多电脑都没有串口,或只有一个串口,但是好多设备都需要用到串口,甚至需要几个串口,根本不够用,现在我来教你给电脑扩展串口的办法。
下面是店铺收集整理的怎样给台式电脑扩展串口,希望对大家有帮助~~
给台式电脑扩展串口的办法
工具/原料
电脑
USB-串口转换器
方法/步骤
先把USB-串口转换器和驱动软件准备好,并把驱动软件PL2302HX拷贝到电脑上(我先把它拷贝到D盘根目录下)。
然后把USB-串口转换器插到电脑USB接口上,电脑会自动弹出安装驱动的界面。
选择从列表或指定位置安装,按下“下一步”按钮。
显示下面界面,按下“浏览”按钮,找到你放置在电脑中的驱动文件PL2302HX,并选择Drive/98ME_20011_2KXP_20024文件,并按下“确定”按钮。
按下“下一步”按钮,开始安装驱动了,安装完成后按下“完成”按钮。
安装完成后,查看我的电脑的属性,并按下“设备管理器”按钮。
找到端口下面的通讯端口,并双击它,弹出设置界面。
找到并按下端口设置,再按下“高级”按钮,这时可以在COM端口号下面选择你需要的串口,接下来只有按下“确定”按钮就可以了。
《电子线路CAD实习》实习课题五:RS232串行口扩展设计一、功能要求利用MAX232芯片实现将一路RS232串行输出信息扩展为八路RS232串行输出信息。
二、原理设计根据电平匹配和输出要求选择实现方案,设计出系统原理图,并进行参数计算和元器件选择,说明电路的工作原理。
三、设计要求1)在所选原理图中要有自己绘制的元件符号;2)利用自动布局、自动布线的方法,将原理图转换为印刷电路板图;3)印刷电路板图上的元件要按工艺要求和电气性能进行排列,布线率要求100%;4)电源线的宽度为20mil,接地线的宽度为30mil,其余接线宽度为10mil,并分别将电源、接地、输入、输出等端用接插件或焊盘引出,输入/输出信息采用DB9插座;5)利用手工编辑的方法对电路板进行编辑和修饰;6)利用系统的网络表比较功能,对原理图和印刷电路板图进行比较,结果应完全一致;7)绘制完毕,要产生自己的项目封装库;8)将所设计内容在屏幕上演示出来。
9)根据具体情况进行电路仿真:3D仿真,检查布局和布线的合理性。
四、撰写实习报告实习报告是在完成设计、仿真、绘制后,对学生归纳技术文档、撰写科学论文和科研总结报告能力的训练。
通过编写实习报告,不仅可以将设计、绘制、仿真及技术参数的内容进行全面总结,而且可以把实践内容提升到理论高度。
实习报告通常包括如下的内容:1)课题名称。
2)内容摘要。
3)设计内容及技术要求。
4)系统方案,画出系统原理图。
5)单元电路设计,参数计算和元器件选择。
6)画出完整的原理图,并说明电路的工作原理。
7)设计PCB板图,PCB图的3D仿真图。
8)列出系统所需要的元器件清单。
9)总结收获体会:总结设计电路的特点和方案的优缺点,归纳课题核心及其应用价值,提出改进意见。
10)列出参考文献。
五、参考图芯片原理见附件。
串口扩展方案概述串口是计算机与其他设备之间进行数据传输的一种常见的数据通信接口。
然而,由于现代计算机的功能越来越强大,往往需要连接多个外设,而单个串口的数量有限。
因此,为了满足多设备连接的需求,我们需要采取一些扩展方案来增加串口的数量。
本文将介绍几种常见的串口扩展方案,包括硬件方案和软件方案,并对它们进行比较和分析。
硬件方案1. 使用串口扩展卡一种常见的扩展串口的硬件方案是使用串口扩展卡。
串口扩展卡是一种插入计算机主板上的扩展卡,提供额外的串口接口。
可以使用PCI、PCI Express等接口将扩展卡与计算机主板连接。
使用串口扩展卡的好处是可以在计算机上增加多个串口,提供更多的外设连接接口。
同时,串口扩展卡通常具有较高的传输速率和稳定性,适用于需要高速数据传输的应用场景。
然而,串口扩展卡也存在一些局限性。
首先,使用串口扩展卡需要计算机具备对应的接口,例如PCI或PCI Express插槽。
其次,插入串口扩展卡可能需要打开计算机机箱,操作较为繁琐。
最后,串口扩展卡的成本较高,需要额外的投资。
2. 使用串口转换器除了使用串口扩展卡,还可以通过使用串口转换器来扩展串口。
串口转换器是一种将一种串口接口转换为另一种串口接口的设备。
常见的串口转换器包括USB转串口、RS232转RS485等。
使用串口转换器可以将计算机的USB接口或RS232接口转换为串口接口,从而实现串口的扩展。
与串口扩展卡相比,串口转换器的优势在于便携性和灵活性。
只要计算机具备对应的USB或RS232接口,就可以随时连接串口转换器进行串口扩展。
同时,串口转换器的成本较低,适用于小规模的串口扩展需求。
然而,使用串口转换器也存在一些限制。
由于转换器将一种接口转换为另一种接口,可能会引入一定的传输延迟和稳定性问题。
此外,串口转换器的数量有限,不能无限制地扩展串口数量。
软件方案除了硬件方案,还可以通过一些软件方案来实现串口的扩展。
1. 虚拟串口软件虚拟串口软件是一种软件工具,可以将计算机上的物理串口转换为虚拟串口,从而实现串口数量的扩展。
串口扩展方案随着IoT行业的不断发展,越来越多的设备需要通过串口接口进行数据通信。
然而,随着设备数量和复杂度的增加,传统单一串口接口已无法满足需求,因此,串口扩展方案应运而生。
一、传统串口接口存在的问题1.串口数量有限。
通常情况下,单片机的串口数量较少,只有2-3个,难以满足众多设备对串口的需求。
2.传输速率慢。
由于串口属于同步通信方式,数据传输速度受限于波特率,无法满足高速数据传输的需求。
3.线路长度受限。
串口通信的线路长度受限于数据传输速率和传输距离,过长的线路会导致数据传输的错误率增加。
二、串口扩展方案的应用为了解决传统串口接口存在的问题,一些公司推出了串口扩展方案,通常采用多路串口扩展芯片控制多个串口通信。
与传统串口接口相比,串口扩展方案有以下优点:1.多路串口同时工作,可扩展串口数量。
采用多路串口扩展芯片可同时控制多个串口,最多可扩展到数十个,可以满足多设备同时通信的需求。
2.高速数据传输。
通过采用高速串口扩展芯片,可实现高速串口通信,提高数据传输速率。
与传统串口通信方式不同的是,串口扩展方案支持异步通信方式,传输速度可达115200 bps。
3.传输距离较长。
采用串口扩展方案,可通过增加串口重复器等设备扩展传输距离,解决了传输距离有限的问题。
三、串口扩展方案的实现串口扩展方案通常由两部分组成:串口扩展芯片和串口重复器。
串口扩展芯片负责控制多个串口,实现多路串口通信。
串口重复器则负责扩展传输距离,可由多个串口级联来扩展传输距离。
目前市面上主流的串口扩展芯片包括CH341、CP2102、FT232等。
这些芯片具有高性能、稳定性好、价格低廉等特点,广泛应用于串口扩展方案中。
四、串口扩展方案的应用案例1.智能家居方案中的串口扩展智能家居设备通常需要通过串口进行通信,但一个家庭内通常需要大量智能家具,单一的串口无法满足需求。
串口扩展方案可以满足多个设备同时通信的需求,使智能家居方案更加智能化。
TMS320C3X串口扩展技术TMS320C3X是TI公司生产的第三代数字信号处理器,目前已相继推出C30、C31、C32和VC33等四种类型,因为其性价比高而被广泛应用于各个领域中。
TMS320C3X是一种32bit的浮点,其程序、数据和外设地址都映射在同一存储空间,并有丰盛的寻址方式和较大的寻址空间,因此对外设的拜访十分灵便便利。
但在实际应用中往往也要考虑一些不利因素:一是外部速度高、地址线宽,因此增强外设时对接口的时序要求较高,且电路衔接较复杂;二是常见的外设拜访操作易产生流水线矛盾而影响整体性能。
DSP的串口有较强的设备管理能力,与外设衔接也很容易?因此成为DSP与低速外设交换数据的首选。
但在TMS320C3X系列中,除TMS320C30提供两个串口外,其它几种芯片都惟独一个串口,在无数状况下限制了这些芯片的进一步用法。
本文针对C3X串口的特点,以TMS320C3X与TLC3204X衔接为例,设计了一种串口扩展办法。
1 TMS320C3X与TLC3204X衔接简介TLC3204X是TI公司生产的话带模数接口芯片(AIC),可与TMS320C3X 等多种DSP芯片的串口挺直相连,其A/D、D/A转换精度为14bit,按16bit方式传送,其中两位用于芯片控制和启动辅助通信[1]。
图1是TLC3204X与TMS320C3X串口的衔接图[2]。
AIC与DSP通过DX和DR交换数据,AIC的主时钟信号(MCLK) 由DSP的定时器0提供,而AIC的移位脉冲(SCLK)作为串口的发送时钟(CLKX)和接收时钟(CLKR),发送和接收帧同步信号分离由AIC的FSX和FSR提供。
DSP串口以16位变速传送方式工作,AIC按字方式传送数据。
2 TMS320C3X串口扩展原理普通而言,外设数据字长较短,而TMS320C3X串口数据字长可灵便配置。
利用这一特点,只要增设少量的外部电路,就能在现有基础上扩展接口。
基于GM8123的串口扩展硬件解决方案1 引言在某些特定的情况下,单片机应用系统需要连接多个串行外设,如微型打印机、液晶模块、上位计算机等,此种情况称为点对多点通讯方式;或者多个单片机应用系统通过串行接口连接到一台主控计算机上,称为多点对一点通讯方式。
通常单片机只提供一个异步串行通讯接口(SCI)。
因此,上述两种情况下,都涉及串行接口的扩展题目。
以下将针对点对多点通讯的串口扩展,给出一种使用最新串口扩展接口器件GM8123的解决方案。
2 点对多点通讯的硬件解决方案目前,点对多点通讯在扩展串行接口时,除了使用软件虚拟的方式,将单片机的普通I/O虚拟为异步串行接口外,更多的是采用硬件接口器件扩展方法。
而硬件扩展串行接口,一方面可采用多路模拟开关,或使用门电路,按需要选通相应的串行通道,实现点对多点的通讯;另一方面可使用专用的串口扩展器件扩展串行接口。
前者的主要题目是占用较多的单片机硬件资源,更重要的是通讯过程中的实时性较差。
采用最新的专用串口扩展器件可有效地解决上述题目。
3 基于GM812X的典型串口扩展电路GM812X是成都国腾公司生产的专用串口扩展器件,包括GM8123(一扩三)、GM8125(一扩五)两个主要型号。
GM8123可以将一个全双工的标准串口扩展成3个标准串口,并能通过外部引脚控制串口扩展模式:单通道工作模式和多通道工作模式,既可以指定一个子串口和母串口以相同的波特率工作,也可以让所有子串口在母串口波特率基础上分频同时工作。
母串口和子串口的工作波特率可由软件调节,而不需要修改外部电路和晶振频率。
图1为GM8123构成的典型串口扩展电路。
由于GM8123串口扩展器件不具有上电复位功能,因此使用单片机的P3.7控制GM8123的复位端,复位信号低电平有效,并保持200 ms。
器件复位后,内部所有的BUFFER和寄存器清零,此时器件的默认状态为:波特率1 200 b/s,数据格式为11位/帧。
基于SPI的多串口扩展方案(1扩8)前言随着电子技术的发展,以微处理器(MCU),PC机组成的主从分布式测控系统已成为当今复杂的测控系统的典型解决方案。
单片机以其独特的串口通信功能为主,从设备之间的数据传输提供了便利。
但是51系列单片机只提供了一个全双工的串行通信接口,这对于一个实时性要求较高,测控功能复杂的系统而言是一个美中不足之处。
在我们设计的智能密集测控系统中,就需要测控工具有多个实时全双工的串行通信接口。
我们现在只能是选择有多个串口的单片机或者是进行串口扩展,选择多串口的单片机肯定成本比较高,而且局限性比较大;那么最好的方案还是进行串口扩展。
根据本人的对多款串口扩展芯片在性能、价格上的比较,个人认为维肯电子的VK3266这款串口扩展芯片还是相当不错的,下面我们就也VK3266来对单片机的串口进行扩展。
以单片机的一个串口,扩展为4个全双工的串口。
1、系统原理框图2、硬件原理图硬件原理框图介绍:本设计主要依赖的硬件是2块VK3224串口扩展芯片实现一个spi接口扩展8个uart接口,外部电路实现简单。
主要是晶振电路,复位电路,spi接口电路。
3、VK3224芯片介绍1.产品概述VK3224是SPI TM接口的4通道UART器件。
VK3224实现SPI桥接/扩展4个串口(UART)的功能。
扩展的子通道的UART具备如下功能特点:每个子通道UART的波特率、字长、校验格式可以独立设置,最高可以提供1Mbps的通信速率。
每个子通道可以独立设置工作在IrDA红外通信。
每个子通道具备收/发独立的16 BYTE FIFO,FIFO的中断为4级可编程条件触发点。
VK3224采用SOP20绿色环保的无铅封装,可以工作在2.5~5.5V的宽工作电压范围,具备可配置自动休眠/唤醒功能。
[注]:SPI TM为MOTOLORA公司的注册商标。
2.基本特性2.1 总体特性低功耗设计,可以配置自动休眠,自动唤醒模式宽工作电压设计,工作电压为 2.5V~5.5V精简的配置寄存器和控制字,操作简单可靠提供工业级和商业级产品高速CMOS工艺采用符合绿色环保政策的SOP20无铅封装2.2 扩展子通道UART特性子通道串口独立配置,高速、灵活:每个子串口为全双工,每个子串口可以通过软件开启/关闭波特率可以独立设置,子串口最高可以达到1M bit/s (5V工作电压)每个子串口字符格式包括数据长度、停止位数、奇偶校验模式可以独立设置完善的子串口状态查询功能FIFO功能:每个子串口具备独立的16级9Bits发送FIFO,发送FIFO具备4级可编程触发点每个子串口具备独立的16级9Bits接收FIFO,接收FIFO具备4级可编程触发点软件FIFO使能和清空FIFO状态和计数器输出错误检测:支持奇偶校验错,数据帧错误及溢出错误检测支持起始位错误检测内置符合SIR标准的IrDA红外收发编解码器,传输速度可达115.2K bit/s2.3 SPI主接口特性最高速度5M bit/s仅支持SPI从模式16位,SPI模式03.应用领域多串口服务器/多串口卡工业/自动化现场RS-485控制无线数据传输车载信息平台/车载GPS定位系统远传自动抄表(AMR)系统POS/税控POS/金融机具DSP/嵌入式系统4.原理框图图4.1 VK3224 原理框图5.封装引脚5.1封装图5.2 引脚描述。
WK系列通用异步串口UART产品产品介绍:WK提供目前业界收发缓存最大、接口最全、尺寸最小的高性价比UART 器件,芯片内置多种总线数据转换处理协议,为工业和便携设备等嵌入式系统提供先进的串口扩展器件。
产品特点:}接口最全:--WK系列UART产品主接口支持UART、I2C、SPI、8位并行总线可选--业内独创通过标准三线UART串口扩展UART技术。
}收发缓存最大:--每个扩展串口具备256级收发独立FIFO--支持超时中断和任意可设置FIFO触发点中断--防止串口通信数据溢出,减少CPU响应中断次数---有效提高基于嵌入式OS系统中串口通信的实时性和可靠性。
}封装最小:--系列产品采用SSOP16/20,QFP44,QFN24/32封装--WK2204采用4*4mm的QFN24封装,为业界最小的4通道低电压UART --WK2166为QFP44封装,为业界最小的工业级宽电压4通道UART}主接口特性:--UART接口:波特率自适应技术,最高速率2Mbps,支持16字节连续收发;--SPI接口:从模式,最高速率10Mbps,支持256字节连续收发;--IIC接口:从模式,最高速率1Mpbs,支持16字节连续收发--8位并口:标准8位总线模式,最高速率10MBps,仅占用2个地址空间}扩展串口特性:--系列产品支持2-4个扩展标准串口可选--每个扩展串口波特率、字长、校验格式可以独立设置,并可单独软件复位;--扩展串口最高通信速率可达2Mbps;--扩展串口可以支持RS485自动收发,自动485网络地址识别;--可设置为SIR标准的IrDA红外通信模式,速率可达115.2kbps。
}设计资源和支持:--Linux/Android 系统级串口驱动,参考源代码--8051,STM32 应用参考源代码--EVB开发评估板产品应用:l移动便携设备:行业PDA、行业平板、移动收款机、便携数据采集终端l工业控制:串口服务器、自动化现场控制、POS机、工业机器人,无人机l仪器仪表:智能仪表、AMR远传抄表设备、工业/医疗采集仪器l通信设备:工业网络通信设备、串行基站控制器、串行通信终端l汽车电子:车载导航系统、停车管理系统、汽车安全行驶记录仪(黑匣子)l智能硬件:智能家居控制设备、可穿戴采集设备、智能安防,智能家电产品选型:WK21系列宽电压产品系列,工作电压2.5-5.0V ,适合工业级应用。
串口扩展方案总结串行接口设备凭借其控制灵活、接口简单、占用系统资源少等优点,被广泛应用于工业控制、家庭安防、GPS卫星定位导航以及水、电、气表的抄表等领域。
在这些嵌入式系统中,可能会有很多从设备都通过串行接口与主机进行通信,如GPRS MODEM、红外发送和接收模块、RS485总线接口等。
这使得开发人员常常面临嵌入式系统中主机串行通信接口不足的问题,针对此问题,本文介绍了几种常见的解决方法。
软件模拟法软件模拟法可根据串行通讯的传送格式,利用定时器和主机的I/O口来模拟串行通讯的时序,以达到扩展串口的目的。
接收过程中需要检测起始位,这可以使用查询方式,或者,在端口具有中断功能的主机中也可以使用端口的中断进行处理。
接收和发送过程中,对定时的处理既可以使用查询方式也可以使用定时器中断方式。
为了确保数据的正确性,在接收过程中可以在检测异步传输的起始信号处加上一些防干扰处理,如果是无线传输系统,在接收每个位时可以采用多次采样。
对于有线系统来说,1次采样就够了,你看IIC,SPI等,谁去进行了多次采样。
如今软件模拟以其价格低廉,使用方便,已经成为一种潮流.但是不是所有的单片机都适合用来进行串口的软件模拟的.软件模拟的方法一般有两种,一种是读写I/O,另外一种是读写端口.很容易想到采用读写端口的方式模拟的方式,各串口的波特率必须保持一致.而且当各路数据的输入时间差只有那么几十微秒时,很容易造成数据丢失,虽然看上去这种方式也可以承受输入数据端短路的高数据量压力测试,但这种测试方法是刚好落在了该方案的最佳输入点上.所以真正的使用中是有几率出错的.而采用我们PDK80CXX系列在进行8路以下(4路全双工通讯)的串口模拟时,完全可以采用读写I/O口方式来完成,这样,我们可以非常轻松完成个子口的波特率不等的设置.而且可以达到非常高的速率,当外接8MHz的晶体时,3路子口的最高速度可以达到38400以上.我想就是38400的波特率一般的单片机也就足够了.俗话说,"打铁还需墩子硬",而我们PDK80CXX都是工业规格设计,超强的抗干扰性,超宽的高低温工作范围.不知道各位看官目前有没有用过可以在-40~+120摄氏度工作的单片机.所以采用PDK80CXX模拟串口扩展无疑是目前性价比最高的一种解决方案.利用并口转串口扩展串行口基于Intel8251的串行口扩展Intel8251是一种通用的同步/异步发送器(USART),它的工作方式可以通过编程设置,并具有独立的接收/发送器。
能以同步或异步串行通信方式工作,自动完成帧格式,具有奇、偶校验和错误检测电路。
基于TL16C554的串行口扩展TL16C554是TI公司生产的4通道异步收发器集成芯片。
对TL16C554串行通道的控制,是通过对控制寄存器LCR、IER、DLL、DLM、MCR和FCR编程来实现的。
这些控制字决定字符长度、停止位的个数、奇偶校验、波特率以及调制解调器接口。
控制寄存器可以任意顺序写入,但是IER必须最后一个写入,因为它控制中断使能。
串行通道内的波特率发生器(BRG)允许时钟除以1至65535之间的任意数,BRG根据其不同的三种通用频率中的一种来决定标准波特率。
16C55x系列芯片还包括16C550、16C552,分别可以扩展1个和2个串行口。
利用串行口扩展串行口基于GM8123/25系列芯片的串行口扩展GM8123/25系列串口扩展芯片可以全硬件实现串口扩展,通讯格式可设置,并与标准串口通讯格式兼容。
GM8125可扩展5个标准串口,通过外部引脚选择串口扩展模式:单通道工作模式和多通道工作模式。
单通道模式下,无需设置芯片的通讯格式,子串口和母串口以相同的波特率工作,同一时刻只允许一组子串口和母串口通讯,工作子串口由地址线选择。
单通道工作模式适用于所有从机不需要同时通讯,并且通讯过程完全由主机控制的系统。
多通道模式下,各子串口波特率相同,允许所有子串口同时与母串口通讯,母串口以子串口波特率的6倍工作。
发送时由地址线选择用来发送数据的子串口;接收时子串口能主动响应从机发送的数据,再由母串口发送给主机,同时由地址线返回接收到数据的子串口地址,主机在接收到子串口送来的数据后,可以根据地址线的状态判断数据是由哪一个从机发送的。
多通道工作模式下,在进行数据通讯前要对芯片进行工作方式设置,包括串口帧格式设置和通讯波特率设置。
通过串行口和控制引脚相互配合可对芯片进行工作方式设置,引脚MS为0、且STADD2~STADD0为000时写命令字,引脚MS为1、STADD2~STADD0为000时读命令字。
进行工作方式设置时,芯片的帧格式和母串口工作波特率与上一次进行数据通讯时一致;而复位后的帧格式为11bit,母串口波特率为7200bps。
基于SP2338的串行口扩展SP2338是采用低功耗CMOS 工艺设计的通用异步串行口扩展芯片,它可轻松将主机原有的1个串行口扩展成3 个全新的全双工串行口。
SP2338适用于1个起始位、8个数据位、1个停止位的多串口系统,也就是说其帧格式是不可编程的。
主机通过改变ADRI1、ADRI0地址线状态的方式选择3个子串口中的任意一个,3个子串口的地址分别为00、01、10。
地址11用于执行SP2338 芯片本身的复位指令0x35 或0xB5、睡眠指令0x55或0xD5、延时指令0x00。
向RX0~RX3中的任意一个接收端口写任意数据即可将SP2338唤醒,但由于SP2338的唤醒时间需要25ms左右,故用于芯片唤醒的数据将不会被主机接收。
因此,可以先发送一个字节数据用于唤醒芯片,延时25ms后即可进行正常的数据传输。
未使用的输入端口,如RX0、RX1、RX2等必须连接到VCC;未使用的输出端口,如TX0、TX1、TX2等必须悬空;未使用的ADRI0、ADRI1必须连接到GND。
主机收发数据时序为:主机TX3接收到一个字节后应立即读取SP2338的输出地址ADRO0、ADRO1的状态,判断接收到的数据来自哪个子串口;主机发送数据时,首先通过ADRI0、ADRI1选择某一个子串口,再向TX3写将发送的数据。
还有分时复用的扩展方法在电路设计的过程中,本文设计出一种适合自己系统需要、将1个串口扩展为3个串口的方案,如图1所示。
其中,4001是四2输入端或非门,40106是六施密特触发器。
4001的4脚和9脚分别为主机的RXD和TXD,40106的2脚和9脚为子串口的TXD0和RXD0,6脚和11脚为子串口的TXD1和RXD1,4脚和13脚为子串口的TXD2和RXD2。
根据图的连接方式和逻辑代数的推导可得:RXD的状态等于40106的9脚、11脚、13脚的状态相与。
当40106的9脚、11脚、13脚中的任意一个有数据信号时,由于在异步串行通讯中,无数据传输时的引脚状态为高,因此RXD上就能接收到有数据信号的那个引脚上的数据状态。
40106的2脚、4脚、6脚的状态等于TXD的状态,所以可以利用40106的2脚、4脚、6脚做为子串口的TXD。
这种设计方案适用于主机同时向多个串行设备发送数据,而从设备不同时向主机发送数据的情况。
再增加几个信号线,就可以区分出向哪一个从设备发送数据以及接收到的数据是来自哪一个从设备。
在本文的系统中,主机是通信的发起者,接收到的数据来自哪个从设备是可以预知的,因此,只需再增加3个控制从设备使能的信号线即可。
几种方法的比较在需要扩展系统的串行口时,使用多串行口单片机的方法是最容易想到的。
由于串口集成在单片机内部,因此设备体积较小,抗干扰能力较高,但多串口单片机通常价格较高,而且,如果是开发人员所不熟悉的型号,还需要开发人员重新学习并购买与之配套的开发工具,这延长了产品的开发周期,也增加了产品的开发成本。
软件模拟法占用的系统资源少、成本低、易于实现。
已经被越来越多的人所采用。
特别是基于PDK80CXX系列模拟的串口应用,以其适中的价格,超强的抗干扰性和超宽的工作温度,肯定会被更多的工业数据采集者所采用。
并行口扩展串口方法的功能比较强大,能提供MODEM控制信号、通讯速度高,但控制复杂,占用MCU的端口资源较多,同时价格也较高。
利用串行口扩展串行口,控制简单,能最大限度地减少控制线,不需要占用太多的主机系统资源,而且通用性强,性能稳定,可保证数据的正确性。
GM812x的不足之处在于:不满足超低功耗应用要求;多通道模式下,所有子串口工作波特率只能设置成统一值,不适用于各从机工作波特率不一致、又要求同时工作的系统。
SP2338虽然能满足低功耗的要求,但其子串口波特率也需要设置为统一值,并且不能对数据帧格式编程,最高波特率也只有9600bps。
本文提出的方法中,各个子串口的串行特性和母串口相同,使用简单,占用系统资源少,易于控制(最少2个控制信号扩展3个串口),稳定性好。
其功耗取决于4001和40106,它们的功耗都在mA级。
其最高波特率取决于4001和40106的响应速度,4001和40106的最大响应延迟是250ns,所以理论上最高波特率可达4Mbps。
此方法已经成功地应用于三表远传系统。
该方法的缺点是,它不能用于从机工作波特率不一致、又要求同时工作的系统。
结语本文设计了一种扩展串口的方法以解决在实际应用中遇到的主机串行口资源不足的问题,目前该方法已经成功地应用于三表远传系统中。
在解决这个问题的过程中,本文也对其他解决方案进行了比较。
参考文献:1.刘毓梅等,通过异步串口扩展芯片GM8123/25的原理和应用,成都国腾微电子公司,20042.李华艾编,Mcs-5系列单片机实用接口技术,北京航空航天大学出版社,2001。