Подключение дисплея nokia 1100
- Войдите на сайт для отправки комментариев
Ср, 01/05/2013 - 11:46
Доброго дня, извиняюсь за возможно глупый вопрос, в общении с ардуиной еще совсем новичек, но не найдя на него ответа решил написать сюда, есть в наличии arduino uno и дисплей nokia 1100 хотелось бы их подружить, для начала просто вывести пару строчек текста, сейчас идет шилд реального времени и как придет хочу сделать часы :) Интересует в первую очередь схема подключения, а то сколько не искал в интернетах там для 3310
[...]
схема подключения, а то сколько не искал в интернетах там для 3310
Ой ли?
Первая же ссылка по гуглозапросу "lcd nokia 1100 arduino" выводит на страницу https://github.com/kuldeepdhaka/nokia-1100-lcd-with-arduino/blob/master/driver_nokia_1100_lcd.h, на которой, в частности, есть:
|-----------------| | screen | | front | |_________________| | | | | | | | | | 1 2 3 4 5 6 7 8 9 PIN 1: XRES PIN 2: XCS PIN 3: GND PIN 4: SDA PIN 5: SCLK PIN 6: VDDI PIN 7: VDD PIN 8: LED+ PIN 9: UnusedСпасибо, видимо правда плохо искал
отвечу сам на свой же вопрос :) нашел схемку, прикреплю сюда, вдруг еще кому понадобится
Подскажите что компелятору тут не нравится?
почти в каждой функции указывает на этот оператор и пишет:
...\nokia1100_lcd_lib.c:88: error: 'for' loop initial declaration used outside C99 mode
hugoboss317, а зачем unsigned при верхнем пороге значений в 864?
И зачем 865 раз делать одно и то же событие, не зависящее от инкременируемой переменной (может я чего-то не знаю?)?
По теме:
Что твориться в 88-й строке в файле библиотеки nokia1100_lcd_lib.c? Ну говорит, не по-феншую (не по-стандарту С99) используется вызов nlcd_SendByte (скорее всего что-то в передаче параметров), но работать дожен.
Подскажите что компелятору тут не нравится?
почти в каждой функции указывает на этот оператор и пишет:
...\nokia1100_lcd_lib.c:88: error: 'for' loop initial declaration used outside C99 mode
здесь он перебирает все пиксели на экране и записывает в них о. это скорее всего из функции очистки экрана
Это не я. Скачал готовую (ну вроде как готовую) библиотеку. Достаточно функциональную. И в ней ничего не менял (кроме разрешения 68 на 65)
88-ю строку я показал. Она такая не одна. Как я сказал, в каждой функции где этот оператор выполняет подобное действие.
->> но работать должен<<-
не, не работает, не компелирует если поточнее.
вот ".с" может вы что то увидете:
Да, так и есть.
Но не только в это функции: 'nlcd_SendByte', 'nlcd_Putc', 'nlcd_PutcWide, 'nlcd_Print',
проскочил глюк браузера. 3 одинаковых сообщения. Удалил...
перечень ошибок:
..\nokia1100_lcd_lib.c: In function 'nlcd_Clear':
...\nokia1100_lcd_lib.c:88: error: 'for' loop initial declaration used outside C99 mode
...\nokia1100_lcd_lib.c: In function 'nlcd_SendByte':
...\nokia1100_lcd_lib.c:126: error: 'for' loop initial declaration used outside C99 mode
...\nokia1100_lcd_lib.c: In function 'nlcd_Putc':
...\nokia1100_lcd_lib.c:150: error: 'for' loop initial declaration used outside C99 mode
...\nokia1100_lcd_lib.c: In function 'nlcd_PutcWide':
...\nokia1100_lcd_lib.c:164: error: 'for' loop initial declaration used outside C99 mode
...\nokia1100_lcd_lib.c: At top level:
...\nokia1100_lcd_lib.c:179: error: conflicting types for 'nlcd_Print'
.../nokia1100_lcd_lib.h:94: error: previous declaration of 'nlcd_Print' was here
...\nokia1100_lcd_lib.c: In function 'nlcd_Pict':
...\nokia1100_lcd_lib.c:453: error: 'for' loop initial declaration used outside C99 mode
...\nokia1100_lcd_lib.c:467: error: 'for' loop initial declaration used outside C99 mode
подождите немного. проверю ту библиотеку и скажу что да как
Измените расширение файла на .cpp
скомпелировал. Пойду дальше.
Загрузил, ничего...(((
писал где ранее что не инвертируется дисплей 1202 по горизонтали. хоть коды и известны, но у меня не работало. в итоге когда в одном проекте пришлось перевернуть диспей инвертировал по вертикали и выводил все справа налево
решил сегодня проверить отсылая команды от 0 до 255.
нашел некоторые непонятно зачем нужные функции, но инвертирования по горизонтали к сожалению нет
если будете разворачивать этот дисплей имейте в виду
Да всё руки никак не доходят, как один проэкт закончил, так пока в долгом ящике и лежат остальные экранчики. Дойдёт ход, породую развернуть, самому интересно.
ты какой тестить собираешься?
1280
Подскажите что не так? При выводе val на дисплей, почемуто вместо цифер "кракозябры". Слово STATUS1: выдает нормально.Что делаю не так?
#include <PCF8814.h>//lcd_nokia1100 #include <PCF8814_font.h> int ledlcd = 6;//подсветка lcd int ledb = 9;//светодиод int potPin = 0;//фотрезистор PCF8814 lcd(13, 11, 10, 8); void setup() { Serial.begin(9600);//выводим показания на компьютер analogReference(DEFAULT); pinMode (ledb,OUTPUT); pinMode(ledlcd, OUTPUT); lcd.Init(); lcd.GotoXY(0,2); lcd.Print("STATUS1: ");//1-я строка } void loop() { int val = analogRead(potPin);//читаем показания с фоторезистора и присваиваем его к val lcd.GotoXY(8,2); lcd.Print(val); if(val<20){//если освещение менше 20 то мигать светодиодом digitalWrite(ledb, HIGH); delay(50); digitalWrite(ledb, LOW); delay(50); analogWrite(ledlcd, 600); } else{ digitalWrite(ledb, LOW);//иначе отключить светодиод analogWrite(ledlcd, 20); } Serial.println(analogRead(potPin)); }