We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello, Help me please how do I setup my compiler? I set up the off chip code memory to 0x4100 at target options but the compiler allways put a LJMP eg 452B (start of user code)at the ROM 0 location. When I try to run the program with Noice it warns me there is no writeable space at 0. How do I solve the problem? Do I need to modify and build in the startup51.asm ? Thanks Cheer George
It's not a problem, it's a requirement of the 8051. It MUST start execution at address 0x0000 and what you're seeing is probably a jump to Keil's startup code. This is the code that actually runs before your main() routine. Why is it a problem for you?
Hello, Yes you're right. The problem is when I want to download that program to the remote debugger (Noice) and it's found that hex record have to load at 0 says no RAM there and aborts. George
Your system must have some code memory at address C:0x0000, as the Reset vector must be stored at this location. You will also need to provide code memory for the vectors for any Interrupts which you use. Look at your Memory Map, or see the example at: http://www.8052.com/forum/read.phtml?id=14588&top=
Hello, Thank you for the answer. At least all of my problem solved. I modified the startup.a51 file according to my system and the printf function and mon51 work fine. It took a half day but now everything is fine. Thank you for all of your help. Cheer George