Перейти к содержанию
    

AT90USB1286, виртуальный COM-порт

Попробывал реализовать виртуальный COM-порт на AT90USB1286. За основу взял пример от Атмел (at90usb128-demo-cdc-1_0_3.zip). Подправил частоту (16МГц) и тупо загрузил, не пошло! Виндовс подключение устройства определяет, но тип устройства нет.

Может кто-то работал с этим примером, какие были проблемы (если были)? :unsure:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы бы сам файл прикрепили, а то тут частенько просят эти примеры, а они, я так понял, даются только после регистрации на сайте атмела, что опять же будет неудобно желающим вам помочь...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробывал реализовать виртуальный COM-порт на AT90USB1286. За основу взял пример от Атмел (at90usb128-demo-cdc-1_0_3.zip). Подправил частоту (16МГц) и тупо загрузил, не пошло! Виндовс подключение устройства определяет, но тип устройства нет.

Может кто-то работал с этим примером, какие были проблемы (если были)? :unsure:

Обычно частоту камня делают кратной тактовой частоте USB, если ее можно назвать тактовой. Для LowSpeed это 1,5 МГц, для Full - 12 МГц. У ВАс не бъет ни для первой ни для второй - курите даташит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обычно частоту камня делают кратной тактовой частоте USB, если ее можно назвать тактовой. Для LowSpeed это 1,5 МГц, для Full - 12 МГц. У ВАс не бъет ни для первой ни для второй - курите даташит.

Спасибо, не курю, тем более даташиты. :)

А в нём как раз и сказано чистым англицким языком, что USB PLL умножитель имеет кратность х24 и предварительный делитель частоты XTAL до 2МГц с помощью PLL clock Prescaler, дабы получить необходимые 48МГц для тактирования USB интерфейса. И этот PLL clock Prescaler может быть только 4 или 8, т.е. для 8МГц и 16МГц клока соответственно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо, не курю, тем более даташиты. :)

А в нём как раз и сказано чистым англицким языком, что USB PLL умножитель имеет кратность х24 и предварительный делитель частоты XTAL до 2МГц с помощью PLL clock Prescaler, дабы получить необходимые 48МГц для тактирования USB интерфейса. И этот PLL clock Prescaler может быть только 4 или 8, т.е. для 8МГц и 16МГц клока соответственно.

Понятно. Я высказал лишь предположение, потому как с этим камнем не работал, но работал с USB. В таком случае отладчик Вам в помощь (или DBG_OUT :-))). Посмотрите в первую очередь, принимает ли чип пакеты - скорее всего в коде есть оброботчик прерывания для такого дела.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В таком случае отладчик Вам в помощь (или DBG_OUT :-))).

Внутрисхемный отладчик вещь хорошая, но нет такового. Я пример и взял, в надежде что всё уже отлажено до нас. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внутрисхемный отладчик вещь хорошая, но нет такового. Я пример и взял, в надежде что всё уже отлажено до нас. :)
Я же сказал - "... (или DBG_OUT :-)))." имея ввиду вывод в СОМ-порт. Если и СОМ-порта нет, то тогда есть еще одно хорошее средство - привинтить к свободной ноге(ногам) светодиод(ы), и , так скааать, визуально наблюдать скрытый процесс:-) У меня для AVR до сих пор тоже нет железного отладчика - пользуюсь именно выводом в USART или светодиодами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я же сказал - "... (или DBG_OUT :-)))." имея ввиду вывод в СОМ-порт. Если и СОМ-порта нет, то тогда есть еще одно хорошее средство - привинтить к свободной ноге(ногам) светодиод(ы), и , так скааать, визуально наблюдать скрытый процесс:-) У меня для AVR до сих пор тоже нет железного отладчика - пользуюсь именно выводом в USART или светодиодами.

Хех, идея хорошая, но плата уже готова, чип запаян, а навешивать "сопли" на чип в QFN64 дело неблагодарное.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел ошибку в коде примера, неверный PLL clock Prescaler для частоты 16МГц, поправил.

Устройство стало определяться Виндовс, как "Контроллеры универсальной последовательной шины USB / Неизвестное устройство". Выходит, что устройство не возвращает сведений о себе. :smile3046:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а при установке драйвера at90usbxxx_cdc.inf указывали?

Пробывал, но драйвера на "Неизвестное устройство" там не оказалось. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чип перестал работать, просто в один прекрасный день не завёлся и всё. Через ISP не отвечает. Проверил, на кварце нет генерации (16МГц). Заметил, что при отключении питания генерация на мгновение появляется при спаде питания ниже BOD. Что бы это значило?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...