??? 07/19/05 07:48 Read: times |
#97607 - possible reasons Responding to: ???'s previous message |
hi,
Sebastian Stehrn said:
We programming AT89C51ED2 with program, who was in external memory early. But for execution from internal memory we need set lock bit 2, because !EA signal on the board always GND and without lock bit 2 program will be start from external memory.
And that trouble - programm that working fine from external memory don't working from internal memory :-( There are may be some reasons. I see next: 1. board has two or more EEPROMs: one for program and rest for code constant data (accessed with MOVC). If you do copy software to internal flash from program EEPROM only then program fails due at MOVC it cannot access rest EEPROMs anymore (due ED2 has 64kb internal flash so it accesses only itself). 2. board supports memory "paging" when MCU may access more than 64kb of code memory by dividing memory space on pages. So you will not be able to fit it all into ED2. 3. board reads input ports (or some peripheral) with MOVC at specified addresses. Very doubt but if so then the case is similar for 1. 4. board uses /PSEN as external watchdog ping signal. During internal execution ED2 does not provide ping and watchdog resets it. May be other ideas? Regards, Oleg |
Topic | Author | Date |
Migration on AT89C51ED2 problem | 01/01/70 00:00 | |
please | 01/01/70 00:00 | |
more details, please | 01/01/70 00:00 | |
More detail | 01/01/70 00:00 | |
possible reasons | 01/01/70 00:00 | |
LB2 and /EA | 01/01/70 00:00 | |
acording datasheet | 01/01/70 00:00 | |
Also according to the datasheet: | 01/01/70 00:00 | |
what Atmel says | 01/01/70 00:00 | |
... and what does not say. | 01/01/70 00:00 | |
pull the blasted !EA and come back to re | 01/01/70 00:00 | |
That Atmel chip difference !!! | 01/01/70 00:00 | |
different manufacturer![]() | 01/01/70 00:00 |