Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6383570
  • 博文数量: 579
  • 博客积分: 1548
  • 博客等级: 上尉
  • 技术积分: 16634
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-12 15:29
个人简介

http://www.csdn.net/ http://www.arm.com/zh/ https://www.kernel.org/ http://www.linuxpk.com/ http://www.51develop.net/ http://linux.chinaitlab.com/ http://www.embeddedlinux.org.cn http://bbs.pediy.com/

文章分类

全部博文(579)

文章存档

2018年(18)

2015年(91)

2014年(159)

2013年(231)

2012年(80)

分类: 嵌入式

2014-08-12 19:05:51

操作系统:Debian7.5
MCU:arm920t

前言:
    在移植过程中,要使用到许多技巧。这里说一下如何使用jlink command来调试程序。

一,复位开发板
    #r halt                   // 复位,并停在第一个指令处
    #step                    // 单步执行
    


二,如何反汇编uboot
    在调试的时候,常常需要查看汇编代码。
    #arm-linux-objdump -D u-boot > u-boot.dis
    



三,查看反汇编文件,设置断点
    在调试的时候,先尝试判断处程序的异常所在。
    以移植新uboot为例:
    1,首先要查看start.s 文件,判断时钟频率等是否正确。
    2,在考虑 内存初始化 是否存在问题
    3,考虑程序保存在哪里,nand or nor。
    4,程序的复制到内存中是否有问题。
    。。。

    以判断内存初始化是否成功:
    1,在内存初始化函数后设置断点
            #SetBP 0xB0
    2,读读某个内存地址的数据
            #mem 0x30000000 4
    3,往某个内存地址写入数据,再读出,看看数据是否成功写入。
            #w4 0x30000000 0x12345678
    

    判断:此时内存初始化应该是不成功。



阅读(9086) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~