查看入门指南的源代码
←
入门指南
跳转至:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
你刚才请求的操作只对属于该用户组的用户开放:
用户
您可以查看并复制此页面的源代码:
==调试SylixOS== ===增加调试实例=== ---- :关闭上面的Qemu虚拟机程序。 :先选中bspmini2440工程,然后点击调试工具栏[[文件:sylixide_newdebug.png]] 的臭虫图标的下拉的Debug Configurations…菜单,将弹出如下的调试配置对话框: [[文件:sylixide_newdebugzylin.png]] :双击Zylin Embedded debug(Native),将增加一个名为bspmini2440 Default的实例: [[文件:sylixide_newzylindebug.png]] ===修改调试配置=== ---- :切换到Debugger选项卡,将GDB Debugger修改为 arm-none-eabi-gdb :将Stop on startup at修改为 reset [[文件:sylixide_debugconfig.png]] :切换到Commands选项卡,将Initalize commands修改为如下的内容: target remote localhost:1234 load [[文件:sylixide_debugcommands.png]] :最后点击Apply按钮应用修改,点击Debug按钮开始调试。 ===开始调试=== ---- :mini2440_debug.bat的内容如下: start qemu-system-arm.exe -s -S -M mini2440 -show-cursor -serial telnet:127.0.0.1:1200,server -mtdblock nand.bin -serial file:virtualkbd -net nic -net tap,ifname=virtual start putty.exe telnet://127.0.0.1:1200/ :mini2440_debug.bat和mini2440_run.bat的区别在于mini2440_debug.bat并没有指定kernel镜像文件(依靠上面的 load 命令下载 kernel),但增加 -s -S 选项。 :执行mini2440_debug.bat批处理文件,如果出现如下的windows安全警报,请点击允许访问按钮。 [[文件:sylixide_netwarnning.png]] :稍等数秒,Eclipse将控制arm-none-eabi-gdb连接到Qemu虚拟机,并将SylixOS的相关节区section加载到mini2440开发板内存的相应位置: target remote localhost:1234 Remote debugging using localhost:1234 0x00000000 in ?? () load Loading section .text, size 0x32f6fc lma 0x30000000 Loading section .ARM.exidx, size 0x8 lma 0x3032f6fc Loading section .ctors, size 0x8 lma 0x3032f704 Loading section .dtors, size 0x8 lma 0x3032f70c Loading section .data, size 0x282cc lma 0x3032f714 Start address 0x30000000, load size 3504608 Transfer rate: 497 KB/sec, 2028 bytes/write. :现在你可以通过图形化的方式调试SylixOS系统了: [[文件:sylixide_debug.png]] ===调试真机=== ---- :如果您需要使用硬件调试器(如J-Link edu)调试真实的mini2440开发板。 :先使用JTAG连接线和JTAG转接板连接J-Link到mini2440开发板的JTAG接口,然后打开J-Link GDB Server软件。 :目标设备Target device选择Samsung公司的S3C2440A芯片,并选择小端Little endian。 :目标接口Target interface选择JTAG。 :速度Speed选择自动选择Auto selection,如下图: [[文件:sylixide_jlink.png]] :最后,点击OK按钮,J-Link GDB Server将开始工作: [[文件:sylixide_jlinkgdbserver.png]] :将bspmini2440/S3C2440.gdbinit文件的内容复制到bspmini2440 Default调试实例的Commands选项卡的Initalize commands内,如下图: [[文件:Sylixide_debugconfigjlink.png]] :bspmini2440/S3C2440.gdbinit文件的内容如下: #connect to J-Link GDB Server target remote localhost:2331 #reset target monitor reset #select endian monitor endian little #initialize memory controler monitor long 0x53000000 = 0x00000000 monitor long 0x4a000008 = 0xFFFFFFFF monitor long 0x4a00001c = 0x00007FFF monitor long 0x4c000000 = 0x00FFFFFF monitor long 0x4c000014 = 0x00000005 monitor long 0x4c000004 = 0x0007F021 monitor long 0x48000000 = 0x12111110 monitor long 0x48000004 = 0x00000700 monitor long 0x48000008 = 0x00000700 monitor long 0x4800000c = 0x00000700 monitor long 0x48000010 = 0x00000700 monitor long 0x48000014 = 0x00000700 monitor long 0x48000018 = 0x00000700 monitor long 0x4800001c = 0x00018005 monitor long 0x48000020 = 0x00018005 monitor long 0x48000024 = 0x009804EC monitor long 0x48000028 = 0x000000B2 monitor long 0x4800002c = 0x00000030 monitor long 0x48000030 = 0x00000030 #wait for moment monitor sleep 20 #load the debug image load #set cpu to svc mode(on cpu reset) monitor reg cpsr = 0xd3 #debug in ram monitor reg pc = 0x30000000 #debug begin :最后,点击Debug按钮开始调试。
返回
入门指南
。
个人工具
登录
名字空间
页面
讨论
变种
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
最近更改
随机页面
工具
链入页面
相关更改
特殊页面