APP下载

TKScope仿真调试Cortex-M3内核的高级手段

2011-06-25广州致远电子有限公司

单片机与嵌入式系统应用 2011年5期
关键词:仿真器断点内核

广州致远电子有限公司

TKScope仿真器调试Cortex-M3内核的芯片有几项高级功能,如观察运行时间、支持时间断点、变量操作断点等。通过这些高级调试手段,用户能更加清楚地了解程序的运行状态。遇到问题时,可以快速地进行程序定位。本文详细阐述这些功能的具体应用方法。

目前,TKScope支持的Cortex-M3内核的芯片具体种类如下:

◆Atmel,AT91SAM3Uxx系列;

◆ENERGY,EFM32GxxxFxx系列;

◆TI,LM3Sxx系列;

◆ NXP,LPC17xx、LPC13xx系列;

◆ST,STM32Fxx系列;

◆TOSHIBA,TMPM330、TMPM370、TMPM380系列。

本文所讲述的特性适用于上述各个系列的芯片。此外,TKScope支持Flash无限制断点,如上述的TI、ST各系列;其他公司的系列受制于芯片本身的限制,只支持到最大6个硬件断点。

1 观察运行时间

TKScope仿真器可以观察Cortex-M3内核的运行时间,精度为1个时钟,满足客户观察高精度的仿真时间。TKScope不但在程序停止状态下可观察运行时间,而且在程序全速运行时也可以快速显示当前的运行时间。

运行时间主要有 2个指标——Tsum 和 Tcur,如图1所示。

(1)Tsum

运行时间总和,即复位后运行到当前停止时的有效运行时间总和。Tsum是有效运行时间的累积总和,程序处于仿真状态但停止运行时,时间不累积。

(2)Tcur

当前运行时间,即当前一次有效运行操作经历的时间值。Tcur便于用户观察本次操作经历的时间。

为了保证运行时间的准确性,需要设置系统时钟值。打开仿真器的[主要设置]界面,系统时钟值必须与用户实际运行的时钟值一致,也就是PLL输出的时钟值。

从图1中可以看出,程序设置了2个断点,此时程序在第2个断点处停止。运行时间的具体意义如下:Tsum显示的是程序从开始运行到第2个断点处所经历的时间;Tcur显示的是从第1个断点处运行到第2个断点处所经历的时间。

2 时间断点

TKScope仿真器支持时间断点功能,即运行时间与时间断点设置的时间相同时,程序停止运行。如图2所示,在运行时间的下面可以看到Tbreak,这就是时间断点。用户可以根据实际观察需要,设置Tbreak的值,注意单位是ns。当程序运行时间累积到Tbreak的值时,程序停止运行。

3 变量操作断点

TKScope支持变量操作断点,当对某一个变量进行读写操作时,通过设置变量读写操作断点,让程序停止运行。

在Keil MDK环境下,进入仿真状态之后,打开[Debug]菜单下的[Breakpoints]选项。在Breakpoints窗口即可定义变量操作断点。

具体定义方法:在Expression文本框内输入变量的地址,然后选择读写属性,并正确设置字节范围,最后单击Define按钮即可。

图1 运行时间观察窗口

图2 时间断点窗口

例如,在从地址0x20004000开始、16字节范围内,定义读写断点操作,具体设置方法如图3所示。

图3 定义读写操作断点

在图3中单击Define按钮之后,断点即可设置成功,如图4所示。图4中共定义了4种类型的断点。

断点1:表示从地址0x20004000开始、16字节范围内,出现读或写的操作,则中断。

断点2:表示从地址0x20004100开始、8字节范围内,出现读的操作,则中断。

断点3:表示从地址0x20004200开始、4字节范围内,出现写的操作,则中断。

断点4:表示从地址0x20004300开始、1字节范围内,出现读或写的操作,则中断。

图4 Breakpoints定义断点窗口

注意:len表示在一个地址范围内该断点有效,len必须为 1、2、4、8、16 、32(乘 2 递增),同时地址必须处于 len的起始位置。例如 len=16,则地址必须为0x10字节对齐,0x40000010为有效的起始地址,而地址0x40000018为无效,将被系统强行修正为0x40000010。

4 小 结

TKSope仿真Cortex-M3内核有这些高级手段,更加方便用户调试,让开发工程更轻松。TKScope针对其他内核也会推出一些列的高级调试手段,后续会继续介绍,敬请关注。

猜你喜欢

仿真器断点内核
强化『高新』内核 打造农业『硅谷』
AI仿真器将大大提高科学领域的仿真模拟速度
砂泥互层断点组合类型及其合理性分析
——以大庆长垣萨尔图油田为例
用Eclipse调试Python
一类无限可能问题的解法
基于嵌入式Linux内核的自恢复设计
Linux内核mmap保护机制研究
基于多用户无线仿真器系统的研究
微生物内核 生态型农资
分析利用仿真器(RTDS)测试小电流接地选线装置的可行性