DSP芯片基于SCl6C750B的RS232接口设计

dsp芯片基于scl6c750b的rs232接口设计
tms320c32是32位浮点dsp芯片,在数字信号处理和自动化领域得到了广泛应用;而rs232(eia232)是自动化控制领域中一种基本的串行异步通信规约。在开发基于tms320c32的热力系统测控装置时,采用scl6c750buart芯片扩展出实现rs232规约的通信串口。文章介绍此串口收发中断程序的设计和基于c语言的串口通信中断例程的有关问题。
关键词:tms320c32 sc16c750b rs232 uart dsp
引 言
美国ti(texas instruments)公司的系列dsp芯片采用哈佛结构、流水线操作、专用硬件乘法器、快速dsp指令,使其在数字信号处理、通信和工业自动化等领域得到广泛应用[1]。tms320c32是32位浮点处理器。它除了上述特点外,还具有增强型存储器接口、灵活的启动装载(boot loader)、可重定位的中断矢量表、灵活的中断方式和其他外设[2];其通信功能只包括片上集成的一个串口,但在设计中此串口一般被串行a/d或d/a芯片占用,或者被用于与另一片dsp芯片在“握手模式”(handshakemode)下直接连接[3]。
虽然tms320c32串口有多种工作方式[3,4],但通过串口相应的寄存器并不能直接配置出符合rs232标准的通信串口。而rs通信串口是自动化控制设备的一种基本通信方式,如pc机或其他各种基于微处理器的控制装置。rs232标准在1991年被标准化组织eia(electronicindustries association)重命名为eia232标准[5],是一种异步串行通信标准,包括机械连接、信号功能、电压特性和通信协议等几个方面的规定。
采用1片sc16c750b uart芯片[6]来完成tms320c32的rs232串口的设计。此uart最高的串行数据速率可达3 mbps,引脚与tll6c750兼容,并且具有64字节接收和发送fifos以及自动硬件流量功能。这些特征使串口通信更加高效、可靠。
1 tms320c32的rs232串口硬件设计
在基于微处理器开发的自动控制装置设计中,一般并不需要串行通信的长距离传输,故普遍采用“零-modem”方式(null-modem or zero-modem)实现一对异步串口连接。图1为一种“零-modem”连接方式(具体信号的意义可见rs232标准)。
由于rs232标准的异步通信规约数据帧都带起始位和停止位,并且sc16c750b uart芯片具有自动硬件流量控制功能,因此可以进一步忽略与modem相关的控制信号(dtr、dsr、cd、rts、cts),简化连接。
1.1 scl6c750b uart芯片
scl6c750b为异步串行通信芯片[6],带标准modem接口。它具有以下主要特点:
①标准异步错误位和帧格式位(起始位、停止位、奇偶校验位),并且帧格式可编程;
②软件可选择波特率;
③发送和接收各64字节fifos;
④发送、接收、线路状态等中断可独立控制,并且中断优先级可编程;
⑤独立的接收时钟;
⑥在5v工作电压下,发送或接收速率可达5mbps;
⑦自动硬件流量控制;
⑧4种可选择接收中断级别;
⑨标准modem接口;
⑩引脚与stl6c>t50/550、tll6c450/550、pc16c450/550,软件与scl6c750及tl16c750兼容。其他一些特点不再赘述。
scl6c750b主要引脚的功能如表1所列,更具体的资料可见文献[6]。
1.2硬件原理
硬件设计的总体思路:
①uart的地址被分配到tms320cc32的iostrb外部存储器空间,片选信号对应的地址即为uart的基地址。
②rxrdy、txrdy分别作为接收、发送中断信号,分别接c32的中断外部引脚int0、int1,并且c32的中断触发方式设为低电平触发。
③uart的tx、rx引脚均为cmos电平,而rs232采用的是“负逻辑电平”。本设计采用1片max3232[7]完成它们之间的电平转换和驱动,其数据传输速率最高达1 mbps,。
④使接收部分和发送部分的波特率相同,此时rclk接baudout引脚。
⑤外部参考时钟频率为1.8432 mhz。
1.3 uart扩展rs232串口原理
依据上面的整体思路设计出硬件电路,如图2所示。
图2中的端口信号,如数据和地址总线、复位信号、中断信号,完成与tms320c32之间的连接。本设计中片选信号对应tms320c32的iostrb空间中的0x810100h,即scl6c750b的内部寄存器的基地址。
2 tms320c32的rs232串口软件功能设计
串口工作模式控制和数据收发都是通过tms320c32对uart内部相关寄存器的读写操作来完成的。因此,首先分析一下scl6c750b片内寄存器的功能,然后确定在本设计中scl6c750b的工作模式,并且给出该串口的初始化程序、中断发送程序和中断接收程序。程序以c语言写成。
2.1 scl6c750b片内寄存器
表2给出scl6c7 150b内部寄存器的功能描述。寄存器各位意义可参见该芯片的数据手册。
2.2程序设计
首先初始化编程,以确定tms320c32与scl6c750b之间的操作方式、数据传输帧格式、scl6c750b自身的工作模式、数据传输波特率的设置等工作。设定:
①scl6c7 150b工作在dma模式0(dma mode o)。在此模式下,每当发送寄存器thr为空,txrdy信号会降为逻辑低电平。只要接收寄存器rhr被装载了一个字符,rxrdy会立刻降为逻辑低电平。
②tms320c32与scl6c750b uart之间的操作方式采用中断操作方式,中断方式相对于查询方式可以提高tms3320c32的工作效率。tms320c32的int0中断引脚接uart的rxrdy信号,int1接txrdy信号。这样,由int0、int1对应的中断服务例程完成数据的接收和发送。
③数据传输帧格式:数据字长8位、2位停止位、偶校验。
④设置波特率。
在rs232电平逻辑中,串行数据速率(serial data rate)就等于波特率(baud rate)。如果外部时钟频率(xtal1clock frequency)为1.8432 mhz、波特率19 200 bps时,对应的波特率除数(divisor)为6。
用c语言开发[8]tms320c32的串口通信程序。初始化程序如下:
#include
#include
//声明scl6c750b寄存器的结构
typedef struet{
unsigned rhr,//接收保持寄存器
unsigned thr#//发送保持寄存器
unsigned ier;//中断使能寄存器
unsigned fcr;//fifo控制寄存器
unsigned isr; //中断服务状态寄存器
unsigned lcr;//线路控制寄存器
unsigned mcr;//modem控制寄存器
unsigned lsr; //线路状态寄存器
unsigned msr;//modem状态寄存器
unsigned spr; //便笺寄存器
unsigned dll; //波特率除数低字节锁存器
unsigned dlm;//波特率除数高字节锁存器
}serialport;
//scl6c750b的寄存器基地址为0x810100h
serialport sd={
0x810100h,0x810100h,0x810101h,
0x810102h,0x810102h,0x810103h,
0x810104h.0x810105h, ox810106h
0x810107h 0x810100h,0x810101h
);
void main(void){

//波特率设置
outport(sp.lcr,0x80); //lcr[7]=0
outport(sp.dll,0x06); //波特率19 200 bps
outport(sp.dlm,0x00);
outport(sp.lcr,0xlf); //数据帧格式
outport(sd.fcr,0xal)} //dma mode 0
outport(sp.ier,0x07); //中断使能

}
//into中断服务例程——数据接收
unsigned char recvdata;
void c_int-1(void){
recvdata=inport(sp.rhr);

}
//int中断服务例程——数据发送
void c_int02(void){
outport(sp.thr,transdata);
;
}
3 结 论
tms320c32是一种高性价比的32位浮点dsp新片,但其通信功能相对较弱。采用sc16c750b uart芯片扩展tms320c32的rs232串行口,用于实际温度和压力测控装置中,经验证,数据通信可靠。

魅族16sPro高清图赏
实测 | 现在的5G网络用起来到底怎么样
是德Keysight MSOS804A示波器8GHz
使用UART与ZYBO进行通信常用外设设计方案
OpenAI强化内部安全流程,应对有害人工智能威胁
DSP芯片基于SCl6C750B的RS232接口设计
基于Proof Of Capacity的新型加密货币N介绍
5G频率进行筹集_德国新政府的“数字化战略目标”
外贸网站预算持续削减,这个轻量应用服务器搞定老板
芯片超人获得由国际电子商情颁发的年度杰出分销行业服务商奖
鸿蒙开源—加快华为生态生成!
4G门口的野蛮人:三星缘何重返电信设备业
马斯克敦促特斯拉员工降低交付成本
动力电池能量密度的全面解析
智能变电站的特征和优点
RFID技术助力自动化血库成功迭代,提速血液网的覆盖
安防必备,如何快速准确测出故障电缆的断点?
怎样选择优秀的PCBA工厂
三大运营商5G使能推进广州智慧白云建设
全球存储市场规模下降,容量规模上升,未来会如何发展?