I am using a P89c51 base microcontroller and I need to store data coming from a GPS device and when the memory is full transfere it to a PC.That amount of data is 96kbyes. Problem: The flash capability is 64k and is used for the code. Questions: 1.Can I use also this memory to store data, for example 32kytes for the code and 32kbytes to store the data? 2.About external memory what should I use EEPROM ou RAM?.(RAM probabily will need of a battery). 3.Can someone correct me if I am wrong (I am not sure): the addressing capability of the P89C51 based microscontrollers is 15 bits, I mean, 64kbytes.
I am using a P89c51 base microcontroller Questions: 1.Can I use also this memory to store data, for example 32kytes for the code and 32kbytes to store the data? 2.About external memory what should I use EEPROM ou RAM?.(RAM probabily will need of a battery). 3.Can someone correct me if I am wrong (I am not sure): the addressing capability of the P89C51 based microscontrollers is 15 bits, I mean, 64kbytes. 1) not easily, flash is page erase. 2) battery backed RAM is an excellent solutionif you use a two level supervisor so you shut off the NVRAM before the uC goes into poer down. The 'usual' solution would be a serial eeprom or FRAM. 3) you are right, you can employ 'banking' which, in my opinion, is too slow or check the Philips MX and P89C669 chips which can address 8Mb while still being '51 derivatives. Erik