|
А по даташиту на FT245 данные надо держать на шине еще как минимум 10 нс после снятия WR - вот ты и имеешь глюки. Дело грустное - длительность WR при F=8 Мгц всего 42 нс, а F245 требует 50. Так как вперед времени не забежишь, то придется либо уменьшать тактовую раза в полтора и укорачивать получившийся 60-нс WR до 50 нс, что даст требуемое DataHoldTime в 10 нс, либо использовать програмный строб и ввод/вывод в порт не как в память.
Есть еще вариант - когда-то таким макаром решил подобную проблему. Выводишь байт в порт (но не в порт данных внешней памяти), а потом даешь команду фиктивной записи - чтобы сгенерился строб WR. Данные в порту стоят, WR генерится, F245 доволен.
E-mail: info@telesys.ru