Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
30.09.2011, 20:40
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от Chettuser
|
Найдётся у кого библиотечка под Nokia 1110(i)?
А может и модель для PROTEUS'a тоже? (понимаю, немного промазал мимо темы, но всё же).
|
Есть только 1100.
|
|
|
|
30.09.2011, 20:44
|
|
Прохожий
Регистрация: 09.08.2008
Сообщений: 6
Сказал спасибо: 1
Сказали Спасибо 12 раз(а) в 3 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от Chettuser
|
Найдётся у кого библиотечка под Nokia 1110(i)?
А может и модель для PROTEUS'a тоже? (понимаю, немного промазал мимо темы, но всё же).
|
Вот мой вариант. В архиве исходники на С, и проект для Proteus-а.
Модель дисплея 1100 выложена здесь: Nokia LCDs - Proteus VSM Models, у них с 1110 и 1110(i) контролеры практически одинаковые.
В железе тестировал с дисплеями от нокий 1110 и 1110(i), самыми стремными, китайскими, в тонких хрустящих пленочных пакетиках, как на сигаретной пачке. Дисплей 1110 зеленый и тусклый, а вот 1110(i) смотрится классно, даже при меньшем токе подсветки - контрастные синие буквы на ярком белом фоне.
Особенности включения:
У меня микроконтролер питается от 5В. Для контролера дисплея и его вывода питания I/O напряжение с 5 вольт до 2.8 понижается параметрическим стабилизатором из килоомного резистора, стабилитрона, и конденсатора 68 нф. Можно обойтись для этого вообще делителем из двух резюков - ток потребления микроскопический. Можно даже питать дисплей 5 вольтами, я попробовал, но мне не понравилась сьехавшая контрастность. Управляющие сигналы от МК к дисплею никак не согласовываются, просто идут через 10 килоомные резисторы. Если резисторы ставить меньше тоже работает, но МК шьется нестабильно (у меня дисплеем управляют ноги МК отвечающие за SPI). Если питать всю схему от 3.3 вольт, то в принципе можно вообще все включать напрямую, ничего не согласовывая.
|
|
|
Эти 6 пользователя(ей) сказали Спасибо Yukkie за это сообщение:
|
|
|
30.09.2011, 23:31
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.11.2008
Адрес: г.Смоленск
Сообщений: 2,018
Сказал спасибо: 348
Сказали Спасибо 1,024 раз(а) в 552 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от vlad145
|
Подскажите, а как на данный дисплей вывести картинку, например 10х10.
|
Конвертите в bmp, его загружаете в программу, получаете массив, его загоняете в дисплей
Проги выкладываю как скачал, но по названием найдете если понадобится, разобраться легко, простейшие
|
|
|
Эти 7 пользователя(ей) сказали Спасибо Saadov за это сообщение:
|
|
|
01.10.2011, 07:32
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
С конвертацией то я разобрался, у меня не получается вывести полученный массив на экран.
|
|
|
|
01.10.2011, 14:45
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от vlad145
|
С конвертацией то я разобрался, у меня не получается вывести полученный массив на экран.
|
Не знаете как, или не получается?
|
|
|
|
02.10.2011, 14:14
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от ut1wpr
|
Не знаете как, или не получается?
|
Не знаю. Для 1100 сколько примеров видел, не встречал вывода изображения.
|
|
|
|
02.10.2011, 14:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от vlad145
|
Не знаю. Для 1100 сколько примеров видел, не встречал вывода изображения.
|
А вы попробуйте не примеры искать, а включить понималку.
Сначала усвоить, что есть "изображение", в каком виде оно хранится в памяти (уточнить, где именно), затем сообразить (почитать в даташите на дисплей), куда и как кладутся байтики в памяти дисплея, какой бит где отображается, и с удивлением обнаружите, что все сводится к тривиальной пересылке байтов из памяти МК в память дисплей в нужной последовательности. А вот последовательность и нужно "ухватить". И никакие примеры не помогут. Иначе вы навсегда останетесь на этом уровне, уровне "применения готовых драйверов" без понимания процессов, в них происходящих. Хотя и такой вариант многих устраивает. Ведь многие просто хотят повторить конструкцию, изменять что-либо в ней или не под силу, или "в лом".
|
|
|
|
02.10.2011, 17:13
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Спасибо за разъяснение. После нескольких экспериментов удалось вывести часть изображения, а точнее нужно вывести изображение 11х11, а отображается 8х11, тоесть в высоту знакоместа.
вывожу вот так:
static const char volum[] =
{ 0xF9, 0x8A, 0xFC, 0x88, 0x54, 0x22, 0x51, 0xFF, 0x04, 0x02, 0};
gotoxy(50,50);
for ( i = 0; i ‹ 11; i++ )
{
lcd_write(DATA,volum[i]);
}
Как это можно исправить исправить?
|
|
|
|
02.10.2011, 17:55
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Получилось вывести так как хотел, вот код:
static const char volum[20] =
{ 0xFA,0x8C,0xF8,0x54,0x22,0x51,0xFF,0x04,0x02,0x00, 0x02,0x01,0x00,0x01,0x02,0x04,
0x07,0x01,0x02,0x00 };
gotoxy(50,2);
for ( i = 0; i ‹ 10; i++ )
{
lcd_write(DATA,volum[i]);
}
gotoxy(50,3);
for ( i = 10; i ‹ 20; i++ )
{
lcd_write(DATA,volum[i]);
}
А можно как то упростить данный код?
|
|
|
|
02.10.2011, 19:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от vlad145
|
Получилось вывести так как хотел, вот код:
static const char volum[20] =
{ 0xFA,0x8C,0xF8,0x54,0x22,0x51,0xFF,0x04,0x02,0x00, 0x02,0x01,0x00,0x01,0x02,0x04,
0x07,0x01,0x02,0x00 };
gotoxy(50,2);
for ( i = 0; i ‹ 10; i++ )
{
lcd_write(DATA,volum[i]);
}
gotoxy(50,3);
for ( i = 10; i ‹ 20; i++ )
{
lcd_write(DATA,volum[i]);
}
А можно как то упростить данный код?
|
Код:
|
static const char volum[20] = {
0xFA,0x8C,0xF8,0x54,0x22,0x51,0xFF,0x04,0x02,0x00,
0x02,0x01,0x00,0x01,0x02,0x04,0x07,0x01,0x02,0x00
};
for ( i = 0; i != 10; i++ ){
gotoxy(50+i, 1);
lcd_write(DATA,volum[i]);
gotoxy(50+i, 2);
lcd_write(DATA,volum[10+i]);
} |
Плюс - делаем все в одном цикле.
Минусы - вводим лишние вычисления в теле цикла. Увеличиваем к-во вызовов функции gotoxy()
Данное "упрощение" может обернутся потерями...
Решать самому, что важнее. Как и при всякой оптимизации.
Рациональнее перевести код на работу с указателями с их смещением.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:24.
|
|