6410如何在u-boot中使用点灯测试法调试程序

我的u-boot版本为u-boot-2010.03,在修改u-boot网卡驱动的过程中,老是不能正确的ping通我的ubuntu虚拟机,所以我想测试一下u-boot是如何去初始化网卡,并配置网卡参数的。刚开始的时候我想利用puts(“Hello,I'm here!\n”)或者printf(Hello,I'm here!\n)函数通过串口打印语句的方法,来查看u-boot运行到哪一步了,但是实际写入后才发现不仅没有打印该语句,同时串口没有了任何的输出。经过分析发现,该语句在串口的初始化之前,所以打印测试语句的方法是行不通的。没办法,只能回到最原始的点灯程序来调试。

        通过搜索寄存器的定义发现在include/asm-arm/arch-s3c64xx/s3c64106410.h文件中对6410常用的寄存器进行了定义。于是点灯测试的程序就很容易写出来了,如下:

            GPMCON_REG = 0x1111;                //设置GPMCON寄存器为输出引脚
            GPMDAT_REG = (~(1<<2));             //设置GPMDAT寄存器的bit[2]为低电平

同时不要忘记在插入点灯代码的文件头部包含#include <asm-arm/arch-s3c64xx/s3c6410.h>该文件。于是成功点灯!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值