alex_zeed (01.07.2004 10:32, просмотров: 1514)
Вопрос к господину Misyachniy, а не могли бы вы поделиться примерчиком Филипсовским для PDIUSBD12, ну или добрым советом (вопрос внутри)? Пишу программку для железки на ATmega128+PDIUSBD12. Железка есть, атмега работает нормально, общается с D12, читает статус прерывания, статусы ендпоинтов, в общем видимых затыков в коммуникации нет. Подключено с использованием ALE, A0 подтянут как написано, INT заведен на внешний INT меги. Но с хостом практически никак не общается. При втыкании шнурка (или установке бита SoftConnect) 6 раз вызывается прерывание с флагом Suspend Change, и больше никаких флагов не появляется. При отключении появляется еще Bus Reset. Last Transaction Status всегда нулевые. На хосте при этом пишется ошибка Timeout при выполнении команды Set Address (хост линуховый). Хост пробует эту команду 2 раза и оба раза таймаут. Но при этом Frame Number в логах хоста и вычитанный во время прерывания SuspChange из D12 одинаковые - то есть номера кадров микросхема видит...
У меня уже никаких версий нету - но хочется влить туда родной пример. Или что-то еще, но точно рабочее.