|
Подробнее надо описывать проблему... И все же...
Читаете не то, что на экране видите?
Делаете первое чтение. Этот байт не верный (ситуация описана в даташите на контроллер).
А вот второе чтение дает правильный результат.
Функция чтения...
LCDReady(0); // Не забывайте читать флаг готовности перед каждой
// оперцией на шине!
temp = LCD0_Data_Read;
LCDReady(0);
return(LCD0_Data_Read);
Определение готовности
void LCDReady(unsigned char byte)
{
if(!byte) while(LCD0_Status_Read & 0x80);
else while(LCD1_Status_Read & 0x80);
}
Здесь ноль - это первый контроллер индикатора, в индикаторе PG12864 их два.
E-mail: info@telesys.ru