Страница 1 из 1
прошивка EEPROM
Добавлено: Пн ноя 25, 2019 08:13:38
sunjob
добрый день
прототип проекта, в процессе отработки EEPROM инициализирована необходимыми данными (участок памяти)
необходимо при прошивке конечного контроллера залить этот участок по назначению в контроллер
можно ссылки, идеи, мысли итд
спасибо
ATmega328
linux, avr-gcc
свисток + AVR MKII
Arduino-MK / avrdude
зы
в инете набегом, поэтому вопросы без арт-подготовки :о)
Re: прошивка EEPROM
Добавлено: Пн ноя 25, 2019 10:19:51
akl
Часто приходится так делать на своем программаторе AS-4 (AS-2). Читаю EEPROM в буфер программатора, сохраняю в файл. При прошивке боевого контроллера загружаю этот файл в буфер EEPROM и прошиваю.
Re: прошивка EEPROM
Добавлено: Пн ноя 25, 2019 11:52:53
NStorm
1. Сделать .eep файлик и прошить его через avrdude. Он прекрасно умеет прошивать eeprom.
2. Варианты в коде C прописать секцию, описание:
https://www.avrfreaks.net/comment/14608 ... nt-1460806
Re: прошивка EEPROM
Добавлено: Пн ноя 25, 2019 13:24:58
pyzhman
Засада может быть при прошивке. Если лапки мк подтянуты в программаторе не так, как в боевой схеме, то хана инфе в епроме.
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 05:11:41
sunjob
спасибо, немного не так поняли...
уже разобрался :о)
вопрос был в том, как дудкой слить EEPROM в файл... (ну, а потом его и использовать... для заливки)
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 06:16:26
NStorm
Дудка прекрасно может и считать точно также в .eep файлик. И потом прошивать его на другие МК.
Но вообще подход несколько неправильный просто, копировать так. Поэтому сразу привел пример более правильного подхода.
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 08:56:16
OKF
Посредством EEMEM создаёте .eep, дудкой пишете, дудкой читаете. Зачем ещё какие то извращения?
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 09:36:30
sunjob
to
NStorm
Но вообще подход несколько неправильный просто, копировать так. Поэтому сразу привел пример более правильного подхода.
создается "сетка данных" (НЕ В ПРОГРАММЕ, бл... мур...) и потом эту "сетку" надо сохранить для переноса на конечные контроллеры (процесс создания сетки и все сопутствующие вопросы опустим, ладушки?!)
в данном случае, я считаю (хозяин тоже, мур...) что - это единственно оптимальный и удобный путь!
поэтому, ув. кот,
OKF,
EEMEM - не катит, ни куда... (про него хозяин тоже в курсе, мур...)
если есть более удобные, правильно-трушные методы, выкладывайте, полосатые, бум процарапывать ... без затрагивания темы "создания сетки", это уж хозяин сам там баракозит и хреначит... вот есть чип, нужно из него вытряхнуть содержимое
EEPROM-а и/ака подготовить его для заливки на другие чипы!
ну а так, вот пойми этих двуногих, сегодня им подавай таку еду, завтра другу... враги котов, какие-то...

Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 12:34:24
Demiurg
Два варианта.
Всё данные для EEPROM прописывается в проекте. Эта область указана как данные EEPROM и при компиляции проекта создаётся файл .eep, который и заливают в МК.
Прототип в процессе работы сохраняет данные в EEPROM. Программатором считываем EEPROM в файл.eep, который потом заливаем в последующие МК. Этот способ плох тем, что если в проект внесли изменения в работу с EEPROM, могут съехать адреса переменных.
Так что лучше всего данные ручками прописать в самом проекте и скомпилировать.
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 13:21:46
sunjob
Этот способ плох тем, что если в проект внесли изменения в работу с EEPROM, могут съехать адреса переменных.
этот способ единственно хорош ... хозяин упрямый у меня... а если я его буду переубеждать, он, скатина, не даст мне царампать его тапки

ну, короче, только так, по другому ни в какую
### UPDATE ###
походу еще задачка нарисовалась :о)
имеем указатель на свободный участом EEPROM
вопрос: как препроцессором/варнингом вывести значение указателя?
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 15:18:02
NStorm
Код: Выделить всё
#define VALUE_TO_STRING(x) #x
#define VALUE(x) VALUE_TO_STRING(x)
#pragma message "Free: " VALUE(FREE_PTR)
По "сетке" - кто мешает сетку не шить сразу как бинарные данные в EEPROM, а сконвертировать в вид EEMEM? И потом уже из кода генерировать пусть для начала тот же самый .eep, но для внесения изменений надо будет поправить человеко-читаемый код в тексте проги, а не лезть в хекс.
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 15:37:15
Demiurg
Как то диковато читать сценки из ролевых игр...
Re: прошивка EEPROM
Добавлено: Вт ноя 26, 2019 15:40:07
sunjob
препроцессор не разворачивает
sizeof()
зы
По "сетке" ...
тыц