Code:
#include <16F877.h> #fuses HS,NOWDT,NOPROTECT,NOLVP #use delay(clock=20000000) #use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7) #include "stdlib.h" #include <input.c> #include "limits.h" // The following initializes the first 4 locations of the data EERPOM // using the #ROM directive #rom 0x2100={1,2,3,4} typedef int8 INTEE; void main() { unsigned int8 i, j, address; INTEE value; do { printf("\r\n\nEEPROM:\r\n"); // Display contents of the first 64 for(i=0; i<=3; ++i) { // bytes of the data EEPROM in hex for(j=0; j<=15; ++j) { printf( "%2x ", read_eeprom( i*16+j ) ); } printf("\n\r"); } printf("\r\nLocation to change: "); address = gethex(); printf("\r\nNew value: "); value = gethex(); write_eeprom( address, value ); } while (TRUE); }
Leave a comment: