如何使用eclipse与jLink V8调试exynos 4412 u-boot

小编给大家分享一下如何使用eclipse与jLink V8调试exynos 4412 u-boot,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

/**

******************************************************************************

* < COPYRIGHT 2014 ISE of SHANDONG UNIVERSITY >

*******************************************************************************

**/

首先说一下我实验室的网络环境:一台搭载ubuntu系统的公用Linux服务器,数台客户机使用ssh连接到服务器。

我个人的开发环境:使用Mac OS X系统,ssh远程连接Linux服务器。USB转串连接4412开发板,USB经jLink连接开发板,暂时别无其它线缆连接。

这里我就以Mac系统为例,说一下软硬件环境搭建,windows与Linux下搭建方法基本相同。

首先准备软件包:

1、eclipse CDT:http://www.eclipse.org/downloads/

根据自己的平台选择其中一个:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

在大约页面中间位置有CDT的下载链接:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

下载完成之后,自行安装即可。

如果你的系统是Mac那么你可能不需要安装jre jdk等环境,因为系统已经给你默认安装好了,

如果你的系统是linux,可能会提示eclipse无法打开,需要安装jre jdk,终端执行命令:

sudo apt-get install openjdk-7-jre openjdk-7-jdk

2、eclipse CDT zylincdt插件

打开eclipse CDT,选择help->Install New Software

在弹出的对话框,点击Add…按钮。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

名称填写:  zylincdt

URL填写:  http://opensource.zylin.com/zylincdt

如何使用eclipse与jLink V8调试exynos 4412 u-boot

然后选中软件包,一直下一步,直到安装完成。根据网络环境的不同,这一步大约需要5-10分钟。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

3、jLink驱动:https://www.segger.com/jlink-software.html

我的jLink是jLink V8,这里需要确定您的jLink可以联网升级固件,固件过低可能无法调试Cortex-A9内核。

根据自己平台选择驱动下载。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

安装过程不再赘述。

安装完成之后,会有以下几个程序,

如何使用eclipse与jLink V8调试exynos 4412 u-boot

好像windows平台上的工具要比Mac的多。

4、gdb:https://launchpad.net/gcc-arm-embedded/+download

注意:以eclipse的安装平台为标准,如果你的eclipse是直接安装在Linux下的,那么你可以直接使用开发板光盘里交叉编译工具底下的这个程序:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

而无需重复下载。

其它情况:在windows、Mac上安装eclipse,均需要打开 https://launchpad.net/gcc-arm-embedded/+download 下载交叉gdb。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

下载完成之后,解压到任意位置均可。

-----------------------准备阶段完成-----------------------

下面介绍eclipse怎么通过gdb调试u-boot。

1、从服务器拉取u-boot源码

假设你已经在服务器上完成了uboot的编译产生了elf文件。在这里我使用transmit(FTP工具)从服务器拉取源码目录到本地任意位置。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

2、在eclipse里新建工程

如何使用eclipse与jLink V8调试exynos 4412 u-boot

如何使用eclipse与jLink V8调试exynos 4412 u-boot

然后左侧导航栏会出现源码树:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

3、设置调试参数

右击项目文件夹,找到调试参数设置:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

new一个本地Zylin调试:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

找到elf文件:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

如何使用eclipse与jLink V8调试exynos 4412 u-boot

设置初始化命令,这里可能需要进一步讨论,在这里我们先使用这一段吧,随后我会进行其他命令的测试。

# connect to the J-Link gdb server
target remote localhost:2331
# Reset the target
monitor reset
monitor sleep 10
# Setup GDB for faster downloads
#set remote memory-write-packet-size 1024
set remote memory-write-packet-size 4096
set remote memory-write-packet-size fixed
monitor speed 12000
load
break _start

如何使用eclipse与jLink V8调试exynos 4412 u-boot

还需要设置一下源码目录,否则调试时候会提示找不到源码文件:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

4、启动gdb-server

注意:每次调试之前需要保证4412的CPU处于halt状态。

方法:板子启动后,uboot读秒结束之前按任意键使4412进入uboot界面,而不是启动内核,启动内核后jlink可能无法使4412暂停住。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

打开JLinkExe,CPU会被成功识别,这一步至关重要,不能识别CPU的话可能是由于jlink固件版本过低,或者硬件连接有问题。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

我们使用halt命令停止CPU:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

退出JLinkExe。

打开JLinkGDBServer,成功的话,会显示等待gdb连接:

如何使用eclipse与jLink V8调试exynos 4412 u-boot

5、回到eclipse执行调试

直接点击小虫子开始Debug

如何使用eclipse与jLink V8调试exynos 4412 u-boot

寄存器的值被成功读出,可以进行单步调试了,enjoy。

如何使用eclipse与jLink V8调试exynos 4412 u-boot

需要解决的问题:

1、在这里我没有认真研究gdb的初始化命令,现在只是可以运行,还需要进行进一步修改。

2、代码的运行地址好像有问题,gdb-server总是提示无法读取某些位置,等检查一下源码,重定位代码后再试。

3、可能需要在调试阶段对CPU进行降频处理,否则jlink很可能会停不住CPU(经验判断)。

4、最担心的问题还是jlink v8能否完美支持A9的调试,但至今还未发现问题。

以上是“如何使用eclipse与jLink V8调试exynos 4412 u-boot”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/220057.html

(0)
上一篇 2022年1月2日
下一篇 2022年1月2日

相关推荐

发表回复

登录后才能评论