Nokia 6100 lcd arduino

Arduino and Nokia Colour LCD shield

I recently bought a nice looking shield for experimenting with, it was based on a Nokia LCD, I believe is used in the Nokia 6100 mobile phones. Its a colour LCD and you can see it pictured underneath. The text is clear on the screen, sadly my picture taking isn’t as good.

The Colour LCD Shield provides an easy method of connecting the popular Nokia 6100 LCD to your Arduino. The board comes as shown with the 128×128 mini colour LCD, as well as a backlight driver circuit (boosts to 7V), and three momentary push-buttons (tied through a jumper to pins D3-5).

The Nokia 6100 LCD is controlled through a 9-bit SPI interface. The control pins of the LCD are connected to the hardware SPI pins of the Arduino (D13 -SCK, D11 – DIO), the CS pin is tied to D9 and the reset pin is connected to D8. Voltage from the ‘5V’ pin of the Arduino is boosted to 7V to power the LCD backlight.

Note: This shield uses the Philips PCF8833 controller.

Initially I had a fair bit of trouble getting this up and running, reading up on the LCD I discovered that in fact there are different chips used on the LCD and guess what I was using the wrong one in my code. My LCD uses the Philips PCF8833 controller and not teh Epson controller , DOH.

nokia lcd shield

Code Examples

I tried 2 libraries and managed to get the LCD going, the first library is the Colour LCD Shield Arduino Library

byte cont = 40; // Good center value for contrast

void setup()
<
lcd.init(PHILLIPS); // Initialize the LCD, try using PHILLIPS if it’s not working
lcd.contrast(cont); //
lcd.clear(WHITE); // Set background to white
testPattern(); // Print color bars on bottom of screen
>

void testPattern()
<
lcd.setRect(1, 2, 131, 19, 1, WHITE);
lcd.setRect(1, 19, 131, 35, 1, YELLOW);
lcd.setRect(1, 35, 131, 51, 1, CYAN);
lcd.setRect(1, 51, 131, 67, 1, GREEN);
lcd.setRect(1, 67, 131, 83, 1, MAGENTA);
lcd.setRect(1, 83, 131, 99, 1, RED);
lcd.setRect(1, 99, 131, 115, 1, BLUE);
lcd.setRect(1, 115, 131, 131, 1, BLACK);
>

The second library and the best is the G-LCD library, you can download this here. Download and put the library in your Arduino libraries folder

This example is a basic hello world example, you really need to dig into some of the pre-written examples. I recommend this library

const char RST = 8;
const char CS = 9;
const char Clk = 13;
const char Data = 11;

Источник

pstray/arduino-color-lcd-shield

Use Git or checkout with SVN using the web URL.

Work fast with our official CLI. Learn more.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

A driver library for the color LCD arduino shield from ElecFreaks, a Nokia 6100 display with a Philips PCF8833 controller. It meant to be a drop-in replacement for the library you can download from ElecFreaks (http://www.elecfreaks.com/store/color-lcd-shield-p-462.html).

The ElecFreaks shield is based on SparkFun Electronics’ Color LCD Shield (http://www.sparkfun.com/products/9363). That shield sometimes uses another driver circuit, an Epson S1D15G00.

Datasheets for the driver circuits

The user manuals for the driver circuits can be downloaded from:

About

A driver library for the color LCD arduino shield from ElecFreaks, a Nokia 6100 display with a Philips PCF8833 controller. It meant to be a drop-in replacement for the library you can download from ElecFreaks.

Источник

Заведи экран: свой TFT–дисплей

Начался новый семестр. В качестве курсовой работы в институте решил замутить такой вот девайс для вывода графики на дисплей от NOKIA.

Ты конечно понимаешь, мой друг, как можно использовать этот девайс в своих хакерских (и не только) целях. Если выбрать все детальки SMD-шные, то можно получить реально небольшое устройство для вывода на экран с портом RS232. Дисплей использовал: Nokia 6100/6610/7200/7250/3100 в рамке с коннектором.

Такой экран несложно найти в Интернет-магазинах, например www.siruist.ru, www.sparkfun.com или в палатках, где продают запчасти для мобильных телефонов ( стоит он 150-200 руб ) . Либо просто выдрать дисплей из старого телефона. Но если такой не нашёл — не беда. Изучив эту статью и исходные коды и поразмыслив головой, ты можешь завести дисплеи от Nokia N95 или Sony PSP.

Почему я выбрал такой дисплей – он удобен в пайке. Смотри на скриншоте распиновку.

Как видно, существует коннектор на дисплее к которому тяжело подпаяться (шаг 0.5мм). Поэтому лучше ищите дисплеи с такой распиновкой как здесь.

На рисунке вы можете видеть 3 дисплея:

На крайнем левом отсутствуют контакты для удобной пайки (только коннектор). На остальных контакты и коннектор присутствуют. Также важно, что встроенный контроллер у каждого экрана разный. Для этого дисплея существует 2 вида контроллеров:

У каждого контроллера своя система команд и, соответственно, софт для одного из них не будет работать для другого. Народ научился различать эти контроллеры по цвету коннектора: коричневый — Epson S1D15G10, зелёный — PCF8833.

Но это не факт. Я советую прошить микроконтроллер для 2 видов дисплеев и посмотреть результат. К примеру на скриншоте все дисплеи с контроллером PCF8833. Я писал исходный код микроконтроллера для PCF8833, но совершенно не сложно изменить его и для Epson`a!

Ну вроде с трудностями закончили, переходим к нашей схемке:

Контроллер

Atmega32 , др. с объёмом памяти Flash > 16кб.

Преобразователь(CMOS/TTL)

MAX232A или аналог.

Преобразователь из 5В в 3.3В

MC33269DT-3.3 или аналог.

Преобразователь из 5В в 6.5В

А остальное всё есть на схеме.

6.5В нам нужно на подсветку (от 6В до 7В = max). Регулируется подстроечным R8. Также ВАЖНО – разделить землю у дисплея (т.е. землю (выводы 8,9 коннектора) напрямую присоединить к входу 2 разъёма источника питания) – это нужно для защиты от помех. Желательно поставить 2 различных преобразователя из 5В в 3.3В – один для питания контроллера и периферии дисплея, второй – для непосредственно дисплея (выходы 1,6 – соответственно коннектора дисплея).

После разбора с железкой и пайкой приступаем к программированию для Atmega.

Открываем WinAVR, создаём проект, будем писать на С. Я отказался от assembler`a потому что код стал реально громоздким.

void sendCMD(byte cmd); // послать команду на PFC8833
void sendData(byte cmd); // послать байт данных
void InitLCD(void); // инициализация дисплея
void shiftBits(byte b); // перестановкой выводов портов эмулируем SPI
void setPixel(byte r,byte g,byte b);
// пишет в видеопамять дисплея 3 байта (r,g,b) с заданным цветом
…..
void PointXY(int x,int y,byte r,byte g,byte b)
// рисует точку на экране с координатами x,y и цветом r,g,b
<
sendCMD(CASET); // column set (po x)
sendData(x);
// команда CASET – задаёт область рисования по x, от byte1 до byte2
sendData(x); // у нас byte1=byte2 , так как рисуем точку
sendCMD(PASET); // page set (po y)
sendData(y); // аналогично для y
sendData(y);
sendCMD(RAMWR);
setPixel(r,g,b); //пишем в память
>

Я привёл только часть кода. Все исходники можно найти в архиве. У данного дисплея – 4096 цветов, следовательно 12 бит на пиксел RRRRGGGGBBBB.

Так же я написал консольную прожку для компа для рисования (исходники также есть в архиве).

Источник

Arduino.ru

Arduino и дисплеи от сотиков мобильных телефонов

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

С поворотом и зеркалированием разобрался. Все значения кроме 8, A и C экран либо смещен, либо вообще меньше — не понял. 8 — зеркально, A и C ориентация либо вертикально, либо горизонтально. Там еще есть Landscape или Portrait установка уже для самого скеча.

Битность нормально выводит цвета (без пропусков и непонятных рисунков) только 16 битный.

Контрастность ни на что не влияла.

Собственно картинка почти устраивает. Только вот когда ставлю 8, все в синих тонах. Знаете, как будто перед экраном натянули тонкую синюю ткань. Ну и с 0 то же самое с красным.

Сейчас буду разбираться как цвета задаются в скетче. Там есть словами, а есть трехразрядным кодом.

В общем я мучаю библиотеку для чипа ILI9341_UNO(TFT28UNO) только с ним прорисовываются фигуры в тесте и текст.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

В библиотеке написано, что контакты, которые указываются myGLCD(TFT28UNO, A2, A1, A3, A4, 12) можно выбирать любые. Вот я A0 изменил на 12 и изменились цвета. Основной стал какой-то бледно голубой, а был синий.

Нет, то ли SER у меня какой-то не такой. Если WR кидаю на 12, и прописываю myGLCD(TFT28UNO, A2, 12, A3, A4, A1), то все нормально работает.

А вот еще вопрос. Аналоговых выводов остается мало, а там сказано, что RESET можно к RESET ардуино подключить. А как это указать в функции, которая задает экран? Просто RESET не понимает. А другого не найду что-то.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вроде просмотрел все. Даже смоделировал работу скетча с подменой дисплея:

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Ух! Здорово! Завтра ковырять буду. Спасибо огроменное!

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Подключил. Теперь работает действительно ILI9163, но цвета как и раньше неправильные.

Вот фотки. Первые две слева ваши как пример. Сверху то что с 8 в коде, снизу с 0.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Народ привет! Всем спасибо, кто помогал мне в предыдущем вопросе. Собственно девайс на макетке готов, стал искать корпус и наткнулся на свой старинный фотобанк.

Вкщь удобная. Конечно если все сотавить как есть запихну с уже наработаным дисплеем. И аккумы туда влезут и кнопки есть.

Но вот может такой дисплей уже обсуждался? На шлейфе 28 контактов плюс катод-анод. Но судя по плате задействовано 20.

Может кто что о нем знает? Конечно с ним потруднее будет. Уж очень мелкая пайка.

Вроде поход на cog lcd module 128×64.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Народ, такой вопрос. Изначально цеплял к UNO, там 5 аналоговых контактов. Но моя приблуда будет работать на NANO. Там 7 аналоговых контактов. Так вот попробовал RESET экрана посадить на А6, не работает. Это так и должно быть или какое совпадение или я ошибся где-то?

И еще в качестве теории. А можно кнопку посадить на аналоговый вход?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

А6 и А7 могут использоваца только как аналоговый вход.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

А6 и А7 могут использоваца только как аналоговый вход.

Вот в чем дело! Понял. Спасибо!

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

И еще в качестве теории. А можно кнопку посадить на аналоговый вход?

я тебе тайну открою, на 1 аналоговый вход можно посадить целую матрицу кнопок, вот такую

и даже можно заставить её работать

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

И еще в качестве теории. А можно кнопку посадить на аналоговый вход?

я тебе тайну открою, на 1 аналоговый вход можно посадить целую матрицу кнопок, вот такую

и даже можно заставить её работать

Да, спасибо! Уже тоже нарыл про то как несколько кнопок на аналоговый вход посадить.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Компетентнейшие, здравия вам.

Имеется дисплей от Samsung S5830i 480х320, 54 pin по схеме. Возможно ли его приладить к Ардуине или ЕСП32?

Интересно наличие TSP_SDA и TSP_SCL. Говорит ли это о возможности использования при подключении I2C?

Подсветка 26 вольт не пугает.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Здравствуйте!Начал подключать завалявшиеся дисплеи.Первый от сони эриксон G502(2″,240х320).Нашел схему телефона и подключил к уно.Дисплей заработал но читалка выдает его и цвета неправильные.Второй от самсунг E2652w(2,6″,320х240). Тоже заработал и читалка выдает Какие это контроллеры?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

достал из старой мыльницы экран, нашел датшит на него. подскажите, как такое к ардуино прицепить? http://www.dzsc.com/uploadfile/company/7012/200881314398565.pdf

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

достал из старой мыльницы экран, нашел датшит на него. подскажите, как такое к ардуино прицепить? http://www.dzsc.com/uploadfile/company/7012/200881314398565.pdf

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Не сомневаюсь, что неоднократно такое обсуждалось, редко встречается что-то оригинальное в бытовых технологиях. Но тема на 60 страниц, поиска нормального нет, времени просматривать каждую нет.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

ID — AC11 ни разу не слышал. У самсунгов много своих дисплеев. Посмотри подходящий

по размеру и пикселям. Регистры контроллера думаю совпадут.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Очередной дисплей от Fly Sl600 на шлейф выведены 8 bit (1.8″,176×220). Читалка выдаёт я так понимаю HX8309.Графика не выводится. Если принудительно запустить инит от HX8347 то дисплей начинает моргать но без изображения. Даташит на него в сети есть, но. там много непонятных матюков.Хотел запустить через UTFT но я запутался какие сигналы куда подключать на Uno. Если нужно то скину lay файл плат для дисплеев которые подключаю,может кому-то пригодятся.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

а пробовал шину наоборот д0 д7 ?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Здравствуйте!Начал подключать завалявшиеся дисплеи.Первый от сони эриксон G502(2″,240х320).Нашел схему телефона и подключил к уно.Дисплей заработал но читалка выдает его и цвета неправильные.Второй от самсунг E2652w(2,6″,320х240). Тоже заработал и читалка выдает Какие это контроллеры?

вверху справа есть поиск , забиваете туда 0xB505 , и найдете много сообщений с инитами, про этот контроллер. можно и в гугл . Если не находит , то скорее всего неправильное подключение, проводами что , или коротит.
С маленькими дисплеями лучше не связываться , желательно с примерным разрешением 320х240 и больше.
В либе mcfriend_kvb поддержка многих контроллеров. У нее есть файл , где можно активировать выключенные иниты ради экономии памяти в тестовых примерах.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Да, переворачивал. Исходя из даташита на контроллер по распиновке на шлейф дисплея выведены D8-D15. SMD рассыпуха была на плате телефона, пришлось прозванивать и переносить на текстолит. В сети попался инит на HX8309 http://read.pudn.com/downloads99/sourcecode/graph/404312/HX8309.c__.htm и он похож на HX8347. Но мои знания в программировании на низах, самостоятельно изучаю по мере возможности.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

По поводу дисплея от G502. Извиняюсь. Сначала написал пост а потом на форуме увидел расшифровку его ID. У этого контроллера несколько разновидностей. И соответственно иниты чуть отличаются. На самоизоляции больше свободного времени и потому разгребаю свое «добро». Что есть — то есть. У меня есть дисплеи побольше, с ними разобрался читая форумы и рыская в сети. А мелочь запустить это так на всякий случай, термометр сворганить, часики. Короче как в поговорке про кота когда ему нечего делать.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

По поводу дисплея от G502. Извиняюсь. Сначала написал пост а потом на форуме увидел расшифровку его ID. У этого контроллера несколько разновидностей. И соответственно иниты чуть отличаются. На самоизоляции больше свободного времени и потому разгребаю свое «добро». Что есть — то есть. У меня есть дисплеи побольше, с ними разобрался читая форумы и рыская в сети. А мелочь запустить это так на всякий случай, термометр сворганить, часики. Короче как в поговорке про кота когда ему нечего делать.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

это вам хакерам чисто тапочки надеть. а нам лузерам даже эти обрывки инфы делают огромную погоду. желаю чтоб эта тема работала как можно дольше и после коровьего вируса. вы программисты чаще бы делились советами с обычными нубами. КСТАТИ ВСЕХ С ВЕЛИКИМ ПРАЗНИКОМ.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

В профи дисплеи nokia N900 по 50р.

Какой там контроллер?

Выковырял список до 100р. , позже дополню описанием размером экрана

Источник

Adblock
detector