Writing data to the code EEPROM with an 8051

Status
Not open for further replies.

jaarestad

Newbie level 3
Joined
Jan 27, 2011
Messages
3
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,313
I have been asked to step into the middle of an 8051 development project and write the code to implement its functionality. All the hardware has been designed, the boards laid out and manufactured, and the assembly of the boards is being done as I type. I mention this to say that the option to change the design has passed.

The designer used a 28C010 (128k x 8) EEPROM with the idea that we could use the upper 64KB for storing data in non-volatile storage. The lower 64KB is configured in the standard "code memory" configuration, with Port2 connected to A[15:8] and Port0 connected to both DQ[7:0] and an 8-bit register to latch the lower address lines (A[7:0]), clocked by the ALE signal from the 8051. Normal stuff. But he also sends P3.5, through an inverter, to A16, to provide access to the upper 64KB page in the EEPROM.

I am pretty new to 8051 programming, and I am curious to know if this is a technique that is actually supposed to work, or if it is (as it seems to me) doomed from the start.

I know that I can create variables in the code space (i.e., "unsigned int code my_var;"). But I have serious doubts as to whether it is possible to write a value to EEPROM in this fashion.

Please advise. Thanks.
 

I presume that the design idea can't work if the 28C010 is the only available code memory. After a write cycle, no valid data can be read for a certain amount time.
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…