首页 理论教育 实现I/O控制LED的方法

实现I/O控制LED的方法

时间:2023-06-20 理论教育 版权反馈
【摘要】:I/O控制LED也就是通过对XF标志位的清0或置位,控制处理器XF引脚输出低电平或高电平进而完成对LED灯的熄灭和点亮控制。I/O控制LED主程序的流程图如图7-14所示。经过以上步骤,在系统软硬件运作正常的情况下,本实例可以准确无误地完成I/O控制LED灯的开关和延时控制功能。也可通过设置断点和单步执行等方法观察I/O控制LED灯亮灭的情况。

实现I/O控制LED的方法

I/O控制LED也就是通过对XF标志位的清0或置位,控制处理器XF引脚输出低电平或高电平进而完成对LED灯的熄灭和点亮控制。采用汇编语言和C语言编写主程序均可完成此项控制任务。I/O控制LED主程序的流程图如图7-14所示。

1.基于汇编语言编程实现I/O控制LED

(1)使用汇编语言编写I/O控制LED灯测试程序的主程序

使用汇编语言编写的主程序LED1.asm源代码如下:

978-7-111-35536-6-Chapter07-32.jpg

978-7-111-35536-6-Chapter07-33.jpg

图7-14 I/O控制LED主程序的流程图

(2)编写链接命令文件

对应以上汇编程序的链接命令文件LED1.cmd源代码如下:

978-7-111-35536-6-Chapter07-34.jpg

978-7-111-35536-6-Chapter07-35.jpg

2.基于C语言编程实现I/O控制LED

(1)使用C语言编写I/O控制LED灯测试程序的主程序

使用C语言编写的主程序LED2.c源代码如下:

978-7-111-35536-6-Chapter07-36.jpg

注意,由于本实例的主程序是基于C语句编写的,因此还需要添加C语言运行支持库rts.lib。将C:\CCStudio_v3.3\C5400\cgtools\lib下的rts.lib加入到工程文件中,其中C:\CCStudio_v3.3\是CCSv3.3的安装路径。

(2)编写中断向量的汇编文件

编写汇编文件vectors.asm源代码如下:

978-7-111-35536-6-Chapter07-37.jpg(www.xing528.com)

978-7-111-35536-6-Chapter07-38.jpg

978-7-111-35536-6-Chapter07-39.jpg

(3)编写链接命令文件

编写链接命令文件LED2.cmd源代码如下:

978-7-111-35536-6-Chapter07-40.jpg

3.CCS集成开发环境下的操作过程

在运行CCS之前,必须先连接好硬件仿真器、DSP目标板及计算机,连接方法如图7-15所示。

978-7-111-35536-6-Chapter07-41.jpg

图7-15 DSP的硬件连接示意图

在图7-15中,DSP目标板可选用上一节设计的DSP最小系统板,也可以选用TI公司或TI第三方提供的DSP系统开发板、DSK板和EVM板等,本实例选用上一节设计的DSP最小系统板。仿真器可以选用XDS560或XDS510,本实例选用USB接口的XDS560硬件仿真器。需要注意的是,使用仿真器需要安装相应仿真器的驱动程序。

硬件电路连接好之后,CCS集成开发环境下的操作过程如下:

1)打开DSP目标板电源,并启动计算机。

2)双击桌面上的“Setup CCStudio v3.3”快捷方式图标,启动CCS配置程序,将系统配置为C5402XDS560 Emulator。保存配置并退出,软件将询问是否进入CCS开发环境,选择“是”,即可运行CCS。

3)如果硬件开发平台尚未连接好,可选择Debug→Connect命令来实现连接。

4)在CCS上建立LED1工程并运行LED1.out程序。建立LED1,将LED1.asm和LED1.cmd添加到工程中,选择Project→RebuildAll命令对汇编程序进行汇编、链接。如果有错误则进行修改、调试,当汇编、链接成功后,加载并运行LED1.out。也可通过设置断点和单步执行等方法观察I/O控制LED灯亮灭的情况。注意,将LED1.asm、LED1.cmd和LED1.pjt工程文件放在同一文件夹下。

5)在CCS上建立LED2工程并运行LED2.out程序。建立LED2,将LED2.c、vectors.asm、LED2.cmd和rts.lib添加到工程中,选择Project→Rebuild All命令对程序进行编译与链接。如果有错误则进行修改、调试,当编译与链接成功后,加载并运行LED2.out。也可通过设置断点和单步执行等方法观察I/O控制LED灯亮灭的情况。注意,将LED2.c、vectors.asm、LED2.cmd和LED2.pjt工程文件放在同一文件夹下。

经过以上步骤,在系统软硬件运作正常的情况下,本实例可以准确无误地完成I/O控制LED灯的开关和延时控制功能。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈