[an error occurred while processing this directive]
|
Здравствкйте ALL
Попалась мне интересная задачка. Нужно сделать свой загрузчик, ну что бы заливать програму по последовательному порту без програматора. Возникли некоторые трудности. Делаю вроде все по доке, а оно не стреляет.
Пишу на "С"
Пользуюсь IAR AVR 2.27b.
1. Как указать компилятору сегмент Flash BOOT (ну в моем случае 0xf000), а то он компилит в нулевые адреса. На асме ".ORG &f000", а как на "С"?
2. Странность. Заливаю обычную программу программатором. Reset vector указываю на boot, boot вроде бы пустой, запускаю - а запускается программа с нулевого адреса.
3.Еще одна непонятность. Когда например залить программатором обычную программу, не сделав Reset flash, то естественно во время проверки целостности данных выдает ошибку. Но когда я смещаю в программаторе адреса в Boot сектор то ошибки нет. Что я делаю не верно, или проблема скрыта в первом вопросе. Если можно, опишите последоватедьность действий заливки своего загружчика, а потом основной программы с помощью программатора.
4. Если кто уже писал загрузчик на "С" буду очень признательный за исходник.
С ув. Мандренко Е.В.
E-mail: info@telesys.ru