Да.
Нужно дать пояснения, я так думаю.
В отличие от медленного PS/2, где можно вмешаться в ход приема данных с клавиатуры в угоду запросу с компьютера, в USB дело немножко по-другому.
Здесь уже жестко, примерно 100 раз в секунду, чип общается с usb-клавиатурой. И прерывать это низзя, ибо рухнет связь. Поэтому 100 раз в секунду чип чертовски занят поддержанием связи с внешней HID-клавой аппаратно и обработкой (обновлением) полученных данных софтово. И на запросы какого-то там ЮТа или спектрума ему пофигу. Ибо все может поломаться, если на них отвлекаться.
Поэтому во всех схемах контроллеров применяют второй чип - матрицу, которую можно теребонькать в любое удобное для компа время, матрица всегда готова. А данные для нее отправляет юсб-чип в удобное для него время, а не когда хочет комп.
Так сделан и контроллер на ПИКе+CPLD, и VNC2+FPGA на u16_Reverse.
Мой вариант успевает, на пределе, обрабатывать запросы ЮТа. Но это все равно не даст гарантии, что он примет абсолютно все запросы. Вот...





ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Ответить с цитированием