реклама на сайте
подробности

 
 
> Библиотека для графических LCD, отдам в хорошие руки :)
AndyBig
сообщение Nov 19 2005, 18:57
Сообщение #1


Иногдящий
****

Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931



Для своих нужд сделал библиотеку для графических LCD с контроллером T6963. Так как ничего подходящего в этом отношении найти в инете я не смог, то подумал, что такая библиотека будет интересна не только мне smile.gif. Библиотека написана и оттестирована на ATmega64, но легко может быть перенастроена для любых других AVR.
Есть возможность оптимизации для скорости или для размера кода. При отпимизации для скорости скорость, в основном, заметно возрастает (больше чем в 2 раза) при отрисовке текста в графическом режиме, но размер кода увеличивается почти в два раза.
О скорости... Скорость отрисовки 160 символов мелким шрифтом занимает 129 милисекунд (с оптимизацией библиотеки для размера кода) или 109 милисекунд (с оптимизацией библиотеки для скорости). Скорость отрисовки имиджа размером 80х80 занимает 16 милисекунд (с оптимизацией библиотеки для размера кода) или 13 милисекунд (с оптимизацией библиотеки для скорости). Это все замеряно при 14 МГц тактовой частоты.

Основные цели, которые я преследовал при ее создании:
- отрисовка имиджей
- отрисовка простейших графических примитивов
- (главное) графические шрифты; то есть вывод текста в графическом режиме с использованием своих шрифтов
Возможности библиотеки на сегодня:
- конфигурация дисплея (включение/выключение курсора, графики, текста и т.п.)
- очистка текстовой области, графической области и всего дисплея
======== текстовый режим =========
- вывод отдельных символов и текста в текстовом режиме
- вывод целых чисел с форматированием в текстовом режиме
- вертикальный скроллинг текста (автоматический или принудительный)
- вывод двузначного хексового значения unsigned char
======== графический режим ========
- вывод изображений по указанным координатам; изображение может обрезаться по вертикали и горизонтали
- поддержка нескольких шрифтов; шрифты хранятся в ROM в виде таблиц, количество доступных шрифтов ограничено только объемом flash-памяти контроллера; шрифты, в отличии от встроенных в дисплей, непропорциональны (к примеру, Courier - пропорциональный шрифт, а Arial - нет)
- выбор текущего шрифта
- вывод отдельного символа и текста текущим шрифтом с форматированием
- вывод целых знаковых чисел текущим шрифтом с возможностью выравнивания по правому краю
- очистка, заполнение и инверсия указанных прямоугольников
- отрисовка и очистка отдельных пикселей
- расчет ширины текста в пикселях в текущем шрифте
- рисование линий с указанными координатами начала и конца
- рисование круга с указанными координатами центра и радиусом

Вот... Ну и в дополнение - утилита, которую я написал для небольшой конвертации черно-белых .bmp-файлов в формат, понимаемый библиотекой. Два шрифта - мелкий и средний - уже включены в библиотеку. При желании их можно изменить, удалить или добавить еще шрифты smile.gif.

Библиотека будет развиваться, так что все предложения и замечания очень приветствуются smile.gif.
Никаких ограничений в применении библиотеки не накладываю, только просьба - если вдруг кто-то будет использовать ее, пришлите, пожалуйста, свои отзывы о ней smile.gif.
Кроме того, с удовольствием приму помощь в ее оптимизации по скорости и размеру кода.
Прикрепленный файл  lcd_t6963.rar ( 11.55 килобайт ) Кол-во скачиваний: 1345
- исходники библиотеки
Прикрепленный файл  bmpconv.rar ( 201.54 килобайт ) Кол-во скачиваний: 1659
- конвертер битмэпов
Прикрепленный файл  font_md.bmp ( 1.84 килобайт ) Кол-во скачиваний: 977
- вид среднего шрифта
Прикрепленный файл  font_sm.bmp ( 1.16 килобайт ) Кол-во скачиваний: 747
- вид мелкого шрифта
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AndyBig   Библиотека для графических LCD   Nov 19 2005, 18:57
- - Make_Pic   Зачем так? А почему не по protoss-овски продавать ...   Nov 20 2005, 05:57
- - AndyBig   В принципе, я могу понять Протосса, каждому ведь х...   Nov 20 2005, 10:53
- - Vict59   IMHO тема очень интересная и актуальная!!...   Nov 21 2005, 06:59
- - Rash   Тема интересная и т.к. скачали её столько людей зн...   Nov 21 2005, 07:23
- - BVU   AndyBig , кокой алгоритм Вы использовали для рисов...   Nov 21 2005, 15:28
- - AndyBig   BVUЕсли не ошибаюсь, это алгоритм Брезенхэма. Суть...   Nov 21 2005, 19:02
- - smr80   Думаю, такая библиотека была бы интересна и ее сто...   Nov 21 2005, 22:29
- - rat   Не найдется литературы по ентому самому алгоритму ...   Nov 22 2005, 05:45
|- - Igor26   Цитата(rat @ Nov 22 2005, 09:45) Не найде...   Nov 22 2005, 06:23
- - BVU   На сколько мне известно алгоритм Брезенхамма постр...   Nov 22 2005, 06:52
- - vet   BVU думается мне, что в данном случае узкое место ...   Nov 22 2005, 07:26
|- - BVU   Цитата(vet @ Nov 22 2005, 10:26) BVU дума...   Nov 22 2005, 07:40
- - AndyBig   ЦитатаДумаю, такая библиотека была бы интересна и ...   Nov 22 2005, 13:45
|- - BVU   Цитата(AndyBig @ Nov 22 2005, 16:45) К то...   Nov 22 2005, 13:58
|- - prottoss   Цитата(AndyBig @ Nov 22 2005, 20:45) Опти...   Nov 22 2005, 14:10
- - AndyBig   Вот время в милисекундах без вывода в ЖКИ (только ...   Nov 22 2005, 14:04
- - AndyBig   BVUУ меня есть этот документ, но он скомпилирован ...   Nov 22 2005, 16:25
|- - prottoss   Цитата(AndyBig @ Nov 22 2005, 23:25) Не с...   Nov 22 2005, 16:58
- - AndyBig   ЦитатаВы считаете, что ввод функции LCD_Wait() дли...   Nov 22 2005, 18:09
|- - prottoss   Цитата(AndyBig @ Nov 23 2005, 01:09) Вот ...   Nov 22 2005, 19:11
- - AndyBig   Я переписал процедуры проверки статуса дисплея на ...   Nov 22 2005, 20:57
- - Rash   Русский даташит по T6963 http://www.gaw.ru/html.cg...   Nov 23 2005, 09:40
- - AndyBig   Переделал слегка... prottoss, все таки мой путь ок...   Nov 26 2005, 14:51
|- - prottoss   Цитата(AndyBig @ Nov 26 2005, 21:51) Пере...   Nov 26 2005, 18:38
- - AndyBig   По поводу заливки, очистки и инвертирования - сорр...   Nov 26 2005, 21:05
|- - prottoss   Цитата(AndyBig @ Nov 27 2005, 04:05) Это ...   Nov 28 2005, 12:54
- - AndyBig   Хых... Форум опять глючит...   Nov 27 2005, 11:40
- - AndyBig   Ну, при оптимизации под скорость проверка статуса ...   Nov 28 2005, 16:06
- - proba   Т6963 и SED1520 слишком разные по быстродеиствию, ...   Nov 28 2005, 16:25
- - AndyBig   Цитатакод Andy легко читать и при желании корригир...   Nov 28 2005, 18:08
- - zltigo   Цитата(AndyBig @ Nov 19 2005, 21:57) Два ...   Mar 24 2009, 07:27


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 02:01
Рейтинг@Mail.ru


Страница сгенерированна за 0.01403 секунд с 7
ELECTRONIX ©2004-2016