Человек вот тут
http://rifer.ucoz.ru/forum/2-17-1Разобрался с С55 дисплеем.
Буду краток... схему распиновки можно найти в инете или из сервис-мануала по телу.
Я зацепил его на AT90S2313 при питании 3.3V(кстати экран выдержал зверские эксперименты с повыщением питания до 5В), написал простую прогу для перебора начений внутренних регистров до появления картинки на экране. Как ни странно значения нашлись. вот они:
LCD_Reset();
SPI.SCE=0;
Send_SPI(0x21,0); // включить питание, расшир. команды
Send_SPI(0x9,0); // включить внутренний геренатор питания дисплея
LCD_Reset();
SPI.SCE=0;
Send_SPI(0x21,0); // опять включить питание, расшир. команды
Send_SPI(0x9,0); // и опять включить внутренний геренатор питания дисплея
Send_SPI(0x9C,0); // установить напряжение этого генератора 7.6В
Send_SPI('H',0); // установить что-то, без чего оно не рабоатет
Send_SPI(0x20,0); // установить стандартные комманды
Send_SPI(0x0C,0); // установить неинверсный дисплей
если нужен инверсный то
Send_SPI(0x20,0); // установить стандартные комманды
Send_SPI(0x0D,0); // установить инверсный дисплей
где 0х0С это значение записываемое в регистр, а число 0 после запятой означает что посылка именно в регистр.
в общем вот
void LCD_Reset()
{
SPI.DC=0;
SPI.SCE=1;
SPI.RST=0; // reset
Delay(5000); // уж заресетим так заресетим!
SPI.RST=1; // end reset
Delay(500);
}
(прим. в Delay - число пропущенных тактов мк на частоте 11.059М)
void Send_SPI(unsigned char d, char type)
{
char x;
static char b;
SPI.SCE=0;
SPI.DC=type;
for(x=8;x;x--)
{
if (d&0x80) SPI.DIN=1; else SPI.DIN=0;
Delay(10); // ждём, пока установится значение на входе данных
SPI.CLK=1; // тактуем
d<<=1;
Delay(10); // ждём, пока лсд примет бит
SPI.CLK=0; // вырубаем такт
}
SPI.DIN=0;
SPI.SCE=1;
}
кому надо, тот разберётся.
РЕСЕТ НУЖНО СДЕЛАТЬ ИМЕННО ТАК! не знаю почему. но иначе он не пускается! буду рад услышать объяснения этому чудесному явлению на ibh@fromru.com
адресация строк и столбцов на экране
void SetXY(char xc,char yc) { Send_SPI(0x40 | yc,0); Send_SPI(0x80 | xc,0); }
кстати нумерация строи идёт снизу(от контактов) вверх с 0-евой строки
а экранчик очень хороший. отличная контрастность. красота! жаль маленький
для самодельного mp3 плейера отлично подошел.
всем спасибо. удачных разработок!