原创 RV MDK调试脚本的详细解析

2008-7-30 20:05 4419 9 12 分类: MCU/ 嵌入式

在以往的keil开发环境中,很少看到有调试脚本的身影,但是在学习STM32的时候,开始用到了调试脚本,感觉到很方便。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


Realview MDK中使用调试脚本。调试脚本主要有以下功能:


1、可以初始化软硬件的调试环境以外;


2、可以初始化Flash的烧写环境;


3、可以提供信号函数模拟片上外围设备。


所以在使用Realview MDK调试和烧写的过程中,都用到了调试脚本。下面将分三个方面详细地研究调试脚本的编写和使用。


在了解调试脚本之前,我们必须了解Realview MDK预定义的一些常用命令和函数的用法。


 


下列是常用的预定义命令格式和语法标准说明:



预定义的命令语法


描述


MAP 开始地址, 结束地址


在内存中映射一段存储区域。


Go 开始地址,结束地址


程序从开始地址运行,到结束地址停止。


DIR VTREG


显示所有的CUP引脚寄存器。


预定义的函数


描述


void rwatch (ulong address)


信号函数被延时,直到函数参数地址被读取。


void wwatch (ulong address)


信号函数被延时,直到函数参数地址被写入。


void swatch (float seconds)


信号函数延时参数指定的时间,单位为S


void twatch (ulong states)


信号函数延时参数指定的CUP周期。


uchar _RBYTE (address)


在参数指定的地址处读取1个字节的数据。


ulong _RWORD (address)


在参数指定的地址处读取1个整型的数据。


ulong _RDWORD (address)


在参数指定的地址处读取1个长整型的数据。


uchar _WBYTE (address, uchar val)


向参数指定的地址处写入1个字节的数据。


void _WWORD (address, uint val)


向参数指定的地址处写入1个整型的数据。


void _WDWORD (address, ulong val)


向参数指定的地址处写入1个长整型的数据。


 


一、在软件仿真中的应用:


使用Realview MDK软件模拟器调试程序时,除了像硬件调试那样配置相关的寄存器以外,有时还必须使用信号函数模拟外设信号的输入/输出,甚至完全模拟一个外围设备。比如:ADC,如果我们写了一个ADC程序,但是没有模拟输入,那怎么会有输出呢?这就有劳了脚本的功劳了。下面的程序将模拟一个外围设备向ADC接口输入正弦波信号:


 

 

 

 


 


这些仿真详细请见:http://blog.ednchina.com/likee/138832/message.aspx


 


这些函数当然还有方波,锯齿波等信号,这些函数可以在RV MDKHELP文件中都找到,如下图:


 


点击看大图


 


二、在硬件仿真中的应用:


我们在前面已经介绍过了,Realview MDK编译链接好的程序在硬件上运行之前,要求硬件具有合适的环境(例如,时钟的配置、存储控制的配置、堆栈的建立等等),一般这些工作是由启动代码完成的。在Realview MDK中,通过调试脚本使用MDK预先定义好的寄存器读写命名设置硬件环境。这一工作在硬件调试之前是必须进行的。下面是一个初始化硬件环境的调试脚本函数:


 


FUNC void Setup (void) { _WWORD(0xfffffd44 ,0x00008000); // 配置看门狗模式寄存器;


_WWORD(0xfffffd60 ,0x00320100); // 配置电压效验模式寄存器; _WWORD(0xfffffc20 ,0x00000601); // 配置主晶振寄存器; _WWORD(0xfffffc2c ,0x00191C05); // 配置锁相环寄存器; _WWORD(0xfffffc30 ,0x00000007); // 配置主时钟寄存器; _WWORD(0xfffffd08 ,0xa5000001); // 配置复位控制模式寄存器; pc = 0x200000; // 设置PC的值。 }


 


三、FLASH下载中的应用:


    使用Realview MDK进行Flash下载时,我们知道要对目标板的硬件环境进行初始化配置,其配置方法和硬件调试的情况是差不多的。


 
PARTNER CONTENT

文章评论3条评论)

登录后参与讨论

用户100109 2008-8-12 02:50

kldn,i qaj!

用户160112 2008-8-2 18:43

likee,谢谢!!!

用户391193 2008-8-2 00:31

这些和另外的好像有些联系的。

用户1053025 2007-6-22 11:15

大哥,你举例也太惨烈了~~

奉送一个词:慎独

相关推荐阅读
daiqiumiao_806246054 2011-01-06 13:57
linux下yum代理设置
    我们在安装好linux后,经常会使用yum来更新系统,但是系统默认的代理是国外的,国内一般的网络不能访问,这里讲解具体做法,把代理换成国内的。attachment download      ...
daiqiumiao_806246054 2010-12-30 09:48
【转】ORACLE 10g下载地址
Oracle Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Microsoft Windows (32-bit...
daiqiumiao_806246054 2010-11-29 11:06
找工作的进来看
如下是我所有的开放性问题回答,希望对大家有帮助!1.      When choosing your first job/employer, what will you consider and wh...
daiqiumiao_806246054 2010-11-29 09:47
中长期规划---螺旋式上升方式修改完善职业之路
一、中长期职业发展的自我准备1、心态上随时做好准备 机会是给有准备的人的------“有准备”是你在做准备的过程中让“别人”认为你“有准备”!别人是包括你现在的老板和别的老板,以及你身边的人!他们对你...
daiqiumiao_806246054 2010-03-17 21:26
移动
分集方式传输损耗和距离关系光纤网络G网...
daiqiumiao_806246054 2010-03-17 09:40
GSM
特点  使用直观  GSM系统有几项重要特点:防盗拷能力佳、网络容量大、手机号码资源丰富、通话清晰、稳定性强不易受干扰、信息灵敏、通话死角少、手机耗电量低。  技术特点  1.频谱效率。由于采用了高效...
EE直播间
更多
我要评论
3
9
关闭 站长推荐上一条 /3 下一条