S3C2440开发板启动时候选择NandFlash启动,然后输入如下命令:

  r                                 /*复位cpu*/

  h                                /*暂停CPU*/

  loadbin e:/les.bin 0 /*下载e目录下的leds.bin到0地址*/

  setpc 0                       /*设置pc执行地址为下载代码的地址0*/

  s                                 /*单步调试*/

  regs                            /*查看寄存器是否和预想的一样*/

  s                                 /*继续单步调试*/

  每执行一行s,会弹出一个PC=xxxx的地址,

  这是还未执行的,PC当前指向的地址

   mem         /*从30000000地址读取8位数据*/

   J-Link>mem      /*用于测试内存是否完成初始化*/

    =  DA A0 E3

   从低位到高位读

   J-Link>w4  0x12345678 /*在0x30000000写16位数据*/

   J-Link>mem  

    =    

  本次调试所用到的命令:

 h          halt
g go
s Single step the target chip
mem Read memory. Syntax: mem <Addr>, <NumBytes> (hex)
w1 Write -bit items. Syntax: w1 <Addr>, <Data> (hex)
w2 Write -bit items. Syntax: w2 <Addr>, <Data> (hex)
w4 Write -bit items. Syntax: w4 <Addr>, <Data> (hex)
q Quit
qc Close JLink connection and quit
r Reset target (RESET)
Regs Display contents of registers
wreg Write register. Syntax: wreg <RegName>, <Value>
SetBP Set breakpoint. Syntax: SetBP <addr> [A/T] [S/H]
SetWP Set Watchpoint. Syntax: <Addr> [R/W] [<Data> [<D-Mask>] [A-Mask]]
ClrBP Clear breakpoint. Syntax: ClrBP <BP_Handle>
ClrWP Clear watchpoint. Syntax: ClrWP <WP_Handle>
loadbin Load binary file into target memory.
Syntax: loadbin <filename>, <addr>
SetPC Set the PC to specified value. Syntax: SetPC <Addr>
---- JTAG ------------
Config Set number of IR/DR bits before ARM device.
Syntax: Config <IRpre>, <DRpre>
speed Set JTAG speed. Syntax: speed <freq>|auto|adaptive, e.g. speed ,
i Read JTAG Id (Host CPU) Jlink 命令调试-断点/条件断点 普通断点: 通常使用的普通断点的添加方法:SetBP <addr> [A/T] [S/H]
条件断点: watch point, 可以视为一种条件断点。
设置变量变为指定值时触发的断点:
setWP <addr> [<accesstype>] [<size>] [<data> [<data mask> [<addr mask>]]]
for example: 当变量m_marsh_test变为0xDEADBEEF时触发
通过map文件得到m_marsh_test的变量地址为0x20004f58;
setWP 0x20004f58 W S32 0xDEADBEEF

  调试要对汇编语言有充分的理解,.dis的反汇编文件作为调试中的重要参考文件。


18.25 JLink调试程序步骤的更多相关文章

  1. 2016年10月14日 星期五 --出埃及记 Exodus 18:25

    2016年10月14日 星期五 --出埃及记 Exodus 18:25 He chose capable men from all Israel and made them leaders of th ...

  2. win7,win10 系统上搭建testlink1.9.18环境实操步骤

    Windows7,10系统上安装TestLink1.9.18(基于xampp) 写于:2018.11.28 二次排版微调:2019.01.01 如遇本文资料缺失,可点击百度网盘查看原始资料. 链接:h ...

  3. Codeforces821B Okabe and Banana Trees 2017-06-28 15:18 25人阅读 评论(0) 收藏

    B. Okabe and Banana Trees time limit per test 2 seconds memory limit per test 256 megabytes input st ...

  4. gdb 调试程序步骤

    在程序a.c编译过程中加入调试信息: g++ -g -o a.debug a.c 启动gdb,在终端下输入:gdb 此时启动了gdb,在gdb中加载需要调试的程序,在终端输入命令: file a.de ...

  5. 架构师速成6.7-设计开发思路-uml 分类: 架构师速成 2015-07-29 18:25 157人阅读 评论(0) 收藏

    uml是什么东西?统一建模语言,一门语言,是用来进行软件设计的一门语言. 其实一门语言的诞生并不伟大,让大多数人都使用才足够伟大.uml就是一门伟大的语言,因为目前软件设计的唯一语言就是它. UML其 ...

  6. mysql 5.6.25编译安装详细步骤

    简略步骤: mysql5.6.25编译安装步骤: 下载mysql准备用户和组yum安装依赖解压mysqlcmake编译mysqlmake && make install ----时间约 ...

  7. linux(centos8):kubeadm单机安装kubernetes(kubernetes 1.18.3)

    一,kubernetes安装的准备工作: 1,准备工作的各步骤请参见: https://www.cnblogs.com/architectforest/p/13141743.html   2,  ma ...

  8. 实记JLink刷固件方法

    最近J-Link调试程序,不知何故,USB报无法连接,试了别的电脑也是这样.文件存于“百度网盘/05.组装维修/4.单片机/1.JLink-ARM仿真器”下.所有的操作基于WIN7 32位系统. 1. ...

  9. 【Cocos2d-x游戏引擎开发笔记(25)】XML解析

    原创文章,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/9128819 XML是一种非常重要的文件格式,由于C++对XML的支持非常完善 ...

随机推荐

  1. SpringMVC云题库错题及答案汇总

    试题分析:D,BeanNameViewResolver:这个视图解析器跟XmlViewResolver基本相同,它是通过把返回的逻辑视图名称去匹配定义好的视图bean对象 @ModelAttribut ...

  2. servlet中常用到的工具

    1. 解析ajax传来的json字符串,得到json对象 private JSONObject getJsonObject(HttpServletRequest req) { StringBuffer ...

  3. org.apache.commons.vfs 配置文件里面 密码包含 @

    登录ftp的用户名 sftpuser ,密码 @sftpuser 在配置文件里面 需要 把 @ 转义 成 %40 ftppath=sftp://sftpuser:%40sftpuser@127.0.0 ...

  4. Sql Server 2012 集群配置

    基于Windows Server 2008 R2的WSFC实现SQL Server 2012高可用性组(AlwaysOn Group) 2012年5月 微软新一代数据库产品SQL Server 201 ...

  5. vue将网页中的特定部分转成pdf并下载(仅供个人学习记录)

    先安装支持 将页面html转换成图片npm install --save html2canvas 将图片生成pdfnpm install jspdf --save 组件引用: import html2 ...

  6. 2017-10-6模拟赛T1 手工(handicraft.*)

    题目 题解 题意很明显,就不讲了. 我们发现从一个A边形切出一个B边形有几种情况: 1. 得到一个(A-B+2)边形和一个B边形(直线过两顶点): 2. 得到一个(A-B+3)边形和一个B边形(直线过 ...

  7. shell脚本判断安装包位置及类型

    Log() { LogFile=/tmp/``.log LogDate=$(date +"%F %T") echo -e "\n\n||| ${LogDate} ||| ...

  8. IDEA常用快捷键总结

    Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论.每个人都有自己的最爱,想排出个理想的榜单还真是困难.以前也整理过Intellij的快捷键,这次就按 ...

  9. CentOS Linux 升级内核步骤和方法(转)

    当前系统为CentOS Linux release 6.0 (Final),内核版本为2.6.32-71.el6.i686.由于最近内核出现最新的漏洞(linux kernel 又爆内存提权漏洞,2. ...

  10. C语言 进制转换

    这个程序仅仅是由十进制转换为其他进制的过程,其转换的规则如下图所示. 我使用的思路:首先在除基的过程中用一个数组保存余数,然后在输出进制转换结果的时候倒序输出,并且在输出前判断余数是否大于10,如果大 ...