SHX-DSP2407A 学习板用户手册img06.b2b.hc360.com/pic-6/handbook-pic-0/6-0-1708160.pdf · 2009....
Transcript of SHX-DSP2407A 学习板用户手册img06.b2b.hc360.com/pic-6/handbook-pic-0/6-0-1708160.pdf · 2009....
北京三恒星科技公司 http//www.sanhengxing.com
- 1 -
SHX-DSP2407A 学习板学习板学习板学习板用户手册用户手册用户手册用户手册
在使用 SHX-DSP2407A 学习板之前,请务必仔细阅读使用说明。在了解学习板的操作步骤并安装了相
关应用软件后,才可以上电进行相关实验。
1....产品简介产品简介产品简介产品简介
1.1 SHX-DSP2407A 学习板学习板学习板学习板开发板开发板开发板开发板系统简介系统简介系统简介系统简介
SHX-DSP2407A学习板开发板平台由核心板和扩展板组成,。该版本功能更多、接口更丰富。
本套件是一套基于TMS320LF2407A DSP 的学习开发平台,将2407 的功能发挥的淋漓尽致,用户手
册详实易懂,是初学者学习2407 的首选之品。
北京三恒星科技公司 http//www.sanhengxing.com
- 2 -
1.2. 系统资源系统资源系统资源系统资源
DSP 处理器TMS320LF2407A ,最高工作频率40MHz;
DSP 芯片内置2.5k 字SRAM;
DSP 芯片内置32k 字FLASH;
外扩32k×16bit 的程序RAM,32k×16bit 的数据RAM;
监视用LED 发光管一个;
DSP 所有功能引脚引出,120pin;
程序、数据、IO 均能独立寻址64k;
I/O 输入输出模块――按键控制4 个LED;;
SCI 模块――RS232 通讯接口电路;
SPI_DA 模块――4 路8 位串行D/A 输出;
A/D 转换模块――2 路10 位A/D 采样(可扩展到16 路);
CAN 模块――CAN 总线收发器;
PWM 模块――PWM 控制微型直流电机正反转;
步进电机支持(选配)
LCD 模块――T6963(选配)等液晶接口引出;
1.3 扩展接口扩展接口扩展接口扩展接口
IEEE 1149.1 标准JTAG 接口;
120pin 全部功能引脚引出,用户可以扩展使用;
RS232 标准DB9 接口插座;
4 路D/A输出接口插座;
2 路A/D 输出接口插座;
CAN 总线接口插座;
电机接口:支持直流电机、步进电机(选配);
LCD 接口:支持T6963(选配);
1.4 代码及实验项目代码及实验项目代码及实验项目代码及实验项目
1.外部RAM 测试程序实验;
2.定时器控制LED 程序实验;
3.按键与走马灯控制程序实验;
4. SCI 串口通讯实验;
5. SPI 接口的D/A 实验;
6. A/D 采样实验;
7. CAN 总线通讯实验;
8. PWM 电机控制实验;
9. 步进电机控制实验(选配);;;
10. T6963 显示控制实验(选配);
以上项目均提供C 语言版本的程序源代码,其中实验2 同时提供c 与asm 版本。
北京三恒星科技公司 http//www.sanhengxing.com
- 3 -
1.5 相关资料相关资料相关资料相关资料
1. 完整的原理图(pdf 格式),快速掌握多项实用技术的具体应用;
2. 在线烧写 FLASH 的方法与工具,用以固化用户自己的程序;
3. 用户手册:非常详细,包含电路分析、代码介绍、 CCS2000 快速入门指导等;
4. 芯片手册:开发板上全部芯片的芯片资料;
5. 送原版TI DSP 开发环境CCS for C2000、CCS2.x for 5000;
6. 送仿真器驱动及其他DSP 相关学习资料。
1.6 典型应用典型应用典型应用典型应用
教学应用、工业自动化控制、UPS、电机控制、机器人;
变频控制、汽车、机械、磁盘驱动、数字滤波;
振动分析、交流伺服、直流电机控制等。
1.7 相关配件相关配件相关配件相关配件
1、 直流电机;
2、 +5V 直流稳压电源;
3、配套光盘;
2....学习之前的准备工作学习之前的准备工作学习之前的准备工作学习之前的准备工作
2.1 硬件准备硬件准备硬件准备硬件准备
在学习之前您首先应该确认您的学习所必须的硬件都已齐备,这主要包括SHX-DSP2407A开发板、DSP
仿真器和一台调试仿真用的PC。
(1)SHX-DSP2407A学习板开发板开发板
2407 开发板;
+5V 直流稳压电源;
串口直连线;
直流电机(随板);
步进电机(如果购买);
128*64 图形液晶(如果购买);
(2)DSP 仿真器
口仿真器和USB接口仿真器都可以,我们也都有这两种型号的仿真器,如果需要请和我们联系。
并口仿真器
一般包括仿真器、直流稳压电源、并口连接线和14Pin 标准JTAG 调试连线。
USB 接口仿真器
一般包括仿真器、USB连接线和14Pin 标准JTAG 调试连线。
(3) PC(计算机)
北京三恒星科技公司 http//www.sanhengxing.com
- 4 -
需要有一定的磁盘空间。
(4) 硬件安装注意
将仿真器与PC的并口或USB口相连,仿真头插在板子上。
请注意正确连接14 针的JTAG 电缆,该电缆接错可能会导致仿真器或目标系统永久损坏。切忌在开
发板和仿真器有电的情况下,进行插拔操作。一定关闭电源再连接插拔电缆!
2.2 软件准备软件准备软件准备软件准备
(1)DSP 开发环境
CCS 2.2 FOR C2000。通常我们随盘赠送,仅供学习之用。
(2)仿真器驱动程序
根据您的仿真器的不同而不同,请咨询您的仿真器供应商。
如果购买我们的仿真器,我们的并口仿真器和USB接口均提供相应的驱动程序及DSP
仿真器用户手册。
(3) 试验代码
从上到下的代码依次为:
外部RAM 测试程序实验;
定时器控制LED 程序实验ASM 版本;
定时器控制LED 程序实验C 语言版本;
按键与走马灯控制程序实验;
SCI 串口通讯实验;
SPI 接口的D/A 实验;
A/D 采样实验;
CAN 总线通讯实验;
PWM 电机控制实验;
中断向量表代码;
如果您另外付费购买了步进电机、图形液晶和字符液晶,则还应该有以下代码。
从上到下的代码依次为:
步进电机控制实验(选配);;
T6963 显示控制实验(选配);
注 意:光盘代码应该备份到硬盘,同时将文件夹的只读属性去掉!!!如果条件
允许,
整个光盘最好都备份一下,避免长期使用造成损坏。
(4) 软件安装步骤
很多用户咨询这个问题,因此在这里简单说一下,避免大家走弯路和出现不必要的麻
烦。安装要遵循一定的次序。
A. 安装CCS for C2000
通常安装在C 盘,建议目录为C:\TI2000,这样您在将来使用和安装TI5000、TI6000
软件时不容易造成混乱。
B. 安装仿真器驱动
注意:要与CCS 安装在同一目录,如:C:\TI2000。
C. 设置CCS
这样之后就可以运行CCS 进行学习了。
北京三恒星科技公司 http//www.sanhengxing.com
- 5 -
3....软件安装及设置软件安装及设置软件安装及设置软件安装及设置
3.1 安装安装安装安装 CCS 2.2 for C2000
TMS320LF2407A DSP 的软件开发环境为TI 公司的CCS 或CC2000;本手册中只针对CCS2.2 for 2000
进行简单描述,关于详细用法请参考相关手册或书籍等资料。运行光盘中CCS_v2.2_full_for_C2000 目
录下的CCS 软件的setup.exe,按提示操作,即可完成CCS 的安装,安装后会在桌面产生相应图标。详
细步骤在此不再赘述。
3.2 安装仿真器驱动安装仿真器驱动安装仿真器驱动安装仿真器驱动
购买其他厂家的仿真器,请参照其提供的相关文档或直接咨询对方。
购买开发板之家的仿真器,请参照运行仿真器驱动\C2000 目录下的驱动程序子目录
下SetupCCS2000_v22002_this.exe,按照提示依次操作即可。
注意:安装目录设置应与CCS 软件安装目录相同。
安装后会在桌面产生相应图标。
CCS 与仿真器驱动安装后会在桌面生成三个图标。
安装结束重新启动计算机。
北京三恒星科技公司 http//www.sanhengxing.com
- 6 -
3.3 设置设置设置设置 CCS
3.3.1 使用并口仿真器设置 CCS
(1) 双击桌面上的Setup CCS 2 (C2000);
(2) 点击Close 图标,关掉下面的窗口;
(3) 点击光标处Install a Device driver;
注意:左边只能有一个目标平台,有其他的必须删掉。如下边红色箭头所示:
(4) 如果是开发C2XX,F24X,LF24XX,选择sdgo2xx.dvr 打开,如果是开发F28X,则打开
sdgo28x.dvr;
北京三恒星科技公司 http//www.sanhengxing.com
- 7 -
(1) 点击OK;
(2) 双击Availeble Board 里的sdgo2xx.dvr;
北京三恒星科技公司 http//www.sanhengxing.com
- 8 -
(3) 点击 Next;
(4) 根据计算机CMOS 里的并口设置修改I/O port,一般为378H;
北京三恒星科技公司 http//www.sanhengxing.com
- 9 -
(5) 修改后点击Next;
(6) 如果系统是单DSP,请点击Add Single 一次,如果是多DSP,则点击相应次数。
通常我们都使用1 个DSP;
北京三恒星科技公司 http//www.sanhengxing.com
- 10 -
(7) 关掉此配置图,点击下图的finish;
(8) 出现如下画面
北京三恒星科技公司 http//www.sanhengxing.com
- 11 -
(9) 保存此设置,点击下图的是(Y);
(10) 此时应确认开发板和仿真器连接正确,并且都已正常上电;
(11) 双击桌面图标SDConfig,以次来测试并口仿真器的正确性;
(12) 点击378,同时点中Emu; Default 下,Name of hardware 为XDS510PP,Emulator
port 根据计算机CMOS 并口设置决定,保险起见可以先设为SPP 模式;
北京三恒星科技公司 http//www.sanhengxing.com
- 12 -
(13) 保存配置;
(14) 点击图标R,如果出现**Emulator is reset,说明仿真器复位成功;
点击带红色的对勾的Emulator Test(红色R 左侧的按钮),应该提示发现JTAG 设
北京三恒星科技公司 http//www.sanhengxing.com
- 13 -
备信息,说明仿真器和CCS 的设置都是正确的。
这些均正常,说明仿真器是好的。如果有问题,请检查仿真器的好坏或者驱动装
的路径是否正确或者驱动是否与仿真器配套。
(15) 双击CCS 图标,出现调试界面,可以进行调试了。
说明:在以下任何一种情况下,都可能造成无法正常的进入ccs。
(1) 板子本身的JTAG 或者复位电路,或者dsp 最小系统 异常。我们提供给用户的板子这
些可能性较小,但是如果是您自己设计或者焊接的板子,这方面的可能性较大。
(2) 仿真器异常,仿真器驱动安装路径问题,仿真器与计算机间的插座 或者仿真器与用
户板之间的插座连接不好或者松动。这种情况出现的可能性比较多。
(3) 操作系统混乱,造成没有安装好驱动。如果是并口仿真器,这种可能性也不大。但是
对于USB 接口仿真器这种可能性非常大。
(4) 一般如果在设备管理器中无法找到该USB 接口仿真器设备,或者设备管理器根本就打
不开,请重新启动计算机。一些异常情况,都可以通过重新启动计算机这一最基本最
简单的办法得到解决。
3.3.2 使用 USB 接口仿真器设置 CCS
(1) 双击桌面上的Setup CCS 2 (C2000);
(2) 选择F2407 XDS510 mulator ,点击import。
北京三恒星科技公司 http//www.sanhengxing.com
- 14 -
(3) 出现如下图片,如果“最左边一栏”,除了f2407 XDS510 mulator 以外还有其他与
之并列的其他选项,则将其删除干净。
(4) 选中“最左边一栏的f2407 XDS510 mulator”点击右键,修改其属性;
(5) 在板子属性中,Board Name & Data File 项目下选择Auto-generate board data
file with extra configuration file;然后指定你安装目录下的blackhawk.cfg
文件。该文件已经在安装USB 仿真器驱动时由安装盘拷贝到了您的安装目录下的
指定位置。如果使用的是其他厂家的USB 接口仿真器,请参照其提供的用户手册
北京三恒星科技公司 http//www.sanhengxing.com
- 15 -
进行操作或直接咨询对方。
(6) 然后口地址选择0。
(7) 如果系统是单DSP,请点击Add Single 一次,如果是多DSP,则点击相应次数。
通常我们都使用1 个DSP;
北京三恒星科技公司 http//www.sanhengxing.com
- 16 -
(8) 然后会自动显示如下gel 文件的定位,如果没有显示,请找到相应位置进行选择;
(9) 点击Finish;
(10) 保存配置,然后可以运行CCS 进行调试了。
(11) 如果不能进入CCS 调试状态,请检查设置或仿真器是否为好的。
北京三恒星科技公司 http//www.sanhengxing.com
- 17 -
3.4 CCS 软件简介软件简介软件简介软件简介
3.4.1 建立或打开一个 PROJECT 工程文件
首先新建一个文件夹目录。
点击FILES->NEW->SOURCEFILE,编写一个CMD 文件,后缀名为.cmd ,并保存在本目录下;
用户也可拷贝我们所提供的软件中的CMD 文件到本目录下。推荐拷贝,然后根据自己的需要
更改。
用户自己编写或者拷贝F2407REGS.H 文件到目录下,如用到C 程序则还需要拷贝我们编
写的Lf2407a.h 文件。推荐拷贝,用户也可自行删减更改。
同样的方法编写.ASM 文件或者.C 文件。
然后点击PROJECT->NEW,建立一个工程文件。
然后PROJECT->ADD FILES TO PROJECT ,将上述文件分别添加到该工程文件集合中。
完成后,用户即可编译,调试仿真。
打开一个工程文件:PROJECT->OPEN
打开一个普通文件:FILES->OPEN
强烈建议用户使用我们提供的现成的工程文件,在这个工程文件基础上进行文件的增加
和删除,这样可以避免由于设置不当带来的问题。
3.4.2 CMD 文件设置
下面针对一个具体的cmd 定义文件进行注释讲解。
/*文件名dsp.cmd*/
-stack 160
-o ex.out /*ex.out 为即将生成的代码文件*/
-m ex.map /*ex.map 为存储器映射文件*/
Main.obj Define.obj /*由数个.obj 文件生成.out 文件*/
-l rts2xx.lib /*函数库*/
MEMORY
{
PAGE 0: VECS: origin = 0x8000, length 0x040
/*仿真请如上定义,如需产生准备烧写的文件,请将 0x8000 改为 0x0000*/
PAGE 0: PROG: origin = 0x8800, length 0x6000
/*仿真请如上定义,如需产生准备烧写的文件,请将0x8800 改为0x0060 起始。
警告:千万不要定义在0x0043 之前,因为此处为存放密码处。否则DSP 的FLASH 将
无法继续使用*/
PAGE 1: B0 : origin = 0x200, length 0x100
PAGE 1: B1 : origin = 0x300, length 0x100
PAGE 1: DATA: origin = 0x0860, length 0x700
}
SECTIONS /* 下面仅 DATA 可以被改为 B0 或 B1 */
{
.vectors : {} >VECS PAGE 0 /* 中断向量表 */
.text : {} >PROG PAGE 0 /* 可执行代码和字符串 */
.cinit : {} >PROG PAGE 0 /* C 程序初始化变量和常数表*/
.data : {} >DATA PAGE 1 /* 初始化变量和常数表 */
北京三恒星科技公司 http//www.sanhengxing.com
- 18 -
.bss : {} >DATA PAGE 1 /* 保留全局变量和静态变量空间 */
.const : {} >DATA PAGE 1 /* 字符串和 switch 表 */
.switch : {} >PROG PAGE 0 /* 包含.switch 语句建立的表格 */
.stack : {} >DATA PAGE 1 /* 为系统堆栈分配存储器 */
.system : {} >DATA PAGE 1 /*为动态存储器函数分配存储器空间 */
}
4....硬件电路讲解硬件电路讲解硬件电路讲解硬件电路讲解
4.1 供电电路供电电路供电电路供电电路
电源由核心板引入。电源插孔J2 标识为内正外负,+5V 稳压直流电源输入。
1117-3.3为电源转换芯片作为5V 转3.3V 的高性能稳压芯片。1117-3.3输出后的10uF 和0.1uF 的电容
不能省略,否则得不到稳定的3.3V 电压。具体可参考1117-3.3的数据手册。
4.2 时钟振荡电路时钟振荡电路时钟振荡电路时钟振荡电路
下图为本实验板上采用的电路,采用的内部振荡器方式。选用的外部晶振为20M 的电路。如果外部
晶振大小改变,滤波器PLLF 和PLLF2 之间电阻电容的参数也必须改变。下面列出几个常用的推荐参数
值。其他可参考相关资料介绍。
北京三恒星科技公司 http//www.sanhengxing.com
- 19 -
XTAL1/CLKIN 频率
MHz
R33/Ω(±5%误差) C31/uF( ± 20 %
误差)
C32/uF( ± 20 %
误差)
8M 9.1 0.022 1
10M 11 0.015 0.68
12M 13 0.01 0.47
15M 16 0.0068 0.33
16M 18 0.0056 0.27
20M 24 0.0033 0.15
为增强电路的抗干扰能力,建议使用8-16M 的晶振,然后内部倍频。
4.3 外扩程序和数据外扩程序和数据外扩程序和数据外扩程序和数据 RAM
选用的RAM 型号为CY7C1021,64K×16bit 大小。在我们的核心板中,通过与门电路实现逻辑将其
共用为程序RAM 和数据RAM。采用上图电路,该RAM 的低32k 被定义为数据空间,地址为0x0000-0x7FFF;
高32k 被定义为程序空间,地址为0x8000-0xFFFF。
4.4 LED 指示灯指示灯指示灯指示灯
DSP 的IO 口没有单片机的IO 口的驱动能力强,不能直接接LED。所以在核心板中我们采用的是三
极管驱动电路,如图所示:
北京三恒星科技公司 http//www.sanhengxing.com
- 20 -
4.5 JTAG 接口电路接口电路接口电路接口电路
JTAG 接口提供对DSP 的内部FLASH 的烧写和仿真通讯。该部分的引脚定义请不要随便更
改!
4.6 DSP 引脚扩展引脚扩展引脚扩展引脚扩展
为方便用户扩展,将TMS320LF2407A 的所有引脚均通过排针引出边。这些引脚定义如图所示:
北京三恒星科技公司 http//www.sanhengxing.com
- 21 -
4.7 走马灯与按键走马灯与按键走马灯与按键走马灯与按键
扩展板上配置有4 个LED 发光管和四个小按键。对4 个LED 的控制是DSP 的IO 输出;对按键信息
的接收是DSP 的IO 输入。
北京三恒星科技公司 http//www.sanhengxing.com
- 22 -
4.8 SCI 串口通讯串口通讯串口通讯串口通讯
DSP 内置SCI 通讯模块。
RS232 接口芯片采用的是MAXIM 公司的MAX232。板上TX_232,RX_232 标识是指PC端的的发送和接
收。串行通讯的双方的TX,RX 必须反接。所以在原理图MAX232 电路中PC的TX_232 输出的是目标板的
SCIRXD,目标板的SCITXD 经过MAX232 上输出的是PC 的RX_232。
MX232 请参考其数据手册。
4.9 SPI----D/A 转换转换转换转换
DSP 内置SPI 控制器。
板上选用的D/A 转换器为TI 公司的TLC5620 串行4 通道8 位DA 转换器。DSP 通过SPI口与其接
口。由于TLC5620 的控制信号要求的VIH 较高,所以需要将DSP 输出的SPICLK,SPISIMO 以及IO 口
模拟的CS 信号的高电平抬高。在扩展板上我们采用74HC08 与门电路。
TLC5620 的工作频率是1MHz,故DSP 的SPI 通信频率也必须设置到1MHz。
在本实验板上,4 路DA 信号均经过了电压跟随器输出。
关于SPI 通讯请查看相关资料,TLC5620 请查看其数据手册。
北京三恒星科技公司 http//www.sanhengxing.com
- 23 -
4.10 A/D 调理电路调理电路调理电路调理电路
DSP 内置16 通道10 位ADC。在本实验板上只扩展了2 通道,分别位通道0 和通道8。DSP 能接受的
AD 信号在0~3.3V。在实验板中,没有单独采用基准源,直接使用的系统的3.3V。
板上所引出的两路AD 信号电压范围可以在0~5V。在板上已经进行了电阻分压使之不超过3.3V。在
输入DSP 之前,采用了电压跟随器增大阻抗。如需要电压采样结果更加准确,请使用专用的基准电压源,
以及保证信号源稳定。
北京三恒星科技公司 http//www.sanhengxing.com
- 24 -
4.11 CAN 通讯接口通讯接口通讯接口通讯接口
DSP 内置CAN 控制器。
在实验板中CAN 总线收发器采用的型号是PCA82C250。它将CANTX,CANRX 信号转化
为CANH,CANL 信号在CAN 总线上传输。
在本实验板中,CAN 总线未经过DC-DC 隔离。为增强抗干扰能力,用户在自行扩展的
时候推荐使用DC-DC 隔离,尤其是应用于工业场合时。
关于PCA82C250 的资料请用户查看其数据手册。
北京三恒星科技公司 http//www.sanhengxing.com
- 25 -
4.12 PWM 电机控制电机控制电机控制电机控制
PWM 电机控制实验针对微型直流电机。两路带死区的PWM 信号从DSP 引脚上直接产生。电机驱动采
用的是4 个NPN 的三极管,可控制正反转。DSP 的PWM 口在复位和无控制状态时默认为IO 口,且为高
电平。这样可能引起4 个NPN 管同时导通。为防止这种情况发生,对DSP 出来的PWM 信号进行了反相,
即复位时给NPN 基极的是低电平。
4.13 128××××64 图形图形图形图形 LCD 扩展接口扩展接口扩展接口扩展接口
对图形LCD 模块本开发板提供了针对T6963 液晶模块的接口,用户如果需要可以参照系
北京三恒星科技公司 http//www.sanhengxing.com
- 26 -
统的原理图自行焊上相应元器件,并自行编写软件代码。如果另外付费购买,我们会提供相
应代码。
该接口的数据线都经过了74LVC245 进行了缓冲。读信号和写信号与DSP 直接相连,片
选CS 和C/D 采用的IO 口控制,这两个IO 口分别为IOPF4 和IOPF5。
关于液晶的亮度调节通过板上的电位器进行。
4.14 步进电机接口步进电机接口步进电机接口步进电机接口
本开发板提供了步进电机接口,如果另外付费购买,我们会提供相应代码。
5....软件实验讲解软件实验讲解软件实验讲解软件实验讲解
5.1 外部外部外部外部 RAM 测试测试测试测试
(1)测试外部数据RAM:
根据我们定义的逻辑,外部RAM 在数据空间中定义在0x8000-0xFFFF,共32k 字,占据
RAM 中的低32K 存储空间。提供2 种测试方法,采用一种方式即可。
硬件仿真模式下,将目标板上电。
第一种方法:采用用程序测试实验
程序所在目录ex1_RAMTest。
该程序执行的功能是对外部数据RAM 区0x8000-0xFFFF, 从0x8000 开始写并且读数据
0x5555。如果正常则写读下一个地址,直到0xFFFF 。如果正常则所有的地址操作完毕后,核
心板的指示灯会变亮。否则,如果写入数据后,读出的不正确,则指示灯会不断闪烁。
在CCS2000 中的操作如下:
1. Project->Open,打开该目录中的工程文件。
2. Project->Rebuild ALL,编译链接
北京三恒星科技公司 http//www.sanhengxing.com
- 27 -
3. File->Load Program
4. Debug->GO Main
5.Debug->RUN(快捷键F5)
如果正常可以看到灯在熄灭约4 秒后变亮。(说明:对整个数据RAM 区的操作时间其实很
短,为便于观察,本程序中加入了延时)。
打开View->memory,然后填入地址0x8000,然后在PAGE 栏选择DATA。点击确定,即可显
示0x8000 地址开始的数据,用户会发现从这个地址开始往后的数据均为刚被写入的0x5555。
第二种方法:通过CCS2000 软件操作
打开CCS2000 软件,进行如下操作:
打开Edit->memory->Fill,起始地址填入0x8000,长度最大可填入0x8000(即32k),
为减小填充需要的时间,可将长度适当填小一点。在Value 栏填入0x5555,,memory 中选择
Data。
然后打开View->memory,填入地址0x8001,在PAGE 栏选择DATA。点击确定,即可显示
0x8001 地址开始的数据区。
点击确定后,即可看到数据区0x8000 后的这段空间全被更改为0x5555
如果正常,则说明外部的数据RAM 验证正确。
(2) 测试外部程序RAM:
外部RAM 在程序空间中定义在0x8800-0xFFFF,共30k 字,占据RAM 中的高32K 存储空
间。外部程序RAM 的测试只能通过CC2000 软件。
硬件仿真模式下,目标板上电。打开CC2000 软件,进行如下操作:
打开Edit->memory->Fill,起始地址填入0x8800,长度最大可填入0x7800,为减小填充
需要的时间,可将长度适当填小一点。在Value 栏填入0x5555,,memory 中选择Program。
打开View->memory,填入地址0x8800,然后在PAGE 栏选择Program。点击确定,即可显
示0x8800 地址开始的数据。
点击确定后,即可看到数据区0x8800 后的这段空间全被更改为0x5555。
如果正常,则说明外部程序RAM 验证正确。
5.2 定时器控制定时器控制定时器控制定时器控制 LED 实验实验实验实验
汇编程序所在目录ex2_asm。
C 语言程序所在目录ex2_c。
在CC2000 中的操作如下:
5. Project->Open,打开该目录中的工程文件。
6. Project->Rebuild ALL,编译链接
7. File->Load Program
8. Debug->GO Main
9. Debug->RUN(快捷键F5)
即可看到核心板上LED 周期性的闪亮。灯的闪烁频率由软件中的定时器Timer1 设置。
这两个程序执行的功能是完全一样的。
用户可以参考这两个文件作为其开发应用程序的模板。
北京三恒星科技公司 http//www.sanhengxing.com
- 28 -
5.3 按键与走马灯程序实验按键与走马灯程序实验按键与走马灯程序实验按键与走马灯程序实验
程序所在目录:ex3_LED
打开CC2000,进行如下操作:
1. Project->Open,打开该目录中的工程文件。
2. Project->Rebuild ALL,编译链接
3. File->Load Program
4. Debug->GO Main
5. Debug->RUN(快捷键F5)
可以看到的现象为:核心板上的LED 不断闪烁(这个LED 在后面其他的程序中都被定义
成在定时器中断中闪烁)。扩展板上的4 个LED 均处于熄灭状态。
现在将按键轻按一下,只有LED1 闪烁;
按第二下,只有LED2 闪烁;
按第三下,只有LED3 闪烁;
按第四下,只有LED4 闪烁;
按第五下,四个LED 循环依次闪烁。
若再按键,则如此反复循环。
5.4 SCI 串口通讯实验串口通讯实验串口通讯实验串口通讯实验
程序所在目录:ex4_SCI
采用标准DB9 串口直连线将PC 串口和扩展板串口相连。打开PC 上的串口调试软件。默
认设置COM1,9600N,8,1。选择按16 进制接收和发送。
然后打开CC2000,进行如下操作:
1.Project->Open,打开该目录中的工程文件。
2.Project->Rebuild ALL,编译链接
3.File->Load Program
4.Debug->GO Main
5.Debug->RUN(快捷键F5)
然后在串口调试助手中马上可以看到上部的接收显示区不断接收到数据57(为16 进制)。
在串口助手的下部的发送区填入56,选中自动发送。数据即可通过串口发送
到目标板。
查看DSP 是否收到数据,按如下操作:打开View->Watch window,在下面刚弹出的Watch
区域中点右键,选择Insert,出现的信息框中填入SCI_RXDATA,x 即可按十六进制方式显示出
变量SCI_RXDATA 的值。如果正常,应可以看到该变量值为0x56。即说明RS232 双向通讯
正常。
北京三恒星科技公司 http//www.sanhengxing.com
- 29 -
5.5 SPI 接口的接口的接口的接口的 D/A 实验实验实验实验
程序所在目录:ex5_SPI
D/A 转换芯片选用的是SPI 接口的TLC5620,串行4 通道8 位DA 转换。
打开CC2000,进行如下操作:
1.Project->Open,打开该目录中的工程文件。
2.Project->Rebuild ALL,编译链接
3.File->Load Program
4.Debug->GO Main
5.Debug->RUN(快捷键F5)
用示波器可以看到DA_OUT1 接口输出三角波
DA_OUT2 输出三角波
用万用表可以测到DA_OUT3 输出2.475V
DA_OUT4 输出1.65V
各路的DA 输出均由程序控制,用户可参照程序中的注释更改。
5.6 A/D 采样实验采样实验采样实验采样实验
程序所在目录:ex6_AD
板上引出的两路A/D 转换对应DSP 的A/D 模块分别是通道0 和通道8,输入电压0-5V。
SHX-2407A 开发板用户手册
打开CC2000,进行如下操作:
1.Project->Open,打开该目录中的工程文件。
2.Project->Rebuild ALL,编译链接
3.File->Load Program
北京三恒星科技公司 http//www.sanhengxing.com
- 30 -
4.光标移到Que()函数的asm(" NOP ")所处的行。
5.Debug->Toggle breakpoint(快捷键F9)
6. Debug->Animate(快捷键F12)
7. View->Watch Window , 在出现的watch 窗体中点右键分别插入变量
AD_SIG0,AD_SIG8,则可看到所采到的这两路信号的电压值。
如果结果稍微不精确,请不要在意,这可能是因为没有采用专用基准源,以及信号不稳
定的缘故。另外,TMS320LF2407 的内置A/D 的精度并不是很高。在前面两种情况已得到保证
的情况下,变化幅度最大仍可达16 个bit。
5.7 CAN 总线通信实验总线通信实验总线通信实验总线通信实验
程序所在目录:ex7_CAN
由于调试CAN 总线通讯需要外部的CAN 设备。所以在没有外部CAN 设备的情况下,本样
例程序中采用了CAN 的自测试模式通信,即使用CANBOX4 发送,CANBOX0 接收。在定时器中断
服务程序中执行发送;中断方式接收CAN 信息。
打开CC2000,进行如下操作:
1.Project->Open,打开该目录中的工程文件。
2.Project->Rebuild ALL,编译链接
3.File->Load Program
4.光标移到int1 中断服务程序的CANIFR=0xFFFF 所处的行。
5.Debug->Toggle breakpoint(快捷键F9)
10. Debug->Animate(快捷键F12)
11. 偏左上脚GEL files 上点右键,Load GEL,选择LF2407.gel,然后菜单栏
GEL->LF2407->CAN regs, 即可看到CAN 寄存器的变量被显示到Watch window 中。
可以看到CANBOX0 里面接收到数据0x2211,0x4433 等数据。这些数据是由CANBOX4 发
送往CAN 总线上的。
如果用户和别的CAN 设备通信,参照本例程的注释更改相关设置即可。
5.8 PWM 电机控制实验电机控制实验电机控制实验电机控制实验
程序所在目录:ex8_PWM
打开CC2000,进行如下操作:
1.Project->Open,打开该目录中的工程文件。
2.Project->Rebuild ALL,编译链接
3.File->Load Program
4.Debug->RUN
可以看到电机开始转动。本例程中PWM 的频率是1kHz,输出的是两路带死去的PWM 波形
对。用户只需更改参数XPWM 即可改变电机的转速和方向。该参数设置如下:
XPWM=2400; //最大值2500
when xpwm=0~900,逆时针方向旋转,值越小,转速越快
when xpwm=1600~2500,顺时针方向旋转,值越大,转速越快
when xpwm=900~1600,电机两端电压太低,基本上不足以起转。
北京三恒星科技公司 http//www.sanhengxing.com
- 31 -
5.9 步进电机控制实验步进电机控制实验步进电机控制实验步进电机控制实验
略。
5.10 T6963 液晶实验液晶实验液晶实验液晶实验
略。
6....FLASH 烧写烧写烧写烧写
6.1 安装烧写软件安装烧写软件安装烧写软件安装烧写软件
打开<c240x 28xx Flash 烧写工具>文件夹,运行C2000-2.00-SA-to-TI-FLASH2x.EXE,
首次运行会弹出以下对话框,选择yes。
然后按提示进行安装即可。
安装结束后打开CCS 的界面如下,会增加一个“云”状的图标。
北京三恒星科技公司 http//www.sanhengxing.com
- 32 -
6.2 烧写烧写烧写烧写 FLASH
注意:在您熟练掌握软件仿真和调试之前,强烈建议您不要轻易尝试烧写FLASH,由于
加密位等原因,在您不熟悉的情况下很容易烧毁芯片。
6.2.1 烧写中断向量表
仿真状态的中断向量表在一般情况下请不要更改和重新烧写,也无需修改。在产品出厂
时默认烧写了仿真状态的中断向量表,方便用户直接进入调试学习状态。
(1) 硬件准备
将开发板上的J4 跳线VCCP 短路环跳到下边+5V,即跳到1-2 脚,这一步必须!
将仿真器,PC 和目标板接好,注意仿真头不能插反!不能带电插拔仿真器!
(2)运行CCS,点击烧写的“云”按钮。
(3)相关设置请参照上图,其中CLKIN 设置为10,PLL 设置为4,烧写更稳定。Sector 设置选择第一
项即可。
(4)点击Execute 按钮,即可开始烧写。烧写完成后,进入ccs 进行调试,如果现象正确说明烧写是
成功的。
6.2.2 烧写用户程序
如果您是要烧写您自己的已经编译调试成功的用户程序,以便脱离仿真器运行,那么按照以下步骤进行。
(1)硬件准备
将开发板上的J4 跳线VCCP 短路环跳到下边+5V,即跳到1-2 脚,这一步必须!
将仿真器,PC 和目标板接好,注意仿真头不能插反!不能带电插拔仿真器!
(2) 软件设置修改
对要准备烧写的程序,.CMD 文件中的存储器映射必须修改如下:
MEMORY
{
PAGE 0: VECS: origin = 0x8000, length 0x040
PAGE 0: PROG: origin = 0x8860, length 0x6000
PAGE 1: B0 : origin = 0x200, length 0x100
北京三恒星科技公司 http//www.sanhengxing.com
- 33 -
PAGE 1: B1 : origin = 0x300, length 0x100
PAGE 1: DATA: origin = 0x0860, length 0x700
}
为
MEMORY
{
PAGE 0: VECS: origin = 0x000, length 0x040
PAGE 0: PROG: origin = 0x060, length 0x6000
PAGE 1: B0 : origin = 0x200, length 0x100
PAGE 1: B1 : origin = 0x300, length 0x100
PAGE 1: DATA: origin = 0x0860, length 0x700
}
其中的length 字段根据您的用户程序代码进行修改设置,一般为0x6000 即可。
(3) 然后重新编译,编译后的用来烧写的out 文件注意不要弄错位置。
(4) 烧写flash
点击“云”状图标,进行烧写。
出现界面如下图所示:
我们操作的是2407,所以选择最后一项。下边的3 个选项,可以都去掉,不去也没有关系。但是在
个别情况下不去掉的话,在烧写过程中由于用户程序的原因,会出现一些警告,不过不会影响烧写的正
常正确执行。然后点击“OK”,进入下一界面。
北京三恒星科技公司 http//www.sanhengxing.com
- 34 -
右边的sector 选项,要与用户程序的cmd 地址分配一致,如果是操作我们的板子,可以将下边的3
个sector 选项去掉。如果操作我们的板子,晶振是20M,pll 是2 倍频。也可以设置为10M,4 倍频,
烧写更稳定。如果操作用户自己的板子,请对应选择即可。
1. 点击Browse 指定刚才编译的要烧写的out 文件。请确保out 文件的位置正确,如果是先
调入工程,而不是直接烧写,这里会自动的保持一致。点击Execute 即可开始烧写,此过程中会出现多
次进度条提示,分别对应clear 、erase、program、check 等,请耐心等待。如果你的cmd 地址忘记了
修改,这里会给出错误提示,你可以修改地址后重新烧写。烧写过程会持续大约5 秒左右。
北京三恒星科技公司 http//www.sanhengxing.com
- 35 -
烧写结束,提示如下信息:OK:Flash sectors programmed.。
用这个工具和步骤烧写,与仿真器无关,按照完全相同的办法即可。
(5) 脱机运行
将开发板和仿真器断电,拔掉仿真头,将VCCP 跳到GND,即跳到2-3 脚。开发板上电,用户程序即
开始在FLASH 中运行。在我们提供的所有例程中,开发板上的LED 均会不断闪烁。
注意:烧写用户程序到FLASH 后,会覆盖原来我们出厂时默认烧写到FLASH 中的中断向量表。如果您想
继续进行软件调试仿真,您需要再将vector 文件夹下的中断向量表(int.out)烧写到FLASH,方法见
前面的描述。
(6)烧写出现问题的处理
---------------------------- c2xx_bcx.pjt - Debug ----------------------------
"c:\ti2000\c2400\cgtools\bin\dspcl" -qq -as
-fr"D:/ti/plugins/flash24xx/Algos/lf2407a/clear"
-d"_DEBUG" -v2xx -@"../clear/Debug.lkf" "var.asm"
>> Cannot open object file : D:/ti/plugins/flash24xx/Algos/lf2407a/clear\var.obj
"c:\ti2000\c2400\cgtools\bin\dspcl" -qq -as
-fr"D:/ti/plugins/flash24xx/Algos/lf2407a/clear"
-d"_DEBUG" -v2xx -@"Debug.lkf" "c2xx_bcx.asm"
>> Cannot open object file : D:/ti/plugins/flash24xx/Algos/lf2407a/clear\c2xx_bcx.obj
北京三恒星科技公司 http//www.sanhengxing.com
- 36 -
"c:\ti2000\c2400\cgtools\bin\dspcl" -qq -as
-fr"D:/ti/plugins/flash24xx/Algos/lf2407a/clear"
-d"_DEBUG" -v2xx -@"Debug.lkf" "clr_alg.asm"
>> Cannot open object file : D:/ti/plugins/flash24xx/Algos/lf2407a/clear\clr_alg.obj
Build Complete,
3 Errors, 0 Warnings, 0 Remarks.
说明您的D 盘是一个不可写入的盘,例如光盘等。这是这个插件的一个小缺点,他默认在D盘要建立一
个目录,但是您的D 盘目前由于是光盘,而无法创建这个目录。请按如下修改。此时打开如下的工程文
件:安装盘目录下的:XXX/plugins/flash24xx/Algos/lf2407a/clea/
这3 个目录(clear、 erase 、program)下的工程文件都要调入,修改如下环节:在build option 中
修改路径。
北京三恒星科技公司 http//www.sanhengxing.com
- 37 -
大家可以看到这里的默认路径在D 盘。请把他改为C 盘,然后保存,然后可以把我们提供的那
个”TI”的目录拷贝到C 盘的根目录下。这样二者就对应了,你拷贝到别处也一样,只要二者就对应了
即可。
北京三恒星科技公司 http//www.sanhengxing.com
- 38 -
一些问题提示:
1. 在极个别的情况下,有时烧写完毕后,将板子与仿真器连接好后,无法进入CCS,但是重新启动计
算机基本可以解决这个问题。
2. 一般情况下如果你的计算机硬盘有D 盘,则没有什么问题。如果你的计算机硬盘没有D盘。那么或
许会出现问题,提示:找不到一些obj 文件。因为烧写过程会调用3 个插件本身的工程,这3 个工程的
默认路径是D 盘,他会自动在D盘建立一个TI 的目录,把一些obj 文件放在这里。但是如果计算机硬盘
没有D 盘。那么请更改这个3 个工程文件的存放路径即可。
6.3 关于关于关于关于 int.out
我们提供的int.out 执行的工作仅为地址0x0000~0x0014 的中断跳转。跳转地址为0x8000(RAM
区)。这是因为我们仿真调试的时候,程序需要在RAM 中运行。发生复位和中断事件时,DSP 默认执行
的是地址0x0000-0x003F 的代码。所以,我们需要将这些事件对应到RAM调试区的0x8000-0x803F。当
然RAM 区的这个地址可以更改。更改请在我们提供的程序中进行。例如可以改为0x8800-0x883F。如果
用户将录的int.out 改为跳转到0x8800 开始的地址,那么用户所有进行仿真的程序的CMD 文件中的
VECS 定义应和int.out 一致,即改为0x8800。