реклама на сайте
подробности

 
 
> Как добавить данные DATA FLASH в HEX-файл, SiLabs 121
редактор
сообщение May 15 2009, 05:06
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 356
Регистрация: 9-06-07
Пользователь №: 28 315



Используется SiLabs C8051F121
Есть необходимость во время программирования записать данные в DataFlash.
Подскажите, кто знает, как объявить эти данные в программе (Си или АСМ не важно) чтобы они после компиляции попали в HEX-файл.
Могу руками дописать дописать несколько строк в HEX, но не знаю по какому адресу их расположить.
Делать приложение для записи этих данных через программатор пока не хочется.

Заранее всем спасибо!


--------------------
Хорошую систему делают из стандартных блоков нестандартно мыслящие инженеры.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
редактор
сообщение May 18 2009, 04:00
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 356
Регистрация: 9-06-07
Пользователь №: 28 315



В большинстве МК от SiLabs имеется два вида flash-памяти память программ и память данных.

Программа состоит из двух частей: загрузчика и непосредственно приложения.
Загрузчик служит для обновления программы.Также при старте загрузчик проверяет контрольную сумму приложения и далее разрешает или блокирует работу приложения.
Чтобы точно знать с чем сравнивать контрольную сумму решил использовать flash-память данных для хранения контрольной суммы.

Держать их в области кода не очень удобно, так как для перезаписи необходимо стирать часть программы, разнести их адреса с программой кБайт так на 10 возможно,(опыт имеется).
Хотелось сделать более красиво. Есть энергонезависимая память для данных, надо ее пользовать. В процессе работы доступ раcписан, и все хорошо.

А вот при программировании получается возможно записать только код в flash-память программ.
Поэтому приходиться делать несколько лишних операций: записать загрузчик, записать приложение, собрать стенд в котором дать загрузчику команду на расчет контрольной суммы и ее запись.

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


--------------------
Хорошую систему делают из стандартных блоков нестандартно мыслящие инженеры.
Go to the top of the page
 
+Quote Post
barabek
сообщение May 18 2009, 10:55
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831



Цитата(редактор @ May 18 2009, 15:00) *
В большинстве МК от SiLabs имеется два вида flash-памяти память программ и память данных.

Я не работал конкретно с 121. Но судя по описанию он не отличается от остальных. Но в них НЕТ отдельной flash памяти данных! Есть память программ с возможностью записи из самой программы. Хотя это к делу не относится, скорее к терминологии ;-)
. А по делу Вам уже kosyak подсказал. Если бы Вы на этапе программирования знали контрольную сумму, было бы проще. Из родной IDE silab можно сразу ячейки кода менять в соответствующем окне code и нажатием кнопки "туды-сюды"
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th August 2025 - 15:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01381 секунд с 7
ELECTRONIX ©2004-2016