Дисплей Nokia 3410 (3310)

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

Спасибо!!! Понял :)
Я не Сашок!!!
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Сообщение clawham »

вообще-то проблема не в этом! Массив при таком обьявлении определенной длины получается!
Вы лучше посмотрите на функцию путстр - там есть ограничение на самый первый символ....помоему он не 14 а аж 20-й .... ибо если задать вывод символа ниже начала таблицы символов там условие стоит и оно просто не выводит ничего!
А вообще я пользуюсь всегда простой конструкцией для вывода текста

Код: Выделить всё

unsigned char a2[LcdBufSize];

lcd_gotoxy(1,3);
sprintf(a2, "Initialising..");
lcd_putstr(a2);

или вот ещё кусок кода

                      sprintf(a2, "t%u=%+.4f\xf8C\n\r",i+1, ds_temp);
                      lcd_clear_row(1+i);
                      lcd_gotoxy(1,1+i);
                      lcd_putstr(a2); // выводим на экранчик "t1=-0.0000C"


Ни разу ещё не подводила и т.д. всегда отрабатывает корректно вообще не представляю как по-другому можно :)
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

Совершенно случайно попался мне под руку проект LC метра на PIC и дисплее от nokia 3310. Автор оказался не жадным и прикрепил исходник к проекту, там караз был исходник функций LCD. Я коечто позаимствувал. Делюсь тем что у меня вышло :)
Вложения
3310.rar
(10.2 КБ) 1160 скачиваний
Я не Сашок!!!
Аватара пользователя
Alex Medvedev
Встал на лапы
Сообщения: 95
Зарегистрирован: Сб мар 01, 2008 12:27:44
Контактная информация:

Сообщение Alex Medvedev »

А в дисплеях от телефона NOKIA 3310 и NOKIA 5110 контроллеры одинаковые стоят?
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

sachok писал(а):Совершенно случайно попался мне под руку проект LC метра на PIC и дисплее от nokia 3310. Автор оказался не жадным и прикрепил исходник к проекту, там караз был исходник функций LCD.


Поделись плиз...
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Сообщение su9 »

Это автор не жадный!
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

Здравствуйте! Решил спаять платку для тестов LCD. Сам дисплей планирую питать от 3,3В как по даташиту, есть вопрос по согласованию уровней между МК и дисплеем. Посмотрите пожалуйста прикрепленную схему, можно ли так сделать?
Вложения
cxema.JPG
Схема
(9.84 КБ) 1280 скачиваний
Я не Сашок!!!
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Если чисто для тестов и питай мегу от 3 вольт - переходники не нужны...
Если для тестовых проектов по скорострельности , тады другое дело .
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

Хочу на железке проверить те функции которые уже написал ну и проверять новые функции, а то Proteus работает у меня 1 мин. и закрывается, а так не интересно) У меня ATmega8-16PU обычная не (8L) так что стабильность работы от 3В не гарантируется, лучше сразу поставлю по резистору и стабилитрону.
Я не Сашок!!!
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

sachok писал(а):Proteus работает у меня 1 мин. и закрывается, а так не интересно)

Протеус 7.4? с ним у меня такие проблемы были, качал по ссылкам с форума, обновил до 7.6, теперь всё норм.
Аватара пользователя
ibiza11
Поставщик валерьянки для Кота
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

sachok писал(а): лучше сразу поставлю по резистору и стабилитрону.
может лучше простой резистивный делитель?
Ставим плюсы: )
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

У кого то есть пример установки (включения/выключения) пикселя с координатами (х,у) на CVAVR???
Решено!

Код: Выделить всё

/*
відображення пікселя з координатами (х, у)
для "увікнення" set = 1
для "вимкнення" set = 0

lcd_set_pixel (1, 2, 1) // "увімкнути"
lcd_set_pixel (1, 2, 0) // "вимкнути"
*/
void lcd_set_pixel(unsigned char x, unsigned char y, unsigned char set)
{
   unsigned char value;
   unsigned char row;
    unsigned char lcd_buffer[8][84];
   
   row = y / 8;

   value = lcd_buffer[row][x];
   
    if (set == 1)
    {
       value |= (1 << (y % 8));
    }
    else
    {
        value &= ~(1 << (y % 8));
    }
   lcd_buffer[row][x] = value;

   lcd_gotoxy (x,row);
   lcd_send(value, lcd_data);
}
Последний раз редактировалось sachok Сб фев 13, 2010 19:48:37, всего редактировалось 1 раз.
Я не Сашок!!!
Аватара пользователя
sachok
Опытный кот
Сообщения: 849
Зарегистрирован: Сб янв 05, 2008 11:05:15
Откуда: Україна м.Луцьк
Контактная информация:

Сообщение sachok »

Ещё возникла идея. Поскольку дисплей потребляет малый ток то возможно на него подать питание с +5В только через 2 последовательно включенных диода 1n4148??? Ну и на сигнальных линиях может тоже так сделать?
Поделитесь тем как Вы питаете дисплей, а то не хочу спалить...
Я не Сашок!!!
Аватара пользователя
Alex_EXE
Вымогатель припоя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург
Контактная информация:

Сообщение Alex_EXE »

Реализовал программу генератора массива символов - символьный генератор. Программа позволяет генерировать как 5х8, так и 10х16 символы.
Также имеется готовый набор символов (содержащий как английские, так и русские) и функций для работы с ними symbol-generate.c
Аватара пользователя
lerik
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт ноя 14, 2006 16:44:28
Откуда: Белгород

Re: Дисплей Nokia 3410 (3310)

Сообщение lerik »

Коты !!!!!
Подскажите в чем может быть проблема?
Дисплей 3310 + мега8
Не могу заставить писать черным по белому т.е. нормально, все отображается в инверсном виде. В чем может быть проблема?
Инициализация такая , перепробовал все - ничего не помогает....

lcd_send(0x21, LCD_CMD); // Перевод LCD в режим внешних команд
lcd_send(0xC8, LCD_CMD); // Set LCD Vop(Contrast = 72)
lcd_send(0x06, LCD_CMD); // Установить температурный коэффициент
lcd_send(0x13, LCD_CMD); // LCD bias mode 1:48
lcd_send(0x20, LCD_CMD); // Перевод LCD в режим cтандартных команд, Горизонтальная адресация (внутренние команды)
lcd_send(0x0C, LCD_CMD); // LCD в нормальный режим отображения (черным по белому)

Протеус отображает в инверсном виде, хотя если загрузить в него другой (чужой) hex, то все работает нормально где копать?
yakuzaa
Встал на лапы
Сообщения: 88
Зарегистрирован: Чт июл 24, 2008 12:35:30
Контактная информация:

Re: Дисплей Nokia 3410 (3310)

Сообщение yakuzaa »

Столкнулся с курьезом: подключил дисп Nokia 5210 (84x48, PCD8544). Его особая привлекательность в том, что он малых габаритов, и имеет удобный контактный шлейф, который не плавится при пайке, но! Изображение на нем отзеркалено справа-налево... как программно можно подкорректировать? или прийдется знакоген переписывать? а может команда есть какая? точно знаю, что в Nokia 1100 дисплее есть команда на "отзеркаливание" изображения, но она, естественно, для PCD8544 не катит...
Изображение
Изображение
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Дисплей Nokia 3410 (3310)

Сообщение clawham »

Попробуйте ингициализировать дисплей как в даташите :)
по идее я на него не нашел такой функции слева направо или справа налево но с другой стороны...да неприятно....а с третей большая ли разница для знакогенератора????просто перед каждым символом позиционировать курсор и читать не 12345678 а 87654321 из таблицы шрифта :)

http://www.myplace.nu/mp3/files/pcd8544.pdf
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Дисплей Nokia 3410 (3310)

Сообщение clawham »

lerik писал(а):Коты !!!!!
....Протеус отображает в инверсном виде, хотя если загрузить в него другой (чужой) hex, то все работает нормально где копать?


Вот моя процедурка инициализации

Код: Выделить всё

    RES=0;       
    delay_ms(100);       
    RES=1;       
    delay_ms(100);           
    writecomm(0x21); // LCD Extended Commands.
    //writecomm(0xC8); // Set LCD Vop (Contrast).
    writecomm(0b10000000|mem_contr);
    writecomm(0x06); // Set Temp coefficent.
    writecomm(0x13); // LCD bias mode 1:48.
    writecomm(0b01000101); //Переводим СКРОЛЛИНГ вверх на пол строки - вторая строка = первая на экране
    writecomm(0x20); // LCD Standard Commands, Horizontal addressing mode.
    writecomm(0x0C); // LCD in normal mode.

Так как впринципе всё одинаково то скорее всего у вас СПИ порт настроен неправильно(не та полярность такта)
Вот моя инициализашка порта СПИ

Код: Выделить всё

// SPI initialization
// SPI Type: Master
// SPI Clock Rate: 2*4000,000 kHz
// SPI Clock Phase: Cycle Half
// SPI Clock Polarity: Low
// SPI Data Order: MSB First
SPCR=0x50;
SPSR=0x00;
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re:

Сообщение clawham »

sachok писал(а):Здравствуйте! Решил спаять платку для тестов LCD. Сам дисплей планирую питать от 3,3В как по даташиту, есть вопрос по согласованию уровней между МК и дисплеем. Посмотрите пожалуйста прикрепленную схему, можно ли так сделать?


Я делаю проще....я взял на линии данных от мк(который от 5-ти вольт) до LCD поставил килоомные резисторы а питание организовал простым линейником L1117-3.3 нагруженным не только самим LCD а ещё и 200 омным резистором...в сам контроллер уже встроены защитные диоды к питанию в них оно спокойно упирается...а чтоб небыло паразитного питания стабилизатор работает по типу стабилитрона :) не экономично .. согласен...можно было бы взять микруху для согласования уровней чтото типа HCT244-й или её подобное :) но..у мя итак работает на 4 мегагерцах а в бОльшей скорости я смысла не вижу :) экранная матрица всёравно инерционна....
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
lerik
Первый раз сказал Мяу!
Сообщения: 30
Зарегистрирован: Вт ноя 14, 2006 16:44:28
Откуда: Белгород

Re: Дисплей Nokia 3410 (3310)

Сообщение lerik »

to clawham:
Я не использую SPI , у меня по другому, все ручками :). Вывод на дисплей работает, все выводит как надо, но только в инверсном виде как будто всегда подана команда 0x0D, а хотелось бы в нормальном виде 0x0С.
В архиве проект для CVAVR и проект для Протеуса.
Такое ощущение что вообще не включаются расширенные (extended) команды.
Может кто подскажет в чем дело?
Вложения
proba.rar
(30.28 КБ) 498 скачиваний
Ответить

Вернуться в «Периферия»