I would like to know if it is possible to read from and write to the microcontroller's (Arduino Uno's ATmega328P) flash memory using a program or "bootloader" previously stored in the flash memory (or the EEPROM memory) itself.

If it is possible, can it be done using the Arduino IDE?

migrated from electronics.stackexchange.com Sep 16 '16 at 21:56

This question came from our site for electronics and electrical engineering professionals, students, and enthusiasts.

  • It is possible to read/write/verify data involving Flash or EEPROM storage by way of the ISP hardware interface. I am not sufficiently familiar with the Arduino IDE but these operations are available in other tools such as Atmel Studio or AVRDude by using the "AVRISP MKII" device (or later). – Wossname Sep 16 '16 at 21:18
  • @Wossname. Is it possible to separately access the ATmega328P on an Arduino so as to use the tools you have mentioned? – ElectricRam Sep 16 '16 at 21:22
  • There will be a 6-pin header near to the 328P which will allow direct programming of the chip, but be careful not to set any fuses that will prevent future access. Post a photo of your board (there are many variants of arduinos in the wild, and they are all different!). – Wossname Sep 16 '16 at 21:25
  • @Wossname. My Arduino Uno board is the same as the image at this link: d2rormqr1qwzpz.cloudfront.net/photos/2013/06/12/… – ElectricRam Sep 16 '16 at 21:37
  • The "ICSP" connector on the right side is in direct connection with the 328P. Power up the main board with 5V and you will be able to program the chip directly through the AVRISP/BusPirate/3rd party programmer. – Wossname Sep 16 '16 at 21:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.