Подключение дисплея NOKIA 6300 к микроконтроллеру

Многие уже разобрались, как использовать в своих проектах дисплей от Нокии3310, по этому предлагаю освоить более информативные и современные дисплеи от Нокии 6300.
Технические характеристики:TFT матрица, 16 млн. цветов, разрешение 320х240пикселей
Контроллер дисплея:MC2PA8201
Маркировка дисплея: LS022 или LS024
Взаимозаменяемые аналоги дисплеяNOKIA:
3720c, 5320, 5330, 5610, 5630, 5700, 5730, 6110n, 6120с, 6208, 6220с, 6303, 6303i, 6350, 6500, 6500s, 6555, 6600, 6600s, 6720, 6730, 6760, 7500, 8600,
Е52, Е55,Е65,Е66, Е75,N71, N73, N75, N76,N77, N78, N79, N81, N82,N93
(для телефонов ети дисплеи не взаимозаменяемы из-за физических размеров и расположения шлейфа, но у нас они все будут работать.)
Для примера, вывел немного текста, хотя картинки с 16 млн. цветов выглядят намного красивее:

Расположение выводов:

Распиновка дисплея:

Для питания дисплея используются два напряжения 1.8 и 2.8 вольт, для подсветки дисплея 12 вольт. Амплитуда управляющих сигналов должна быть 1.8 вольта, для согласования уровней контроллера и дисплея, я использовал делители из двух, последовательно включенных резисторов ( для каждой цепи ).
Схема подключения к контроллеру:

Плата согласования:

#include <mega128.h>
#include <delay.h>
// Подключение дисплея
#define DATA  PORTD
#define RS       PORTE.0
#define DC      PORTE.1
#define WR PORTE.2
// Определениецветов
#define black     0,0,0            // черный
#define red        255,0,0        // красный
#define green  0,255,0         // зеленый
#define blue     0,0,255         // синий
#define yellow  255,255,0     // жёлтый
#define cyan   0,255,255      // голубой
#define lilac     255,0,255     // сиреневый
#define white  255,255,255 // белый

voidSendCom (unsigned int com)    // отправкакоманд
{
DC = 0;
DATA = com;
WR = 0;
WR = 1;
}

voidSendDat (unsigned intdat)//отправка данных
{
DC = 1;
DATA = dat;
WR = 0;
WR = 1;
}

voidLCDinit ()//  инициализация дисплея
{
WR = 1;
RES = 0;
delay_ms(1);
RES = 1;
delay_ms(5);
SendCom(0x11);       // Выход дисплея из спячки
SendCom(0x29);       // Включение дисплея
delay_ms(1);
SendCom(0x36);
SendDat(0xC0);// Книжная ориентация дисплея
SendCom(0x3A);
SendDat(0b00000111); //  24 битныйрежим
}

voidLCDclear(char color_r, char color_g, char color_b)// Заливка дисплея
{
unsigned long int i;
SendCom(0x2A);                      // КомандаориетациипоХкоординате
SendDat(0);  SendDat(0);       // ДанныеначалаХкоординат (0)
SendDat(0);  SendDat(240);  // Данные конца   Х координат (240)
SendCom(0x2B);                    //Команда ориентации по Y координате
SendDat(0);  SendDat(0);     // Данные начала Y координат (0)
SendDat(1);  SendDat(65);   // Данные конца   Y координат (320)
SendCom(0x2C);                   //Команда записи в память дисплея
for (i=0;i<(320*240);i++) {SendDat(color_r);SendDat(color_g);SendDat(color_b);}     // RGB   Данные для записи в память дисплея
}
void main(void)
LCDinit();                //Инициализация дисплея
LCDclear(black);  // Заливка дисплея чёрным цветом

Обсуждение и дополнительные материалы тут: http://forum.phreakerclub.com/showthread.php?p=1381

phreakerclub.com

(c) andrik

2 комментария для “Подключение дисплея NOKIA 6300 к микроконтроллеру”

  1. s987654321:

    ссылка на форум не работает

Добавить комментарий

Related Post

Трансивер CC1101Трансивер CC1101

Очень интересный трансивер на 315/433/868/915МГц, фазовая, частотная и амплитудные модуляции, куча регистров настроек, управление по SPI, очень простая схема включения. Кому лень собирать ВЧ обвязку, есть микросборки типа PAN2355, там

Передача ИК сигналовПередача ИК сигналов

Принцип передачи ИК сигналов состоит из следующего — электрический сигнал основной (несущей) частоты модулируется передаваемыми данными и с помощью инфракрасного светодиода излучается в пространство. Для приема сигнала используется фотоприемник, состоящий