|
Вопросы по SAM-BA и SAM-PROG |
|
|
|
Aug 8 2006, 12:07
|
Участник

Группа: Участник
Сообщений: 45
Регистрация: 4-11-05
Из: Tomsk
Пользователь №: 10 464

|
Имеется: 1) отлаженная плата на SAM7S64 + плата из IAR KIT; 2) программа размером 45К, отлаженная с помощью J-Link и IAR 4.40a.
Пытаюсь залить программу через USB, для этого: 1) Компилю программу в raw-binary и результату присваиваю расширение bin. 2) Выполняю танцы с бубном (ERASE, TST на 10 секунд и пр.). Судя по сигналу на кварце, загрузчик успешно переписывается во FLASH. 3) При первом подключение обтанцованной платы инсталлируется драйвер atm6124.sys. 4) Запускаю SAM-BA, затем коннект через USB. На попытку записи файла пишет: «-E- Can't send data, error in connection». 5) Запускаю SAM-PROG. Если это сделать с воткнутым в плату USB-кабелем, то дает Application error. Если сначала запустить программу, а потом воткнуть кабель, то все нормально, кнопка «Write» становится активной. При нажатии на нее программа повисает в глушняк. 6) После такого подвиса на этом разъеме USB проинициализированная заново плата уже не обнаруживается. Перехожу на следующий - история повторяется, и так, пока не кончатся не загаженные разъемы USB.
Вопрос: Что творится с USB и как с этим бороться? Кому-нибудь удалось воспользоваться SAM-PROGом?
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 26)
|
Aug 9 2006, 04:34
|

Мастер
   
Группа: Свой
Сообщений: 730
Регистрация: 18-02-06
Из: Москва
Пользователь №: 14 474

|
Цитата(sgrig @ Aug 8 2006, 16:07)  Имеется: 1) отлаженная плата на SAM7S64 + плата из IAR KIT; 2) программа размером 45К, отлаженная с помощью J-Link и IAR 4.40a.
Пытаюсь залить программу через USB, для этого: 1) Компилю программу в raw-binary и результату присваиваю расширение bin. 2) Выполняю танцы с бубном (ERASE, TST на 10 секунд и пр.). Судя по сигналу на кварце, загрузчик успешно переписывается во FLASH. 3) При первом подключение обтанцованной платы инсталлируется драйвер atm6124.sys. 4) Запускаю SAM-BA, затем коннект через USB. На попытку записи файла пишет: «-E- Can't send data, error in connection». 5) Запускаю SAM-PROG. Если это сделать с воткнутым в плату USB-кабелем, то дает Application error. Если сначала запустить программу, а потом воткнуть кабель, то все нормально, кнопка «Write» становится активной. При нажатии на нее программа повисает в глушняк. 6) После такого подвиса на этом разъеме USB проинициализированная заново плата уже не обнаруживается. Перехожу на следующий - история повторяется, и так, пока не кончатся не загаженные разъемы USB.
Вопрос: Что творится с USB и как с этим бороться? Кому-нибудь удалось воспользоваться SAM-PROGом? У меня SAM-PROG тоже добросовестно вылетает, если девайс подключен до запуска проги. Проверял на 4-х машинах. Но если порядок соблюсти -- шьет нормально. Однако SAM-BA нравится больше, так как после SAM-PROG при восстановлении загрузчика девайс по новой требует установить дрова (atm6124.sys), почему-то. Может у вас дрова как-то кривовато встали? Надо пробовать на другой машине, имхо.
--------------------
شامل
|
|
|
|
|
Nov 13 2006, 10:47
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
По идее надо бы создать новую тему с названием "SAM-PROG: танцы с бубном". Господа из Atmel вероятно решили не афишировать выпуск новых версий SAM-PROG. Иначе чем объяснить нахождение версии 2.3 исключительно в пакете AT91-ISP v1.7 ?.. Тем не менее, проблемы с подключением (и дальнейшим программированием) в новой версии не исчезли. Удалось обнаружить ещё одину багофичу: для активизации кнопки Write нужно два раза отметить пункт Auto-Mode. Решил вот сделать описание по программированию прибора клиентом и столкнулся с проблемой, собственно, безошибочного запуска программы и старта процесса программирования в SAM-PROG. Для этого поставил виртуальную машину XPSP2 (VMwareWSv5.5.2). Однако после однократного подключения прибора и установки дров, SAM-PROG вообще отказывается запускаться: выскакивают поочерёдно известные многим окна:
и далее
Причём после перезагрузки системы, SAM-PROG продолжает вести себя аналогично. Большая вероятность того, что у клиента ситуация в точности повторится. ЧТО ДЕЛАТЬ?? КАК ЗАСТАВИТЬ ЕЁ ЗАРАБОТАТЬ?? Может у кого исходники SAM-PROG есть? P.S. Кстати, если кто пожелает воспользоваться SAM-PROG v2.3, то она в пристыкованном архиве
AT91SAMPROG.rar ( 19.04 килобайт )
Кол-во скачиваний: 385
|
|
|
|
|
Nov 13 2006, 11:35
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
у меня стоит сам-прог версии 2,0 и все работает на ура,кстати у меня тока он шьет сам7х256
|
|
|
|
|
Nov 13 2006, 13:35
|
Участник

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

|
Цитата(Edmundo @ Aug 9 2006, 08:34)  Однако SAM-BA нравится больше, так как после SAM-PROG при восстановлении загрузчика девайс по новой требует установить дрова (atm6124.sys), почему-то. Такая же ситуация но что SAM-BA что SAM-PROG требует все время дрова, поэтому шью через COM. ЗЫ:Кстате должен ли SAM-PROG поддерживать загрузку через COM?
|
|
|
|
|
Nov 13 2006, 13:50
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
Цитата(Диm @ Nov 13 2006, 15:35)  у меня стоит сам-прог версии 2,0 и все работает на ура,кстати у меня тока он шьет сам7х256 Не уж-то ни разу не вис?? Как насчёт поделиться? И как поведёт себя v2.3? Цитата(megachip @ Nov 13 2006, 17:35)  ЗЫ:Кстате должен ли SAM-PROG поддерживать загрузку через COM? Я к сожалению не в курсе долгов программы SAM-PROG, но берусь утверждать, что прога SAM-BA нужна для прошивки через COM-порт, а SAM-PROG - для прошивки через USB. Хотя в последних версиях этих утилит замечена попытка реализовать прошивку через JTAG.
|
|
|
|
|
Nov 13 2006, 14:47
|

Местный
  
Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070

|
Цитата(megachip @ Nov 13 2006, 16:35)  Такая же ситуация но что SAM-BA что SAM-PROG требует все время дрова, поэтому шью через COM. Аналогично. Только я пользуюсь собственным софтом. У себя в ПО реализовал минимальное подмножество команд самбы (записать слово, запустить программу). Дальше в писюковой программе открываю ком-порт, устанавливаю связь с устройством и прописываю в ОЗУ кристалла загрузчик (через это минимальное подмножество) и запускаю его. Дальше уже общаюсь с загрузчиком по собственному протоколу. Достоинства - все под контролем и ничего лишнего. Шьется очень быстро, всего несколько секунд. Одновременно писюковая программа занимается всякой ерундой типа контрольных сумм, серийных номеров, версий зашивки, протоколом работы.
|
|
|
|
|
Nov 13 2006, 15:07
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
Цитата(vmp @ Nov 13 2006, 18:47)  Аналогично. Только я пользуюсь собственным софтом. У себя в ПО реализовал минимальное подмножество команд самбы (записать слово, запустить программу). Дальше в писюковой программе открываю ком-порт... Достоинства - все под контролем и ничего лишнего... Недостатки - собственно com-port, так как есть не у всех (в том числе клиентов). В отличие от USB.
|
|
|
|
|
Nov 13 2006, 15:21
|

Местный
  
Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070

|
Цитата(Master @ Nov 13 2006, 18:07)  Недостатки - собственно com-port, так как есть не у всех (в том числе клиентов). В отличие от USB. У меня в устройстве нет USB. Эти выводы кристалла не задействованы. И частота тактового генератора другая, так что запустить USB просто не получится. А шить можно и через переходник USB-COM. Вдобавок _этот_ канал у меня предназначен не для обновления прошивки пользователем, а для начальной прошивки в процессе производства. Для обновления используется другой канал обмена. Я не считаю свое решение единственно верным и подходящим на все случаи жизни. Просто как один из вариантов.
|
|
|
|
|
Nov 13 2006, 19:08
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
Цитата(vmp @ Nov 13 2006, 19:21)  Цитата(Master @ Nov 13 2006, 18:07)  Недостатки - собственно com-port, так как есть не у всех (в том числе клиентов). В отличие от USB. У меня в устройстве нет USB. Эти выводы кристалла не задействованы. И частота тактового генератора другая, так что запустить USB просто не получится. Для начала предлагаю Вам прочесть (ещё раз или в первый?  ) вопрос в первом сообщении, в самом конце. Цитата А шить можно и через переходник USB-COM. Который нужно ещё купить. Цитата Вдобавок _этот_ канал у меня предназначен не для обновления прошивки пользователем, а для начальной прошивки в процессе производства. Для обновления используется другой канал обмена. _этот_ - это какой? USB или DBGU?... Цитата Я не считаю свое решение единственно верным и подходящим на все случаи жизни. Просто как один из вариантов. Если Вы описываете некое решение, то лично мне интересна по-возможности объективная оценка данного решения, а для объективной оценки освещение достоинств недостаточно, необходимо также указать недостатки. Или Ваш вариант идеален?  Полагаю, только для Вас. И предлагаю закончить дискуссию не по теме. Возвращаясь к теме обсуждения, возможно кто-либо пользуется "заменой" SAM-PROG. Не такой глючной, как последний. Поделитесь, если не жалко, исходниками проекта.
|
|
|
|
|
Nov 14 2006, 12:31
|

Местный
  
Группа: Свой
Сообщений: 426
Регистрация: 20-01-05
Из: Зеленоград
Пользователь №: 2 070

|
Цитата(Master @ Nov 13 2006, 22:08)  Возвращаясь к теме обсуждения, возможно кто-либо пользуется "заменой" SAM-PROG. Не такой глючной, как последний. Поделитесь, если не жалко, исходниками проекта. А исходники самой Самбы подойдут? Их можно взять на этом фтп: ftp://at91dist:distrib@81.80.104.162/в каталоге SAM-BAGUI. Исходники той части, что лежит в чипе - SAM-BABoot. Ссылка на этот фтп была взята с www.at91.com: http://www.at91.com/www/phpBB2_mirror/viewtopic.php4?t=2228
|
|
|
|
|
Nov 14 2006, 13:06
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
Цитата(vmp @ Nov 14 2006, 16:31)  А исходники самой Самбы подойдут? Их можно взять на этом фтп: ftp://at91dist:distrib@81.80.104.162/в каталоге SAM-BAGUI. Исходники той части, что лежит в чипе - SAM-BABoot. Ссылка на этот фтп была взята с www.at91.com: http://www.at91.com/www/phpBB2_mirror/viewtopic.php4?t=2228Да, полезный форум у буржуев. Я как раз с этого ftp-ника брал пакет AT91-ISP v1.7. В общем, решение найдено!Помогло более детальное изуение документа AT91 In-system Programmer (ISP) User Guide. Раздел 1.3.2. Короче говоря, для корректного пользования утилит пакета AT91-ISP (SAM-BA, SAM-PROG ) нужно установить и зарегистрировать библиотеку AT91Boot_DLL.dll. Пользуюсь следующим батником: Код @copy AT91Boot_DLL.dll %windir%\System32 @regsvr32 /s /c %windir%\System32\AT91Boot_DLL.dll Здесь он натурально:
DLL_Install.rar ( 153 байт )
Кол-во скачиваний: 342На всякий случай выкладываю саму dll-ину:
AT91Boot_DLL.rar ( 23.37 килобайт )
Кол-во скачиваний: 314После регистрации библиотеки SAM-PROG стал работать стабильнее. Иногда всё же вываливается по ошибке, но по крайней мере стартует без проблем и шьёт по USB - выполняет свою основную задачу. Удачи в програмировании!
|
|
|
|
|
Sep 13 2007, 09:56
|
Частый гость
 
Группа: Новичок
Сообщений: 170
Регистрация: 26-05-05
Из: Москва
Пользователь №: 5 405

|
Цитата(alexander55 @ Sep 12 2007, 14:12)  Никак. Загрузчик уже снесен. А на самом деле - можно!  И буржуины этот момент просекли пару лет назад. К сожалению, точной ссылки не дам - давно SAM7 плотно не пользую, но помню, что метода для SAM7S64 работала, а для других камней давались адреса загрузчика и старта. Заключается она в том, что загрузчик лежит в общем адресном пространстве, и его надо переписать в ОЗУ и запустить. Удачи в поиске!
|
|
|
|
|
Sep 21 2008, 01:43
|
Местный
  
Группа: Свой
Сообщений: 433
Регистрация: 28-02-06
Пользователь №: 14 788

|
Цитата(vmp @ Nov 14 2006, 15:31)  А исходники самой Самбы подойдут? Их можно взять на этом фтп: ftp://at91dist:distrib@81.80.104.162/в каталоге SAM-BAGUI. Исходники той части, что лежит в чипе - SAM-BABoot. Ссылка на этот фтп была взята с www.at91.com: http://www.at91.com/www/phpBB2_mirror/viewtopic.php4?t=2228А не оталось ли у кого исходников етой Самбы (то что в чипе особенно нужно) а то на указанном фтп соответсвующих директоий не наблюдается. Спасибо.
|
|
|
|
|
Sep 30 2008, 09:50
|

Участник

Группа: Свой
Сообщений: 32
Регистрация: 6-06-08
Из: Украина, Одесса
Пользователь №: 38 096

|
Что бы не создавать еще одну тему задам вопрос тут .... кто может скинуть драйвер для отладочной платы ... нужен atm6124.sys .... (а то попытки скачать не принесли успеха, или плохо искал ?  ) Р.S. можно сюда а можно и на мыло tooker@mail.ru
Сообщение отредактировал TookeR - Sep 30 2008, 09:51
--------------------
Lasciate ogni speranza voi ch 'entrate. © Dante Alighieri Оставь надежду всяк сюда входящий. © Данте Алигьери TookeR aka Jasfin
|
|
|
|
|
Sep 30 2008, 12:35
|

Участник

Группа: Свой
Сообщений: 32
Регистрация: 6-06-08
Из: Украина, Одесса
Пользователь №: 38 096

|
Вообщем столкнулся с проблемой что при подключении ее к компу определяеться она как неизвестное устройство. Как застависть комп видеть ее как девборд ? вообщем заставил комп видеть ее как дев борд но самба его не видет и все
Сообщение отредактировал TookeR - Sep 30 2008, 13:02
--------------------
Lasciate ogni speranza voi ch 'entrate. © Dante Alighieri Оставь надежду всяк сюда входящий. © Данте Алигьери TookeR aka Jasfin
|
|
|
|
|
May 28 2009, 13:41
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 19-12-08
Пользователь №: 42 616

|
а чем компилить данный проект AT91BootSAM7X.zip подскажите плз
|
|
|
|
|
May 24 2011, 12:22
|
Частый гость
 
Группа: Участник
Сообщений: 80
Регистрация: 7-05-11
Из: Москва
Пользователь №: 64 842

|
Цитата(Waso @ Sep 12 2007, 13:32)  Вопрос - как сделать так чтобы клиент мог сам сменить прошивку через УСБ, не залазя внутрь и не замыкая ERASE? Подозреваю что самому надо писать лодыря. А нельзяли какнибудь применить встроенный?? Я делаю это так: void ReProgramm(void) { ClrScr(); GotoXY(0,0); *AT91C_PMC_PCDR = 1 << AT91C_ID_UDP; if (USBPower) { PrintS("Отключите от USB!\r"); while (USBPower); PrintS("Отключено.\r"); } PrintS("Подключите к USB.\r\r"); while (!inKey()) { if (USBPower) { PrintS("Запустите SAM-PROG.\r\rПосле прошивки-\rотключите от USB."); AT91C_BASE_WDTC->WDTC_WDMR = AT91C_WDTC_WDRSTEN | 200; // 0.8 sec, Watchdog Reset Enable WDT; EFC_PerformCommand(AT91C_BASE_EFC0,AT91C_MC_FCMD_CLR_GP_NVM,2); PowerOff(); *AT91C_RSTC_RCR=0xA5000005; //Do reset while(1); // Ждем WDT } } } Т.е. по команде пользователя запускается эта функция, далее он подключает прибор к компу, запускает SAM-Prog и заливает новую прошивку.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|