Flash
- Flash memory is the memory where the program you write is stored in.
- The program you write is 'compiled' by your computer to binary code and then downloaded into the Flash memory of the PICmicro
- Flash memory is also used in your memory stick or MP3 player. You can read from, and write to it and it remembers everything, even after a power cut.
- The program lines Flowcode generates tell the PICmicro what to do and when to do it.
- The Flash memory of the 16F1937 can store up to 8192 program commands.
RAM
- RAM is the memory where the 'variables' (values in your program that alter as your program runs) you declare are stored in.
- Data from inputs, outputs, analogue inputs, calculations etc. is typically stored in variables inside Flowcode.
- This memory is of the RAM-type. It's erased every time the power gets cut or a reset occurs.
- It also contains system 'registers' which control and report the status of the device.
- The Flash of the 16F1937 can store up to 512 bytes of data.
EEPROM
- EEPROM is the memory where the variables can be permanently stored
- This memory is of the PROM-type. It is preserved every time the power gets cut or a reset occurs.
- The EEPROM of the 16F1937 can store up to 256 bytes of data.
Largely simplified block schematic to demonstrate where the 3 types of memory are located in the PIC 16F1937 Architecture: