|
|
  |
AT90USB162. Заводской загрузчик., Какой кварц должен быть? |
|
|
|
Sep 28 2011, 10:41
|
Частый гость
 
Группа: Участник
Сообщений: 103
Регистрация: 29-08-07
Пользователь №: 30 122

|
Сабж, однако. Спаял платочку, подключаю к USB, жму RESET, жму HWB, отпускаю RESET, отпускаю HWB - никакой реакции. Стал шарахаться по всему свету в поисках инфы. Где-то говорят, что заводской бут работает только с 8 мгГцовым кварцем, где-то - наоборот, что толко с 16. Кто знает, ответьте - что есть истина? К сожалению, нет в наличии кварца на 8, не могу попробовать.
|
|
|
|
|
Sep 28 2011, 11:35
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(Штабскапитан Овечкин @ Sep 28 2011, 14:51)  А подскажите, пожайлуста - что это за драйвер, где его можно взять, для чего он нужен? Любому USB-устройству положено иметь драйвер. А когда мы обходимся без него (например, суем в комп флешку), означает лишь то, что используется какой-то из стандартных драйверов, имеющихся у Windows. Для атмеловских процессоров у Windows драйвера нет, поэтому она только может только сигнализировать "обнаружено новое USB-устройство", но работать с ним без драйвера не станет. Однако грубую проверку можно делать и без инсталляции драйвера, т.к. при неправильной частоте PLL на подключение контроллера Windows вообще никак не реагирует, а если с этим все в порядке, то обнаружит новое USB-устройство. В данном случае речь скорее всего идет от FLIP-инсталлере: http://www.atmel.com/dyn/products/tools_ca...sp?tool_id=3886http://www.atmel.com/dyn/resources/prod_do...20-%203.4.3.exe Который при инсталляции и драйвер поставит, и позволяет заливать и считывать прошивки из USB-контроллеров фирмы Atmel.
|
|
|
|
|
Sep 28 2011, 12:15
|

Профессионал
    
Группа: Свой
Сообщений: 1 143
Регистрация: 30-09-08
Из: Новочеркасск
Пользователь №: 40 581

|
можно определить тактовую частоту (ГРУБО), воспользовавшись WDT: настраиваем WDT на 15 миллисекунд, запускаем бесконечный цикл типа while(1) var++; и после того, как произойдет сброс, смотрим содержимое var - оно будет пропорционально тактовой частоте. если хорошо подумать, можно определить частоту с точностью процентов 10... ну, про то, что var должна быть в НЕИНИЦИАЛИЗИРУЕМОЙ в стартапе области ОЗУ, я и не напоминаю... можно и проще: настраиваем WDT на 15 миллисекунд и делаем ПРОГРАММНУЮ задержку на 10 миллисекунд, после чего ЦВЕ отключаем. если отключился WDT - тактовая РАСЧЕТНАЯ, если был сброс - значит, тактовая МЕНЬШЕ расчетной. 8 от 16 мегагерц отличить можно однозначно
--------------------
Я бы взял частями... но мне надо сразу.
|
|
|
|
|
Sep 28 2011, 12:53
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(Xenia @ Sep 28 2011, 15:49)  Интересно было бы узнать, как здесь (autobaud) МК узнаёт частоту кварца, на котором его запустили Цитата(ARV @ Sep 28 2011, 16:15)  можно определить тактовую частоту (ГРУБО), воспользовавшись WDT... если хорошо подумать, можно определить частоту с точностью процентов 10... Для определения частоты тактового генератора, естественно, необходима некая "образцовая" частота. В AVR, обычно, имеется два генератора, которые можно использовать в качестве "образца": Watchdog Oscillator и Calibrated RC Oscillator. Использование Watchdog Oscillator выше описал уважаемый ARV. Однако этот генератор имеет одну неприятную особенность - сильная зависимость частоты от напряжения питания: частота может изменятся в несколько раз на границах допустимых напряжений питания. Можно использовать Calibrated RC Oscillator - он гораздо точней, от него тактируется автомат записи в EEPROM и по времени записи ячейки EEPROM можно расчитать частоту тактового генератора. В этом случае тоже без "ложки дёгтя" не обходится - ресурс EEPROM далеко не бесконечен (хотя, если ячейку и убить - содержимое её никого не интересует, нужно только время записи)...
|
|
|
|
|
Sep 28 2011, 13:19
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(Палыч @ Sep 28 2011, 16:53)  Для определения частоты тактового генератора, естественно, необходима некая "образцовая" частота. В AVR, обычно, имеется два генератора, которые можно использовать в качестве "образца": Watchdog Oscillator и Calibrated RC Oscillator. Вообще-то бывает еще "Real Time Clock". Он, кажется, от встроенного 32 КГц генератора тактируется. Правда у AT90USB162 таких часов нет, но у старших моделей они уже есть. В принципе часы реального времени не должны сильно зависеть от напряжения питания. И прерывание специальное от них зарезервировано. Однако клок там довольно продолжительный (меньше секунды бывает?).
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|