Помогите завести LCD_Nokia 6100 с контроллером PCF8833
- Сообщения: 271
- Зарегистрирован: Чт апр 01, 2010 14:14:55
Здравствуйте коты! есть дисплейчик от nokia 6100 с контроллером PCF8833, дисплей использует односторонний SPI интерфейс, распиновка дисплея и даташт на контроллер есть в инете, куча примеров но вся эта куча переведена с одного из буржуйских сайтов с примером и прошивкой, только она написана на Си, я к сожалению не познал еще Си, пишу на асме и пока что все устраивает, организовал SPI программно, шлю ему команды из даташита а он молчит как не живой( но дисплей на 100% рабочий я периодически подкидываю его на телефон и он работает )... там скорее всего нужно с начала слать некоторое количество команд с настройками а потом уже все остальное... ПОМОГИТЕ пожалуйста его завести!!!
- Реклама
- Сообщения: 271
- Зарегистрирован: Чт апр 01, 2010 14:14:55
есть прогресс, разобрался в прошивке которая есть в инете, правда я в си не очень но понял что он шлет на дисплей, послал тоже самое дисплей прошёл инициализацию, очистился... а как заполнить память не пойму в даташите примерно 50 раличных команд не могу их применить... а в той прошивке человек проводил инициализацию, а сам масив с картинкой слал через уарт... поэтому понять как он заполнял память дисплея не понятно... Помогите пожалуйста кто уже разобрался... подскажите алгоритм заполнения памяти дисплея и инициализацию тоже на всякий случай сравнить правельно я сделал или нет
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
Выложи сюда исходник, а мы глянем и подскажем как заполняется дисплей.
Where technology meets enjoyment.
- Сообщения: 271
- Зарегистрирован: Чт апр 01, 2010 14:14:55
вот исходник и проги, но насколько я понял его прошивку, я в си не силён но я так понял что инфу для заполнения памяти он получает через uart...
- Вложения
-
- nokia_6100_display_test.rar
- (39.71 КБ) 334 скачивания
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
В чем у вас проблема я не понимаю
там же всё проще простого
Этими командами выставляеться откуда покуда рисовать
Основные цвета
Считаем цвет точки для 4096 цветов(т.к в этом режиме передаеться цвет двух пикселей на экране)
в вашем случае, после инициализации надо передать следующее
Этими командами выставляеться откуда покуда рисовать
Код: Выделить всё
sendCMD(0x2A); Х
sendData(0); задаем точку где будем рисовать х
sendData(131); размер окна вывода х
//Page Adress Set
sendCMD(0x2B); Y
sendData(0); задаем точку где будем рисовать у
sendData(131); размер окна вывода у
//Memory Write
sendCMD(0x2C); запись в память, запускать всегда перед выводом точки
sendData(color); передаем цвет точки
Код: Выделить всё
#define BLACK 0x00
#define WHITE 0xFF
#define RED 0xA0
#define GREEN 0x10
#define BLUE 0x07
#define YELLOW 0x0FF0
#define PINK 0x0F0F
#define MAGENTA 0x0707
#define VIOLET 0x070F
#define ORANGE 0x0F70
#define SKY 0x00FF
#define LBLUE 0x007F
#define BROWN 0x0730
#define GREY 0x0777
Код: Выделить всё
void lcd_clr16 (uint16_t color) //Команды 16 бит
{ //unsigned char color2;
lcd_dat((unsigned char)(color>>4));
lcd_dat((unsigned char)(color<<4)+(unsigned char)(color>>8));
lcd_dat((unsigned char)(color));
}Код: Выделить всё
sendCMD(0x2A); Х
sendData(10); закрашивать будем 10й пиксель
sendData(131);
//Page Adress Set
sendCMD(0x2B); Y
sendData(10); закрашивать будем 10й пиксель
sendData(131);
sendCMD(0x2C);
sendData(0xFF); белый пиксель рисуеться по координатам 10,10
Where technology meets enjoyment.
- Реклама
- Сообщения: 271
- Зарегистрирован: Чт апр 01, 2010 14:14:55
спасибо, сейчас буду разбираться, еще вопросики есть, после команды 0x2C - это по мойму команда memory write, нужно еще что команды для вывода или обновления дисплея, или он обновится автоматически после заполнения памяти?
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
После мемори врайт пишем собственно нужные данные о цвете пикселя, всё что до мемори врайт это установка точки где будем рисовать.
Where technology meets enjoyment.
- Сообщения: 271
- Зарегистрирован: Чт апр 01, 2010 14:14:55
спасибо neonix!!! все действительно просто! а то я сам себе какие то чудеса напридумывал и варюсь... спасибо всё получилось!


