linux上使用J-link调试S3C2440裸机代码
工具: segger的jlink仿真器 segger的jlink for linux 交叉编译工具链里面的arm-xx-linux-xx-gdb 初始化脚本 工具安装 segger的jlink for linux进入Segger官网--->Download--->J-link/J-Trace--->J-link Software and documentation Pack。有deb、rpm、tgz三种包可供选择,随便选一个,我选的是tgz。由于我的仿真器是和谐版,所以我不敢选择高版本的J-link,选择older versions。下载一个比较老的,我下的是最老的。
解压至你要安装的目录。里面有个README.txt,安装说明 *** 作。安装完了为方便起见,记得export一下PATH。
交叉编译工具链里面的arm-xx-linux-xx-gdb这个不多介绍,你想自己编译就编译,想用别人制作好的也行。
初始化脚本此初始化脚本是给arm-xx-linux-xx-gdb用的,gdb可以通过-x file.cmd
从文件里面指定命令序列。具体如下:
#初始化 S3C2440 cpu.
#定义一个函数(功能块)define reset_s3c2440 ##设置小端模式,要和你跑的裸机程序一致. monitor endian little ##copIEd from JlinkGDBServer document. monitor reset #复位 S3C2440 monitor reg cpsr = 0xd3 #设置 cpsr 寄存器. monitor speed auto #link Speed.end##main function defined for connect to the TARGET.##arg0 = IP地址.##arg1 = JlinkGDBServer端口号.define connect_s3c2440 if $argc == 2 target remote $arg0:$arg1 reset_s3c2440 endend
大概就是通过IP:PORT连接上JlinkGDBServer,然后下发一系列的指令初始化s3c2440。这些指令也可以手动逐个敲进去。
工作原理介绍 @H_403_50@参考gdb工作原理本地调试搞linux都熟悉。有时候由于资源限制、或者目标机不在现场,就需要借助gdbserver做远程调试。可以这样理解,gdb是由gdb前端和gdb后台组成,gdb前端负责和用户交互,gdb后台负责和 *** 作ptrace,在远程调试时gdbserver提供一个后台和一个通讯接口与本地的gdb前端交互。gdb和gdbserver之间可以通过串口,usb,TCP/IP来通讯。一般来说gdbserver远远小于gdb,所以资源限制情况下直接放一个gdbserver到目标机里面,然后远程调试。
JlinkGDBServerJlinkGDBServer又相当于把gdbserver---->ptrace---->target替换成了gdbserver---->jlink--->jlink调试器---->target。Jlink还有好多好玩的工具J-link Remote Server、J-link Commander、J-link RTT VIEwer、J-link SWO VIEwer等等。
调试步骤 1.代码https://github.com/tanghammer/mini2440_peripherals.git
2.硬件连线按照jlink仿真器接线方式,启动方式选择norFlash。
3.烧录程序windows下 *** 作:
启动J-Flash file--->open project--->打开s3c2440.jflash file--->open data file--->选择要烧录的bin文件 F7(auto)这样程序就烧录到了norflash,下面是s3c2440.jflash分享链接。
链接:https://pan.baidu.com/s/17QSzRdSOImYv3LM1UROqiw
提取码:vazg
直接执行命令JlinkGDBServer
arm-none-linux-gnueabi-gdb -x s3c2440_init -ex "connect_s3c2440 192.168.20.156 2331" ./sdram_elf6.开始调试
loadb mainc总结
以上是内存溢出为你收集整理的linux上使用J-Link调试S3C2440裸机代码全部内容,希望文章能够帮你解决linux上使用J-Link调试S3C2440裸机代码所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)