Hi, > Suppose one needs to store more than 64 bytes of (nonvolatile) data > in a PIC16F84 or PIC16C84. Is it possible to store data in the > flash memory area and access it from your PIC program, or is the > flash program memory not addressable/readable from within the PIC > program? The PIC cannot write data into its own program memory. But if all you want to do is to store precalculated data, then you can use lookup tables in the PIC's program memory. For example, if you want to store a string to write to an LCD module, you could store it with: MyString: DT "String1",0 This translates to RETLW 'S' RETLW 't' RETLW 'r' ... RETLW 0 > Rationale for question: I have an application where the data storage > will probably exceed the program size and will certainly exceed the > 64 bytes of 'Data EEPROM'. Am hoping the flash program memory will > serve. Thanks, > It would probably be a good idea to use an external EEPROM. One of the I2C or SPI serial EEPROM's would work well. You only need two or three IO's and you get them in high capacities (upto 16 or 32Kbyte for the I2C ones I think). Niki