1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
Eclipse调试U-Boot ——西伯利亚的风 使用Eclipse调试U-Boot非常方便,也非常有必要。韦东山老师已经写了Eclipse+OpenOCD(OpenJtag)调试U-Boot的说明书。这里就不再重复设置过程了。这里分析一下关键技术。 在Eclipse设置过程中,需要设置开发板的初始化代码,在Eclipse里针对S3C2440的初始化为s3c2440_gdb.init,主要完成关闭看门狗、屏蔽中断、设置系统时钟、初始化SDRAM。如果使用别的芯片,比如S3C2410、PXA270等,则需要修改s3c2440_gdb.init文件,以完成相应芯片的初始化。 调试U-Boot时,需要去掉代码重定位这一步,否则调试不了,也就是说,直接将编译好的u-boot下载到内存中,然后使用Eclipse在内存中调试u-boot。使用Eclipse调试u-boot时,会自动完成u-boot.bin的加载(load)。 网上下载的u-boot直接使用Eclipse+OpenOCD是调试不了的,需要在开发板的配置文件smdk2410.h ( 路径:include/configs/smdk2410.h,为了方便,本人直接以smdk2410为模板修改,对于Jz2440开发板自带的u-boot配置文件是include/configs/100ask24x0.h)中增加宏定义: #define CONFIG_SKIP_LOWLEVEL_INIT 1 #define CONFIG_SKIP_RELOCATE_UBOOT 1 以跳过重定位代码。 本人自己精简了一个start.S,去除了重定位代码,效果与配置文件smdk2410.h增加两条宏定义语句一样。使用此文件直接替换start.S(cpu/ARM920t/start.S)即可实现在Eclipse中调试。先将原来的start.S(cpu/arm920t/start.S)保存起来,然后使用精简的start.S替换原来的start.S,编译,重新生成u-boot,在Eclipse中使用新生成的u-boot调试u-boot源码(PC 上运行Eclipse,使用OpenJtag连接开发板),调试完毕,将原来的start.S还原,再次编译,此时生成的u-boot才可以下载到开发板上实际运行。 精简的start.S主要完成CPU模式设置、关闭看门狗、禁止中断等功能,具体流程图如图1.1所示。 图1.1 精简start.S 流程图 大家使用Eclipse调试程序时,遇到了什么问题,也可以在下面跟帖,最好有详细描述+截图(Eclipse调试界面截图),我会尽量回复大家,我回复不了的,那就让群里面的高手解答,实在解决不了的,那就只有找韦东山大师了! 附件: 精简的start.S
|
|
相关推荐
2个回答
|
|
期待更多好帖
|
|
|
|
好帖子 顶
|
|
|
|
只有小组成员才能发言,加入小组>>
197个成员聚集在这个小组
加入小组为什么点亮LED的例子放在NORFlash上跑会出现奇怪的现象?
2181 浏览 6 评论
1983 浏览 5 评论
韦东山老师推出的《玩转ARM裸机实战》课程将帮你以上问题一扫而光!
4541 浏览 1 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 13:31 , Processed in 0.674333 second(s), Total 80, Slave 61 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号