Sysprogs forums › Forums › VisualGDB › OpenOCD and LPC1549 issues
- This topic has 27 replies, 2 voices, and was last updated 7 years, 11 months ago by
JB_Lightcon.
-
AuthorPosts
-
March 22, 2017 at 13:43 #10747
JB_Lightcon
ParticipantHi,
I’m using VisualGDB (5.1 buil 712) with OpenOCD. I have my own settings for LPC15xx target and manually I can run and halt program execution from command line. But when I try to start debug session from Visual Studio it just flashes image and stops – no running or stepping is performed. I can verify that program is written to flash, because I change LED blinking period in source code, run manually OpenOCD server and LED blink differently, but from Visual Studio it just stuck at SystemInit().
Has anyone experienced similar issues? Does anyone work with OpenOCD at all?
March 22, 2017 at 22:05 #10752support
KeymasterHi,
OpenOCD is the recommended debug method for embedded targets, so it should normally work.
Please try enabling GDB logging via VisualGDB Project Properties -> Advanced GDB Settings and post the full gdb log along with the OpenOCD output here. It should explain what is going on and why the target is not resumed.
March 23, 2017 at 10:19 #10779JB_Lightcon
ParticipantLog:
<…>
——————- Memory utilization report ——————-
Used FLASH: 2480 bytes out of 256KB (0%)
Used RAM: 0 bytes out of 36KB (0%)OpenOCD view output:
Open On-Chip Debugger 0.9.0 (2016-10-14) [https://github.com/sysprogs/openocd]
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
adapter speed: 3000 kHz
Info : FTDI SWD mode enabled
adapter speed: 1000 kHz
adapter speed: 10 kHz
adapter_nsrst_delay: 200
cortex_m reset_config sysresetreq
Info : clock speed 10 kHz
Info : SWD DPIDR 0x2ba01477
Info : lpc15xx.cpu: hardware has 6 breakpoints, 4 watchpoints
lpc15xx.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0
VisualGDB_OpenOCD_Ready
Info : accepting ‘gdb’ connection on tcp/61889
lpc15xx.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0
lpc15xx.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0
Warn : Verification will fail since checksum in image (0x00000000) to be written to flash is different from calcula
ted vector checksum (0xfdff417a).
Warn : To remove this warning modify build tools on developer PC to inject correct LPC vector checksum.
lpc15xx.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0Anything more that could help?
March 23, 2017 at 17:50 #10787support
KeymasterHi,
Sorry, the log you attached was the build log, not debug log. Please follow the instructions described here to capture a debug log.
March 24, 2017 at 14:03 #10792JB_Lightcon
ParticipantI see no “Advanced GDB Settings” ir VisualGDB project settings – maybe newer version is required. But this is what I see in “View GDB Log from Last Session”:
C:\SysGCC\arm-eabi\bin\arm-eabi-gdb.exe –interpreter mi M:\CodeRepos\Zeta-Playground\TestOCD\TestOcd\TestOcd/Debug/TestOcd.elf
[ 0 ms] -gdb-version
[ 22 ms] =thread-group-added,id=”i1″
[ 22 ms] ~”GNU gdb (GDB) 7.10.1\n”
[ 22 ms] ~”Copyright (C) 2015 Free Software Foundation, Inc.\n”
[ 22 ms] ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
[ 23 ms] ~”This GDB was configured as \”–host=i686-pc-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
[ 23 ms] ~”\nFor bug reporting instructions, please see:\n”
[ 23 ms] ~”<http://www.gnu.org/software/gdb/bugs/>.\n”
[ 23 ms] ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n”
[ 23 ms] ~”For help, type \”help\”.\n”
[ 23 ms] ~”Type \”apropos word\” to search for commands related to \”word\”…\n”
[ 24 ms] ~”Reading symbols from M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd/Debug/TestOcd.elf…”
[ 28 ms] ~”done.\n”
[ 29 ms] ~”GNU gdb (GDB) 7.10.1\n”
[ 30 ms] ~”Copyright (C) 2015 Free Software Foundation, Inc.\n”
[ 30 ms] ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
[ 30 ms] ~”This GDB was configured as \”–host=i686-pc-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
[ 31 ms] ~”\nFor bug reporting instructions, please see:\n”
[ 31 ms] ~”<http://www.gnu.org/software/gdb/bugs/>.\n”
[ 31 ms] ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n”
[ 31 ms] ~”For help, type \”help\”.\n”
[ 31 ms] ~”Type \”apropos word\” to search for commands related to \”word\”.\n”
[ 31 ms] ^done
[ 31 ms] -list-features
[ 32 ms] ^done,features=[“frozen-varobjs”,”pending-breakpoints”,”thread-info”,”data-read-memory-bytes”,”breakpoint-notifications”,”ada-task-info”,”language-option”,”info-gdb-mi-command”,”undefined-command-error-code”,”exec-run-start-option”]
[ 32 ms] -gdb-set stop-on-solib-events 1
[ 32 ms] ^done
[ 32 ms] -gdb-set disassembly-flavor intel
[ 32 ms] ^error,msg=”No symbol \”disassembly\” in current context.”
[ 32 ms] -gdb-set print demangle off
[ 32 ms] ^done
[ 33 ms] -break-insert -f main
[ 43 ms] ^done,bkpt={number=”1″,type=”breakpoint”,disp=”keep”,enabled=”y”,addr=”0x00000928″,func=”main()”,file=”LEDBlink.cpp”,fullname=”M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\LEDBlink.cpp”,line=”29″,thread-groups=[“i1″],times=”0″,original-location=”main”}
[ 44 ms] set remotetimeout 60
[ 54 ms] &”set remotetimeout 60\n”
[ 54 ms] =cmd-param-changed,param=”remotetimeout”,value=”60″
[ 54 ms] ^done
[ 54 ms] target remote :61889
[ 54 ms] &”target remote :61889\n”
[ 70 ms] ~”Remote debugging using :61889\n”
[ 1427 ms] =thread-group-started,id=”i1″,pid=”42000″
[ 1427 ms] =thread-created,id=”1″,group-id=”i1″
[ 1532 ms] ~”0x030000b8 in ?? ()\n”
[ 1532 ms] *stopped,frame={addr=”0x030000b8″,func=”??”,args=[]},thread-id=”1″,stopped-threads=”all”
[ 1558 ms] ^done
[ 1558 ms] info shared
[ 1559 ms] &”info shared\n”
[ 1559 ms] ~”No shared libraries loaded at this time.\n”
[ 1559 ms] ^done
[ 1559 ms] mon halt
[ 1570 ms] &”mon halt\n”
[ 1614 ms] ^done
[ 1614 ms] mon reset init
[ 1614 ms] &”mon reset init\n”
[ 2689 ms] @”lpc15xx.cpu: target state: halted\n”
[ 2689 ms] @”target halted due to debug-request, current mode: Thread \n”
[ 2690 ms] @”xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0\n”
[ 2760 ms] ^done
[ 2760 ms] load
[ 2760 ms] &”load\n”
[ 5617 ms] ~”Loading section .isr_vector, size 0xfc lma 0x0\n”
[ 5643 ms] +download,{section=”.isr_vector”,section-size=”252″,total-size=”46462″}
[ 5643 ms] +download,{section=”.isr_vector”,section-sent=”252″,section-size=”252″,total-sent=”252″,total-size=”46462″}
[ 5644 ms] ~”Loading section .text, size 0x8ac lma 0xfc\n”
[ 5644 ms] +download,{section=”.text”,section-size=”2220″,total-size=”46462″}
[ 5644 ms] ~”Loading section .init_array, size 0x4 lma 0x9a8\n”
[ 5644 ms] +download,{section=”.init_array”,section-size=”4″,total-size=”46462″}
[ 5644 ms] ~”Loading section .fini_array, size 0x4 lma 0x9ac\n”
[ 5644 ms] +download,{section=”.fini_array”,section-size=”4″,total-size=”46462″}
[ 25168 ms] ~”Start address 0x784, load size 2480\n”
[ 25229 ms] ~”Transfer rate: 110 bytes/sec, 620 bytes/write.\n”
[ 25251 ms] ^done
[ 25287 ms] -data-evaluate-expression “sizeof(void *)”
[ 25291 ms] ^done,value=”4″
[ 25291 ms] -data-evaluate-expression “sizeof(int)”
[ 25291 ms] ^done,value=”4″
[ 25292 ms] -data-evaluate-expression “sizeof(short)”
[ 25292 ms] ^done,value=”2″
[ 25292 ms] -data-evaluate-expression “sizeof(long)”
[ 25292 ms] ^done,value=”4″
[ 25292 ms] -data-evaluate-expression “sizeof(long long)”
[ 25293 ms] ^done,value=”8″
[ 25293 ms] -data-evaluate-expression “sizeof(char)”
[ 25293 ms] ^done,value=”1″
[ 25293 ms] -data-evaluate-expression “sizeof(wchar_t)”
[ 25293 ms] ^error,msg=”No symbol \”wchar_t\” in current context.”
[ 25293 ms] -data-evaluate-expression “sizeof(float)”
[ 25294 ms] ^done,value=”4″
[ 25294 ms] -data-evaluate-expression “sizeof(double)”
[ 25294 ms] ^done,value=”8″
[ 25294 ms] -data-evaluate-expression “sizeof(long double)”
[ 25294 ms] ^done,value=”8″
[ 25343 ms] info target
[ 25344 ms] &”info target\n”
[ 25344 ms] ~”Symbols from \”M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\Debug\\TestOcd.elf\”.\n”
[ 25344 ms] ~”Remote serial target in gdb-specific protocol:\n”
[ 25345 ms] ~”Debugging a target over a serial line.\n”
[ 25345 ms] ~”\tWhile running this, GDB does not access memory from…\n”
[ 25345 ms] ~”Local exec file:\n”
[ 25345 ms] ~”\t`M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\Debug\\TestOcd.elf’, file type elf32-littlearm.\n”
[ 25345 ms] ~”\tEntry point: 0x784\n”
[ 25345 ms] ~”\t0x00000000 – 0x000000fc is .isr_vector\n”
[ 25345 ms] ~”\t0x000000fc – 0x000009a8 is .text\n”
[ 25345 ms] ~”\t0x000009a8 – 0x000009ac is .init_array\n”
[ 25345 ms] ~”\t0x000009ac – 0x000009b0 is .fini_array\n”
[ 25346 ms] ~”\t0x02000000 – 0x02000000 is .data\n”
[ 25346 ms] ~”\t0x02000000 – 0x02000024 is .bss\n”
[ 25346 ms] ^done
[ 25370 ms] -data-evaluate-expression “&_estack”
[ 25376 ms] ^done,value=”0x2009000″
[ 25382 ms] -var-create – * “*((void **)0x2008ffc)”
[ 25413 ms] ^done,name=”var1″,numchild=”0″,value=”0x0 <g_pfnVectors>”,type=”void *”,has_more=”0″
[ 25413 ms] -var-assign “var1″ 0x7253f8c4
[ 25443 ms] ^done,value=”0x7253f8c4”
[ 25444 ms] -data-evaluate-expression “\*\(\(void\ \*\*\)0x2008ffc\)”
[ 25469 ms] ^done,value=”0x0 <g_pfnVectors>”
[ 28585 ms] -exec-continue
[ 28587 ms] ~”Note: automatically using hardware breakpoints for read-only addresses.\n”
[ 28609 ms] ^running
[ 28610 ms] *running,thread-id=”all”
[ 308602 ms] ~”\nProgram received signal ”
[ 308602 ms] ~”SIGINT, Interrupt.\n”
[ 308620 ms] ~”0x030002fe in ?? ()\n”
[ 308620 ms] *stopped,reason=”signal-received”,signal-name=”SIGINT”,signal-meaning=”Interrupt”,frame={addr=”0x030002fe”,func=”??”,args=[]},thread-id=”1″,stopped-threads=”all”
[ 308620 ms] -gdb-exit
[ 308630 ms] ^exit
[ 308634 ms] =thread-group-exited,id=”iMarch 25, 2017 at 20:03 #10798support
KeymasterHi,
Thanks for the detailed log. It looks like the _estack value in your image does not match the one in our linker script and it ends up pointing outside the RAM area on your chip, causing runtime errors. Please fix the value of _estack so that it points at the actual end of RAM.
VisualGDB should normally show a warning that the end of stack is not writable; if this does not happen, please let us know and we will investigate and fix.
March 27, 2017 at 07:53 #10811JB_Lightcon
ParticipantTried 0x2002000, 0x2004000 and 0x2008000 addresses for _estack with no luck. All those are within SRAM range from LPC1549 datasheet, still no step by step debug. Log:
C:\SysGCC\arm-eabi\bin\arm-eabi-gdb.exe –interpreter mi M:\CodeRepos\Zeta-Playground\TestOCD\TestOcd\TestOcd/Debug/TestOcd.elf
[ 0 ms] -gdb-version
[ 23 ms] =thread-group-added,id=”i1″
[ 23 ms] ~”GNU gdb (GDB) 7.10.1\n”
[ 23 ms] ~”Copyright (C) 2015 Free Software Foundation, Inc.\n”
[ 24 ms] ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
[ 24 ms] ~”This GDB was configured as \”–host=i686-pc-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
[ 24 ms] ~”\nFor bug reporting instructions, please see:\n”
[ 24 ms] ~”<http://www.gnu.org/software/gdb/bugs/>.\n”
[ 24 ms] ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n”
[ 25 ms] ~”For help, type \”help\”.\n”
[ 25 ms] ~”Type \”apropos word\” to search for commands related to \”word\”…\n”
[ 25 ms] ~”Reading symbols from M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd/Debug/TestOcd.elf…”
[ 29 ms] ~”done.\n”
[ 30 ms] ~”GNU gdb (GDB) 7.10.1\n”
[ 31 ms] ~”Copyright (C) 2015 Free Software Foundation, Inc.\n”
[ 31 ms] ~”License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \”show copying\”\nand \”show warranty\” for details.\n”
[ 31 ms] ~”This GDB was configured as \”–host=i686-pc-mingw32 –target=arm-eabi\”.\nType \”show configuration\” for configuration details.”
[ 31 ms] ~”\nFor bug reporting instructions, please see:\n”
[ 32 ms] ~”<http://www.gnu.org/software/gdb/bugs/>.\n”
[ 32 ms] ~”Find the GDB manual and other documentation resources online at:\n<http://www.gnu.org/software/gdb/documentation/>.\n”
[ 32 ms] ~”For help, type \”help\”.\n”
[ 32 ms] ~”Type \”apropos word\” to search for commands related to \”word\”.\n”
[ 32 ms] ^done
[ 32 ms] -list-features
[ 33 ms] ^done,features=[“frozen-varobjs”,”pending-breakpoints”,”thread-info”,”data-read-memory-bytes”,”breakpoint-notifications”,”ada-task-info”,”language-option”,”info-gdb-mi-command”,”undefined-command-error-code”,”exec-run-start-option”]
[ 33 ms] -gdb-set stop-on-solib-events 1
[ 33 ms] ^done
[ 33 ms] -gdb-set disassembly-flavor intel
[ 33 ms] ^error,msg=”No symbol \”disassembly\” in current context.”
[ 33 ms] -gdb-set print demangle off
[ 34 ms] ^done
[ 34 ms] -break-insert -f main
[ 44 ms] ^done,bkpt={number=”1″,type=”breakpoint”,disp=”keep”,enabled=”y”,addr=”0x00000928″,func=”main()”,file=”LEDBlink.cpp”,fullname=”M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\LEDBlink.cpp”,line=”29″,thread-groups=[“i1″],times=”0″,original-location=”main”}
[ 45 ms] set remotetimeout 60
[ 45 ms] &”set remotetimeout 60\n”
[ 45 ms] =cmd-param-changed,param=”remotetimeout”,value=”60″
[ 45 ms] ^done
[ 45 ms] target remote :51002
[ 45 ms] &”target remote :51002\n”
[ 52 ms] ~”Remote debugging using :51002\n”
[ 1462 ms] =thread-group-started,id=”i1″,pid=”42000″
[ 1462 ms] =thread-created,id=”1″,group-id=”i1″
[ 1568 ms] ~”0x030000b8 in ?? ()\n”
[ 1568 ms] *stopped,frame={addr=”0x030000b8″,func=”??”,args=[]},thread-id=”1″,stopped-threads=”all”
[ 1594 ms] ^done
[ 1594 ms] info shared
[ 1594 ms] &”info shared\n”
[ 1594 ms] ~”No shared libraries loaded at this time.\n”
[ 1594 ms] ^done
[ 1595 ms] mon halt
[ 1605 ms] &”mon halt\n”
[ 1649 ms] ^done
[ 1649 ms] mon reset init
[ 1650 ms] &”mon reset init\n”
[ 2728 ms] @”lpc15xx.cpu: target state: halted\n”
[ 2729 ms] @”target halted due to debug-request, current mode: Thread \n”
[ 2729 ms] @”xPSR: 0x01000000 pc: 0x030000b8 msp: 0x02001fe0\n”
[ 2800 ms] ^done
[ 2800 ms] load
[ 2800 ms] &”load\n”
[ 5656 ms] ~”Loading section .isr_vector, size 0xfc lma 0x0\n”
[ 5683 ms] +download,{section=”.isr_vector”,section-size=”252″,total-size=”46462″}
[ 5683 ms] +download,{section=”.isr_vector”,section-sent=”252″,section-size=”252″,total-sent=”252″,total-size=”46462″}
[ 5683 ms] ~”Loading section .text, size 0x8ac lma 0xfc\n”
[ 5683 ms] +download,{section=”.text”,section-size=”2220″,total-size=”46462″}
[ 5684 ms] ~”Loading section .init_array, size 0x4 lma 0x9a8\n”
[ 5684 ms] +download,{section=”.init_array”,section-size=”4″,total-size=”46462″}
[ 5684 ms] ~”Loading section .fini_array, size 0x4 lma 0x9ac\n”
[ 5684 ms] +download,{section=”.fini_array”,section-size=”4″,total-size=”46462″}
[ 25269 ms] ~”Start address 0x784, load size 2480\n”
[ 25329 ms] ~”Transfer rate: 110 bytes/sec, 620 bytes/write.\n”
[ 25351 ms] ^done
[ 25445 ms] -data-evaluate-expression “sizeof(void *)”
[ 25453 ms] ^done,value=”4″
[ 25453 ms] -data-evaluate-expression “sizeof(int)”
[ 25454 ms] ^done,value=”4″
[ 25454 ms] -data-evaluate-expression “sizeof(short)”
[ 25454 ms] ^done,value=”2″
[ 25454 ms] -data-evaluate-expression “sizeof(long)”
[ 25454 ms] ^done,value=”4″
[ 25454 ms] -data-evaluate-expression “sizeof(long long)”
[ 25454 ms] ^done,value=”8″
[ 25455 ms] -data-evaluate-expression “sizeof(char)”
[ 25455 ms] ^done,value=”1″
[ 25455 ms] -data-evaluate-expression “sizeof(wchar_t)”
[ 25455 ms] ^error,msg=”No symbol \”wchar_t\” in current context.”
[ 25455 ms] -data-evaluate-expression “sizeof(float)”
[ 25455 ms] ^done,value=”4″
[ 25455 ms] -data-evaluate-expression “sizeof(double)”
[ 25455 ms] ^done,value=”8″
[ 25455 ms] -data-evaluate-expression “sizeof(long double)”
[ 25455 ms] ^done,value=”8″
[ 25512 ms] info target
[ 25517 ms] &”info target\n”
[ 25517 ms] ~”Symbols from \”M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\Debug\\TestOcd.elf\”.\n”
[ 25517 ms] ~”Remote serial target in gdb-specific protocol:\n”
[ 25517 ms] ~”Debugging a target over a serial line.\n”
[ 25517 ms] ~”\tWhile running this, GDB does not access memory from…\n”
[ 25517 ms] ~”Local exec file:\n”
[ 25518 ms] ~”\t`M:\\CodeRepos\\Zeta-Playground\\TestOCD\\TestOcd\\TestOcd\\Debug\\TestOcd.elf’, file type elf32-littlearm.\n”
[ 25518 ms] ~”\tEntry point: 0x784\n”
[ 25518 ms] ~”\t0x00000000 – 0x000000fc is .isr_vector\n”
[ 25518 ms] ~”\t0x000000fc – 0x000009a8 is .text\n”
[ 25518 ms] ~”\t0x000009a8 – 0x000009ac is .init_array\n”
[ 25518 ms] ~”\t0x000009ac – 0x000009b0 is .fini_array\n”
[ 25518 ms] ~”\t0x02000000 – 0x02000000 is .data\n”
[ 25518 ms] ~”\t0x02000000 – 0x02000024 is .bss\n”
[ 25518 ms] ^done
[ 25537 ms] -data-evaluate-expression “&_estack”
[ 25539 ms] ^done,value=”0x2004000″
[ 25539 ms] -var-create – * “*((void **)0x2003ffc)”
[ 25566 ms] ^done,name=”var1″,numchild=”0″,value=”0x39ddb05d”,type=”void *”,has_more=”0″
[ 25567 ms] -var-assign “var1″ 0x4847923d
[ 25631 ms] ^done,value=”0x4847923d”
[ 25631 ms] -data-evaluate-expression “\*\(\(void\ \*\*\)0x2003ffc\)”
[ 25648 ms] ^done,value=”0x4847923d”
[ 25648 ms] -exec-continue
[ 25648 ms] ~”Note: automatically using hardware breakpoints for read-only addresses.\n”
[ 25661 ms] ^running
[ 25661 ms] *running,thread-id=”all”
[ 47342 ms] ~”\nProgram received signal ”
[ 47342 ms] ~”SIGINT, Interrupt.\n”
[ 47359 ms] ~”0x030002fe in ?? ()\n”
[ 47360 ms] *stopped,reason=”signal-received”,signal-name=”SIGINT”,signal-meaning=”Interrupt”,frame={addr=”0x030002fe”,func=”??”,args=[]},thread-id=”1″,stopped-threads=”all”
[ 47368 ms] -stack-list-frames –thread 1
[ 47544 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 47544 ms] -stack-list-arguments –thread 1 0
[ 47554 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 47588 ms] -stack-list-frames –thread 1
[ 47596 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 47596 ms] -stack-list-arguments –thread 1 0
[ 47606 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 47607 ms] -stack-list-frames –thread 1
[ 47617 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 47617 ms] -stack-list-arguments –thread 1 0
[ 47627 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 49507 ms] -stack-select-frame 0
[ 49517 ms] ^done
[ 49517 ms] -thread-select 1
[ 49527 ms] ^done,new-thread-id=”1″,frame={level=”0″,addr=”0x030002fe”,func=”??”,args=[]}
[ 49528 ms] -break-delete 1
[ 49537 ms] ^done
[ 49537 ms] -exec-next
[ 49537 ms] 001^done
[ 49537 ms] ^error,msg=”Cannot find bounds of current function”
[ 49541 ms] -stack-list-frames –thread 1
[ 49548 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 49548 ms] -stack-list-arguments –thread 1 0
[ 49558 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 49570 ms] -stack-list-frames –thread 1
[ 49580 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 49580 ms] -stack-list-arguments –thread 1 0
[ 49590 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 49591 ms] -stack-list-frames –thread 1
[ 49601 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 49601 ms] -stack-list-arguments –thread 1 0
[ 49611 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50301 ms] -stack-select-frame 0
[ 50305 ms] ^done
[ 50305 ms] -thread-select 1
[ 50305 ms] ^done,new-thread-id=”1″,frame={level=”0″,addr=”0x030002fe”,func=”??”,args=[]}
[ 50305 ms] -exec-next
[ 50305 ms] 001^done
[ 50305 ms] ^error,msg=”Cannot find bounds of current function”
[ 50308 ms] -stack-list-frames –thread 1
[ 50317 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50317 ms] -stack-list-arguments –thread 1 0
[ 50327 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50332 ms] -stack-list-frames –thread 1
[ 50339 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50339 ms] -stack-list-arguments –thread 1 0
[ 50340 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50340 ms] -stack-list-frames –thread 1
[ 50351 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50351 ms] -stack-list-arguments –thread 1 0
[ 50351 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50771 ms] -stack-select-frame 0
[ 50773 ms] ^done
[ 50773 ms] -thread-select 1
[ 50773 ms] ^done,new-thread-id=”1″,frame={level=”0″,addr=”0x030002fe”,func=”??”,args=[]}
[ 50773 ms] -exec-next
[ 50773 ms] 001^done
[ 50773 ms] ^error,msg=”Cannot find bounds of current function”
[ 50776 ms] -stack-list-frames –thread 1
[ 50785 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50785 ms] -stack-list-arguments –thread 1 0
[ 50795 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50800 ms] -stack-list-frames –thread 1
[ 50806 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50806 ms] -stack-list-arguments –thread 1 0
[ 50816 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 50817 ms] -stack-list-frames –thread 1
[ 50827 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 50827 ms] -stack-list-arguments –thread 1 0
[ 50827 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 51699 ms] -stack-select-frame 0
[ 51706 ms] ^done
[ 51706 ms] -thread-select 1
[ 51706 ms] ^done,new-thread-id=”1″,frame={level=”0″,addr=”0x030002fe”,func=”??”,args=[]}
[ 51706 ms] -exec-next
[ 51706 ms] 001^done
[ 51707 ms] ^error,msg=”Cannot find bounds of current function”
[ 51709 ms] -stack-list-frames –thread 1
[ 51718 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 51718 ms] -stack-list-arguments –thread 1 0
[ 51728 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 51732 ms] -stack-list-frames –thread 1
[ 51739 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 51739 ms] -stack-list-arguments –thread 1 0
[ 51749 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 51750 ms] -stack-list-frames –thread 1
[ 51760 ms] ^done,stack=[frame={level=”0″,addr=”0x030002fe”,func=”??”},frame={level=”1″,addr=”0xfffffff9″,func=”<signal handler called>”},frame={level=”2″,addr=”0x000001f0″,func=”SystemInit”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/Common/startup.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\Common\\startup.c”,line=”7″},frame={level=”3″,addr=”0x000007ac”,func=”Reset_Handler”,file=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc/LPC15xx/StartupFiles/ORIGINAL_cr_startup_lpc15xx.c”,fullname=”C:\\Users\\bukys\\AppData\\Local\\VisualGDB\\EmbeddedBSPs\\arm-eabi\\com.sysprogs.arm.nxp_lpc\\LPC15xx\\StartupFiles\\ORIGINAL_cr_startup_lpc15xx.c”,line=”610″}]
[ 51760 ms] -stack-list-arguments –thread 1 0
[ 51770 ms] ^done,stack-args=[frame={level=”0″,args=[]},frame={level=”1″,args=[]},frame={level=”2″,args=[]},frame={level=”3″,args=[]}]
[ 68393 ms] -gdb-exit
[ 68400 ms] ^exit
[ 68400 ms] =thread-group-exited,id=”i1″March 28, 2017 at 04:27 #10813support
KeymasterHi,
Thanks for the updated log. The stack address now looks writable, so the problem must be caused by something else. It could be memory corruption somewhere in your code, or a hardware problem.
Can you reproduce the same behavior with the basic LEDBlink project or does it work as expected?
March 28, 2017 at 05:07 #10817JB_Lightcon
ParticipantI’m working with basic LED blink example:
#include <chip.h>
volatile unsigned long SysTickCnt;
#ifdef __cplusplus
extern “C”
#endif
void SysTick_Handler(void) {
SysTickCnt++;
}void Delay(unsigned long tick) {
unsigned long systickcnt;systickcnt = SysTickCnt;
while ((SysTickCnt – systickcnt) < tick)
;
}const uint32_t ExtRateIn = 0;
const uint32_t OscRateIn = 12000000;
const uint32_t RTCOscRateIn = 32768;#ifndef LPC_GPIO
#define LPC_GPIO LPC_GPIO_PORT
#endifint main() {
SystemCoreClockUpdate();
Chip_GPIO_Init(LPC_GPIO);SysTick_Config(SystemCoreClock / 1000);
Chip_GPIO_SetPortDIROutput(LPC_GPIO, 1, 1 << 2);for (;;) {
Chip_GPIO_WritePortBit(LPC_GPIO, 1, 2, 1);
Delay(50);
Chip_GPIO_WritePortBit(LPC_GPIO, 1, 2, 0);
Delay(50);
}return 0;
}I could send you whole project and OpenOCD configuration files if you are willing to look at those.
March 30, 2017 at 03:43 #10831support
KeymasterHi,
Looks like the _estack used in the latest log is valid: when VisualGDB writes a random value just before the end of the stack, it is read back correctly:
[ 25566 ms] ^done,name=”var1″,numchild=”0″,value=”0x39ddb05d”,type=”void *”,has_more=”0″ [ 25567 ms] -var-assign “var1″ 0x4847923d [ 25631 ms] ^done,value=”0x4847923d” [ 25631 ms] -data-evaluate-expression “\*\(\(void\ \*\*\)0x2003ffc\)” [ 25648 ms] ^done,value=”0x4847923d”
Hence the problem must be caused by something else. Could you try setting a breakpoint on the Reset_Handler() function and stepping through it to see which part causes the exception?
Unfortunately we would not be able to reproduce it on our side, as we don’t have an LPC1549 board.
March 30, 2017 at 15:39 #10837JB_Lightcon
ParticipantThis is my reset handler and it breaks where I try to step into SystemInit(); function.
void __attribute__((naked, noreturn)) Reset_Handler() {
//Normally the CPU should will setup the based on the value from the first entry in the vector table.
//If you encounter problems with accessing stack variables during initialization, ensure the line below is enabled.
#ifdef sram_layout
asm(“ldr sp, =_estack”);
#endifvoid **pSource, **pDest;
for (pSource = &_sidata, pDest = &_sdata; pDest != &_edata; pSource++, pDest++)
*pDest = *pSource;for (pDest = &_sbss; pDest != &_ebss; pDest++)
*pDest = 0;SystemInit();
__libc_init_array();
(void)main();
for (;;)
;
}March 30, 2017 at 16:28 #10838JB_Lightcon
ParticipantBy the way, if it would help in any way, we could send you a LPC1549 board.
March 31, 2017 at 04:01 #10844support
KeymasterHi,
Thanks for the offer, but it looks like it could be much simpler to track it down with a few more steps.
Please try stepping up to the SystemInit() call and then switch to the Disassembly view and try stepping instruction-by-instruction until you see the faulty one. The exception could be caused by one of the following:
- Invalid stack pointer. The crash would happen after a “push” instruction. You can check this by adding the following expression to the Watch window and then changing its value:
*((unsigned *)($sp – 4))
If the value can be changed correctly, the $sp address is valid. If it stays 0 despite changing it via the “value” column, the $sp value is incorrect. - If the crash happens immediately after a “bx” instruction, some of the code could have been placed to a wrong address. Please double-check the address validity.
- If the crash happens after an instruction that accesses memory, please check whether the corresponding pointer is valid and where did its value come from. It could be an indication of a memory corruption error.
March 31, 2017 at 08:28 #10845JB_Lightcon
ParticipantFew instructions before:
0x000007a8 bl 0x1f0 <SystemInit>
0x000001f0 strb r7, [r0, r2]
This is where it stucks forever:
0x030002fe b.n 0x30002fe
Ant this gets us to the Boot ROM memory space, so I suspect that our code in not valid, from LPC15xx datasheet:
5.4.2 Criterion for valid user code
The reserved ARM Cortex-M3 exception vector location 7 (offset 0x0000 001C in the
vector table) should contain the 2’s complement of the check-sum of table entries 0
through 6. This causes the checksum of the first 8 table entries to be 0. The boot loader
code checksums the first 8 locations in sector 0 of the flash. If the result is 0, then
execution control is transferred to the user code.Although USB does not start as master storage device…
P.S.: Watch1 does not do anything for this expression:
*((unsigned *)($sp – 4)) -var-create: unable to create variable object
April 2, 2017 at 20:47 #10852support
KeymasterHi,
It looks like your firmware does not get properly programmed into the FLASH. The default SystemInit() function for a LPC1549 project normally looks like this:
(gdb) x/10i SystemInit 0x1f0 <SystemInit>: push {r7, lr} 0x1f2 <SystemInit+2>: add r7, sp, #0 0x1f4 <SystemInit+4>: bl 0x774 <Chip_SystemInit> 0x1f8 <SystemInit+8>: nop 0x1fa <SystemInit+10>: pop {r7, pc} 0x1fc <SystemCoreClockUpdate>: push {r7, lr} 0x1fe <SystemCoreClockUpdate+2>: add r7, sp, #0 0x200 <SystemCoreClockUpdate+4>: bl 0x4c8 <Chip_Clock_GetSystemClockRate> 0x204 <SystemCoreClockUpdate+8>: mov r2, r0 0x206 <SystemCoreClockUpdate+10>: ldr r3, [pc, #8] ; (0x210 <SystemCoreClockUpdate+20>)
Please try running the “x/10i SystemInit” command from the GDB Session window to see if the disassembly instructions there look correct (you can run arm-eabi-gdb.exe <your ELF file> and run the same command there without connecting to a target to see the function contents recorded in the ELF file).
Please note that for NXP LPC devices we recommend using Segger J-Link instead of OpenOCD as OpenOCD support is not very reliable. You can also try experimenting with the FLASH parameters in the OpenOCD script files to get FLASH programming to work.
- Invalid stack pointer. The crash would happen after a “push” instruction. You can check this by adding the following expression to the Watch window and then changing its value:
-
AuthorPosts
- You must be logged in to reply to this topic.