В большинстве МК от SiLabs имеется два вида flash-памяти память программ и память данных.
Программа состоит из двух частей: загрузчика и непосредственно приложения. Загрузчик служит для обновления программы.Также при старте загрузчик проверяет контрольную сумму приложения и далее разрешает или блокирует работу приложения. Чтобы точно знать с чем сравнивать контрольную сумму решил использовать flash-память данных для хранения контрольной суммы.
Держать их в области кода не очень удобно, так как для перезаписи необходимо стирать часть программы, разнести их адреса с программой кБайт так на 10 возможно,(опыт имеется). Хотелось сделать более красиво. Есть энергонезависимая память для данных, надо ее пользовать. В процессе работы доступ раcписан, и все хорошо.
А вот при программировании получается возможно записать только код в flash-память программ. Поэтому приходиться делать несколько лишних операций: записать загрузчик, записать приложение, собрать стенд в котором дать загрузчику команду на расчет контрольной суммы и ее запись.
Для упрощения процесса настройки интересуюсь КАК ЗАПИСАТЬ FLASH-ПАМЯТЬ ДАННЫХ ИЗ ПРОГРАММАТОРА. Это возможно. В командах работы с USB-адаптером есть описание. Нужно лишь приложение, которое это может делать, в KEIL таких настроек не нашел.
--------------------
Хорошую систему делают из стандартных блоков нестандартно мыслящие инженеры.
|