Свежие обсуждения
Микроконтроллеры

FT245 BL (BM) как должно работать?

1 4 8

Да там может неточность развертки, на 0,2 умножить не могу, надо осцил разбирать, отказал недавно, но и так видно примерно, три периода(четыре явно не входят в клетку) 1сек / 3*0,05мкс = 6мгц, да и кварц другой подкидывал такая же картина, даже собрал на картонке отдельно задающий генератор, такую же картину показывает, правда его не подключал, там как то надо переключить на внешний тактовый, а я не знаю пока как...

С ATMEGA (ALE) хрен с ним, может она включена, как внешняя память( я про FT245), мне другое непонятно, (из за пробелов в образовании скорее всего), если на FIFO (D0-D7) есть периодичиский сигнал, с приличной частотой, значит я так понимаю должны быть, стробирующие после каждого байта, а их точно не вижу, но тогда откуда там сигнал? Или я чего то не понимаю? Т.е. байт появился на фифо дальше строб, следующий байт и.т.д. так вроде должно быть.

 

SIMPIK: если на FIFO (D0-D7) есть периодичиский сигнал, с приличной частотой, значит я так понимаю должны быть, стробирующие после каждого байта, а их точно не вижу, но тогда откуда там сигнал?

Как должно быть, в ДШ на м/с расписано (с.8 - FIFO CONTROL INTERFACE GROUP). Т.е. стробирующие сигналы присутствуют на входах 15 (WR), 16 (RD#). На FIFO (D0...D7) их искать не стОит. Графики на с.11 ДШ всё объясняют.

А ещё интересно почему именно atmega128, а не более младший МК-р используют, ведь аж 3 порта остаются свободными? Из-за большого объёма памяти программ этого МК-ра что-ли?

 

Digital: Т.е. стробирующие сигналы присутствуют на входах 15 (WR), 16 (RD#). На FIFO (D0...D7) их искать не стОит.
Ну я про них и говорю. На фифо понятно строба быть не может.

 

Значит я просто не так из текста ваш вопрос понял Но стробы должны быть обязательно, иначе обмена не получится. Вообще никаких сигналов на15 (WR), 16 (RD#) нет? Может не ловятся? Если так, а на FIFO есть обмен, то не знаю что и подумать. А если вообще выпаять FT245, сигналы на D0...D7 останутся?

 

Нееее не остаются, кварц от атмеги отсоединяешь и все прекращается. Я даже не знаю к чему прицепиться. Первый раз такое.

 

Нет стробов на строб. входах 15-16, а обмен на D0...D7 есть; на неиспользуемом ALE - стробирование внешней памяти, которой нет... Как-то это заставляет думать, что МК-р всё-таки прошит не той прошивкой, что должна быть. Но при этом ещё девайс, как я понял, ухитряется и работать некоторое время, а потом отваливается от USB. Если верно в этом направлении, то замена FT245 на заказанную это подтвердит косвенно. Остаётся дождаться когда привезут...

А попробуйте отключить atmega128 и проверить работоспособность FT245 на вывод данных LPT-тестером http://arv.radioliga.com/index.php?option=com_remository&Itemid=27&func=.... Может полУчится.

 

Похоже, действительно прошивка левая - может быть, и вовсе не от этого девайса.. Насчет работать - FT245 вполне в состоянии работать и без микроконтроллера, пока данные не забьют полностью приемный буфер (256 байт, если не ошибаюсь).

 

Ну дело том, что компьютер (софт штатнай) видит прошивку, т.е. когда я заменил ATMEGA то залил прошивку одну, подключил софт выдал мне, что прошивку атмеги нужно обновить, я обновляю и после этого загораются все светодиоды в том порядке, как надо, вы понимаете?
И данные при подключении телефона коробка пытается выдать через раз, но не все . Т.е. забутиться телефон до конца не может.
Возвращаюсь к прошивке, этот же девайс люди собирают на макетке, заливают эту же прошивку и все работает. Я бы че здесь муру пестрил, если бы прошивка была не та?
Проблема у меня локальная. Да и потом до этого стояла атмега производителя, абсолютно одинаково себя вела.
Вот как должно быть: http://savepic.org/101183.htm взято отсюда: http://www.ftdichip.com/Documents/AppNotes/AN232B-06_11.pdf
там же RD RXF осцилограммы показаны выше. Но я дело в том что не рублю, как все должно происходить в цифровых вариантах, я уже писал понимаю так: на фифо изменения могут произойти только после строба, т.е. допустим низкий на D0 строб высокий на DO строб опять состояние изменилось либо не изменилось в зависимости от байта? Так или не так?

 

SIMPIK: я уже писал понимаю так: на фифо изменения могут произойти только после строба
Да, после строба. А сама FT245 должна генерировать сигналы по выв. 14 и 12 - готовность FIFO к записи и чтению соотв-но. На этих выводах посмотрите осциллографом.

SIMPIK: И данные при подключении телефона коробка пытается выдать через раз, но не все .
Ещё раз спрошу, Data+ и Data- точно нигде не перепутаны? Буферы то разного объёма. В конце концов, для эксперимента, поменяйте, если не затруднит, местами Data+ и Data-, всё равно терять нечего ))) А там и новую FT-шку подвезут.

SIMPIK: т.е. допустим низкий на D0 строб высокий на DO строб опять состояние изменилось либо не изменилось в зависимости от байта?
Непонятно, чьё состояние изменилось и в зависим-ти от какого байта? В принципе и неважно, т.к. пошагово графики из апноута заморочно будет проверять.

SIMPIK: софт выдал мне, что прошивку атмеги нужно обновить, я обновляю и после этого загораются все светодиоды в том порядке, как надо, вы понимаете?
Индикаторы индикаторами, но возможно как-то сначала проверить на необновлённой прошивке работу девайса, софт там предыдущей версии поставить, инет отрубить, если по нему обновл-ся и т.п.?

П.С. Драйвер до версии 2.06.00 удалось обновить? В биосе компа включена поддержка и USB1.1 и USB2.0?

 

Алгоритм чтения байта с FT245 (взял из своей проги):
1. Проверяем, что на RXF# лог.0, иначе ждем лог.0 на RXF#
2. Выдаем лог.0 на RD#
3. Делаем паузу (у меня - 2 мксек).
4. Читаем байт с линий D0..D7
5. Выдаем лог.1 на RD#

Алгоритм записи байта на FT245
1. Проверяем, что на TXE# лог.0, иначе ждем лог.0 на TXE#
2. Выдаем лог.0 на WR
3. Заносим выводимый байт на линии D0..D7
4. Делаем паузу (у меня 2 мксек)
5. Выдаем лог.1 на WR#

Когда на линиях RXF# и/или TXE# нет лог.0, читать/писать с девайса бесполезно.