当前位置:首页 > 电源 > 数字电源
[导读]DSP由于具有高性能和灵活可编程的优点而得到广泛的应用。

  摘要:DSP由于具有高性能和灵活可编程的优点而得到广泛的应用。文章给出了用PC机作主机,DSP作从机来实现DSP与PC机间有效、可靠通讯的实现方法。同时通过一个数据传输程序的例子来详细阐述如何使用VB6.0专业版作为开发工具,并利用DSP中的SCI(Serial Communication Interface)模块来实现DSP与微机间的数据传递方法。

    关键词:DSP;串口通信接口;PC机;TMS320C24X

1 引言

TMS320C24x是美国TI(德州仪器)公司专为电机控制(DMC)应用而推出的一种低价格、高性能16位定点运算DSP。该器件将高性能的DSP内核和丰富的微控制器外设功能集于一身,从而为控制系统应用提供了一种理想的解决方案。TMS320C24x的串行通信接口(SCI)支持CPU与其它采用标准NRZ(不归零)格式的异步外设间的数字通信。异步模式使用两条线来与诸如采用RS-232-C格式的终端和打印机等众多标准器件进行连接,因此,利用DSP中的SCI模块来与微机间的指令和数据传递便可实现微机对生产现场的检测和控制。

VB6.0是运行于Windows上的交互式可视化集成开发环境,利用其强大的通讯控件(Microsoft Comm ActiveX Control6.0)可方便地实现PC机与DSP间的通信。

2 DSP部分

该DSP控制器的串行通讯接口由发送和接收两大部分组成,其与串行通讯相关的引脚如下:

SCIRXD:串行通讯接收引脚,也可用作普通I/O端口。

SCITXD:串行通讯发送端,也可用作普通I/O。

该DSP的系统时钟由SYSCLK设定,其中SYSCLK为CPUCLK/2?CPUCLK为20MHz。

通过TMS320C24x中的一个16位波特率选择器可获得超过65000种不同的可编程波特率。波特率的设置与SCIHBAUD和SCILBAUD有关,其具体算式如下:

BRR=SYSCLK/(SCI异步波特率×8)-1,

其中SYSCLK为10MHz。本软件采用9600的波特率。可编程数据字长从1位到8位,并可由SCICCR控制寄存器来编程数据格式。本软件采用8位数据字长。PC与DSP的通讯采用中断方式,可避免DSP的CPU反复查询接收与发送缓冲区满标志,从而提高设备利用率,保证其具有足够的实时性。相应的中断设置可由SCICTL2来完成。

串行通讯接口数据无论是接收还是发送,都采用NRZ(不归零)格式。本软件采用8位数据为一帧(一个接收和发送的单位)的格式。

在串行口初始化完成后,只需对数据发送缓冲器SCITXBUF和数据接收缓冲器SCIRXBUF进行操作即可。如果要发送数据,无论何时,只要把数据写入到SCITXBUF就会产生发送中断。而加入起始位、停止位、校检位数据以及在波特率规定的节拍下移位到发送引脚SCITXD/IO等工作则可由串行通讯SCI模块本身来完成。如果要接收数据,只要DSP接收到完整的帧就会产生中断,然后只要在中断程序中把SCIRXBUF的内容读出即可,因为对于引脚SCIRXD/IO移位来的信息,串行通讯SCI模块本身即可自动去掉起始位、停止位和校检位,然后将数据放到SCIRXBUF中。

对于单机通信,可不使用SLEEP设置,而使用空闲线多处理机模式,并采用中断方式在主程序中完成初始化。同时可设置一个变量用于辨别是否给PC机发数据。

接下来应考虑中断接收子程序里从PC机送来的信号(PC机要先将DSP中需要的电机参数转换成定点数1.15、4.12、8.8、10.4等格式)。在发送子程序里,应由DSP将得到的数据回送给PC机并由PC机将定点数转换成电机参数并显示。当然,DSP也可以将内部某指定地址开始的数据传给PC机,然后由PC机按给定格式转换并处理。DSP程序流程图如图1所示。

有关SCI初始化的部分程序如下:

.bss SEND,1 ;向微机发送数据的标志

LDP #00E0h

SPLK #0017h?SCICCR ;SCI复位,传输数据长度8位

SPLK #0013h?SCICTL1 ;串行输入、输出使能

SPLK #0003h?SCICTL2 ;串行输入、输出中断使能

SPLK #0000h?SCIHBAUD

SPLK #0082h?SCILBAUD;波特率9600

SPLK #0022h?SCIPC2 ;定义引脚SCITXD和SCIRXD为功能引脚

SPLK #0033h?SCICTL1; 串行输入、输出工作

………………………………

3 VB部分

利用VB6.0专业版提供的功能强大的Active X控件MSCOMM可实现微机与DSP的通信,实际上,在VB中,串行通讯端口所传送的数据使用的是BYTE字节型数组变量,可将装载数据的数组转换为Variant型进行传输。同理?接收数据时要将数据赋给Variant型变量再进行处理。BYTE型表示数据类型为整型?范围为:0~255。Variant型是变体变量,可以是任意数据类型。同时需设置一个变量(标志变量)以用于辨别是否要求DSP发送数据给PC。

图3

    由于本软件所用的DSP为定点格式,字长为16位,因此,本系统不能直接表示浮点数。而应进行格式转换。

限于篇幅,具体转换模块可参见程序中Fun8.bas.VB部分,程序流程图如图2所示,人机界面如图3所示。操作时,单击‘发送’按钮可向DSP发送数据,单击“验证”按钮则可接收DSP发送来的数据。

4 结论

利用DSP的串行通信接口?SCI?和功能强大的面向对象的开发工具VB6.0专业版?可以方便地实现DSP与PC机间的单机或多机串行通信。本文所涉及的软件已在PC机和TMS320F240评估板上调试通过。

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

根据蓄电池分级恒流充电的要求,给出一种基于DSP、变参数积分分离PI 控制的新型蓄电池恒流充电电源的设计方案。介绍了电源的系统结构、工作原理、控制策略及软件设计。

关键字: 蓄电池 DSP 变参数积分

业内消息,此前有消息称华为将发布一款擎云 W515x “PC 新品”,该机将首发 8 核 12 线程麒麟 9000C 处理器,目前相关产品具体规格信息已经现身华为官网。

关键字: 华为 PC 麒麟9000C 处理器

上海2024年5月15日 /美通社/ -- 由生成式人工智能(AI)驱动的临床阶段生物医药科技公司英矽智能宣布,与复星医药(600196.SH;02196.HK)合作开发的潜在"全球首创"候选药物IS...

关键字: ISM BSP PC 人工智能

利用数控机床进行机测时可以通过机床本体与测头来完成。

关键字: DSP 数控机床

加利福尼亚州圣克拉拉市—2024年4月30日―AMD(NASDAQ: AMD)今日公布2024年第一季度营业额达55亿美元,毛利率为47%,经营收入3600万美元,净收入1.23亿美元,摊薄后每股收益为0.07美元。基于...

关键字: 嵌入式 PC 人工智能

数字信号处理器(DSP)在通信、控制、图像处理等多个领域扮演着越来越重要的角色。TMS320F2808PZA作为德州仪器(Texas Instruments)推出的一款高性能DSP控制器,其独特的架构和强大的功能使其在众...

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

2024年4月18日,国民技术第四代可信计算芯片NS350 v32/v33系列产品正式发布并开始量产供货。NS350 v32/v33是一款高安全、高性能、超值可信密码模块2.0 (TCM 2.0)安全芯片,适用于PC、服...

关键字: PC 服务器平台 嵌入式系统

从世界上第一颗DSP诞生至今30年来,国际一线老牌芯片厂商长期占据领先技术和市场地位,国内芯片厂商在DSP上的声量很小。然而经过了6年的沉心打磨之后,湖南进芯电子开始在这一领域崭露头角。凭借着更贴近中国本土特色的差异化产...

关键字: DSP MCU 电机控制 进芯电子

交换机,作为现代信息技术基础设施的关键组件,在计算机网络架构中占据着核心地位。它是数据通信和信息交换的重要枢纽,负责在局域网(Local Area Network, LAN)内部实现设备间高速、智能的数据传输与连接管理。...

关键字: 交换机 数据通讯

4月1日消息,戴尔在中国的PC销量持续下滑(份额已被华为超越),这迫使他们不得不采取更多的裁员措施。

关键字: 戴尔 PC 计算机
关闭
关闭