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衷心感谢文章作者。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)