当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]摘要: 在含有人机界面的数字化电源系统中, 为更好地发挥DSP 的强大运算功能, 可采用DSP+ 51 单片机的双CPU结构, 因而二者之间的可靠通信至关重要。在此介绍了TMS320F2812 型DS

摘要: 在含有人机界面的数字化电源系统中, 为更好地发挥DSP 的强大运算功能, 可采用DSP+ 51 单片机的双CPU结构, 因而二者之间的可靠通信至关重要。在此介绍了TMS320F2812 型DSP 和MCS51 系列单片机的一种通信方案的设计与实现, 给出对应的程序, 并描述在此通信基础上实现的液晶显示电路和结构。该系统具有硬件电路简单、通信可靠、程序编写简单、界面友好等优点。实验证明系统能完整可靠地实现了人机界面功能, 具有较高的实用价值。

0 引言

随着计算机和信息技术的飞速发展, 数字信号处理技术得到了迅速的发展。数字控制使得电力电子变换控制更为灵活, 在CPU 计算速度允许的情况下, 可实现模拟控制难以做到的复杂控制算法, 设计者可以根据自己的系统需求, 方便地更改控制器参数, 即便是在控制对象改变的情况下, 也无需对控制器硬件做修改, 只要改变某些软件参数即可, 从而大大增强了系统的兼容性。随着DSP 的应用逐渐普及, 用DSP 取代模拟电路中的专用PWM 集成电路, 已广泛应用于UPS 和逆变器控制中。

作为智能化设备, 液晶屏和键盘等人机交互装置是数字化电源系统所必不可少的。而DSP 的工作频率较高, 读写周期很短, 主要用于处理实时性要求苛刻、算法复杂的关键性任务, 例如对功率开关管的控制, 数据采集、分析、处理等, 而液晶显示和键盘扫描的任务可由普通的51 系列单片机来完成, 而DSP 和51 单片机间的数据交流可采用异步通信方式, 即系统采用双CPU结构。

1 系统的结构原理

本文中所采用的DSP 和单片机型号分别是T I 公司的T MS320F2812 和MCS51 系列。在系统中, DSP实现与单片机的串口异步通信, 单片机将用户的原始设置数据传输到DSP, 而DSP 将采集到的实时数据信息返回给单片机, 单片机不断刷新液晶的显示。系统的基本结构如图1 所示。

图1 系统基本结构框图

1. 1 串口介绍

本文中DSP 是基于串行通信接口模块SCI 实现通信的。SCI 支持CPU 与其他使用标准格式的异步外设之间的数据通信。SCI 仅需要2 根数据线进行数据传输, 虽然传输速度不快, 但已经能满足一般的通信要求,而且外围接口电路非常简单。传输的数据长度在一定范围内也是可变的。

MCS51 系列单片机内部具有一个全双工串行口,该串行口有4 种工作方式, 可以通过软件进行设置, 由片内定时/ 计数器产生波特率。串行口的接收和发送数据均可以触发中断, 并含有接收、发送缓冲器SBUF, 二者共用一个地址。

1. 2 单片机与DSP 的通信接口电路

SCI 接口分为RXD 和TXD 两个管脚, 传统的2 个设备异步通信采用RS 232 或RS 485 的形式, 须另配置对应的RS 232 和RS 485 驱动芯片。而本文所提及的采用双CPU 结构的数字化电源设备, DSP 和51 单片机位于同一设备内, 距离较短, 可省去RS 232 和RS 485驱动芯片, 采用2 个CPU 的RXD 和TXD 直接交叉连接即可。但需注意的是, 由于DSP 的工作电压为3. 3 V, 而MCS51 单片机的工作电压为5 V, 因此二者之间的通信电路需要进行电平转换, 如图2 所示。

图2 电平转换电路

在该电路中, 单片机的TXD 端电压高于DSP 的RXD 端, 故仅需要使用分压电路, 计算出合适的阻值即可满足要求, 而从DSP 向单片机传送数据时, 需要提升电平, 因而采用了光耦电路, 将电平提升到单片机的工作电平。这样就能以简单的电路实现电平的转换。需要注意的是, 所采用的光耦速率要高于数据传输速率,这样才能保证数据准确高效的传输, 以免出现数据丢失。

1. 3 单片机与DSP 通信的软件实现

在异步通信中必须先规定3 件事: 一是字符格式,即传输的每一帧数据的格式; 二是通信双方要设置为相同的波特率, 且该波特率能适应双方的时钟频率; 三是通信双方要有约定的通信协议, 也就是双方要互相确认后才能传输数据。

在本设计中, DSP 和单片机采用的数据帧格式是1 位起始位, 8 位数据位和1 位停止位。由于数据包采用校验和的方式进行校验, 因而在数据帧格式中没有设置奇偶校验位。因而MCS51 单片机应设置工作在串口方式1 状态下, 此时串行口为8 位异步通信接口。为了保证数据传输具有较高的速率, 同时又有比较低的传输误码率, 因而选择波特率为9600 b/ s。通过相应的波特率设置计算公式计算出DSP 和单片机的初始化时寄存器的初值, 即可完成设置。这样就保证了通信双方帧格式的统一和波特率的统一, 从而使数据通信正确、可靠[。

DSP 的串口初始化设置程序如下:

EALLOW;

GpioMuxReg s. GPGMUX. bit. SCIRXDB_GPIOG5 = 1;/ / 设置SCI??RX 引脚外设功能

GpioMuxReg s. GPGMUX. bit. SCIT XDB_GPIOG4 = 1;/ / 设置SCI??TX 引脚外设功能EDIS;

ScibRegs. SCICCR. all = 0x07; / / 1 位停止位, 无奇偶校验,8 位字符长度, 使用空闲线模式协议

ScibRegs. SCICTL1. all = 0x 03;/ / 使能发送和接收缓冲

ScibRegs. SCICTL2. all= 0x 02;/ / 使能RXRDY 中断, 禁止T XRDY 中断

ScibRegs. SCIPRI. all = 0x0000;/ / 禁止接收错误中断和休眠模式

ScibRegs. SCIH BAUD= 0x01;/ / LSPCLK = 37. 5 MH z, 波特率设为9 600 b/ s

ScibRegs. SCILBAUD = 0xE1; ??

ScibRegs. SCICTL1. all = 0x 0023;/ / 重新使能SCI

51 单片机串口初始化程序如下:

TMOD= 0x 21;/ / 定时器1 工作在方式2, 用于产生0 串口的波特率

SCON= 0x 50;/ / 串行口0 工作在方式1, 允许接收, 清标志位

TH 0= 0xfd; / / 晶振12 MH z, 设置波特率为9 600 b/ s

TH 1= 0xfd; PS= 1; / / 串口中断优先

PCON| = 0x 00; / / 波特率不加倍

TR1= 1;

在本设计中, 采用自己规定的通信协议, 首先DSP发送出握手信号, C51 收到握手信号后, 进入中断子程序, 判断握手信号是否正确, 若正确才握手成功, 开始接收数据包, 接收完成后对数据进行和校验, 正确后刷新液晶的显示数据存储区; 若错误则放弃本次数据, 并将接收数据存储区清零, 等待下一次通信。其程序流程图如图3 所示。

图3 DSP 和单片机的通信程序流程图

DSP 向单片机的定时发送程序如下:

ScibRegs. SCITXBUF = Sci_VarRx [ i] ;/ / 将数据包写入发送缓冲区

i+ + ; / / 依次发送数据包

if( i= = 12) i= 0; / / 重新计数

IER | = M_INT1; / / 清除中断标志位

EINT;

PieCtr lReg s. PIEACK. all = PIEACK_GROUP1;

51 单片机串口中断服务程序如下:

Rx0_Buffer[ Rx0_Ptr] = SBUF; / / 读取数据到接收数组

RI= 0; / / 清除接收标志位

Rx0_Ptr+ + ; / / 计数加1

Rx_flag= 1;

1. 4 单片机与液晶和键盘的接口

系统采用的是D6128× 4 图形点阵液晶显示器, 它主要由行驱动器/ 列驱动器及128×64 全点阵液晶显示器组成, 既可以完成图形显示, 也可以显示8×4 个( 16×16 点阵) 汉字。单片机与液晶模块和键盘的接口电路如图4所示。

图4 单片机与液晶和键盘的接口电路

单片机与液晶之间通过8 位数据线进行并口通信,将DSP 传来的实时数据传输到液晶显示器进行实时显示。对液晶驱动器的控制具体是通过各个内部寄存器和标志位的操作实现的, 单片机写入不同的控制字就能让液晶执行各种不同的功能。DG12864 是点阵型液晶, 它主要通过对点阵中各点的亮灭来显示不同的内容, 通过取模软件可以方便地获得汉字和英文符号等的字模, 将程序中所要用到的字模存储在特定的文件中,在程序中根据所要显示的内容调用相应的字模, 最终通过并口传输到液晶驱动器的显示RAM 区中实现显示。

图5 展示了系统实际运行时的界面

2 结 语

本文设计了TMS320F2812 和MCS51 单片机的串行异步通信接口, 并通过单片机实现驱动液晶的实时显示和键盘设置功能。经过实验, 证明本方案能够高效准确地实现了上述功能, 而且其硬件简单、操作方便。目前这种方案已经可靠地应用于智能充电器的人机界面模块中。

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

在电子显示技术领域,液晶显示(LCD)因其低功耗、高清晰度和长寿命等优点被广泛应用于各种设备中。为了驱动LCD,需要使用专门的接口技术来传输图像数据。其中,低压差分信号(LVDS)和迷你低压差分信号(MiniLVDS)是...

关键字: 电子显示 液晶显示 低压差分信号

今天,小编将在这篇文章中为大家带来数字信号处理器DSP的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: DSP 数字信号处理器

DSP的国产替代不会是一件很容易的事情,但受到当前国际竞争态势的影响,本土开发者亟需拥有降本优势、供应链安全保证,以及能协助打造极高竞争力产品的DSP芯片。也就是说,发展国产DSP是不二选择。

关键字: DSP

嵌入式处理器是一种特殊的计算机处理器,它被设计用于嵌入到各种设备和系统中,以实现特定的功能。由于其低功耗、高性能和可靠性等特点,嵌入式处理器在许多领域都有广泛的应用,如汽车电子、工业控制、医疗设备等。本文将对嵌入式处理器...

关键字: 嵌入式处理器 嵌入式系统

将DSP和单片机构成双CPU处理器平台,可以充分利用DSP对大容量数据和复杂算法的处理能力,以及单片机接口的控制能力。而DSP与单片机之间快速正确的通信是构建双CPU处理器的关键问题。

关键字: 单片机 spi通信 DSP

随着科技的不断发展,微控制器(MCU)和数字信号处理器(DSP)已经成为了电子行业中不可或缺的重要组成部分。它们在各种电子设备中发挥着关键作用,如智能手机、平板电脑、家用电器等。然而,尽管它们都是用于处理数字信号的集成电...

关键字: MCU DSP 数字信号处理器 微控制器

2023年10月10日, [恩智浦创新技术论坛] 在深圳湾万丽酒店举行,众多工业、物联网、新能源和医疗等行业的企业出席论坛,深入交流市场趋势与行业洞察,一同讨论如何协同面对市场的机遇与挑战,共同促进未来市场的发展。米尔电...

关键字: NXP 嵌入式处理器

随着环境保护和能源可持续性的日益关注,电动汽车作为一种清洁、高效的交通工具逐渐成为全球汽车行业的热点。与传统的内燃机驱动汽车相比,电动汽车具有零排放、低噪音和高能量利用效率等显著优势。

关键字: DSP 芯片 混合动力汽车

在平常的日常生活中,噪声总是不可避免的。每个人承受噪声的能力也不尽相同,喜欢安静的人需要一些降噪措施,降噪耳机应运而生,甚至都能算得上是城市生活的必备品了

关键字: 主动降噪 DSP ANC

北京2023年9月22日 /美通社/ -- 华为全联接大会2023期间,华为举办了"昇思MindSpore AI框架:引领大模型&科学智能原生创新"主题论坛,软通动力数字化创新服务线高级副总裁...

关键字: DSP AI 模型 开源
关闭
关闭