To complement this thread:
It is a valid question, but in the case of the LPC55XX there is another reason to avoid over-programming:
From chapter 5.7.13 of the User's Manual
Due to the presence of ECC, over-programming an already programmed word will likely result in inconsistent parity bits; for this reason, it is not allowed to program a memory word without erasing it first.
Anyway, programming smaller portions of data into the flash is possible, the 512 bytes pages don't play a role for writing. Data word can be written in 128 bit format, so four 32-bit word are the smallest portion which can be written to the flash
From chapter 5.7.8 of the User's Manual:
Data to be written is accumulated inside the controller’s DATAW0-DATAW3 registers. After specifying an address in the STARTA register and 128 bit of data in the DATAW0-3 registers, it’s possible to activate the controller’s Write” command, which will transfer the data to the memory’s page register, at the position indicated by the STARTA register (only the column part of the address is significant).
However, erasing is bound to the 512-byte pages, so even for small parameter sections you need two pages to swap between them, even if the content is just a few bytes.
Regards,
Bernhard.