llexxey1090 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба Здравствуйте Помогите советом вот в таком вопросе. Контроллер CY68001 Я через макетную плату на CY68013 залил в ПЗУ пример прошивки SX2 C:\Cypress\USB\Examples\Sx2\eeprom images\SX2 C4 перепаял ПЗУ к CY68001.(программатора у меня нет) Все работает, четыре точки EP2, EP4-512 OUT, EP6,EP8-512-IN управляется вешней логикой-- читается пишется все нормально. Но теперь возникла проблема ---мое устройство должно в процессе передачи данных на в ОС периодически менять свои параметры, реагируя на команды с хоста в процессе передачи данных, а флаги если выставить адрес FIFO IN, не указывают пришло что-то с хоста или нет. Мне бы нужно изменить работу флагов так, чтобы один из них при любом адресеFIFO, показывал есть ли что-то в одном из приемных FIFO. Возможно ли это, и если можно вкратце мои действия. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-Al- 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба Посмотрите пункт 7.2 FLAGSAB/FLAGSCD Registers 0x02/0x03 таблицу 7-2. FIFO Flag 4-bit Coding в datasheet на SX2, должно помочь :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
llexxey1090 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба А как теперь внести изменеия в регистр??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-Al- 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба А как теперь внести изменеия в регистр??? Исключительно через командный интерфейс, т.е. для изменения настроек нужна или ПЛИС или контроллер внешний, иначе - никак. Кстати, если используете автовывод по заполнению, то еще надо и размер пакета через командный интерфейс менять, в зависимости от скорости, Full Speed (64) или High Speed (512). А вообще по распиновке SX2 с легкостью меняется на FX2LP (по крайней мере в корпусе SSOP56) и проблемы с конфигурированием берет на себя встроенный в FX2LP микроконтроллер, кстати и жрет последняя в 3 раза меньше, да и температурный диапазон поширше :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
llexxey1090 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба Исключительно через командный интерфейс, т.е. для изменения настроек нужна или ПЛИС или контроллер внешний, иначе - никак. Кстати, если используете автовывод по заполнению, то еще надо и размер пакета через командный интерфейс менять, в зависимости от скорости, Full Speed (64) или High Speed (512). А вообще по распиновке SX2 с легкостью меняется на FX2LP (по крайней мере в корпусе SSOP56) и проблемы с конфигурированием берет на себя встроенный в FX2LP микроконтроллер, кстати и жрет последняя в 3 раза меньше, да и температурный диапазон поширше :) У меня она есть, и собрана макетная плата, но я никак не разберусь с внутренней микропрограммой, то она читает, а не пишет или наооборот. А в той директории C:\Cypress\USB\Examples\Sx2\eeprom images\ еше есть три прошивки, может их попробовать. Мне нужно всего передавать данные в порт---8мбайт.с, переодически принимая 8 байт для настроек. железяка перестраиваеться по приходу етих 8 байт Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-Al- 0 18 сентября, 2007 Опубликовано 18 сентября, 2007 · Жалоба У меня она есть, и собрана макетная плата, но я никак не разберусь с внутренней микропрограммой, то она читает, а не пишет или наооборот. А в той директории C:\Cypress\USB\Examples\Sx2\eeprom images\ еше есть три прошивки, может их попробовать. Мне нужно всего передавать данные в порт---8мбайт.с, переодически принимая 8 байт для настроек. железяка перестраиваеться по приходу етих 8 байт Регистры из прошивки у SX2 изменить невозможно, там только дескриптор и регистры IFCONFIG, POLAR меняются, причем изменения дескриптора недостаточно, нужно потом и регистры внутренние менять, чтоб заработало так, как в дескрипторе. Так что используйте командный интерфейс или следите за нужным флагом, изменяя адрес FIFO. Моя железяка, например, как раз при включении через командный интерфейс настраивает все регистры на нужный режим (изменение типов эндпоинтов, привязывание флагов к FIFO, и т.д.), и уж потом только можно спокойно работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
llexxey1090 0 20 сентября, 2007 Опубликовано 20 сентября, 2007 · Жалоба Регистры из прошивки у SX2 изменить невозможно, там только дескриптор и регистры IFCONFIG, POLAR меняются, причем изменения дескриптора недостаточно, нужно потом и регистры внутренние менять, чтоб заработало так, как в дескрипторе. Так что используйте командный интерфейс или следите за нужным флагом, изменяя адрес FIFO. Моя железяка, например, как раз при включении через командный интерфейс настраивает все регистры на нужный режим (изменение типов эндпоинтов, привязывание флагов к FIFO, и т.д.), и уж потом только можно спокойно работать. Спасибо Al, что направили по правильному пути, я наконец-то написал микропрограмму для CY7c68013a в режиме SLAVE FIFO уже работает и флаги прописал как мне нужно! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться