This post provides the internal EEPROM reading and writingΒ code for PIC16F877 microcontroller.
As we know[1], PIC16F877 microcontroller has 256 x 8 bytes of built in EEPROM data space with an address range of 0x000 to 0x7FF. This code is written in C language using MPLAB with HI-TECH C compiler. You can download this code from the βDownloadsβΒ section at the bottom of this page.
It is assumed that you know how to blink an LED with PIC16F877 microcontroller. If you donβt then please readΒ this pageΒ first, before proceeding with this article.
The result of simulating the code inΒ ProteusΒ is shown below.
In the above circuit[2], LED attached on RB0 indicates weather a byte was successfully written in the internal EEPROM or not. In the above figure, LED isΒ ONΒ which indicates that EEPROM was successfully programmed.
Code
The code for the main function is shown below.
Downloads
EEPROM code for PIC16F877 was compiled inΒ MPLAB v8.85 with HI-TECH C v9.83 compiler and simulation was made in Proteus v7.10.Β To download code andΒ ProteusΒ simulationΒ click here.
For more detail: PIC16F877 internal EEPROM code and Proteus simulation