|
Синее окно смерти Windows XP, при подключении ARMa по USB.... |
|
|
|
Apr 2 2006, 03:03
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Суть в следующем. Есть ARM AT91SAM7S64 с кварцем 18.432 МГц, подключил его по USB, залил во флэшку SAM-BA (поднятием пина TST при включении питания). Windows XP увидела новое устройство - опознала его что-то типа "AT91 Evaluation Board", запросила драйвер. Потом я скачал SAM-BA с сайта www.at91.com , в его составе есть драйвер atm6124.sys , который и был установлен. После этого всё заработало - открылся SAM-BA по USB, мне удалось залить во флэшку тестовую программку и она тоже заработала. Но радость моя недолго длилась  Плата с ARM перестала правильно отзываться по USB, теперь она стала "Unknown device" . Я так думаю, что при загрузке своей программы во флэшку я снёс оттуда SAM-BA, залитый туда по поднятию TST. "Не беда" - подумал Штирлиц и вновь поднял ножку TST при включении питания Теперь плата, будучи подключенная по USB, выносит Windows XP в "синее окно смерти" с громким щелчком головками винчестера  И это синее окно как раз и указывает, что фатальная ошибка произошла в файле atm6124.sys, тот, который драйвер... Кто-нибудь сталкивался с такой проблемой ? Я пробовал переустановить SAM-BA, удалив предварительно atm6124.sys из системной папки, затем несколько раз пробовал поднимать TST-пин при включении (обновить SAM-BA в контроллере) - результат один - окно смерти С USB всё в порядке (на этом же порту работает принтер без проблем). Драйвер? Но ведь поначалу с ним всё работало ! Раз винда пытается ставить нужный драйвер - значит, она видит устройство по USB правильно, значит, SAM-BA в контроллере установлен... Затыка, вобщем, какая-то странная....
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
 |
Ответов
(1 - 6)
|
Apr 2 2006, 06:52
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Все верно, SAM-BA выдает VID/PID, и Винда ставит этот самый драйвер. Пользовательская программа затирает SAM-BA, и если сама не отдаст VID/PID плата становится "Unknown device". Перепрошивка SAM-BA возвращает все в зад  Проблема скорее всего касается именно системы. Драйвер или конфликтует с кем-то или некорректно снесен.Рекомендую воспользоваться каким нибудь шпиенским софтом, от Sysinternals например или там хорошим отладчиком для драйверов, чтобы посмотреть на процесс вызова драйвера, IRP пакеты. На крайняк, прошерстить реестр. Ну и последнее, надеюсь TST поднимался ДО включения питания и удерживался не менее 10сек.
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Apr 2 2006, 20:07
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(beer_warrior @ Apr 2 2006, 10:52)  Проблема скорее всего касается именно системы. Драйвер или конфликтует с кем-то или некорректно снесен.Рекомендую воспользоваться каким нибудь шпиенским софтом, от Sysinternals например или там хорошим отладчиком для драйверов, чтобы посмотреть на процесс вызова драйвера, IRP пакеты. На крайняк, прошерстить реестр. Но ведь поначалу всё заработало !!! Значит, драйвер не битый, установлен корректно, ни с кем не конфликтует. У меня на самом деле есть три версии произошедшего. 1. При повторной заливке SAM-BA в контроллере произошел сбой (часть кода не успела скопироваться из ROM или что-то подобное). А контроллер при поднятой ноге TST, вероятно, смотрит просто сигнатуру во флэше. Видит, что там уже лежит SAM-BA, и вновь его не перезаливает. А там битый код... Возможно такое? 2. Сдох какой-нибудь бит во флэшке и не берётся даже перезаписью. Хотя чип совсем новый, второй раз делал запись во флэш. Маловероятно... 3. Слабо поднимается уровень на USB проводе, по которому винда опознаёт подключение. Измерил, что-то около 2,6 В. Хотя сделал номиналы резисторов из даташита на SAM7S64. Цитата Ну и последнее, надеюсь TST поднимался ДО включения питания и удерживался не менее 10сек. Одновременно. Вешаю на TST резистор 2 кОм, и его на питание 3,3 В, затем подаю питание на плату, жду около 15 сек, затем убираю резистор с TST, подключаю USB и подаю питание - и в этот момент происходит
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
Apr 3 2006, 08:20
|

Профессионал
    
Группа: Свой
Сообщений: 1 065
Регистрация: 8-10-05
Из: Kiev, UA
Пользователь №: 9 380

|
Цитата атем убираю резистор с TST, подключаю USB и подаю питание Непонятно, сбрасываете ли вы девайс после восстановления САМБЫ. Как поживают ножки РА0-2? И последнее. Мне приходилось загонять кристалл в самые неприличные позы, потом все восстанавливолось.Попробуте снести драйвер и подключить девайс. Он должен опознаться как unknown, если нет - проблемы с дровами, если да с САМБой. Да и еще, есть ведь DBGU.
--------------------
Вони шукають те, чого нема, Щоб довести, що його не існує.
|
|
|
|
|
Apr 4 2006, 02:43
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(aaarrr @ Apr 3 2006, 04:19)  Попробуйте с ногой ERASE пошаманить - может помочь. Как же я мог забыть про эту волшебную ногу !!! Именно она и помогла. Вычистил ею флэшку, залил САМБУ в кристалл заново, и всё заработало. Видимо, дело было в том, что при заливке САМБЫ произошёл какой-то сбой, а по поднятию TST вновь кристалл определяет, что САМБА уже якобы залит, и заново её не копирует. Спасибо всем откликнувшимся ! Тема закрыта.
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|