当前位置:首页 > 工业控制 > 工业控制
[导读]摘要:介绍了TL16C752B的特点、性能和相关寄存器,给出了通过TL16C752B实现TMS320VC5421和PC机实时通信的方法。同时给出了串口通信部分的硬件应用电路图以及对TL16C752B进行初始化的软件实现程序。 关键词:数字信号

摘要:介绍了TL16C752B的特点、性能和相关寄存器,给出了通过TL16C752B实现TMS320VC5421和PC机实时通信的方法。同时给出了串口通信部分的硬件应用电路图以及对TL16C752B进行初始化的软件实现程序。 关键词:数字信号处理;通信接口;异步通信;TL16C752B;TMS320VC5421 1 引言 美国德州仪器公司(TI)的TMS320VC54XX系列DSP芯片与PC机实现异步通信通常有两种方法:第一种是使用通用I/O信号XF和BIO作为串口发送和接收信号,用软件逐位发送和接收数据,即软件异步通信方法,这种方法需要占用很多CPU时间,因此,只能在DSP不太忙、实时性要求不高的情况下采用;第二种是通过扩展异步通信芯片来实现高速串行通信,本文选用的就是此方法。 在笔者设计数字调幅广播系统中的基带处理子系统时,复用器与信道编码器之间的通信采用的是异步串行通讯方案。复用器则使用通用PC机来实现,信道编码器使用TI公司生产的DSP芯片TMS320VC5421来设计实现。


2 UART芯片TL16C752B简介[1] 2.1 主要特点 TL16C752B是TI公司推出的新型UART(Universal Asynchronous Receiver and Transmitter )收发器。该器件的主要特点如下: ●引脚和ST16C2550兼容,内置两套UART系统,可独立工作; ●工作时,最高波特率可以达到1.5Mbps(使用24MHz晶体时)或3Mbps(使用48MHz振荡器或时钟源时); ●具有64字节发送/接收FIFO(接收FIFO包含错误标志)。由于收、发FIFO的触发等级可通过软件编程实现,因而减少了CPU的中断次数; ●接收FIFO的启动和停止等级可以通过软件编程来实现; ●具有两种控制模式:其中软件流控制模式可通过编程Xon/Xoff字符来实现;而硬件流控制模式则可通过设置RTS和CTS引脚及相应的寄存器来实现; ●波特率可编程; ●可编程下列串行数据格式: ——5、6、7、8 四种字符; ——数据奇偶校验或者无校验; ——1、1.5、2bits 停止位; ●内部闭环。


2.2 TL16C752B的引脚功能 TL16C752B内含双UART,并自带64字节收发FIFO,可自动进行软件流和硬件流控制,最大波特率可达3Mbps。此外,TL16C752B还提供了其它一些增强功能,可通过设定EFR寄存器的相关位来实现。通过FIFO RDY 寄存器可读取TXRDY/RXRDY引脚的状态;而通过片内寄存器则可为使用者提供接收数据的错误识别、操作状态以及MODEM的接口控制信号。 TL16C752B的引脚排列如图1所示,各主要引脚的功能如下: A0~A2:地址线,通过这几个引脚以及读写信号IOR和IOW可以访问及设定片内寄存器? D0~D7:双向8位数据线? CSA、CSB:两套UART的片选信号? TXA/RXA、TXB/RXB:分别表示所要发送和接收的数据端口? INTA/INTB:中断信号? RESET:芯片复位信号? XIN/XOUT:时钟输入/输出信号。 2.3 TL16C752B的内部寄存器 图2所示是TL16C752B的内部功能模块图,该器件内部共有20个寄存器,这些寄存器可分别用于实现通信参数的设置、对线路及MODEM状态的访问、数据的发送和接收以及中断管理等功能。其地址可分别通过A0~A2地址线和某些寄存器的特定位来确定,由于有些寄存器的地址是重叠的,所以还必须通过读/写信号加以区分。TL16C752B内部寄存器的映射如表1所列。表中: “*” 表示仅当LCR的第7位为1时,访问DLL/DLH。 “** ”表示仅当LCR为0xBF时,访问EFR以及Xon1/2,Xoff1/2。 “+” 表示当EFR[4]为1,且MCR[6]为1时,访问TCR/TLR。 “++”表示当片选信号有效、MCR[2]为1且处于非闭环模式时,访问 FIFO RDY。 此外,对于MCR[7],只有当EFR[4]为1时才可以更改。在上述说明中,[]表示该寄存器的第几位。 表1 TL16C752B的内部寄存器映射表 A[2] A[1] A[0] 读 模 式写 模 式 0 0 0 接收保持寄存器(RHR)发送保持寄存器(THR) 0 0 1 中断使能寄存器(IER) IER 0 1 0 中断标示寄存器(IIR) FIFO控制寄存器(FCR) 0 1 1 线路控制寄存器(LCR) LCR 1 0 0 MODEM控制寄存器(MCR) MCR 1 0 1 线路状态寄存器(LSR) LSR 1 1 0 MODEM状态寄存器(MSR) MSR 1 1 1 临时寄存器(SPR) SPR 0 0 0 *除数锁存低位(DLL) DLL 0 0 1 *除数锁存高位(DLH) DLH 0 1 0 **增强功能寄存器(EFR) EFR 1 0 0 ** Xon-1字符值 Xon-1字符值 1 0 1 ** Xon-2字符值 Xon-2字符值 1 1 0 ** Xoff-1字符值 Xoff-1字符值 1 1 1 ** Xoff-2字符值 Xoff-2字符值 1 1 1 +传输控制寄存器(TCR) TCR 1 1 0 +触发等级寄存器(TLR) TLR 1 1 1 ++FOFO状态寄存器(FIFO RDY) FIFO RDY 2.4 TL16C752B工作流控制模式 TL16C752B有2种工作流控制模式:硬件流控制和软件流控制。使用前者可降低软件消耗,通过RTS和CTS引脚信号的硬件连接可自动控制串行数据流,从而提高系统的有效性;后者则通过使用可编程的Xon/Xoff字符来自动控制数据传输。本文主要介绍软件流控制模式。 软件流控制模式的使能可通过EFR和MCR这2个寄存器来实现。不同流模式的组合如表2所列(可通过设定EFR的低4位实现)。 表2 软件流控制模式 EFR[3] EFR[2] EFR[1] EFR[0] TX RX软件流控制组合模式 0 0 X X 无发送流控制 1 0 X X 发送Xon1,Xoff1 0 1 X X 发送Xon2,Xoff2 1 1 X X 发送Xon1,Xoff1;Xon2,Xoff2 X X 0 0 无接收流控制 X X 1 0 接收器比较Xon1,Xoff1 X X 0 1 接收器比较Xon2,Xoff2 1 0 1 1 发送Xon1,Xoff1;接收器比较Xon1,Xoff1;Xon2,Xoff2 0 1 1 1 发送Xon2,X0ff2;接收器比较Xon1,Xoff1;Xon2,Xoff2 1 1 1 1 发送Xon1,Xoff1;Xon2,Xoff2;接收器比较Xon1,Xoff1;Xon2,Xoff2 0 0 1 1 无发送流控制;接收器比较Xon1,Xoff1;Xon2,Xoff2 具体工作流程(从接收的角度)为:接收时,若操作达到接收中断等级,则产生中断,但这时传输还在进行(这里假设中断有一定延时);而当RHR中的数据数目达到接收停止等级规定的数值时,接收端发送Xoff1/2,以通知发送端停止发送数据,这时接收端将读取RHR中的数据。当RHR中的数据数目降到接收启动等级规定的数值时,接收端发送Xon1/2,以通知发送端可以继续发送数据。 3 TL16C752B与PC的通信电路 TL16C752B与PC的串行通信部分的硬件连接电路如图3所示。图中,地址线A0~A2、数据线D0~D7分别和DSP的地址总线A0~A2、外部数据线D0~D7直接相连,而选通信号CSA/CSB、读写信号IOR/IOW、复位信号RESET以及中断信号INTA/B则接入CPLD并由CPLD处理。同时DSP端的PS、DS、IS、IOSTRB、R/ W、MSTRB也同时接入CPLD以用于生成控制信号。电路中使用CPLD一方面可以对UART的地址灵活配置,另一方面也可以灵活生成UART的复位、选通和读写信号,从而增强系统的灵活性,方便系统调试。 由于PC端串口采用RS232电平标准,因此UART之后需要连接MAX3221以完成电平转换。TL16C752B的数据发送引脚和数据接收引脚分别与MAX3221的数据输入引脚和数据输出引脚连接。这里只使用一套UART来完成TL16C752B和PC的通信。数据收、发采用中断方式,UART_INTA通过CPLD和TMS320VC5421的外部中断INT0相连接。而3.072MHz晶振则连接到XIN和XOUT两引脚。波特率设定为38400,故DLL/DLH分别为06和00h。 具体调试时,可先从查询方式开始,若没有问题,再使用中断方式。 图3 4 TL16C752B和PC通信的软件编程 该系统的软件设计部分主要包括PC机程序、DSP初始化、TL16C752B初始化和数据发送/接收以及双方的通信协议等。下面介绍TL16C752B的初始化程序。 TL16C752B初始化程序主要包括以下几部分: (1)波特率的设定; (2)增强功能的使能及设置EFR的相关位; (3)完成有关收、发FIFO的设定,主要是MCR/TCR/TLR 3个寄存器的设置; (4)软件流控制模式使能以及Xon/Xoff字符的设置; (5)传输数据格式设定,包括8位数据位、2位停止位、DMA传输模式1、偶校验、不使用强制校验模式、暂停控制位无效等; (6)设置FIFO控制以及中断控制寄存器。 此外,在完成设置前,还应注意以下几点: (1) 设定DLL和DLH前,LCR[7]应为1。 (2) 设定MCR前,EFR[4]应为1,LCR应为00h。地址相重叠的寄存器不能同时使能。 (3) 读写RHR和THR时,由于DSP的读写速度很快,故最好不要连续读写,而是在每读、写一次后延时一段时间,然后再进行下一次读写。 (4) 这里,DMA只是一个名称,而并非是 “直接存储器访问”。 TL16C752B的地址分配在I/O空间的0020h~0027h,读写通过PORTR和PORTW指令完成。TL16C752B初始化程序如下: ini_uart_start: ;设置 baud rate=38400 ; divi-sor=0006h stm #temp1_reg,ar1 nop st #80h;*ar1 ;除数锁存使能 LCR=bfh portw *ar1,#k_LCR_addr st #k_DLL_value,*ar1 portw *ar1,#k_DLL_addr st #k_DLH_value,*ar1 portw *ar1,#k_DLH_addr ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; st #k_LCR_value?*ar1 ;LCR=bfh portw *ar1,#k_LCR_addr st #k1 EFR value?*ar1 ;增强功能使能 portw *ar1,#k_EFR_addr st #0,*ar1 ;设定LCR= 0 portw *ar1?#k LCR addr st #k_FCR_value,*ar1 ;设定FIFO控制寄存器 portw *ar1,#k_FCR_addr st #k_MCR_value,*ar1 ;设定MCR/TCR/TLR寄存器 portw *ar1,#k_MCR_addr st #k_TCR_value,*ar1 portw *ar1,#k_TCR_addr st #k_TLR_value,*ar1 portw *ar1,#k_TLR_addr st #k1_MCR_value,*ar1 portw *ar1,#k_MCR_addr st #k_LCR_value,*ar1 ;为访问Xon/Xoff/EFR,LCR重设定为BFh portw *ar1,#k_LCR_addr st #k_Xoff1_value,*ar1 ;设置软件流控制 portw *ar1,#k_Xoff1_addr st #k_Xon1_value,*ar1 portw *ar1,#k_Xon1_addr st #k_Xoff2_value,*ar1 portw *ar1,#k_Xoff2_addr st #k_Xon2_value,*ar1 portw *ar1,#k_Xon2_addr st #k_EFR_value,*ar1 ;设置软件流控制组合方式 portw *ar1,#k_EFR_addr st #k_LCR_dlatch_disable,*ar1 portw *ar1,#k_LCR_addr ;设定传输数据格式 st #k_IER_value,*ar1 ;设置中断 portw *ar1,#k_IER_addr 5 结束语 通过扩展串口完成TMS320VC5421与PC机串行通信硬件接口比较简单、数据传送距离远、使用经济。该电路及其软件经与微机的通信实验证明,在波特率为38400时,能够可靠地实现与PC机的通信。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着在线会议、直播和游戏语音交流的普及,高质量的音频输入设备变得越来越重要。为此,边缘AI和智能音频专家XMOS携手其全球首家增值分销商飞腾云科技,利用其集边缘AI、DSP、MCU和灵活I/O于一颗芯片的xcore处理器...

关键字: AI DSP MCU

多DSP集群的实时信号处理系统,通信拓扑的优化直接决定任务调度效率与系统吞吐量。RapidIO与SRIO作为嵌入式领域的主流互连协议,其带宽利用率差异与QoS配置策略对集群性能的影响尤为显著。以无线基站、雷达阵列等典型应...

关键字: DSP 通信拓扑优化

随着5G网络普及与物联网设备爆发式增长,边缘计算正从概念验证走向规模化部署。据IDC预测,2025年全球边缘数据量将占总体数据量的50%,这对边缘节点的实时处理能力提出严苛要求。在此背景下,AI加速器的DSP化趋势与可重...

关键字: AI加速器 DSP

在工业控制领域,数字信号处理器(DSP)的性能直接决定了系统的实时控制能力和可靠性。德州仪器(TI)的C2000系列芯片凭借其卓越的采样、控制和功率管理能力,长期以来在全球工业控制市场占据绝对领导地位,广泛应用于能源、电...

关键字: TI C2000 DSP 格见半导体 芯来 RISC-V 工控

2025年7月16日 – 专注于引入新品的全球电子元器件和工业自动化产品授权代理商贸泽电子 (Mouser Electronics) 持续供货Texas Instruments (TI) 的新产品和解决方案。作为一家授权...

关键字: 线性稳压器 栅极驱动器 DSP

在当今数字化浪潮的推动下,数据流量呈爆炸式增长,数据中心、5G通信网络以及云计算等领域对高速光通信的需求愈发迫切。800G光模块作为高速光通信的关键组件,其性能直接影响着整个通信系统的传输效率和可靠性。数字信号处理(DS...

关键字: 800G DSP PAM4均衡算法

以氢燃料电池空压机为研究对象 ,开发超高速永磁同步电机控制器 ,采用传统的IGBT主功率器件 ,且为两电平主回 路结构形式 ,通过改进的V/F控制算法 ,完成了控制器的设计。搭建了试验平台进行测试 ,结果表明 ,控制器能...

关键字: 超高速永磁同步电机 V/F控制 DSP

医疗设备智能化进程,数字信号处理器(DSP)作为核心计算单元,承担着实时处理生物电信号、医学影像等敏感数据的重任。然而,随着医疗设备与网络互联的深化,数据泄露风险显著增加。美国《健康保险流通与责任法案》(HIPAA)明确...

关键字: 医疗设备 DSP

数字信号处理器(DSP)作为实时信号处理的核心器件,其架构设计直接决定了运算效率与功耗表现。自20世纪70年代DSP理论诞生以来,其硬件架构经历了从冯·诺依曼结构到哈佛结构的演进,这一过程体现了对实时性、并行性与存储带宽...

关键字: DSP 冯·诺依曼

随着嵌入式系统对实时性、多任务处理能力的需求日益增长,实时操作系统(RTOS)在数字信号处理器(DSP)中的移植与性能优化成为关键技术课题。DSP以其高效的数值计算能力和并行处理特性,广泛应用于通信、图像处理、工业控制等...

关键字: RTOS DSP
关闭