I'm using the Silicon Laboratories C8051F345 with the Keil IDE.
I now have two different projects of which the firmware won't execute. If I comment random pieces of code the firmware will execute. I am still within the memory limits of the device.
From my point of view, the compiler is not configured correctly for the device or I assign my variables incorrectly. I ran out of ideas, tired of searching and pulled almost all my hair out of my head.
I program alone and don't have anyone to look at my source.
I want to ask if someone experienced will please have a look at my project to point any possible mistakes or problems.
"upload imedetly."
Sorry you had to wait. It's uploaded now.
I would agree to start with the stack. Count the number of nested calls (where one function calls another) Do the same for the interrupts (And again for each priority level used) Then add them up. That Plus the memory uses should be greater than 256.
Note is you are using a chip with less than 256 RAM use that. Insure you are using the correct memory model. Are you using Banking?
it will stop working.
What does that actually mean, i.e. how do you know it's no longer working? What's it supposed to do, and what does it do instead?
hello?
i need samsung LTS500W1-PD1 datasheet.
please upload imedetly.
thank you.
If this is a commercial project, look here:
http://www.keil.com/condb/
SiLabs may well have a similar list...
What kind of errors are you looking for?
There will not be any syntax errors -because the compiler would have found them.
So you need to look for things that will only manifest at runtime - eg, stack overflow, corrupt pointers, bad interrupts.
The SiLabs parts have on-chip debug hardware, don't they? Are you making use of it?
Hello Master Poltergeist,
Does the code work in the IDE stimulator?
Then it works. I've done that several times. Removing all sources except for the main with its initialization. Then added piece by piece, file by file. As I come to a certain point (no specific file) it will stop working. Then I will check for any errors in that file, but none.
I really don't know what is going on. So I need an expert to have a look at what I'm doing.
What happens if you strip your project of everything but the startup file and main containing nothing but an infinite loop?
View all questions in Keil forum