Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 19.12.2010, 12:50  
-Alan-
Прописка
 
Аватар для -Alan-
 
Регистрация: 05.12.2008
Адрес: Россия, Омск
Сообщений: 145
Сказал спасибо: 39
Сказали Спасибо 29 раз(а) в 22 сообщении(ях)
-Alan- на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Сообщение от vlad145 Посмотреть сообщение
Уважаемые профессионалы, нужна ваша помощь. Я только ещё пытаюсь писать для микроконтроллеров, и естественно не без граблей. Пишу в CodeVision (мне в ней понятнее), есть несколько вопросов по работе с дисплеем от Nokia 3310(1100). Я вроде где то натыкался, но найти не смог, как использовать (реализовать) на одном дисплее шрифты нескольких размеров. Это пишется знакогенератор с набором разных шрифтов, или код какой есть для программного увеличения символов (типа 2х и т.д.). И ещё, как вывести например одну строку в инверсии? Надеюсь на понимание.
Допустим, строчку с инверсией вывести достаточно просто. Перед выводом даётся XOR Data, 0xFF (а регистре), или NEG Data (регистр с байтом).
Опять же, это для горизонтально-вертикального вывода информации - вывода по 8 точек вертикально и сдвиг на 1 столбец в сторону. Такое в дисплее Nokia 1110(i). Полноценного вертикального вывода не добился.

Шрифты, действительно можно переключать из 2 источников, а можно и увеличивать, что сложнее. Например, циклическим сдвигом начального байта знака из знакогенератора, проверки бита (обычно первого, последнего, или переноса в зависимости от логики сдвига) и добавления к новому байту уже 2 бит в начало, или конец и его сдвиг.
Так же, прийдётся отправлять его дважды, иначе будет только вертикальное увеличение.

Именно с кодом пока не могу помочь, так как не делал подобного, но реализовать не слишком сложно. Должно понадобиться 100-200 команд.
Реклама:
-Alan- вне форума  
Непрочитано 19.12.2010, 13:32  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

У каждого способа есть свои недостатки, если увеличивать шрифты программно, то они выглядят коряво, но не занимают места во флэше, а если загружать крупные шрифты, то они отнимают место во флэше, зато смотрятся прилично.
st_1 вне форума  
Непрочитано 19.12.2010, 15:27  
-Alan-
Прописка
 
Аватар для -Alan-
 
Регистрация: 05.12.2008
Адрес: Россия, Омск
Сообщений: 145
Сказал спасибо: 39
Сказали Спасибо 29 раз(а) в 22 сообщении(ях)
-Alan- на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Так в том-то и вся суть. Вопрос только в желании сэкономить ресурсы - либо получить нечто корявое, либо красивое, но потратить бесценное место для программы. В случае с контроллерами класса ATMega8 - 2-16 кб, а знакогенератор низкого разрешения займёт 5х8 бит: 5х256 (для полного алфавита) = 1280 байт. В принципе, не слишком много. А вот для большего разрешения будет уже 4х1280 = 6120 байт, что занимает достаточно большой объём памяти.
Конечно, можно выбрать только нужные символы. Но где тогда вероятность, что не появятся новые?
Кстати, в EEPROM знакогенератор уже не помещается (512 байт в моём случае - ATMega8535). А если увеличить его?.. Либо писать более умную процедуру, которая будет проводить пересчёт пикселов с учётом соседних - сглаживать углы.
-Alan- вне форума  
Непрочитано 19.12.2010, 17:23  
vlad145
Прописка
 
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
vlad145 на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Немного поясню. Есть конкретный проект на ATMega16, реобас с тремя термодатчиками DS18B20, тремя каналами управления кулерами (шим). В случае нехватки flash памяти есть возможность переписать проект на ATMega32. Крупный шрифт нужен не полностью, только цифры. Возможно может понадобиться стандартный шрифт только "жирный".
vlad145 вне форума  
Непрочитано 19.12.2010, 18:23  
-Alan-
Прописка
 
Аватар для -Alan-
 
Регистрация: 05.12.2008
Адрес: Россия, Омск
Сообщений: 145
Сказал спасибо: 39
Сказали Спасибо 29 раз(а) в 22 сообщении(ях)
-Alan- на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Советую использовать знакогенератор в конце основной памяти, тогда точно хватит и её. Так же, если нужно использовать только цифры, то получится так:
Две процедуры - вывод обычных символов, (возможно с жирностью - реализовать повторами некоторых байтов), и вывод больших цифр.
Опять же, нужно знать как работает дисплей, как удобнее выводить символы.
Некоторые могут поддерживать вертикальную+горизонтальную адресацию попиксельно (цветные), некоторые - вертикальную попиксельно, а горизонтальную - построчно.
Хотя, в общем случае нужно будет иметь:
Знакогенератор обычных символов (с цифрами?)
Знакогенератор цифр (больших).
Второй разбивается на половины и выводится сначала одна часть, затем другая.
В зависимости от способа адресации, нужно будет и заполнять массивы.

В принципе, ничего очень сложного. Только придётся решить проблему позиционирования...
Чтобы не получилось такого:

[HTML]Температура: _ | | o
| |[/HTML]
(Температура: -11°)
Пример сложный для рисования в половинках

Думаю, Вы справитесь
-Alan- вне форума  
Непрочитано 19.12.2010, 18:52  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Сообщение от vlad145 Посмотреть сообщение
Крупный шрифт нужен не полностью, только цифры. Возможно может понадобиться стандартный шрифт только "жирный".
И что мешает? Возьмите из чужого готового шрифта то что вам нужно, как правило в коментах обозначено какому символу какая строчка/строчки соответствует, или составьте сами. Только вам нужно сначала определиться с размерами шрифта, а за вас это уже никто сделать не сможет, или просто пробовать разные и найти оптимальный.
st_1 вне форума  
Непрочитано 19.12.2010, 19:32  
sersne
Прописка
 
Регистрация: 09.11.2009
Сообщений: 165
Сказал спасибо: 36
Сказали Спасибо 55 раз(а) в 24 сообщении(ях)
sersne на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

vlad145,
У меня есть термометр в нем я использовал шрифт 10 x 16 (сами цифры занимают размер 8 x 14 остальное забито нулями). Устройство на ATMega16 в железе пока не проверялось, в протеусе работает нормально. Надеюсь оно будет тебе полезено.

lcd - nokia 3310
Вложения:
Тип файла: rar termo.rar (114.5 Кб, 349 просмотров)

Последний раз редактировалось sersne; 19.12.2010 в 19:35.
sersne вне форума  
Эти 3 пользователя(ей) сказали Спасибо sersne за это сообщение:
valexus (19.03.2011), vlad145 (20.12.2010)
Непрочитано 19.12.2010, 19:46  
mironov
Вид на жительство
 
Регистрация: 07.03.2005
Сообщений: 300
Сказал спасибо: 13
Сказали Спасибо 117 раз(а) в 62 сообщении(ях)
mironov на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

Проекты с разными размерами шрифтов. Проект "02_3310boldV2" реально работает на макетке. Шрифт выглядит очень прилично. Но корифеи объясните на "пальцах" как работает кусок кода увеличения шрифтов программно. Нашел все в инете, переделывал для себя, но эта часть кода без единого комментария. Задавал этот вопрос месяца три назад. Сказали читай даташит.
Вложения:
Тип файла: zip temp.zip (1.01 Мб, 720 просмотров)
mironov вне форума  
Сказали "Спасибо" mironov
vlad145 (20.12.2010)
Непрочитано 19.12.2010, 20:19  
sersne
Прописка
 
Регистрация: 09.11.2009
Сообщений: 165
Сказал спасибо: 36
Сказали Спасибо 55 раз(а) в 24 сообщении(ях)
sersne на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

mironov, у тебя ни один проект не компилируется, пишет:
"Linker error: global RAM variables size: 973 bytes is too large".
Нужен другой контроллер с большей рам или менять исходники.

На сколько я понял увеличение шрифта происходит элементарным умножением,
пример:
символ "!" будет записываться в бинарном коде как:
0b00000000,0b00000000,0b10111111,0b00000000,0b0000 0000
умножая биты на число 3, получаем символ так:
0x00,0x00,0x00
0x00,0x00,0x00
0b111000 0b111111111 0b111111111
0x00,0x00,0x00
0x00,0x00,0x00

Последний раз редактировалось sersne; 19.12.2010 в 20:55.
sersne вне форума  
Непрочитано 19.12.2010, 20:53  
sersne
Прописка
 
Регистрация: 09.11.2009
Сообщений: 165
Сказал спасибо: 36
Сказали Спасибо 55 раз(а) в 24 сообщении(ях)
sersne на пути к лучшему
По умолчанию Re: Дисплеи от сотовых (схемы подключения, код, datasheet)

В прилогаемом рисунке описано понятнее.
Миниатюры:
Нажмите на изображение для увеличения
Название: шрифт.JPG
Просмотров: 213
Размер:	89.8 Кб
ID:	15937  
sersne вне форума  
 

Закладки

Метки
lcd
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто использовал дисплеи от сотовых телефонов - помогите! Afandi Делимся опытом 12 14.01.2012 09:48
дисплеи от сотовых Sp-alex-trio Ремонт оргтехники 5 22.05.2009 15:11
преобразователь код-код zazan111 TTL и CMOS логика 18 05.01.2009 06:11
TV LCD дисплеи NecroSS Ремонт оргтехники 1 08.12.2008 11:48


Часовой пояс GMT +4, время: 14:58.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot