|
bootloader в IARe 3,10, Помогите разобраться как сделать |
|
|
|
 |
Ответов
|
Jul 13 2006, 07:33
|

Профессионал
    
Группа: Свой
Сообщений: 1 432
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 371

|
Сергей Борщ, не моглибы Вы прокоментировать мои изыскания: /* __DataToR0ByteToSPMCR_SPM, pseudo code. MOV R0,data OUT SPMCR,byte SPM */ __intrinsic void __DataToR0ByteToSPMCR_SPM(unsigned char data, unsigned char byte); Какой смысл этой команды? Нужно по 2 байта в буфер отправлять, а по одному R0 не используется. //------------------------------------------- /* __AddrToZByteToSPMCR_SPM, pseudo code. MOVW R31:R30,addr OUT SPMCR,byte SPM */ __intrinsic void __AddrToZByteToSPMCR_SPM(void __flash* addr, unsigned char byte);
Передается адрес и выполняется возможная команда ( команда - byte): стирание страници, запись страници //------------------------------------------------ /* __AddrToZWordToR1R0ByteToSPMCR_SPM, pseudo code. MOVW R31:R30,addr MOVW R1:R0,word OUT SPMCR,byte SPM */ __intrinsic void __AddrToZWordToR1R0ByteToSPMCR_SPM(void __flash* addr, unsigned short word, unsigned char byte); запись данных word (2 Б) в буфер по адресу addr. значение byte фиксировано (1<<PGWRT)&(1<<SPMEN) //---------------------------------------------- /* __AddrToZByteToSPMCR_LPM, pseudo code. MOVW R31:R30,addr OUT SPMCR,byte LPM */ __intrinsic unsigned char __AddrToZByteToSPMCR_LPM(void __flash* addr, unsigned char byte); Ошибка или это что то специфическое? //--------------------------------------- Что то не понял я с этой библиотекой И как Вы управляли самопрограммированием (какие функции использовали для стирания, записи, ожидания готовности...).
--------------------
OrCAD, Altium,IAR, AVR....
|
|
|
|
|
Jul 13 2006, 08:20
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(arttab @ Jul 13 2006, 10:33)  Сергей Борщ, не моглибы Вы прокоментировать мои изыскания: Постараюсь по мере возможностей. Сначала сделаю отступление: эти функции я в своей работе пока не использую, поскольку в части проектов у меня загрузчик написан на асме а в части я использую AES Loader из аппликашки Атмела. С этими функциями я баловался еще в версии 2.28 (сейчас нашел тот исходник, там судя по исходнику их прототипы были описаны в pgmspace.h. Вот тот исходник: Код #include <iom8.h> #include <inavr.h> #include <pgmspace.h>
void ErasePage (unsigned char page);
const __root __flash unsigned char TestFill[64] @ (0x10 << 6) = {1,2,3,4,5};
void main (void) { DDRC = (1<<2)|(1<<3); PORTC = 0; ErasePage(0x10); for(;;) PORTC ^= (1<<2);
}
void ErasePage(unsigned char page) @ "BLS" { _SPM_ERASE((unsigned int)page << 6); while(SPMCR & (1<<SPMEN)) PORTC |= (1<<3); __DataToR0ByteToSPMCR_SPM(0, (1<<RWWSRE)|(1<<SPMEN)); }
Сообщение отредактировал Сергей Борщ - Jul 13 2006, 08:21
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
arttab bootloader в IARe 3,10 Jul 5 2006, 08:16 Faradey посмотрите в примере от Atmel. Там не совсем то чт... Jul 5 2006, 15:18 arttab Цитата(Faradey @ Jul 5 2006, 22:18) посмо... Jul 6 2006, 08:57 arttab Это приложение к ан109. уже взял, уже ковыряю.... ... Jul 6 2006, 01:42 arttab Что означает __C_task void loader(void)?
Я только ... Jul 6 2006, 03:15 arttab Если я правильно понял, то:
_C - указывает что нуж... Jul 6 2006, 04:11 IgorKossak Цитата(arttab @ Jul 6 2006, 07:11) Если я... Jul 6 2006, 07:08 arttab Еще вопрос по адресам прерываний:
В табл 18 и 19 а... Jul 6 2006, 04:49 arttab Спасибо! Хоть один не отсылает к докам по IARу... Jul 6 2006, 08:22 IgorKossak Цитата(arttab @ Jul 6 2006, 11:22) Если я... Jul 6 2006, 12:46 arttab Ограниченость памяти меги8 и наталкивает на совмес... Jul 7 2006, 02:32 Old1 Цитата(arttab @ Jul 7 2006, 05:32) Ограни... Jul 7 2006, 07:23 Сергей Борщ Цитата(arttab @ Jul 7 2006, 05:32) Вопрос... Jul 7 2006, 07:24 arttab Есть вообще возможность разместить 2 таблици векто... Jul 7 2006, 07:16 IgorKossak arttab, Вы взяли для модифицирования не тот конфиг... Jul 7 2006, 07:32 arttab Спасибо всем. разбираюсь...
А что значит: Цитатасд... Jul 7 2006, 08:00 IgorKossak Цитата(arttab @ Jul 7 2006, 11:00) Спасиб... Jul 7 2006, 08:16 arttab Сергей Борщ,
в указаном Вами файле
RSEG LOADER... Jul 7 2006, 08:27 Сергей Борщ Цитата(arttab @ Jul 7 2006, 11:27) Сергей... Jul 7 2006, 09:37 arttab Начал делать отдельно Bootloader.
В проекте опред... Jul 9 2006, 05:46 IgorKossak Цитата(arttab @ Jul 9 2006, 08:46) Начал ... Jul 10 2006, 06:53 arttab Спасибо за подсказку. В my_lnkm8s.xcl переправил т... Jul 10 2006, 14:15 Сергей Борщ Цитата(arttab @ Jul 10 2006, 17:15) Код в... Jul 10 2006, 17:59 arttab ЦитатаОбрати внимание на строчку .xcl:
-H1895 -h(C... Jul 11 2006, 02:05 arttab Сергей Борщ? А где лежит файл intrinsics.h? не наш... Jul 11 2006, 03:03 Сергей Борщ Цитата(arttab @ Jul 11 2006, 06:03) Серге... Jul 11 2006, 09:00 arttab ЦитатаНе знаю что считать старшей версией
Имел в в... Jul 11 2006, 09:36 Сергей Борщ Цитата(arttab @ Jul 11 2006, 12:36) Цитат... Jul 11 2006, 14:15 arttab Уф, переполз на 4.12А. с трудом.
intrinsics.h нужн... Jul 12 2006, 09:02 arttab Спасибо. Просто я не понял как ими воспользоваться... Jul 13 2006, 09:28 arttab Люди, подскажите - есть ли в IAR функции для самоп... Jul 14 2006, 06:57 IgorKossak Цитата(arttab @ Jul 14 2006, 09:57) Люди,... Jul 14 2006, 08:24 Сергей Борщ Цитата(arttab @ Jul 14 2006, 09:57) Люди,... Jul 14 2006, 08:32 arttab или я чего туплю или как....
не понимаю как ими во... Jul 14 2006, 09:08 Сергей Борщ Цитата(arttab @ Jul 14 2006, 12:08) или я... Jul 17 2006, 07:59 arttab Бывае говоришь о чем то со спецом, все он говорить... Jul 15 2006, 11:42 arttab ЦитатаСогласно правилам языка высокого уровня С ес... Jul 17 2006, 08:10 arttab Новая проблема: пытаюсь сгенерить hex а IAR ругает... Jul 17 2006, 09:47 Сергей Борщ Цитата(arttab @ Jul 17 2006, 12:47) Новая... Jul 17 2006, 10:26  osnwt Рекомендую посмотреть на мой проект Crypto-Boot (т... Jul 17 2006, 15:16 arttab Нашел разницу в дебугере и релайсе: general option... Jul 18 2006, 01:40 IgorKossak Цитата(arttab @ Jul 18 2006, 04:40) ...Мо... Jul 18 2006, 06:21 arttab Лучше конечносделать как надо, но для small 1040 б... Jul 18 2006, 07:02 Сергей Борщ Цитата(arttab @ Jul 18 2006, 10:02) Лучше... Jul 18 2006, 07:37  prottoss Цитата(Сергей Борщ @ Jul 18 2006, 15:37) ... Jul 18 2006, 08:27 arttab Так до меня и не дошли все команды для самопрогамм... Jul 18 2006, 09:43 prottoss Цитата(arttab @ Jul 18 2006, 17:43) Так д... Jul 18 2006, 10:03 arttab Рекомендую читать вопрос и весь топик, а не часть... Jul 19 2006, 02:30 osnwt Цитата(arttab @ Jul 19 2006, 05:30) Вопро... Jul 19 2006, 06:40 arttab уже сделал. оптимизация не мешает - функции специф... Jul 19 2006, 09:27 arttab Получается менять код. Есть тонкости:
по аплекейше... Jul 25 2006, 02:07 arttab вот моя апликуха по написанию загрузчика по итогом... Aug 2 2006, 08:47 Сергей Борщ Цитата(arttab @ Aug 2 2006, 11:47) вот мо... Aug 2 2006, 09:41 arttab спасибо! коечто поправлю, что то добавлю.
По п... Aug 3 2006, 02:43 Сергей Борщ Цитата(arttab @ Aug 3 2006, 05:43) спасиб... Aug 3 2006, 07:56 arttab над циклом подумаю. файл прикладываю здесь - не см... Aug 3 2006, 08:50 arttab Выкладываю подправленую версию. Сергей Борщ, если ... Aug 18 2006, 02:04 arttab Модератор или кто статьями занимается - может в ст... Sep 4 2006, 09:22 IgorKossak Если люди умеют пользоваться поиском по форуму и в... Sep 4 2006, 12:12 _Alfred_ Хочу все же вернуться к вопросу о "принудител... Aug 12 2007, 18:14 arttab Если не хотите искать на форуме и посмотреть приме... Aug 13 2007, 02:16 _Alfred_ Цитата(arttab @ Aug 13 2007, 05:16) посмо... Aug 13 2007, 13:42 _Alfred_ Все, разобрался. Дело было как обычно в мельницах.... Aug 13 2007, 22:03 Len_OK тут столько всего написано...Про функции самопрогр... Dec 6 2007, 11:40 _Alfred_ Цитата(Len_OK @ Dec 6 2007, 15:40) тут ст... Dec 6 2007, 15:52 Len_OK Я уже могу писать, но почему-то только в конце заг... Dec 7 2007, 07:36 sergik_vrn Цитата(Len_OK @ Dec 7 2007, 10:36) Я уже ... Dec 7 2007, 14:37 _Alfred_ sergik_vrn
Наверное под "концом загрузчика... Dec 7 2007, 23:22 Len_OK всё никак не получается
пишу Options->Linker-... Dec 10 2007, 10:52 IgorKossak Цитата(Len_OK @ Dec 10 2007, 12:52) всё н... Dec 10 2007, 13:02 Len_OK извините конечно!!! Но что это за ошиб... Dec 10 2007, 13:26 Сергей Борщ Цитата(Len_OK @ Dec 10 2007, 15:26) извин... Dec 10 2007, 15:40 Len_OK спасибо, я уже разобралась.Невнимательна немного... Dec 10 2007, 15:53 alux Пытаюсь использовать функции записи во флеш из апн... Jan 16 2008, 20:08 Сергей Борщ Я думаю, ему не понравилось FARCODE. Поаробуйте пр... Jan 16 2008, 21:15  alux Цитата(Сергей Борщ @ Jan 17 2008, 01:15) ... Jan 17 2008, 06:14   Сергей Борщ Цитата(alux @ Jan 17 2008, 08:14) Прошу п... Jan 17 2008, 09:27    alux Цитата(Сергей Борщ @ Jan 17 2008, 13:27) ... Jan 17 2008, 13:51     Сергей Борщ Цитата(alux @ Jan 17 2008, 15:51) Если не... Jan 17 2008, 14:11     Baser Цитата(alux @ Jan 17 2008, 15:51) Еще раз... Jan 17 2008, 16:57 Baser Сразу возник вопрос: вы это пытаетесь добавлять в ... Jan 17 2008, 09:41 alux Код/* - lnkm324s.xcl -
* XLINK command fi... Jan 17 2008, 14:37 Сергей Борщ Цитата(alux @ Jan 17 2008, 16:37) Не вижу... Jan 17 2008, 15:03 alux Откровенно говоря у меня нет острой необходимости ... Jan 17 2008, 15:37 arttab я поимел большие проблемы в установлении причины п... Jan 18 2008, 02:02 alux Цитата(arttab @ Jan 18 2008, 06:02) я пои... Jan 18 2008, 11:16  Baser Цитата(alux @ Jan 18 2008, 13:16) To Base... Jan 18 2008, 16:29 Breese Возникла такая проблема - не работает АЕS бутлоаде... Jan 20 2008, 18:02 Сергей Борщ Цитата(Breese @ Jan 20 2008, 20:02) дошел... Jan 20 2008, 18:43 Breese Эмм ошибка в пустой функции??? Кстати в АврСтудио ... Jan 20 2008, 19:27 aesok Цитата(Breese @ Jan 20 2008, 22:27) Может... Jan 20 2008, 19:52  Breese Цитата(aesok @ Jan 20 2008, 22:52) А что ... Jan 20 2008, 20:08 arttab Breese
были приколы с "пустой функции main(vo... Jan 22 2008, 01:29 YWAS вот и у меня пришло время писать boot loader, начи... Aug 22 2009, 18:52 Сергей Борщ Цитата(YWAS @ Aug 22 2009, 21:52) такое в... Aug 22 2009, 21:01 YWAS Сергей спасибо за подсказки...
Все оказалось триви... Aug 23 2009, 08:42 Сергей Борщ Цитата(YWAS @ Aug 23 2009, 11:42) после в... Aug 23 2009, 09:16 YWAS типа того,
ошибся немного, было так
MCUCR = temp|(... Aug 23 2009, 09:46
2 страниц
1 2 >
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|