alevnew 0 22 октября, 2009 Опубликовано 22 октября, 2009 (изменено) · Жалоба Решил сделать хост на LPC2468 для чтения USB флэшек. За образец взял пример USBHostLite от NXP. В конфигурации как в примере - все работает. Но мне нужно перекиннуть хост на USB1. делаю OTG_STAT_CTRL=0x03; Ну и, конечно, выставляю нужную конфигурацию пинов. Втыкаю флэшку (или можно резистор между 5В и D+, не важно), срабатывает прерывание, читаю там HcRhPortStatus. По нулям. И дальше не работает ничего. Если же на USB2 (OTG_STAT_CTRL=0x00), то при том же самом HcRhPortStatus=0x00010101. И все работает. Уж чего не пробовал - никак не хочет работать на USB1. Кто-нибудь сталкивался с подобной проблемой? Изменено 22 октября, 2009 пользователем alevnew Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alevnew 0 23 октября, 2009 Опубликовано 23 октября, 2009 · Жалоба Разобрался однако. Кому интересно, чтоб не искать грабли: Все правильно сделал, в принципе. Но... Кто же знал, что регистр HcRhPortStatus может иметь два адреса. Один адрес, если используется USB1, другой - если USB2. Все что написано в даташите, и более ничего: HcRhPortStatus[1] 0xFFE0 C054 R/W Controls and reports the port events on a per-port basis. 0x0 HcRhPortStatus[2] 0xFFE0 C058 R/W Controls and reports the port events on a per port basis. 0x0 Хотя мог бы и догадаться сам :). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться