LINUX.ORG.RU

avr-gcc, прошивка EEPROM

 , , ,


0

1

добрый день

прототип проекта, в процессе отработки EEPROM инициализирована необходимыми данными (участок памяти)

необходимо при прошивке конечного контроллера залить этот участок по назначению

можно ссылки, идеи, мысли итд

спасибо

ATmega328 / linux / avr-gcc / свисток + AVR MKII / Arduino-MK / avrdude

зы в инете набегом, поэтому вопросы без арт-подготовки :о)

### UPDATE ###

походу еще задачка нарисовалась :о)

имеем указатель на свободный участом EEPROM

#define FREE_PTR xxx

вопрос: как препроцессором/варнингом вывести значение указателя?

★★★★

Последнее исправление: sunjob (всего исправлений: 3)

Ответ на: комментарий от LongLiveUbuntu

мне нужно сдампить необходимый участок EEPROM в файл *.eep а уж потом мы ее как-нибудь запихаем куда-надовать :o)

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от LongLiveUbuntu

ну если так, держи пять! спасибо!

sunjob ★★★★
() автор топика
Ответ на: комментарий от sunjob

Входишь в него по команде avrdude -pm328 -cavrispmkii -t, а дальше работаешь в интерактивном режиме. За подробностями в man avrdude.

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от sunjob

Конкретно та команда дампит в консоль содержание блока eeprom из nbytes по заданному адресу

LongLiveUbuntu ★★★★★
()
Ответ на: комментарий от anonymous

настоясчий [b]avr mkII[/b] отладка будет работать только у более старшей модели-дебагера [b]avr jtag ice mkII[/b] … имхо

sunjob ★★★★
() автор топика
Ответ на: комментарий от anonymous

ну да... дорогое удовольствие для простого российского студнента, а уже если погорит, вообще радость безгарничная :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от anonymous

про debug-wire как-то интересовался, но … так и не дошли руки

хватает пока: лог/проблник/ананлизатор, осциллограф, крылья, ноги, хвосты… :о)

sunjob ★★★★
() автор топика
Ответ на: комментарий от anonymous

если не сложно, поподробнее, можно? пользовались, что не понравилось, что вообще не понравилось, что ужастно не понравилось… :о)

sunjob ★★★★
() автор топика

UPDATE

походу еще задачка нарисовалась :о)

имеем указатель на свободный участом EEPROM

#define FREE_PTR xxx

вопрос: как препроцессором/варнингом вывести значение указателя?

p.s. блин… где тут по умолчанию сделать разметку LORCODE ???

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 2)
Ответ на: комментарий от sunjob

Ну вот тебе пример:

#define STR_HELPER(s)   #s
#define STR(s) STR_HELPER(s)
#define  TIM_CR2_CCPC                        ((uint32_t)0x00000001)..
#pragma message STR(TIM_CR2_CCPC)
Запускаем make и получаем:
main.c:8:9: замечание: #pragma message: ((uint32_t)0x00000001)
 #pragma message STR(TIM_CR2_CCPC)

OnlyAsk
()

Когда очередной диайвайщик мучает абдурину, в мире рыдает очередной котенок ☹

OnlyAsk
()
Ответ на: комментарий от OnlyAsk

я в курсе, и шо мне с этим делать? мне нужно число а не «вариации на тему sizeof()»

main.h:283:53: note: #pragma message: 
FREE_PTR = (((sizeof(int32_t)) + (9 * sizeof(EDIT_TYPE))) * 4 ... и бла-бла-бла ...)

нужно значение числа (видимо, на этапе препроцессора это не получится... :о)))

з.ы. накормили бы котенка, что-ли, а?!

sunjob ★★★★
() автор топика
Последнее исправление: sunjob (всего исправлений: 3)
Ответ на: комментарий от sunjob

Тогда узбагойся! Сам посчитать не можешь что ли?

Препроцессор только раскрывает макросы, он понятия не имеет, чему равен sizeof, этим уже занимается компилятор. Т.е. узнать, чему же это равно, ты сможешь только запустив свою прошивку на МК. Либо посмотрев дизассемблер.

И да. Зачем ты обозвал это FREE_PTR? PTR подразумевает указатель, т.е. эта штука должна быть адресом в памяти, как в примере, что я выше приводил.

накормили бы котенка

Лучше придушу диайвайщика!

OnlyAsk
()
Ответ на: комментарий от sunjob

Не, каждый абдуринщик, перевоплощенный в нормального человека, добавляет кармы!

OnlyAsk
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.