首页 理论教育 ProteusM3代码测试成果

ProteusM3代码测试成果

时间:2023-11-17 理论教育 版权反馈
【摘要】:1)将dk-lm3s301软件包的blinky工程导入到CCS6中。图2-25生成.elf格式文件3)编译blinky工程,并将生成的.elf格式文件导入到Proteus 测试电路中,如图2-26所示。图2-27制作原理图动画5)启动仿真可看到LED闪烁,此时可按下暂停键,会出现闪烁灯的源代码,并如图2-28所示设置断点。图2-31单步运行的结果与观察到的现象吻合(熄灭)小结:采用Proteus的动画调试功能,可轻松查找M3代码中存在的错误,或许比在真实开发板卡中进行M3程序的调试来得更加容易,值得读者掌握。

ProteusM3代码测试成果

1)将dk-lm3s301软件包的blinky工程导入到CCS6中。

2)将CCS的输出文件改成.elf格式文件,如图2-25所示。

978-7-111-51624-8-Chapter02-31.jpg

图2-25 生成.elf格式文件

3)编译blinky工程,并将生成的.elf格式文件导入到Proteus 测试电路中,如图2-26所示。

978-7-111-51624-8-Chapter02-32.jpg

图2-26 导入.elf格式文件

4)制作原理图动画(Schematic Animation),如图2-27所示。

978-7-111-51624-8-Chapter02-33.jpg

图2-27 制作原理图动画(Schematic Animation)

5)启动仿真可看到LED闪烁,此时可按下暂停键,会出现闪烁灯的源代码,并如图2-28所示设置断点

978-7-111-51624-8-Chapter02-34.jpg

图2-28 闪烁灯源代码、原理图动画样式及设置断点(www.xing528.com)

6)在观察窗口中添加变量GPIO_PORTB_DATA,其步骤为:右键单击Watch窗口→在弹出的菜单中选择Add Items(By Name)选项→选择端口B→选中GPIODATA_B→最后单击Done完成变量的添加,如图2-29所示。

978-7-111-51624-8-Chapter02-35.jpg

图2-29 添加观察变量

说明:此时GPIO_PORTB_DATA的值为0,可以看到LED灯也没亮,符合程序意图。

7)首先单击调试工具栏上的全速运行按钮,使程序在断点处停止(见图2-28),然后再单击按钮(Step Over Source Line)或键盘上的F11单步运行闪烁灯程序,当执行完断点处(0212)的程序后,LED灯点亮,同时GPIO_PORTB_DATA的值为1,说明GPIO_PORTB_DATA_R∣=0x01;语句的确能使LED发光,程序正确,如图2-30所示。

978-7-111-51624-8-Chapter02-36.jpg

图2-30 单步运行的结果与观察到的现象吻合(点亮)

8)继续单步,当执行完0222语句GPIO_PORTB_DATA_R&=~(0x01);后,LED灯熄灭且GPIO_PORTB_DATA_R=0。程序运行结果和观察的现象吻合,该条语句正确。如图2-31所示。

978-7-111-51624-8-Chapter02-37.jpg

图2-31 单步运行的结果与观察到的现象吻合(熄灭)

小结:采用Proteus的动画调试功能,可轻松查找M3代码中存在的错误,或许比在真实开发板卡中进行M3程序的调试来得更加容易,值得读者掌握。

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

我要反馈