| ??? 09/12/03 10:57 Read: times |
#54621 - RE: AT89C51CC01 update Responding to: ???'s previous message |
Hi,
how I can buildup this fixed bootcode in KEIL CSEG AT fixed_addressThe idea is simple and has some realization ways: First and the best solution. You should write own boot-loader, upload it to CPU flash, put its high byte address into SBV register and set the bit BLJB (do it all by Flip software). I suggest you to use upper part of the program flash (above 0x7000 - in this case, the rest part of the program code may be programmed from your bootloader. As well, remember that the start address of a custom bootloader must be 256-bytes aligned). Now, after reset occured there is no hardware conditions; but because BLJB, a program runs into FM1 (Atmel boot loader). Then it looks at SBV internaly and does jump to SBV[00]h, here: to your custom bootloader. There you should check for that main program is valid (I suggest to use CRC) and if it is passed then go to main execution (0x0000 or any other by your taste). If the main program is not valid, CRC failed etc (for example, due the previous upload was broken for a some reason), then you stay in wait loop till remote upload be done. Somewhere in the main program you listen for remote upload request and if it has been called then do jump to your custom bootloader code. Described way above is safest and helps you to take control over program code even if it was broken with uncomplete uploading. Good days! |
| Topic | Author | Date |
| AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update | 01/01/70 00:00 | |
| RE: AT89C51CC01 update TO ALL | 01/01/70 00:00 | |
RE: AT89C51CC01 update TO ALL | 01/01/70 00:00 |



