реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Boot Loader в AT90USB646
Alio
сообщение Sep 21 2007, 13:12
Сообщение #1





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Только, только начинаю работать с AT90USB646 и не получается
после ресета(задействовав HWB пин, HWBE=0) стартовать в Boot Loader.
Стартует прошитое приложение(HID).
Может кому-то такое знакомо ?
Прошиваю МК avreal32 через Byte Blaster.
Спасибо.
Go to the top of the page
 
+Quote Post
Peter Pavlov
сообщение Sep 23 2007, 17:53
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-09-07
Пользователь №: 30 755



Цитата(Alio @ Sep 21 2007, 16:12) *
Только, только начинаю работать с AT90USB646 и не получается
после ресета(задействовав HWB пин, HWBE=0) стартовать в Boot Loader.
Стартует прошитое приложение(HID).
Может кому-то такое знакомо ?
Прошиваю МК avreal32 через Byte Blaster.
Спасибо.

А фузы случайно не надо шить что бы выбрать загрузку бутлоадера? В атмеге128 фузами только можно выбрать размер и точку старта программы.
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 24 2007, 12:02
Сообщение #3





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Цитата(Peter Pavlov @ Sep 23 2007, 20:53) *
А фузы случайно не надо шить что бы выбрать загрузку бутлоадера? В атмеге128 фузами только можно выбрать размер и точку старта программы.

Даа,
шью BOOTSZ=0, BOOTRST=1 и этот HWBE=0.
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 25 2007, 14:07
Сообщение #4





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Есть предположение, что avreal затирает область bootloader'а
во Флэше.
Известно, что на Атмеле есть прошивка для bootloader'а.
Т.е. можно пробовать восстанавливать его.
Но его нужно прошивать в свою область во Флэше ?
И эта прошивка а90 файл.
Не получается почему-то это с avreal.

???
Go to the top of the page
 
+Quote Post
Peter Pavlov
сообщение Sep 25 2007, 22:13
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 22-09-07
Пользователь №: 30 755



Цитата(Alio @ Sep 25 2007, 17:07) *
Есть предположение, что avreal затирает область bootloader'а
во Флэше.
Известно, что на Атмеле есть прошивка для bootloader'а.
Т.е. можно пробовать восстанавливать его.
Но его нужно прошивать в свою область во Флэше ?
И эта прошивка а90 файл.
Не получается почему-то это с avreal.

???

Все нормально с avreal, прошил не один десяток бутлоадеров им. В хексе должно быть правильное смещение на начало бут области. В иаре нужно выбрать выходной файл - hex extended если помню точно. А само смщение прописать в настройках проекта
Настройки для самого толстого бутлоадера
xlink->#define->

BOOT_SIZE=2000
FLASH_SIZE=20000
IVT_SIZE=8C
RAM_SIZE=1000
RAM_BASE=100
RSTACK_SIZE=400
CSTACK_SIZE=100

и сам xcl file:

-ca90
-w29


//=============================================================================
// Interrupt vectors

-Z(CODE)INTVEC=(FLASH_SIZE-BOOT_SIZE)-(FLASH_SIZE-BOOT_SIZE+IVT_SIZE-1)

//=============================================================================
// Fill unused with RETI

-H1895
-h(CODE)(FLASH_SIZE-BOOT_SIZE)-(FLASH_SIZE-BOOT_SIZE+IVT_SIZE-1)

//=============================================================================
// Code memory

-Z(CODE)NEAR_F,HUGE_F,SWITCH,INITTAB,DIFUNCT,NEAR_ID,CODE=(FLASH_SIZE-BOOT_SIZE+IVT_SIZE)-(FLASH_SIZE-1)
-Z(FARCODE)FAR_F=(FLASH_SIZE-BOOT_SIZE+IVT_SIZE)-(FLASH_SIZE-1)

//=============================================================================
// RAM

-Z(DATA)TINY_I,TINY_Z,TINY_N=RAM_BASE-FF
-Z(DATA)NEAR_I,NEAR_Z=RAM_BASE-(RAM_BASE+RAM_SIZE-1)
-Z(DATA)RSTACK+RSTACK_SIZE=RAM_BASE-(RAM_BASE+RAM_SIZE-1)
-Z(DATA)CSTACK+CSTACK_SIZE=RAM_BASE-(RAM_BASE+RAM_SIZE-1)
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 26 2007, 09:09
Сообщение #6


Гуру
******

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



Цитата(Alio @ Sep 25 2007, 17:07) *
Есть предположение, что avreal затирает область bootloader'а во Флэше.
avreal "сам" ничего не делает. Если вы пытаетесь в кристалл с зашитым загрузчиком дописать свою программу, да еще с ключем -e, то конечно затрет. Более того, в новом контроллере в этой области ничего не записано - вы должны записать туда загрузчик самостоятельно.
Цитата(Alio @ Sep 25 2007, 17:07) *
И эта прошивка а90 файл.
А вы пробовали его открывать текстовым редактором? Это случайно не ассемблерный исходник?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 26 2007, 12:01
Сообщение #7





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



05.gif Значит после avreal бутлоадер действует.
Только, что у меня лишь прошивочный файл, без исходника,
но именно для AT90USB646 от Атмела.
Правда это .а90 файл.IAR такие даёт. Может у меня в связи
с этим не идёт с бутлоадером работа после avreal...

Цитата(Сергей Борщ @ Sep 26 2007, 12:09) *
avreal "сам" ничего не делает. Если вы пытаетесь в кристалл с зашитым загрузчиком дописать свою программу, да еще с ключем -e, то конечно затрет.

...значит с ключом -е и boot область затирается...

Цитата(Сергей Борщ @ Sep 26 2007, 12:09) *
Более того, в новом контроллере в этой области ничего не записано - вы должны записать туда загрузчик самостоятельно.

Это интересная информация

Цитата(Сергей Борщ @ Sep 26 2007, 12:09) *
А вы пробовали его открывать текстовым редактором? Это случайно не ассемблерный исходник?

Да, и в текстовом редакторе видно, что это hex файл, у него такое расширение от IAR.
А совместим ли он INTEL hex файлами - ?.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 26 2007, 14:35
Сообщение #8


Гуру
******

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



Цитата(Alio @ Sep 26 2007, 15:01) *
...значит с ключом -е и boot область затирается...
Это интересная информация
С этим ключем стирается все - код, загрузчик, локи, eeprom.
Цитата(Alio @ Sep 26 2007, 15:01) *
Да, и в текстовом редакторе видно, что это hex файл, у него такое расширение от IAR.
А совместим ли он INTEL hex файлами - ?.
Да, вспоминаю, действительно по умолчанию такое расширение. Попробуйте прописать его avreal-ом, он выругается если что.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 27 2007, 07:19
Сообщение #9





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Цитата(Сергей Борщ @ Sep 26 2007, 17:35) *
Попробуйте прописать его avreal-ом, он выругается если что.


Да,
прошивка проходит :


Command:
+90usb1286 -p1 -ab -o8000 -fjtagen=1,cksel=6 -ew -! 64X-usb-boot-1-0-0.a90
Start address record in HEX file ignored
Device connected, but not recognised, ID: 0x1E9682
Chip not locked
Device erased
Device connected, but not recognised, ID: 0x1E9682
Device type forced to 90USB1286
Fuses
OSCCAL = A7
CKDIV = 1
CKOUT = 0
SUT = 0
CKSEL = 6
BLB1 = 3
BLB0 = 3
OCDEN = 1
JTAGEN = 1
WDTON = 1
EESAVE = 1
BOOTSZ = 0
BOOTRST = 1
HWBE = 0
BODLEVEL = 4
Programming CODE memory
....... done
Programming fuses
New fuses value
OSCCAL = A7
CKDIV = 1
CKOUT = 0
SUT = 0
CKSEL = 6
BLB1 = 3
BLB0 = 3
OCDEN = 1
JTAGEN = 1
WDTON = 1
EESAVE = 1
BOOTSZ = 0
BOOTRST = 1
HWBE = 0
BODLEVEL = 4
Reset pin released
Adapter disabled

...Но после бутлоадер не запускается ...
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 27 2007, 09:20
Сообщение #10


Гуру
******

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



Цитата(Alio @ Sep 27 2007, 10:19) *
BOOTSZ = 0
...Но после бутлоадер не запускается ...
Размер бут-области правильно указан? Скиньте ссылку на раздел сайта атмела где лежит прошивка вашего загрузчика.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 27 2007, 11:14
Сообщение #11





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Цитата(Сергей Борщ @ Sep 27 2007, 12:20) *
Размер бут-области правильно указан?

...не гарантирую

Цитата(Сергей Борщ @ Sep 27 2007, 12:20) *
Скиньте ссылку на раздел сайта атмела где лежит прошивка вашего загрузчика.


http://www.atmel.com/dyn/products/product_...mp;part_id=3877

это "AT90USB64x USB Bootloader v1.0.0"
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 27 2007, 12:26
Сообщение #12


Гуру
******

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



Цитата(Alio @ Sep 27 2007, 14:14) *
это "AT90USB64x USB Bootloader v1.0.0"
На первый взгляд все правильно, в описании они пишут про размер бут-области 8К. Но содержимое файла располагается с адреса 0xF000 (0x7800 в словах), а это соответствует размеру бут-области 4К. Попробуйте -fBOOTSZ=1
При прошивке вы зачем-то указываете его как 90usb1286.
Да, еще попробуйте добавить в командную строку avreal ключ -v, пусть он проверит - правильно ли зашивается?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 27 2007, 14:54
Сообщение #13





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Цитата(Сергей Борщ @ Sep 27 2007, 15:26) *
На первый взгляд все правильно, в описании они пишут про размер бут-области 8К. Но содержимое файла располагается с адреса 0xF000 (0x7800 в словах), а это соответствует размеру бут-области 4К. Попробуйте -fBOOTSZ=1

Прошил так, но после ресета с участием HWB пина всё равно работает зашитое приложение.

Цитата(Сергей Борщ @ Sep 27 2007, 15:26) *
При прошивке вы зачем-то указываете его как 90usb1286.

AVREAL V1.25rev5(наверное самая новая) не поддерживает конкретно 90usb646 кристалл,
а 90usb1286 поддерживает. Используя ключ -! веду прошивку.

Цитата(Сергей Борщ @ Sep 27 2007, 15:26) *
Да, еще попробуйте добавить в командную строку avreal ключ -v, пусть он проверит - правильно ли зашивается?

После прошивки загрузчика с ключом -v есть сообщение:

Verifying CODE memory
....... passed
done


При программировании загрузчика среди прочих выдаётся сообщение:
"Start address record in HEX file ignored"
при программировании приложения его нет.
Go to the top of the page
 
+Quote Post
defunct
сообщение Sep 27 2007, 15:09
Сообщение #14


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Alio @ Sep 27 2007, 17:54) *
не поддерживает конкретно 90usb646 кристалл,
а 90usb1286 поддерживает.

Нельзя шить кристал с меньшим объемом флеш как кристал с бОльшим объемом.
Размеры страницы флеш разные, так можно убить чип.
Если программатором не поддерживается конкретно ваш чип, то надо выбирать ближайший подобный по объему флеш. Например m8535 - можно шить как m88, но нельзя как m16 (хотя по периферии m8535 и m16 практически одно и то же, а с m88 кроме объема флеш нет ничего общего).
Go to the top of the page
 
+Quote Post
Alio
сообщение Sep 28 2007, 06:54
Сообщение #15





Группа: Новичок
Сообщений: 13
Регистрация: 26-04-06
Пользователь №: 16 516



Цитата(defunct @ Sep 27 2007, 18:09) *
Нельзя шить кристал с меньшим объемом флеш как кристал с бОльшим объемом.

Да, понятно.
... так, тут практически, прошивал уже не единыжды приложение и работал над ним.
может ещё больше не запорчу этот чип
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 14th July 2025 - 17:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01499 секунд с 7
ELECTRONIX ©2004-2016