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

    

drz

Новичок
  • Публикаций

    1
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. прерывание от USB

    Пытаюсь понять USB на контроллере SAM3S. Это USB CDC устройство, которое уже определяется виндой. Проблема с передачей файлов в контроллер. Передаю 7 байт информации: в регистре UDP_CSR[1] 42 82 07 00 - принято семь байт информации в два банка. В даташите написано, что такое может быть, когда контроллер занят чем-то ещё. И правда, - он постоянно опрашивает пользовательские дескрипторы iManufacturer iSerial (вывожу символ в юсарт при этом событии), вряд ли так и должно быть и я не нашл какого-либо объяснения в интернетах, кроме того, что информация в этих дискрипторах ни на что не влияет - поэтому у меня там по нулям {0x02, 0x03}. У меня несколько вопросов: в какие моменты нужно (и нужно ли вообще) отменять прерывания по точкам? Должен ли USB постоянно опрашивать эти дескрипторы? Почему два банка? Обработчик USB прилеплен к сообщению. Ещё мне кажется, я неправильно обрабатываю первую конечную точку (чищу банки эти). Надеюсь на вашу помощь.