共2条
1/1 1 跳转至页
multi,ice,lpc,arm 如何使用multi ice来调试lpc系列arm芯片
问
www.cmtekchina.com
meterchen www.cmtekchina.com Page 1 2004-7-25
使用Multi-ICE 开发LPC2214
陈猛(Meterchen) 2004-7
www.cmtekchina.com meterchen@263.net
注:抛砖引玉,希望大家和我交流,多提意见,给我继续写作的动力
Philips公司早期推出的ARM7系列SOC,无外部总线,仅使用内部Flash/RAM
来运行程序,由于内部RAM 较小,这给使用通用JTAG 仿真器(如Multi-ICE)
调试带来一定困难。我们知道,使用通用JTAG 仿真器仿真时,Debugger 通过
JTAG 仿真器下载程序到目标板的RAM 中,然后控制并调试程序。这就要求目
标板的RAM 有一定的冗余:调试时目标板的RAM 既要容纳代码,又要容纳数
据(运行时只需要容纳数据)。LPC2XXX 系列的ARM 芯片的内部RAM 是不能
满足通用JTAG 仿真器调试的要求的(除非应用程序代码够小)。
ZLG 公司推出了专门针对LPC2XXX 系列的ARM 仿真线缆,可将程序直接
烧写到FLASH中进行仿真,这样做解决了程序必须下载到RAM 中调试的麻烦。
但是还是有几个缺点:
(1) 程序在FLASH中调试,所有断点必须借助于硬件断点来实现,即最多只
能设置两个断点。
(2) 调试方法不通用
(3) 性能较差。
针对片内RAM 不够的情况,我们可以在产品的调试阶段专门扩展一块RAM
芯片,将程序下载到此RAM 中进行调试。调试完毕后,生产板上可将此扩展
RAM 去掉。
但是由于LPC21XX 系列总线不开发,无法外扩展RAM,因此,无法利用通
用JTAG 仿真器进行调试。
LPC22XX 系列具有外部总线,因此我们可以使用通用JTAG 仿真器进行调
试。
下面以LPC2214 为例,说明Multi-ICE 调试的过程。
LPC2214 的内部RAM 仍然只有16KB,一般用户程序都会大于16KB,无法
将程序下载到内部RAM 里面。为了便于调试,可以在调试板上扩展一64KB
SRAM 来支持调试。
一系统设置
系统硬件设置为BOOT[1:0] =01。Bank0 上挂接16bit 的SRAM。同时
www.cmtekchina.com
meterchen www.cmtekchina.com Page 2 2004-7-25
MEMMAP = 0x3,以便能够调试中断。
二识别内核
LPC2214 可被Multi-ICE 自动识别。
www.cmtekchina.com
meterchen www.cmtekchina.com Page 3 2004-7-25
三下载程序
四配置
www.cmtekchina.com
meterchen www.cmtekchina.com Page 4 2004-7-25
第一次下载是不成功的。因为LPC2214 的写信号reset 后默认为GPIO,因此,
为了保证仿真器能够下载程序到SRAM 中,还需要重新配置,使能WE 信号,
配置BLS1:0 信号,保证程序下载成功。
在命令行执行ob c:\lpc2214.ini。此文件内容见后。
可以看到程序已经正确下载,可以开始调试。
五问题说明
(一)无法识别
LPC2214 具备加密功能,如果内部FLASH中存在程序,有可能此程序把2214
加密,或者把JTAG 口配置为IO 口等,此时Multi-ICE 是无法识别内核的。因此,
建议调试之前先使用ISP 将内部FLASH 擦掉。
(二)调试中断
MEMMAP = 0x3,可使外部SRAM 的低64 字节直接映射到地址0 处,因此
可以直接调试中断。
www.cmtekchina.com
meterchen www.cmtekchina.com Page 5 2004-7-25
六配置文件
lpc2214.ini
com meterchen www.cmtekchina.com
spp vector_catch 0
smem 0xffe00000 0x1000ffef 32
smem 0xe002c014 0x0F814914 32
rld
ftp://d1:d1@www.ftp0.com/software/lpc2214.rar
* - 本贴最后修改时间:2006-2-11 12:25:30 修改者:centimetre
答 1: 不好用!使用起来有点复杂!
meterchen www.cmtekchina.com Page 1 2004-7-25
使用Multi-ICE 开发LPC2214
陈猛(Meterchen) 2004-7
www.cmtekchina.com meterchen@263.net
注:抛砖引玉,希望大家和我交流,多提意见,给我继续写作的动力
Philips公司早期推出的ARM7系列SOC,无外部总线,仅使用内部Flash/RAM
来运行程序,由于内部RAM 较小,这给使用通用JTAG 仿真器(如Multi-ICE)
调试带来一定困难。我们知道,使用通用JTAG 仿真器仿真时,Debugger 通过
JTAG 仿真器下载程序到目标板的RAM 中,然后控制并调试程序。这就要求目
标板的RAM 有一定的冗余:调试时目标板的RAM 既要容纳代码,又要容纳数
据(运行时只需要容纳数据)。LPC2XXX 系列的ARM 芯片的内部RAM 是不能
满足通用JTAG 仿真器调试的要求的(除非应用程序代码够小)。
ZLG 公司推出了专门针对LPC2XXX 系列的ARM 仿真线缆,可将程序直接
烧写到FLASH中进行仿真,这样做解决了程序必须下载到RAM 中调试的麻烦。
但是还是有几个缺点:
(1) 程序在FLASH中调试,所有断点必须借助于硬件断点来实现,即最多只
能设置两个断点。
(2) 调试方法不通用
(3) 性能较差。
针对片内RAM 不够的情况,我们可以在产品的调试阶段专门扩展一块RAM
芯片,将程序下载到此RAM 中进行调试。调试完毕后,生产板上可将此扩展
RAM 去掉。
但是由于LPC21XX 系列总线不开发,无法外扩展RAM,因此,无法利用通
用JTAG 仿真器进行调试。
LPC22XX 系列具有外部总线,因此我们可以使用通用JTAG 仿真器进行调
试。
下面以LPC2214 为例,说明Multi-ICE 调试的过程。
LPC2214 的内部RAM 仍然只有16KB,一般用户程序都会大于16KB,无法
将程序下载到内部RAM 里面。为了便于调试,可以在调试板上扩展一64KB
SRAM 来支持调试。
一系统设置
系统硬件设置为BOOT[1:0] =01。Bank0 上挂接16bit 的SRAM。同时
www.cmtekchina.com
meterchen www.cmtekchina.com Page 2 2004-7-25
MEMMAP = 0x3,以便能够调试中断。
二识别内核
LPC2214 可被Multi-ICE 自动识别。
www.cmtekchina.com
meterchen www.cmtekchina.com Page 3 2004-7-25
三下载程序
四配置
www.cmtekchina.com
meterchen www.cmtekchina.com Page 4 2004-7-25
第一次下载是不成功的。因为LPC2214 的写信号reset 后默认为GPIO,因此,
为了保证仿真器能够下载程序到SRAM 中,还需要重新配置,使能WE 信号,
配置BLS1:0 信号,保证程序下载成功。
在命令行执行ob c:\lpc2214.ini。此文件内容见后。
可以看到程序已经正确下载,可以开始调试。
五问题说明
(一)无法识别
LPC2214 具备加密功能,如果内部FLASH中存在程序,有可能此程序把2214
加密,或者把JTAG 口配置为IO 口等,此时Multi-ICE 是无法识别内核的。因此,
建议调试之前先使用ISP 将内部FLASH 擦掉。
(二)调试中断
MEMMAP = 0x3,可使外部SRAM 的低64 字节直接映射到地址0 处,因此
可以直接调试中断。
www.cmtekchina.com
meterchen www.cmtekchina.com Page 5 2004-7-25
六配置文件
lpc2214.ini
com meterchen www.cmtekchina.com
spp vector_catch 0
smem 0xffe00000 0x1000ffef 32
smem 0xe002c014 0x0F814914 32
rld
ftp://d1:d1@www.ftp0.com/software/lpc2214.rar
* - 本贴最后修改时间:2006-2-11 12:25:30 修改者:centimetre
答 1: 不好用!使用起来有点复杂!
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 | |
【FRDM-MCXN947评测】核间通信MUTEX被打赏50分 |