0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于TMS320F2812和MAX3160收发器实现串行通信接口电路的设计

电子设计 来源:国外电子元器件 作者:曹军军;陈小勤;吴 2021-05-19 17:12 次阅读

作者:曹军军;陈小勤;吴超

引言

目前,微控制器系统在国民经济和人民生活中得到了广泛的运用,而数据传输业仍是一个很重要的领域。对于这些与计算机相距不远的人-机交换设备和串行存储的外部设备(如终端、打印机、逻辑分析仪、磁盘等)来说,采用串行通讯方式交换数据已非常普通。

在以往DSP与PC之间的串行通信中,由于运行速度的差异和上下位机之间编程软件的限制,系统的实时性一般较差。本文针对这些问题,从硬件和软件两个方面探讨了TMS320F2812与PC的通信方案,介绍该方案的串行通信接口电路和采用中断与查询方法实现数据通信的软件流程。

1 串行通信的硬件接口电路

TMS320F2812的SCI和以往的DSP的SCI相比具有两个特点:一是传送、接收都具有独立的FIFO;二是波特率可以自动检测。自动波特率检测逻辑主要解决通信过程中终端波特率的确定问题。而其16字的FIFO可大大减少通信中断次数,提高通信速率。TMS320F2812的SCI有4个外部引脚:SCIRX、DA、SCITXDA、SCIRXDB、SCITXDB,不作通讯时,这些引脚可以用作通用I/O。SCI有一个16位的波特率选择寄存器,通过改变寄存器的值可以得到多于65000种的波特率。

本设计选用Maxim公司生产的MAX3160型收发器,它是一种可编程的多协议收发器,能支持RS-232/RS-485/RS-422等传送方式。

MAX3160的引脚RS-485/RS-232用于选择工作在RS-422/RS-485还是RS-232接口标准;引脚HDPLX用于选择是RS-422还是RS-485;引脚FAST用于控制信号转换率;引脚DE485用于控制RS-422/RS-485方式时发送器是否使能,以及RS-485和RS-232方式时的RTS信号复用。图1中的电路使用的MAX3160的RS-232方式,所以要将11脚RS-485/RS-232与此12脚HDPLC置为低电平。

本设计将这些控制引脚集成在一个寄存器UART_SCI中,并将这个寄存器映射在TMS320F 2812电路Zone1上的0X4010存储单元中,该寄存器各位的定义如图2所示。TMS320F2812可通过该寄存器对MAX3160进行操作。

2 串行通信软件包实现

设计TMS320F2812串行通信软件可采用查询和中断两种方式。本设计中,发送数据采用的是查询方式,接收数据采用的是中断方式。

2.1 SCI的初台化

TMS320F2812的2个SCI总共包括26个寄存器,其中控制寄存器有SCICCR、SCIPRI、SCICTL1和SCICTL2;设备波特率的寄存器有SCIHBAUD和SCILBAUD;状态寄存器有SCIRXST;缓冲寄存器有SCIRXEMU、SCIRXBUF和SCITXBUF;另外还有TMS320F2812的SCI独有的FIFO寄存器SCIFFTX、SCIFFRX和SCIFFCT。在程序的开始应先对其中一些寄存器进行初始化。

SCI的初始化程序如下:

#include “DSP28_Device.h”

unsigned int * UART_SCI=(unsigned int *)0x4010;

void InitSci(void)

{ *UART_SCI=0x44; //设定MAX3160为RS-232的工作方式

EALLOW;

GpioMuxRegs.GPFMUX.all=0x0030;

EDIS;

SciaRegs.SCICCR.all=0x07;//将传输数据长度设为8位

SciaRegs.SCICTL1.all=0x03;//启动发送和接收

SciaRegs.SCICTL2.all=0x03;//允许RXRDY/BRKDT和TXRDY中断

SicaRegs.SCIHBAUD=0x00;

SicaRegs.SCILBAUD=0xF3;//设置传输的波特率为

SicaRegs.SCICTL1.all=0x23;//寄存器已设置好,将SW RESET置1,启动发送和接收

PieCtrl.PIEIER9.bit.INTx1=1;/启动中断

PieCtr1.PIEIER9.bit.INTX2=1;

}

2.2 数据的发送与接收

数据发送采用查询方式,其流程图如图3所示。数据的接收采用中断方式,其流程如图4所示。SCIATX_Ready是寄存器SCICTL2的发送就绪位,Send_Flag是TMS320F2812设置的一个发送标志。SCIARX_Ready是寄存器SCIRXST的准备就绪位。SCIA的接收中断为INT9.1,发送中断为INT9.2;而SCIB的接收中断为INT9.3,发送中断为INT9.4。本设计方案只使用SCIA的接收中断INT9.1。在中断服务子程序中,通过检查外设中断向量寄存器的值可转入相应的接收中断处理程序。

3 结论

本通信方案已应用于某上位机控制数据采集卡的运行中,结果表明是可行的。该方案虽然具有硬件电路简单、实施容易等特点,但由于受RS-232/485/422串行通讯的限制,因而只能用于短距离的数据发送与接收。此外,TI公司的TMS320F/C2XX系列DSP具有相同的串行通信模块,因此本设计方案也适用于其他的TMS320F/C2xx系列DSP器件。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7505

    浏览量

    151150
  • 收发器
    +关注

    关注

    10

    文章

    3404

    浏览量

    105903
  • 接口
    +关注

    关注

    33

    文章

    8537

    浏览量

    150907
收藏 人收藏

    评论

    相关推荐

    串行数模转换器TLC5620I与TMS320F2812接口设计

    8位电压输出数字一模拟转换TLC5620I,并给出TLC5620I与TMS320F2812串口接口的软、硬件设计实现方法。2 TMS320F281
    发表于 12-06 10:20

    TMS320F2812原理与开发

    TMS320F2812本书介绍了TMS320F2812芯片的基本特点,硬件结构,内部功能模块的基本原理等内容,并在结合应用实例的基础上详细阐述了各功能模块的应用。
    发表于 01-06 12:17 9次下载
    <b class='flag-5'>TMS320F2812</b>原理与开发

    基于TMS320F2812与LabVIEW的串口通信

    介绍利用TMS320F2812 数字信号处理(DSP)的串行通信模块实现与外设间串行
    发表于 03-23 08:52 42次下载

    可编程多协议收发器MAX3160的原理与应用

    MAX3160是MAXIM公司推出的可编程多协议收发器件,通过对其管脚的编程控制可实现双收双发RS-232接口或单路RS485/422收发
    发表于 04-29 14:36 96次下载

    并行模数转换ADS8364与TMS320F2812接口

    介绍了模数转换ADS8364 的性能和工作原理,给出了ADS8364 与DSP 芯片TMS320F2812接口设计方案,包括硬件电路设计和软件编程代码。关键词:ADS8364;
    发表于 09-01 08:45 40次下载

    基于TMS320F2812的磁控电抗的设计

    提出了基于TMS320F2812的磁控电抗的新型动态无功补偿方案。介绍了TMS320F2812的特点和磁控电抗的原理,给出了基于TMS320F2
    发表于 07-26 17:51 30次下载

    TMS320F2812慢速外设接口的时序控制

    TMS320F2812慢速外设接口的时序控制 TMS320F2812通常能够实现与常用外围芯片的时序匹配,如RAM、D/A等;但是,当遇到读、写周期十分缓慢的输入/输出设
    发表于 09-27 16:33 2765次阅读
    <b class='flag-5'>TMS320F2812</b>慢速外设<b class='flag-5'>接口</b>的时序控制

    串行数模转换器TLC5620I与TMS320F2812接口

    串行数模转换器TLC5620I与TMS320F2812接口设计  1 引言   近年来,数字信号处理(DSP)的应用越来越广泛,其中TMS3
    发表于 02-01 10:52 2520次阅读
    <b class='flag-5'>串行数模转换器</b>TLC5620I与<b class='flag-5'>TMS320F2812</b><b class='flag-5'>接口</b>设

    基于TMS320F2812的SPI接口设计方案

    基于TMS320F2812的SPI接口设计方案 摘要:为了使控制系统的参数能够在掉电之前保存下来,提出一种SPI模块与25LC040芯片的接口设计方法,介绍了DSP芯片TMS320F2812
    发表于 04-23 14:51 2568次阅读
    基于<b class='flag-5'>TMS320F2812</b>的SPI<b class='flag-5'>接口</b>设计方案

    TMS320F2812原理图

    TMS320F2812原理图:
    发表于 02-17 16:45 616次下载
    <b class='flag-5'>TMS320F2812</b>原理图

    SVPWM在TMS320F2812上的实现

    SVPWM在TMS320F2812上的实现
    发表于 04-13 15:42 14次下载

    基于TMS320F2812的SVPWM控制

    基于TMS320F2812的SVPWM控制。
    发表于 04-18 10:46 26次下载

    基于TMS320F2812的SVPWM算法分析与实现

    基于TMS320F2812的SVPWM算法分析与实现
    发表于 04-18 10:46 15次下载

    TMS320F2812

    TMS320F2812,DSP技术手册。
    发表于 03-04 17:49 29次下载

    TMS320F2812智能接口板设计解析

    随着电子技术的发展,数字电路的集成度和性能有了非常大的提高,因此可以在单板上实现复杂的电路功能,本设计就是在TI公司高集成度的TMS320F2812处理
    发表于 10-31 11:15 4次下载
    <b class='flag-5'>TMS320F2812</b>智能<b class='flag-5'>接口</b>板设计解析