Hi all,
First time poster here. Spent the last several weeks working through all sorts of issues learning StarterWare, CCS, etc. Finally hit a problem I can't figure out on my own and can't find any answers on the forum here (someone else had a similar problem but no one answered him).
So what I did is, I first learned about using StarterWare and got the gpioLEDBlink example to work on my BeagleBone White (AM3358 core, has JTAG emulator on it, Rev A6).
Then I started learning SYS/BIOS and tried to get the simple helloWorld example going which just starts a task that just printf's to the terminal. Everything built and I got no runtime errors, but I couldn't find anywhere in CCS that the strings were printed. I found other examples online looking like strings just printed to the Debug Console output window, and there was nothing there for me.
So, in trying to see if it was just an issue with my printf or something, I thought I would just combine working code from gpioLEDBlink so that instead the task would be created and all it would do is flash the LED. That would show me things were working right. But alas that was way too optimistic...
I'm now getting the following runtime error and I need help figuring out what's causing it. Since both examples worked on their own, I'm not sure where to start.
It builds correctly, connects to the target fine, then I run the AM335xInitialiationScript, which works fine too and the debugger starts paused at main().
When I hit Resume, I get the following:
[CortxA8] 0x44e000ac R8 = 0xffffffff
R1 = 0x00000000 R9 = 0xffffffff
R2 = 0x800062e8 R10 = 0xffffffff
R3 = 0x48200000 R11 = 0xffffffff
R4 = 0xffffffff R12 = 0x6000011f
R5 = 0xffffffff SP(R13) = 0x80010848
R6 = 0xffffffff LR(R14) = 0x800062f8
R7 = 0xffffffff PC(R15) = 0x80005058
PSR = 0x6000019f
DFSR = 0x00000005 IFSR = 0x00000000
DFAR = 0x44e000ac IFAR = 0x00000000
ti.sysbios.family.arm.exc.Exception: line 180: E_dataAbort: pc = 0x80005058, lr = 0x800062f8.
xdc.runtime.Error.raise: terminating execution
There is also a new window that opens and says "Can't find a source file at "c:\users\user\appdata\local\temp\ti93f9~1\src/exit.c""
That example is pointing to Loader_exit() in the debugger window:
C$$EXIT, loader_exit:
8000872c: E1A00000 MOV R0, R0
80008730: E12FFF1E BX R14
abort:
80008734: E92D4008 STMFD R13!, {R3, R14}
80008738: EBFFFFFB BL loader_exit
Is this some undefined symbol? Not sure what's calling for it. There's no function called that in my program.
Not sure where to begin. Help please!
Here are my settings:
CCS 5.5.0.00077
SYS/BIOS 6.37.5.35
XDC 3.25.6.96
Target: ti.targets.arm.elf.A8Fnv
Platform: ti.platforms.beaglebone
Variant: BeagleBone [Cortex A]
Linker command file: <blank>
RTS lib: Automatic
I've attached main.c and my app.cfg here. Note: I haven't done anything to the app.cfg, figured it was configured already for the simple task launcher example. But I am new to SYS/BIOS so perhaps I'm just missing some important step. It doesn't look like people have done much bare-metal SYS/BIOS stuff with the BeagleBone white on here, or I just can't find it.
Thanks!