当前位置:首页 > 单片机 > 单片机
[导读]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评估板上调试通过。

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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭