И вот тут у меня в голове возникает неутыка.
Представим ситуацию, есть переменная uint32_t counter, в которой находится значение 0, и есть микркоконтроллер , который стартовал и начал выполнять некие действия, работал микроконтроллер работал, изменял эту переменную и стал счетчик равным counter = 36558, и вдруг случилось ужасное, у микроконтроллера кратковременно пропало питание, произошел сброс. Получается, что во флеше у нас этот counter до сих пор равен нулю, так как мы его не изменяли, а ОЗУшка у нас сбросилась из-за потери питания. И counter начала увеличиваться с начала. Получается, что переменные не сохраняются, а сбрасываются. Никак не могу понять, где я туплю.
Соответственно вопрос, по какому механизму сохраняются переменные в ОЗУ, после сброса питания ?



