Всем доброго дня!
Есть хост - STM32F407VG (STM32F4Discovery), есть вот такой индикатор MD070SD:
http://imall.iteadstudio.com/md070sd-7-16-...tft-module.html
Даташит на него:
ftp://imall.iteadstudio.com/TFT%20LCM/IM1...IM130820001.pdf
В качестве интерфейса обмена этот ЖКИ использует 16-битную параллельную шину - интерфейс 8080, вместо управляющего контроллера - CPLD.
Подключал ЖКИ к Дискавери в режиме аппаратного и программного 8080. Для аппаратного подобрал следующие тайминги (пробовал разные, вплоть до максимальных):
Address setup phase duration = 2 x HCLK
Address-hold phase duration = 0 x HCLK
Data-phase duration = 35 x HCLK
В обоих режимах работает, НО в аппаратном режиме если передается цвет с более чем 10 логичсекими единицами подряд (например, белый цвет - 0xFFFF), начинается пропуск пикселей и "сдвиг" изображения. Если передается большая картинка, где много светлых цветов, CPLD зависает - изображение медлено "выцветает".
В программном же режиме, изображение может сдвигаться независимо от передаваемого цвета абсолютно безсистемно: на одних и тех же задержках изображение 3 раза сдвинется, а 5 раз отобразится нормально.
Кто-нибудь сталкивался с подобными проблемами? Возможно, есть способы решения?