The Flash memory on all Silicon Labs microcontroller (MCU) devices is readable and writable from application code. This capability allows user software to store values to the Flash, such as calibration constants or system parameters, and to implement a boot loading feature in which user firmware can be updated in-system from a remote site. The Flash that is not used by application code can be treated like an EEPROM, thus negating the need to connect an external EEPROM to the device.


This application note covers the basics of accessing Flash from application code on any device. It also discusses advanced routines that can be developed using basic routines and precautions to take when writing to Flash. Example code is provided.