zoukankan      html  css  js  c++  java
  • 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

     

  • 相关阅读:
    Winform开发框架的业务对象统一调用方式
    淘宝API开发系列---阿里.聚石塔.开放平台的使用
    基于MVC4+EasyUI的Web开发框架形成之旅--权限控制
    Winform开发框架之附件管理应用
    Winform开发框架主界面设计展示
    基于MVC4+EasyUI的Web开发框架形成之旅--基类控制器CRUD的操作
    基于MVC4+EasyUI的Web开发框架形成之旅--框架总体界面介绍
    基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用
    基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用
    在Winform开发框架中,利用DevExpress控件实现数据的快速录入和选择
  • 原文地址:https://www.cnblogs.com/zzb-Dream-90Time/p/9597064.html
Copyright © 2011-2022 走看看