• jz2440使用openjtag+openocd+eclipse调试【学习笔记】


    平台:jz2440

    作者:庄泽彬(欢迎转载,请注明作者)

    说明:韦东山二期视频学习笔记

    交叉编译工具:arm-linux-gcc (GCC) 3.4.5

    eclipse版本:eclipse-cpp-luna-SR2-win32-x86_64

    PC环境:win10

    说明:本文主要说明如何使用openjtag调试工具,进行单步调试。

    一、安装openocd、交叉编译工具链

    切换到图1所示的目录依次安装01.OpenOCD with GUI setup.exe、02.yagarto-bu-2.18_gcc-4.2.2-c-c++_nl-1.16.0_gi-6.8.50_20080408.exe、03.yagarto-tools-20070303-setup.exe如果安装失败就使用管理员的模式安装。

    图1

    二、安装eclipse

      由于资料提供的eclipse是32版本的,因此我们需要重新下载eclipse,并且安装zylin插件。https://www.eclipse.org/downloads/packages/release/luna/r/eclipse-ide-cc-developers在这个链接下载window64位版本的eclipse,本文采用的是eclipse-cpp-luna-SR2-win32-x86_64这个版本的eclipse,之前折腾了一段时间发现最新版本的eclipse安装zyin会失败,因此不建议使用最新版本的eclipse。还有需要注意的就是jdk版本太新也会出问题,之前采用jdk10,一直出了很多问题,后面改用jdk8解决问题。一定要注意jdk与eclipse不要采用最新版本。

    三、使用openocd进行调试:

      3.1打开openocd软件

      

     

     

    图2

      3.2 Work Dir切换到存放要调试的二进制文件所在的目录,注意不要带有中文字符,点击connetc,就会识别设备,之后在点击telnent,会弹出图4的界面,如果系统没有开启telent,自己百度如果在win10打开telnet服务,切换到telnet窗口我们就可以通过openjtag调试程序.

     图3

    图4

       3.3调试常用的命令

      poll:       查询板子的当前状态

      halt:         暂停程序的运行,烧录软件之前需要暂停。

      load_image: 烧录指定的镜像文件

      resum 0 :      从0地址开始运行

      step :          进行单步调试

      reg:               查看寄存器的值

      使用这种方法调试,每调试一步就得使用reg查看寄存器的值,要结合反汇编文件一起分析,使用这种方法相对来说比较麻烦.

      

      

      图5

      

    图6

       3.4使用openjtag+openocd+elipse进行源码级别的单步调试。这次的实验是sdram上运行的,因此,我们需要先烧录图7所示的init.bin文件,先对sdram进行初始化,才能够进行实验。之后打开eclipse。

      

      图7

       打开eclipse进行工程的相关配置:

      File->NEW->Project新建一个c project,设置工程名字以及工程的源码以及镜像文件所在的目录,之后点击finish。图14是最后的实验结果,能够成功的使用openjtag进行单步调试。

      

      图8

    图9

      如图10所示,设置一个debug的配置选项,之后按照图10,图11,图12,图13,进行配置,配置完之后点击图13进行调试。

    图10

    图11

    图12

    图13

     

     图14

     

  • 相关阅读:
    (转载)Bonding技术指南
    Linux配置虚拟地址
    VB6之写注册表
    Tomcat集群搭建
    VBS连接远程Oracle
    机器学习 目标函数,损失函数
    深度学习理解内容 初
    leetcode 39. Combination Sum
    leetcode 33. Search in Rotated Sorted Array
    leetcode 29. Divide Two Integers
  • 原文地址:https://www.cnblogs.com/zzb-Dream-90Time/p/9597064.html
Copyright © 2020-2023  润新知