Windows下基于嵌入式Eclipse + GDB + JLink 对JZ2440S3C2440mini2440 进行裸机程序在SDRAM上的调试

Windows下基于嵌入式Eclipse + GDB + JLink 对JZ2440S3C2440mini2440 进行裸机程序在SDRAM上的调试,第1张

Windows下基于嵌入式Eclipse + GDB + JLink 对JZ2440/S3C2440/mini2440 进行裸机程序在SDRAM上的调试

1  工具准备

1.1 下载安装Eclipse IDE for Embedded C/C++ Developers的最新的2021-09版本,下载链接为:

https://ftp.jaist.ac.jp/pub/eclipse/oomph/epp/2021-09/R/eclipse-inst-jre-win64.exehttps://ftp.jaist.ac.jp/pub/eclipse/oomph/epp/2021-09/R/eclipse-inst-jre-win64.exe

1.2 下载安装gcc-arm-none-eabi,不要下载使用最新版,最新版结合GDB调试会出问题,下载gcc-arm-none-eabi-7-2018-q2-update版本能正常调试,下载链接为:

https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-win32-sha1.exehttps://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-win32-sha1.exe

1.3 下载安装Jlink软件,目前最新版为:Jlink_Windows_V756b_x86_64,下载地址为:

SEGGER - The Embedded Experts - Downloadshttps://www.segger.com/downloads/jlink/Jlink_Windows_V756b_x86_64.exe

2  Eclipse调试配置

   本教程直接使用s3c2440的SDRAM进行调试,开始地址为:0x30000000(程序链接起始地址),需要对Eclipse进行调试设置,Eclipse配置交叉编译环境很简单,在此不做赘述,调试设置参照下列图片。

2.1 第一步

 

2.2 第二步

其中:

①指定JlinkGDBServerCL.exe的路径。

②指定设备类型;

③S3C2440不支持SWD,选JTAG

④指定arm-none-eabi-gdb.exe的路径,本机为:C:Program Files (x86)GNU Tools ARM Embedded7 2018-q2-updatebinarm-none-eabi-gdb.exe,请根据实际安装路径进行设置。

⑤因为要在SDRAM中进行调试,所以在调试运行程序之前要使用GDB的命令进行时钟以及SDRAM的初始化,否则无法正常在SDRAM中进行调试,详细的命令如下:

target remote localhost:2331
monitor reset
monitor halt
monitor speed 8000
monitor endian little
monitor reg cpsr = 0xd3

#WDT
monitor memU32 0x53000000 = 0x00000000      #WTCON
#PLL
monitor memU32 0x4C000000 = 0xFFFFFFFF      #LOCKTIME
monitor memU32 0x4C000004 = 0x0005C011      #MPLLCON
monitor memU32 0x4C000008 = 0x00038022      #UPLLCON
monitor memU32 0x4C00000C = 0x00FFFFF0      #CLKCON
monitor memU32 0x4C000010 = 0x00000004      #CLKSLOW
monitor memU32 0x4C000014 = 0x00000005      #CLKDIVN
monitor memU32 0x4C000018 = 0x00000000      #CAMDIVN
#MEMCTRL
monitor memU32 0x48000000 = 0x22011110      #BWSCON
monitor memU32 0x48000004 = 0x00000700      #BANK0-5
monitor memU32 0x48000008 = 0x00000700      
monitor memU32 0x4800000c = 0x00000700
monitor memU32 0x48000010 = 0x00000700
monitor memU32 0x48000014 = 0x00000700
monitor memU32 0x48000018 = 0x00000700
monitor memU32 0x4800001C = 0x00018005      #BANK6-7
monitor memU32 0x48000020 = 0x00018005
monitor memU32 0x48000024 = 0x008C07A3      #REFRESH
monitor memU32 0x48000028 = 0x000000B1      #BANKSIZE
monitor memU32 0x4800002C = 0x00000030      #MRSRB6-7
monitor memU32 0x48000030 = 0x00000030

break main

 

 

2.3 第三步 

⑥在SDRAM中进行调试需要勾选。

⑦不要勾选,否则执行调试后,不能回到调试起点位置。

3  调试效果

 

 4 参考

本文参考文章:(52条消息) eclipse 配合 Jlink Gdb 工具开发_Etual的专栏-CSDN博客https://blog.csdn.net/etual/article/details/8238572衷心感谢文章作者。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5481106.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存