Easyelectronics.ru

Электроника для всех
Текущее время: 26 фев 2021, 03:38

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Запись в память программ.
СообщениеДобавлено: 11 фев 2010, 16:14 
Только пришел

Зарегистрирован: 28 янв 2010, 19:57
Сообщения: 23
Требуется записать несколько байт в память программ (с чтением разобрался, работает). Для начала просто решил стереть что-нить в памяти данных - не получается.. Покурив документацию, понял, что код, который пишет/стирает что-то в памяти данных, должен находиться в области NRWW (необязательно в секции загрузчика).
Т.е., на асме нужно было написать что-то вроде .org 0x1000-128 и далее код функции, которая будет работать с памятью данных, а как это написать на Си в WinAVR?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Запись в память программ.
СообщениеДобавлено: 13 фев 2010, 11:08 
Заглядывает иногда

Зарегистрирован: 06 фев 2010, 13:53
Сообщения: 99
Откуда: Tushino
Смотрим в ЧаВо и видим следующее:

Код:
How do I relocate code to a fixed address?
First, the code should be put into a new named section. This is done with a section attribute:

__attribute__ ((section (".bootloader")))

In this example, .bootloader is the name of the new section. This attribute needs to be placed after the prototype of any function to force the function into the new section.


void boot(void) __attribute__ ((section (".bootloader")));

To relocate the section to a fixed address the linker flag --section-start is used. This option can be passed to the linker using the -Wl compiler option:


-Wl,--section-start=.bootloader=0x1E000

The name after section-start is the name of the section to be relocated. The number after the section name is the beginning address of the named section.

Back to FAQ Index.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB