| ??? 08/17/05 16:27 Read: times |
#99576 - Problem was ... Responding to: ???'s previous message |
Ok, In my FlashRoutine, I had defined a structure:
//------------------------------------------- typedef struct { unsigned char ucData[PAGE_SIZE]; // 128 bytes } tPageSize; typedef struct { tPageSize Page[MAX_PAGES]; // 32 pages } tPageFormat tPageFormat code tNewFirmware _at_ LOCATION_NEWFIRMWARE; // at 1800 tPageSize xdata tFirmwareData; //-------------------------------------------- Ok the above is my variables definition. So, due to my laziness, in my flash routine, I put: tFirmwareData = tNewFirmware.Page[PageNumber]; Keil loves this statement and decides to use the ?C?COPY routine from its library. So, I did a "For" loop to copy each byte manually. Its slower this way, but it doesn't matter. Also remove a couple more ?C?COPY, which is also found in other parts of my code. :), I can sleep in peace now. |
| Topic | Author | Date |
| Strange problem IAP for whole chip | 01/01/70 00:00 | |
| Questions please | 01/01/70 00:00 | |
| Nobody knows? | 01/01/70 00:00 | |
| why | 01/01/70 00:00 | |
| For IAP? | 01/01/70 00:00 | |
| Which is exactly what FlashMagic is inte | 01/01/70 00:00 | |
| and now we know why | 01/01/70 00:00 | |
| Get a PC | 01/01/70 00:00 | |
| Enclose PCB in a box | 01/01/70 00:00 | |
| I understand | 01/01/70 00:00 | |
| Process make sense | 01/01/70 00:00 | |
| Thank god for the response | 01/01/70 00:00 | |
| Maybe the libraries in causing it ??? | 01/01/70 00:00 | |
| the problem with absolutes | 01/01/70 00:00 | |
| AT89C51RC2 with 128 bytes per page | 01/01/70 00:00 | |
| there is no such thing as a byte write, | 01/01/70 00:00 | |
| byte write | 01/01/70 00:00 | |
| No byte write | 01/01/70 00:00 | |
| what was the problem? | 01/01/70 00:00 | |
| Problem was ... | 01/01/70 00:00 | |
| OK, now face problems in Variables | 01/01/70 00:00 | |
| variables used in my remote update | 01/01/70 00:00 | |
| Ok, Solved | 01/01/70 00:00 | |
Try this | 01/01/70 00:00 |



