как вывести русские буквы на LCD ST7920?

leshak
Offline
Зарегистрирован: 29.09.2011

titovich пишет:

 Второй вариант - сделать массив видеопамяти. Делаете с видеопамятью что угодно, не забывая при этом обновлять экран. Функция рисования будет выводить на экран из видеопамяти через процедуру drawBitmap.

Нет. Это не верный путь. Не потому что вы неправильно описали идею видеопамяти (все верно вы сказали), а потому что - это уже реализовано. Плюс, что-бы экономить оперативку - реализована разбивка видео-памяти на страницы (что позволяет иметь видео-память меньшего размера, куда не влазит "весь экран целиком"). В этом же и суть этой u8g, отсюда и такой "хитрый способ вывода".

Вообщем у нее "внутри" уже есть видеопамять. И делать "свою видеопамять", потом из "своей" копировать в библиотечную, а отдута в экран - нет смысла.

Но ваш подоход может пригодится для каких-нибудь анимаций. Если скажем есть какие-то "сложно отрисованные картинки", которые не сильно меняются сами по себе, но их нужно быстро чередовать. Какой-то аналог спрайтов (подготовленных заранее или созданных процедурно уже в коде)

titovich
Offline
Зарегистрирован: 29.05.2013

leshak пишет:

titovich пишет:

 Второй вариант - сделать массив видеопамяти. Делаете с видеопамятью что угодно, не забывая при этом обновлять экран. Функция рисования будет выводить на экран из видеопамяти через процедуру drawBitmap.

Нет. Это не верный путь. Не потому что вы неправильно описали идею видеопамяти (все верно вы сказали), а потому что - это уже реализовано. Плюс, что-бы экономить оперативку - реализована разбивка видео-памяти на страницы (что позволяет иметь видео-память меньшего размера, куда не влазит "весь экран целиком"). В этом же и суть этой u8g, отсюда и такой "хитрый способ вывода".

Вообщем у нее "внутри" уже есть видеопамять. И делать "свою видеопамять", потом из "своей" копировать в библиотечную, а отдута в экран - нет смысла.

Но ваш подоход может пригодится для каких-нибудь анимаций. Если скажем есть какие-то "сложно отрисованные картинки", которые не сильно меняются сами по себе, но их нужно быстро чередовать. Какой-то аналог спрайтов (подготовленных заранее или созданных процедурно уже в коде)

Я привел пример как можно реализовать поставленные человеком и кажущиеся невыполнимыми задачи разными способами. Я написал о введении дополнительной видеопамяти - для реализации вывода "на лету". Но это сложный путь, который требует написание своих процедур рисования.

Насчет вашего примера со спрайтами - он как раз реализуется без дополнительной оперативки. Просто делаете массив в программной памяти и выводите необходимые битмапы. Скорости хватит с головой.

leshak
Offline
Зарегистрирован: 29.09.2011

titovich пишет:

Я привел пример как можно реализовать поставленные человеком и кажущиеся невыполнимыми задачи разными способами. Я написал о введении дополнительной видеопамяти - для реализации вывода "на лету". Но это сложный путь, который требует написание своих процедур рисования.

Так зачем этот путь, если именно его и реализует библиотека? Написать свою версию библиотеки? Или вы приводили пример не в контексте библиотеки, а просто как иллюстрацию "любую задачу можно по разному решать"?

titovich пишет:

Насчет вашего примера со спрайтами - он как раз реализуется без дополнительной оперативки. Просто делаете массив в программной памяти и выводите необходимые битмапы. Скорости хватит с головой.

Да, это то что я назвал "заранее подготовленными". Но возможен еще вариант, когда они все-таки не известны на момент компиляции. И время от времени - все таки меняются. Тогда мы их изредко, все-таки, рисуем в с помощью всяких drawLine/drawPixel в свою видеопамять, а потом пробрасывам в библиотеку с помощью drawBitmap

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

Причем температурный меняется "редко", а тахометр "скачет постоянно". Тогда температурный можно отрисовывать в промежуточную видео-память, скажем раз в минуту. А потом раз в секунду "собирать" общую картинку из drawBitmap(tempBmp)+doDrawTaho()

Вообщем "закешировать" часть картинки.

 

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

Здравствуйте Всем.

 

Мне кажеться тема немного съехала от изначального вопроса. 

 

На сегодняшний день ест множество шрифтов для библиотеки, позволяющей выводить русские буквы. Но нив одном из них нет совпадания русских букв с раскладкой в клавиатуре. Изначально я предлагал создать свой собственный шрит с совпадением русских букв с русской раскладкой на клавиатуре. 

 

На мой взгляд библиотека u8glib весьма достойный продукт, которым можно с успехом пользоваться.

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Я предпологал что на меня накинутся и выражение "кривые руки" будет применяться чаще. Более того, даже ожидал что то типа " что тут сложного, делаешь вот так и всё готово"... А с такими ответами я даже не могу понять где сарказм, а где нет. Проблема ещё в том, что когда я "колдовал с GLCD", задача кода была направлена на  сам ЖКИ, т.е. он индикатор и он же исполнитель.

http://www.youtube.com/watch?v=Vze6BfuwC6c

( я там писал С++, не обращайте внимания это для красоты)

На данном этапе моих "чудес" экран как раз не главный герой этого фильма и должен только своевременно отображать состояние на этапах выполнение своей задачи микроконтроллера, а  библиотекоа U8G, как продажный чиновник, отдаёт главную роль индикатору и подстраиваться нужно под него, и весь код надо писать под него, а остальное, актёры второго плана (это конечно если хочешь чтоб показания на экране не были как в фильме "назад в будущее", событие уже давно состоялось, про него все забыли а мы его только начинаем лицезреть. Простенький примерчик: запускаю "мячик" по экрану, больше в коде ничего нет, тупо мячик, да , мне не надо чистить экран или печатать после него что то белое, но 1- "мячик сдвигается не на один пиксель а на два( u8g готовит и формирует, понимаешь, изображение) 2 - пролетая по диагонали через середину (по высоте) экранав одну сторону он на пиксель запаздывает, а в другую отстаёт т.е. это чудо ещё и выводин нижнюю часть и верхнюю в разное время. Со статическими изображениями вроде всё в порядке, только при выводе на экран, допустим, значений переменных, u8g печатает только на верхней половине, притом как обычный буквенно циферный шрифт отображается нормально (в статике). 

U8G действительно более универсальная и функцианальная, только возможность масштабирования чего стоит, вращения и т.п. но на каждом этапе написания кода нужно постоянно под неё подстраиваться ( в меру возможностей, а их, как оказалось, не много) .

Что касается по теме, тут у меня дествительно проблемы из-за "ровнолинейности" рук, но я вроде чётко спросил - "открываем командную строку, что дальше?". Ну как что дальше, заходим, находим переходим, что ещё не ясно!? Что то я не могу найти в командной строке меню/файл/открыть файл )))))))) мне нужно было нарисовать шрифт цифр эмитирующий сигментный индикатор. вот почему в утилитах  и др. погах для glcd это делается щелчком пальца!? Вот я и говорю что создатель бибы и утилит под неё один и тот же "задумчивый" парень как сама биба.

 

NeiroN пишет:

Тогда вам нужно 2 контроллера один который считает, другой который только выводит получив команды по RS232, причем аппаратный RS232. Или просто готовый дисплей взять с графическим контроллером(видеокартой)


Эта одна из первых мыслей котороя пришла мне в голову + не надо экономить на коде, но педидущие попытки перепрошить бит фьюзы для внешнего тактирования убили два контроллера. чё то я очкууую продолжать.

leshak
Offline
Зарегистрирован: 29.09.2011

Как вам уже говорили, дело не в кривости рук, а в нежелании разбиратся с основами. Хотите сразу "по буденовски". "Вижу цель и иду к ней". В бизнесе - это, возможно, и правильный подход, дающий успех. А тут - таки нужно разбиратся и знакомится с основами.

Если "не вижу меню в коммандной строке", то нужно не "дайте мне пошагово-магически рецепт", а искать самоучители по основам компьютерной грамотности и разбиратся "что такое командная строка". Общий принцип простой - видишь что-то не понятное - разбираешься с ним. Тогда фьюзы не убивают контроллеры. Или, по крайней мере если "убил", то нужно отложить все и разобратся до конца и основательно "почему убил", тогда не будет "очкую".

Все таки предполагается что если человек решил занятся "програмированием микроконтроллеров", то компьютерная грамотность у него все-таки чуть-чуть выше чем у среднего пользователя iphone и есть какие-то базовые понятия. 

Но тут мы упираемся в другую вашу методологическую ошибку - нежелание прислушиватся к чужим мнениям. Своя голова на плечах - это всегда хорошо, но и шишки все - приходится самому собирать. Если к "ты туда не ходи" игнорировать, то плита на голову таки может упасть.

А то что "танцуем от железа" - так таки да. На то это и микроконтроллеры. Низкий уровень. Любая кочка на дороге - ощущается задницей. Всякие "10-ть уровней абстракций", которые скрывают реальное железо и позволяют писать чистую бизнес логику - это удел PC-шек (более мощьного железа).

 

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

hugoboss317 пишет:

Я предпологал что на меня накинутся и выражение "кривые руки" будет применяться чаще.

Что касается по теме, тут у меня дествительно проблемы из-за "ровнолинейности" рук, но я вроде чётко спросил - "открываем командную строку, что дальше?".

Ну как что дальше, заходим, находим переходим, что ещё не ясно!? Что то я не могу найти в командной строке меню/файл/открыть файл )))))))) мне нужно было нарисовать шрифт цифр эмитирующий сигментный индикатор. вот почему в утилитах  и др. погах для glcd это делается щелчком пальца!? Вот я и говорю что создатель бибы и утилит под неё один и тот же "задумчивый" парень как сама биба.

.

мне кажется что у вас проблеммы не с руками а с нежеланием разобраться в проблемме. Знание командной строки является очередным этапом освоения компьютера и самое интересное что понимание основ работы в командной строке достигаеся после двух-трех часов чтения литературы и практической работы. 

Ум у вас пытливый, если не остановитесь - далеко пойдете. А посему дерзайте (сказано без сарказма).

Клапауций
Offline
Зарегистрирован: 10.02.2013

hugoboss317 пишет:
"открываем командную строку, что дальше?". Ну как что дальше, заходим, находим переходим, что ещё не ясно!? Что то я не могу найти в командной строке меню/файл/открыть файл ))))))))

hugoboss317, да ладно - тупо представь, что ты вчера купил себе компьютер:

Ага, да - "Справка и поддержка" - в поиск вбиваем "cmd" и читаем или, если скучно, то в окне командной строки набери "help".

...или о чём ты вообще спросил, какое такое "меню, файл" - нет никакого меню, файлы есть, меню нет.

Я так понял - у тебя проблема с запуском программы из командной строки?

Так запусти командную строку и перейди в каталог, где твоя консольная прога валяется.

Пример:

cd /d d:/tmp

, где d:/tmp - каталог tmp на диске d: , где твоя софтина лежит

далее просто вбиваешь команду твоей софтине типа "soft.exe(можно без .exe)  - команды, аргументы"

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

Я предпологал что на меня накинутся и выражение "кривые руки" будет применяться чаще.

По-моему здесь все пытаются Вам помочь. 

Еще раз повторю - если Вы не работали с командной строкой - скачайте какой-нибудь файловый менеджер (я лично пользуюсь FARом). Там вы будете видеть все файлы, каталоги и диски. И перемещаться по ним с помощью стрелок, таба и энтера. И командная строка там есть, чтобы когда доберетесь по в нужный каталог - запустить заветную утилитку.

 

 

titovich
Offline
Зарегистрирован: 29.05.2013

bigmaxxx пишет:

 Изначально я предлагал создать свой собственный шрит с совпадением русских букв с русской раскладкой на клавиатуре. 

Bigmaxxx, а что вы имеете в виду под несовпадением русских букв с русской раскладкой на клавиатуре? Тот шрифтик, что я запостил на первой странице - что пишете в ардуино на русском - то и выводится на экран.

Т.е. пишете в Ардуино u8g.drawStr(1,1,"Привет "); на экране получаете Привет

bigmaxxx
Offline
Зарегистрирован: 26.02.2013

К сожалению Ваш шрифт я не пробовал. Если вы сделали именно так как написали то это очень хорошо, не надо париться при выводе русских букв.

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Спасибо всем за помощь. Немножко победил, маленькая победа это тоже победа, к тому же РУССКИЕ не здаются, не так ли!?

Вот только тут не пойму что не так делаю, по конфигурашкам полазил, размер задал, номера первых и последних задал, а оно вон как......

и код какой-то непонятный. 255...............255

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

Спасибо всем за помощь. Немножко победил, маленькая победа это тоже победа, к тому же РУССКИЕ не здаются, не так ли!?

Вот только тут не пойму что не так делаю, по конфигурашкам полазил, размер задал, номера первых и последних задал, а оно вон как......

и код какой-то непонятный. 255...............255

Hugo, покажите исходник с которого конвертируете.

hugoboss317
Offline
Зарегистрирован: 21.03.2013

BDF ? Каким образом показать?

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

BDF ? Каким образом показать?

Здесь опубликуйте (если это не секретный файл)

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Да как я его опубликую ? он не чем не открывается, только конвертируется

А если копировать файл .fnt, какие то краказюки вставляются

ю(Cr

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Хорошо, нет, так нет.

Тогда может скажете почему шрифт, ну скажем "fab 30 n" размером 1205 В занимеет место больше 7000 В ?

hugoboss317
Offline
Зарегистрирован: 21.03.2013







STARTFONT 2.1
COMMENT Exported by Fony v1.4.0
FONT digits32
SIZE 32 128 64
FONTBOUNDINGBOX 19 31 0 0
STARTPROPERTIES 6
COPYRIGHT "H`ugo"
RESOLUTION_X 128
RESOLUTION_Y 64
FONT_ASCENT 32
FONT_DESCENT 0
DEFAULT_CHAR 0
ENDPROPERTIES
CHARS 16
STARTCHAR 043
ENCODING 43
SWIDTH 1224 0
DWIDTH 17 0
BBX 16 15 0 8
BITMAP
0180
03C0
03C0
03C0
03C0
3FFC
7FFE
FFFF
7FFE
3FFC
03C0
03C0
03C0
03C0
0180
ENDCHAR
STARTCHAR 044
ENCODING 44
SWIDTH 432 0
DWIDTH 6 0
BBX 5 8 0 0
BITMAP
70
F8
F8
F8
70
30
60
80
ENDCHAR
STARTCHAR 045
ENCODING 45
SWIDTH 1224 0
DWIDTH 17 0
BBX 16 5 0 13
BITMAP
3FFC
7FFE
FFFF
7FFE
3FFC
ENDCHAR
STARTCHAR 046
ENCODING 46
SWIDTH 432 0
DWIDTH 6 0
BBX 5 5 0 0
BITMAP
70
F8
F8
F8
70
ENDCHAR
STARTCHAR 047
ENCODING 47
SWIDTH 1152 0
DWIDTH 16 0
BBX 15 32 0 0
BITMAP
000E
000E
001C
001C
0038
0038
0038
0070
0070
0070
00E0
00E0
01C0
01C0
01C0
0380
0380
0700
0700
0700
0E00
0E00
1C00
1C00
1C00
3800
3800
3800
7000
7000
E000
E000
ENDCHAR
STARTCHAR 048
ENCODING 48
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
C000C0
800040
000000
800040
C000C0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 049
ENCODING 49
SWIDTH 360 0
DWIDTH 5 0
BBX 4 30 0 1
BITMAP
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
00
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
ENDCHAR
STARTCHAR 050
ENCODING 50
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
3FFF40
1FFEC0
0FFDC0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
1FFEC0
3FFF40
7FFF80
BFFF00
DFFE00
E00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
EFFC00
DFFE00
BFFF00
7FFF80
ENDCHAR
STARTCHAR 051
ENCODING 51
SWIDTH 1296 0
DWIDTH 18 0
BBX 17 32 0 0
BITMAP
FFFF00
7FFE80
3FFD80
1FFB80
000780
000780
000780
000780
000780
000780
000780
000780
000780
000380
3FFD80
7FFE80
FFFF00
7FFE80
3FFD80
000380
000780
000780
000780
000780
000780
000780
000780
000780
1FFB80
3FFD80
7FFE80
FFFF00
ENDCHAR
STARTCHAR 052
ENCODING 52
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 30 0 1
BITMAP
800040
C000C0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
0000C0
000040
ENDCHAR
STARTCHAR 053
ENCODING 53
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF00
DFFE00
EFFC00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFE00
BFFF00
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0FFDC0
1FFEC0
3FFF40
7FFF80
ENDCHAR
STARTCHAR 054
ENCODING 54
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF00
DFFE00
EFFC00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFE00
BFFF00
7FFF80
BFFF40
DFFEC0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 055
ENCODING 55
SWIDTH 1296 0
DWIDTH 18 0
BBX 17 31 0 1
BITMAP
FFFF00
7FFE80
3FFD80
1FFB80
000780
000780
000780
000780
000780
000780
000780
000780
000780
000380
000180
000080
000000
000080
000180
000380
000780
000780
000780
000780
000780
000780
000780
000780
000380
000180
000080
ENDCHAR
STARTCHAR 056
ENCODING 56
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
BFFF40
DFFEC0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 057
ENCODING 57
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0FFDC0
1FFEC0
3FFF40
7FFF80
ENDCHAR
STARTCHAR 058
ENCODING 58
SWIDTH 432 0
DWIDTH 6 0
BBX 5 22 0 5
BITMAP
70
F8
F8
F8
70
00
00
00
00
00
00
00
00
00
00
00
00
70
F8
F8
F8
70
ENDCHAR
ENDFONT

Это .bdf и на сколько я вижу с ним всё впорядке

А вот .h  и всегда получается только это









/*
  Fontname: 
  Copyright: 
  Capital A Height: 0, '1' Height: 0
  Calculated Max Values w= 0 h= 0 x= 0 y= 0 dx= 0 dy= 0 ascent= 0 len= 0
  Font Bounding box     w= 0 h= 0 x= 0 y= 0
  Calculated Min Values           x= 0 y= 0 dx= 0 dy= 0
  Pure Font   ascent = 0 descent= 0
  X Font      ascent = 0 descent= 0
  Max Font    ascent = 0 descent= 0
*/
#include "u8g.h"
const u8g_fntpgm_uint8_t digits32[241] U8G_SECTION(".progmem.digits32") = {
  0,0,0,0,0,0,0,50,0,82,32,255,0,0,0,0,
  0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255};

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Так не вовремя вы парни байкот объявили ((((

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

не знаю насчет русских буков, но приличную часть форума вы точно уже ВЫВЕЛИ...

прочитал обе страницы и плакалЪ

Все плохие.. а автор библиотеки вообще редиска..

Особенно повеселило игнорирование CMD.... с ужасом жду компилятора который позволит програмы в виде иконок рисовать... раставил иконки мышкой в ряд и компилиш.. 

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

Извиняюсь за оффтоп, но не смог пройти мимо

Клапауций
Offline
Зарегистрирован: 10.02.2013

Я вообще потерял нить/суть проблемы - походу, сам с собой разговариваешь.

Чего нужно то сделать?

Подозреваю, что нужно взять некую утилиту, которая работает из командной строки и что-то ею сделать с неким шрифтом - ну, и где всё?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

а мне кажется вот тут хорошо все описано...

http://nnm.me/blogs/pencraft/arduino-i-graficheskiy-displey-128x64-s-kontrollerom-st7920/

русский шрифт к нему вроде никто так и не нарисовал еще... у вас есть вариант отличиться.. но рисование шрифтов очень нудное занятие....

hugoboss317
Offline
Зарегистрирован: 21.03.2013

С железом я во первых действительно ложанулся, во первых я не нашёл 0108 в нужном цвете и ложно предположил если  GLCD немного дал ладу, то и U8G разгребусь. Но что не говорите, а u8g замудрённая и все эти её особенности, только усложняют работу с ним да и к тому же код занимает много места в результате этих ретуальных танцев вокруг u8g. Понемногу, изворачиваясь ЖКИ всё ж пытается вывести то, что я там хочу видеть, но до желаемого так далеко, что он просто портит мне весь проэкт. 

По поводу русского шрифта.... да не вопрос, только у меня что то ещё (кроме рук) кривое в ноуте. Выше меня просили исходник шрифта .bdf,  который я набросал в fony, при конвертировании его с помощью bdf2u8g , получается бредовый .h, Такой же исходник в .bdf с русским шрифтом любого размера я могу выкинуть с лёгкостью, а преобразовать в шрифт .h для u8g  не получается. Вот если кому не трудно, сконвертируйте из .bdf в .h для u8g , получится или нет.

продублирую исходник



STARTFONT 2.1
COMMENT Exported by Fony v1.4.0
FONT digits32
SIZE 32 128 64
FONTBOUNDINGBOX 19 31 0 0
STARTPROPERTIES 6
COPYRIGHT "H`ugo"
RESOLUTION_X 128
RESOLUTION_Y 64
FONT_ASCENT 32
FONT_DESCENT 0
DEFAULT_CHAR 0
ENDPROPERTIES
CHARS 16
STARTCHAR 043
ENCODING 43
SWIDTH 1224 0
DWIDTH 17 0
BBX 16 15 0 8
BITMAP
0180
03C0
03C0
03C0
03C0
3FFC
7FFE
FFFF
7FFE
3FFC
03C0
03C0
03C0
03C0
0180
ENDCHAR
STARTCHAR 044
ENCODING 44
SWIDTH 432 0
DWIDTH 6 0
BBX 5 8 0 0
BITMAP
70
F8
F8
F8
70
30
60
80
ENDCHAR
STARTCHAR 045
ENCODING 45
SWIDTH 1224 0
DWIDTH 17 0
BBX 16 5 0 13
BITMAP
3FFC
7FFE
FFFF
7FFE
3FFC
ENDCHAR
STARTCHAR 046
ENCODING 46
SWIDTH 432 0
DWIDTH 6 0
BBX 5 5 0 0
BITMAP
70
F8
F8
F8
70
ENDCHAR
STARTCHAR 047
ENCODING 47
SWIDTH 1152 0
DWIDTH 16 0
BBX 15 32 0 0
BITMAP
000E
000E
001C
001C
0038
0038
0038
0070
0070
0070
00E0
00E0
01C0
01C0
01C0
0380
0380
0700
0700
0700
0E00
0E00
1C00
1C00
1C00
3800
3800
3800
7000
7000
E000
E000
ENDCHAR
STARTCHAR 048
ENCODING 48
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
C000C0
800040
000000
800040
C000C0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 049
ENCODING 49
SWIDTH 360 0
DWIDTH 5 0
BBX 4 30 0 1
BITMAP
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
00
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
ENDCHAR
STARTCHAR 050
ENCODING 50
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
3FFF40
1FFEC0
0FFDC0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
1FFEC0
3FFF40
7FFF80
BFFF00
DFFE00
E00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
EFFC00
DFFE00
BFFF00
7FFF80
ENDCHAR
STARTCHAR 051
ENCODING 51
SWIDTH 1296 0
DWIDTH 18 0
BBX 17 32 0 0
BITMAP
FFFF00
7FFE80
3FFD80
1FFB80
000780
000780
000780
000780
000780
000780
000780
000780
000780
000380
3FFD80
7FFE80
FFFF00
7FFE80
3FFD80
000380
000780
000780
000780
000780
000780
000780
000780
000780
1FFB80
3FFD80
7FFE80
FFFF00
ENDCHAR
STARTCHAR 052
ENCODING 52
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 30 0 1
BITMAP
800040
C000C0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
0000C0
000040
ENDCHAR
STARTCHAR 053
ENCODING 53
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF00
DFFE00
EFFC00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFE00
BFFF00
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0FFDC0
1FFEC0
3FFF40
7FFF80
ENDCHAR
STARTCHAR 054
ENCODING 54
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF00
DFFE00
EFFC00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFE00
BFFF00
7FFF80
BFFF40
DFFEC0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 055
ENCODING 55
SWIDTH 1296 0
DWIDTH 18 0
BBX 17 31 0 1
BITMAP
FFFF00
7FFE80
3FFD80
1FFB80
000780
000780
000780
000780
000780
000780
000780
000780
000780
000380
000180
000080
000000
000080
000180
000380
000780
000780
000780
000780
000780
000780
000780
000780
000380
000180
000080
ENDCHAR
STARTCHAR 056
ENCODING 56
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
BFFF40
DFFEC0
E001C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
EFFDC0
DFFEC0
BFFF40
7FFF80
ENDCHAR
STARTCHAR 057
ENCODING 57
SWIDTH 1368 0
DWIDTH 19 0
BBX 18 32 0 0
BITMAP
7FFF80
BFFF40
DFFEC0
EFFDC0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
F003C0
E001C0
DFFEC0
BFFF40
7FFF80
3FFF40
1FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0FFDC0
1FFEC0
3FFF40
7FFF80
ENDCHAR
STARTCHAR 058
ENCODING 58
SWIDTH 432 0
DWIDTH 6 0
BBX 5 22 0 5
BITMAP
70
F8
F8
F8
70
00
00
00
00
00
00
00
00
00
00
00
00
70
F8
F8
F8
70
ENDCHAR
ENDFONT

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Клапауций пишет:

Я вообще потерял нить/суть проблемы - походу, сам с собой разговариваешь.

Действительно иногда мне кажется, что я разговариваю сам с собой. Жаль что в этом форуме нельзя оставлять подпись, былоб здорово, чтоб все опытные "програмисты" восьмибиток в подписи писали что то типо " я крут и мне нет равных" ну или врроде того, а ответы на просьбы о помощи давали в чистой форме без подтекстов, указывающий на их блеснящий интелект. Приходит нуб на форум, говорит - у меня есть лампочка, что с ней сделать чтоб она светилась, на ней написано 220 вольт / 100 ватт. а ему отвечают - инстални лампу на место, там всё просто, разберёшься, щёлкни то, что обычно щёлкают и вуаля. Подтекст этого как раз подразумевает что для него это как два пальца и спец великий рас ужд так легко терминами оперирует.

Если считаете что я утрирую, то верте на слово, именно такие ответы я слышу и именно так ( не часто конечно, но бывает), а вдуг попробую спросить "как её инсталнуть, я этого не делал никогда?" , так это просто руки наверное кривые.  и ещё удивляемся, ну что тут непонятного, всёж и так ясно. КОМУ И ТАК ЯСНО?????????!!!!!! Еслиб мне было ясно, я бы не спрашивал. 

Мне рас 10 подряд пришлось спросить что надо писать в командной строке... Какждый хоть разок заставлял собачку "служить", это когда берёшь косточку, и поднимаешь на высоту чтоб она могла слегка касаться её носом, но не даставать чтоб скушать. На это поразительно интересно смотреть. Вот так мне обьясняли что надо делать в командной строке, крутив, изворачивая ответ так, чтоб я нюхал, издивался над командной строкой,  пока наконец не сжалились и не написали пример. Сразу просто нельзя было.

А ты говоришь сам с собой...Да у меня всой мир, в котором сплошные загадки в которых кроется правельный ответ. 

Обидеть никого не хочу. Это всего лишь просьба давать ответы в более простой форме, чтоб их смогли понимать и гости форума.

 

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

hugoboss317 пишет:

Обидеть никого не хочу. Это всего лишь просьба давать ответы в более простой форме, чтоб их смогли понимать и гости форума.

Гыыы.... в самой простой форме расказываю... Береш палку подлиней и ей пытаешся сбивать бананы ну и дальше по нарастающей эволюция поможет. :)

А если серьезно... то тут как бы форум для обсуждения проблем и обмена опытом... а не кружок научи ребенка паяльником тыкать в детали...

Если нужен учитель то вон там ниже есть раздел Ищю Исполнителя.... когда я обратился к одному товарищу с просьбой посмотреть платку которую я развел, узнав что это моя первая плата, было сказано ОБУЧЕНИЕ 30 БАКСОВ В ЧАС! Индивидуальные занятия аднака! :)  А даром вон качаем книжки и занимаемся самообразованием, чем я и занимаюсь и вам рекомендую...

 

titovich
Offline
Зарегистрирован: 29.05.2013

Puhlyaviy пишет:

а мне кажется вот тут хорошо все описано...

http://nnm.me/blogs/pencraft/arduino-i-graficheskiy-displey-128x64-s-kontrollerom-st7920/

русский шрифт к нему вроде никто так и не нарисовал еще... у вас есть вариант отличиться.. но рисование шрифтов очень нудное занятие....

Я на первой странице выкладывал русский шрифт.

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

Клапауций пишет:

Я вообще потерял нить/суть проблемы - походу, сам с собой разговариваешь.

Приходит нуб на форум, говорит - у меня есть лампочка, что с ней сделать чтоб она светилась, на ней написано 220 вольт / 100 ватт. а ему отвечают - инстални лампу на место, там всё просто, разберёшься, щёлкни то, что обычно щёлкают и вуаля. Подтекст этого как раз подразумевает что для него это как два пальца и спец великий рас ужд так легко терминами оперирует.

Если считаете что я утрирую, то верте на слово, именно такие ответы я слышу и именно так ( не часто конечно, но бывает), а вдуг попробую спросить "как её инсталнуть, я этого не делал никогда?" , так это просто руки наверное кривые.  и ещё удивляемся, ну что тут непонятного, всёж и так ясно. КОМУ И ТАК ЯСНО?????????!!!!!! Еслиб мне было ясно, я бы не спрашивал. 

Hugo, перечитайте тему форума. Она называется "как вывести русские буквы на LCD ST7920?", а не "Основы компьютерной грамотности, азы электроники и как вывести русские буквы на LCD ST7920?". Здесь обсуждается вполне конкретная тема, а если у вас есть пробелы в знаниях по какому-то из сопутствующих вопросов, необходимых для решния главной задачи - стоит воспользоваться поиском и почитать соответствующие форумы. Поверьте, этот способ намного более быстрый и эффективный, чем ожидание от участников данной темы подробного алгоритма действий для решения вашей проблемы. Да и манера в которой вы задаете свои вопросы, типа вам все должны, мягко говоря некорректна.

Клапауций
Offline
Зарегистрирован: 10.02.2013

hugoboss317 пишет:
Мне рас 10 подряд пришлось спросить что надо писать в командной строке...

Да, ладно - можно что угодно спрашивать, но вопросы о том, как запустить командную строку просто смешны, т.к. требуют не ответа, а желания получить ответ.

Второе - так и не понял, чем таким уникальным ты там занят, на что нет готовых ответов в инете?

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

может откроем виртуальное ПТУ? Будем учить народ с азов... за какие нибуть символические деньги... :)

titovich
Offline
Зарегистрирован: 29.05.2013

В общем Hugo, надеюсь вам поможет следующая информация и дальнейшие вопросы отпадут сами собой.

Чтобы сконвертировался указанный вами BDF-ник необходимо запускать конвертацию следующим образом:

bdf2u8g.exe digits32.bdf digits32 digits32.h -b 043 -e 058

-b и -e - ключи, которые задют диапазон символов для конвертации (пример для приведенного вами digits32.bdf)

Если не получится - вот сконвертированный файл для библиотеки u8g готовый к использованию:

/*
  Fontname: digits32
  Copyright: H`ugo
  Capital A Height: 0, '1' Height: 30
  Calculated Max Values w=18 h=32 x= 0 y=13 dx=19 dy= 0 ascent=32 len=96
  Font Bounding box     w=19 h=31 x= 0 y= 0
  Calculated Min Values           x= 0 y= 0 dx= 0 dy= 0
  Pure Font   ascent =30 descent= 0
  X Font      ascent =30 descent= 0
  Max Font    ascent =32 descent= 0
*/

const u8g_fntpgm_uint8_t digits32[1345] U8G_SECTION(".progmem.digits32") = {
  0,19,31,0,0,30,4,130,4,162,32,255,0,32,0,30,
  0,255,255,255,255,255,255,255,255,255,255,255,16,15,30,17,
  0,8,1,128,3,192,3,192,3,192,3,192,63,252,127,254,
  255,255,127,254,63,252,3,192,3,192,3,192,3,192,1,128,
  5,8,8,6,0,0,112,248,248,248,112,48,96,128,16,5,
  10,17,0,13,63,252,127,254,255,255,127,254,63,252,5,5,
  5,6,0,0,112,248,248,248,112,15,32,64,16,0,0,0,
  14,0,14,0,28,0,28,0,56,0,56,0,56,0,112,0,
  112,0,112,0,224,0,224,1,192,1,192,1,192,3,128,3,
  128,7,0,7,0,7,0,14,0,14,0,28,0,28,0,28,
  0,56,0,56,0,56,0,112,0,112,0,224,0,224,0,18,
  32,96,19,0,0,127,255,128,191,255,64,223,254,192,239,253,
  192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,
  240,3,192,240,3,192,240,3,192,240,3,192,224,1,192,192,
  0,192,128,0,64,0,0,0,128,0,64,192,0,192,224,1,
  192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,
  240,3,192,240,3,192,240,3,192,239,253,192,223,254,192,191,
  255,64,127,255,128,4,30,30,5,0,1,16,48,112,240,240,
  240,240,240,240,240,240,240,112,48,16,0,16,48,112,240,240,
  240,240,240,240,240,240,112,48,16,18,32,96,19,0,0,127,
  255,128,63,255,64,31,254,192,15,253,192,0,3,192,0,3,
  192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,
  0,3,192,0,3,192,0,1,192,31,254,192,63,255,64,127,
  255,128,191,255,0,223,254,0,224,0,0,240,0,0,240,0,
  0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,
  240,0,0,239,252,0,223,254,0,191,255,0,127,255,128,17,
  32,96,18,0,0,255,255,0,127,254,128,63,253,128,31,251,
  128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,
  0,7,128,0,7,128,0,7,128,0,7,128,0,3,128,63,
  253,128,127,254,128,255,255,0,127,254,128,63,253,128,0,3,
  128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,
  0,7,128,0,7,128,0,7,128,31,251,128,63,253,128,127,
  254,128,255,255,0,18,30,90,19,0,1,128,0,64,192,0,
  192,224,1,192,240,3,192,240,3,192,240,3,192,240,3,192,
  240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,224,
  1,192,223,254,192,191,255,64,127,255,128,63,255,64,31,254,
  192,0,1,192,0,3,192,0,3,192,0,3,192,0,3,192,
  0,3,192,0,3,192,0,3,192,0,3,192,0,1,192,0,
  0,192,0,0,64,18,32,96,19,0,0,127,255,128,191,255,
  0,223,254,0,239,252,0,240,0,0,240,0,0,240,0,0,
  240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,
  0,0,224,0,0,223,254,0,191,255,0,127,255,128,63,255,
  64,31,254,192,0,1,192,0,3,192,0,3,192,0,3,192,
  0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,15,
  253,192,31,254,192,63,255,64,127,255,128,18,32,96,19,0,
  0,127,255,128,191,255,0,223,254,0,239,252,0,240,0,0,
  240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,
  0,0,240,0,0,240,0,0,224,0,0,223,254,0,191,255,
  0,127,255,128,191,255,64,223,254,192,224,1,192,240,3,192,
  240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,
  3,192,240,3,192,239,253,192,223,254,192,191,255,64,127,255,
  128,17,31,93,18,0,1,255,255,0,127,254,128,63,253,128,
  31,251,128,0,7,128,0,7,128,0,7,128,0,7,128,0,
  7,128,0,7,128,0,7,128,0,7,128,0,7,128,0,3,
  128,0,1,128,0,0,128,0,0,0,0,0,128,0,1,128,
  0,3,128,0,7,128,0,7,128,0,7,128,0,7,128,0,
  7,128,0,7,128,0,7,128,0,7,128,0,3,128,0,1,
  128,0,0,128,18,32,96,19,0,0,127,255,128,191,255,64,
  223,254,192,239,253,192,240,3,192,240,3,192,240,3,192,240,
  3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,
  192,224,1,192,223,254,192,191,255,64,127,255,128,191,255,64,
  223,254,192,224,1,192,240,3,192,240,3,192,240,3,192,240,
  3,192,240,3,192,240,3,192,240,3,192,240,3,192,239,253,
  192,223,254,192,191,255,64,127,255,128,18,32,96,19,0,0,
  127,255,128,191,255,64,223,254,192,239,253,192,240,3,192,240,
  3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,
  192,240,3,192,240,3,192,224,1,192,223,254,192,191,255,64,
  127,255,128,63,255,64,31,254,192,0,1,192,0,3,192,0,
  3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,
  192,0,3,192,15,253,192,31,254,192,63,255,64,127,255,128,
  5,22,22,6,0,5,112,248,248,248,112,0,0,0,0,0,
  0,0,0,0,0,0,0,112,248,248,248,112,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255};

Могу только сказать, что нулевая позиция по Y - 32. Времени разбираться с исходным BDF нет, да и как по мне не проблема это вовсе. Т.е. для вывода текса в верхнем левом углу - необходимо задавать позицию 0,32.

Шрифт я протестил, так что он 100% рабочий:

Нижняя строчка немного обрезана из-за того, что размер шрифта по высоте - 32 пикселя,  т.е. если вывести полностю две строчки - то они сольются посередине (индикатор 128x64).

Как закончите - похвастайтесь прокетом )))

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Да, это вот то, что надо. Одной строчки мне хватит. Проэктом??... похвастаюсь. Спасибо за .h

буду пробовать

 

поменял fab 30 на свой, скетч уменьшился от 41 000 байт до 25 600, уже легче.

 

Клапауций
Offline
Зарегистрирован: 10.02.2013

Puhlyaviy пишет:
может откроем виртуальное ПТУ? Будем учить народ с азов... за какие нибуть символические деньги... :)

ПТУ всегда были бесплатными, а для особо упорствующих в нежелании учиться и принудительными.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Клапауций пишет:

Puhlyaviy пишет:
может откроем виртуальное ПТУ? Будем учить народ с азов... за какие нибуть символические деньги... :)

ПТУ всегда были бесплатными, а для особо упорствующих в нежелании учиться и принудительными.

У нас будет первое платное ПТУ. :)

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Клапауций пишет:

Да, ладно - можно что угодно спрашивать, но вопросы о том, как запустить командную строку просто смешны, т.к. требуют не ответа, а желания получить ответ.

Второе - так и не понял, чем таким уникальным ты там занят, на что нет готовых ответов в инете?

Давай будем поточнее, я спрашивал не о том как запустить саму командную строку, я понимаю что далеко не гений но не совсем же долбаёб. (прошу прощения но как то обидно немного). Я никого не просил писать за меня нужный мне шрифт, а лишь разъяснить нюансы его создания.

второе - ничего уникального, просто решение индивидуальное, коль уж сам пишу код, то и ЖКИ должен показывать что я хочу. Как уже говорил, потихоньку подхожу к этому. 

Да, вот, забыл сказать, вычеркнул ещё один минус u8g, изображения, точнее их НЕХ можно не писать в коде, как сказано в описании бибы, а включать в виде файла из соответствующей директории  как и в GLCD. ( я прсто выражал свои недовольства по этому поводу тоже)

hugoboss317
Offline
Зарегистрирован: 21.03.2013

О....о... Мастера производственного обучения нарисовалиь. Значит как я слегка отклонился от темы, так пям позор форума, чуть ли не доску позора повешали, хулиган и дебошир. А как ПТУ тут открывают прям в топике..... Ну конечно ...генералы, я всё понимаю, куда там мне.

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

hugoboss317 пишет:

О....о... Мастера производственного обучения нарисовалиь. Значит как я слегка отклонился от темы, так пям позор форума, чуть ли не доску позора повешали, хулиган и дебошир. А как ПТУ тут открывают прям в топике..... Ну конечно ...генералы, я всё понимаю, куда там мне.

да как то от ваших стенаний, из серии "А ВСЕ КОЗЛЫ, НИКТО МНЕ НЕ РАСЖОВЫВАЕТ ЕДУ, КОРМЯТ СЫРОЙ КАРТОШКОЙ И ЗАСТАВЛЯЮТ ИСПОЛЬЗОВАТЬ МОЗГ ПО НАЗНАЧЕНИЮ", становится совершенно понятно, что если бы в гуглях был форум, то вы и там бы их всех обвинили, что они вам в результатах поиска выдают не идеальные решения в ответ на ваши туманные вопросы...

Хотя может вас там уже забанили по этому поводу... Кстати если вы не заметили, то тут как бы ограниченое количество народу и у всех свои проекты какие то.. И стенаете по поводу что весь форум не бросается вам помогать только вы!

hugoboss317
Offline
Зарегистрирован: 21.03.2013

titovich пишет:

Если не получится -

у вас в командной строке то же так ? хотел поменять расстояние, не получается.

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

titovich пишет:

Если не получится -

у вас в командной строке то же так ? хотел поменять расстояние, не получается.

 

Нет, при успешном конверте выдается следующее:

encoding range 32..255
bbx 16 15 0 8 encoding 43
bbx 5 8 0 0 encoding 44
bbx 16 5 0 13 encoding 45
bbx 5 5 0 0 encoding 46
bbx 15 32 0 0 encoding 47
bbx 18 32 0 0 encoding 48
bbx 4 30 0 1 encoding 49
bbx 18 32 0 0 encoding 50
bbx 17 32 0 0 encoding 51
bbx 18 30 0 1 encoding 52
bbx 18 32 0 0 encoding 53
bbx 18 32 0 0 encoding 54
bbx 17 31 0 1 encoding 55
bbx 18 32 0 0 encoding 56
bbx 18 32 0 0 encoding 57
bbx 5 22 0 5 encoding 58
input file 'digits32.bdf'
u8g font name 'digits32'
output file 'digits32.h'
 

P.S. Давйате BDF-ку, посмотрю.

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

titovich пишет:
P.S. Давйате BDF-ку, посмотрю.





STARTFONT 2.1
COMMENT Exported by Fony v1.3.6
FONT digits32
SIZE 32 128 64
FONTBOUNDINGBOX 22 31 0 0
STARTPROPERTIES 6
COPYRIGHT "H`ugo"
RESOLUTION_X 128
RESOLUTION_Y 64
FONT_ASCENT 32
FONT_DESCENT 0
DEFAULT_CHAR 45
ENDPROPERTIES
CHARS 16
STARTCHAR 043
ENCODING 43
SWIDTH 1584 0
DWIDTH 22 0
BBX 16 15 0 8
BITMAP
0180
03C0
03C0
03C0
03C0
3FFC
7FFE
FFFF
7FFE
3FFC
03C0
03C0
03C0
03C0
0180
ENDCHAR
STARTCHAR 044
ENCODING 44
SWIDTH 1584 0
DWIDTH 22 0
BBX 5 8 0 0
BITMAP
70
F8
F8
F8
70
30
60
80
ENDCHAR
STARTCHAR 045
ENCODING 45
SWIDTH 1584 0
DWIDTH 22 0
BBX 16 5 0 13
BITMAP
3FFC
7FFE
FFFF
7FFE
3FFC
ENDCHAR
STARTCHAR 046
ENCODING 46
SWIDTH 1584 0
DWIDTH 22 0
BBX 5 5 0 0
BITMAP
70
F8
F8
F8
70
ENDCHAR
STARTCHAR 047
ENCODING 47
SWIDTH 1584 0
DWIDTH 22 0
BBX 15 32 0 0
BITMAP
000E
000E
001C
001C
0038
0038
0038
0070
0070
0070
00E0
00E0
01C0
01C0
01C0
0380
0380
0700
0700
0700
0E00
0E00
1C00
1C00
1C00
3800
3800
3800
7000
7000
E000
E000
ENDCHAR
STARTCHAR 048
ENCODING 48
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
BFFFA0
DFFF60
EFFEE0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
E000E0
C00060
800020
000000
800020
C00060
E000E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
EFFEE0
DFFF60
BFFFA0
7FFFC0
ENDCHAR
STARTCHAR 049
ENCODING 49
SWIDTH 1584 0
DWIDTH 22 0
BBX 4 30 16 1
BITMAP
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
00
10
30
70
F0
F0
F0
F0
F0
F0
F0
F0
70
30
10
ENDCHAR
STARTCHAR 050
ENCODING 50
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
3FFFA0
1FFF60
0FFEE0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0000E0
1FFF60
3FFFA0
7FFFC0
BFFF80
DFFF00
E00000
F00000
F00000
F00000
F00000
F00000
F00100
F00000
F00000
EFFE00
DFFF00
BFFF80
7FFFC0
ENDCHAR
STARTCHAR 051
ENCODING 51
SWIDTH 1584 0
DWIDTH 22 0
BBX 18 32 0 0
BITMAP
FFFF80
7FFF40
3FFEC0
1FFDC0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
3FFEC0
7FFF40
FFFF80
7FFF40
3FFEC0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
1FFDC0
3FFEC0
7FFF40
FFFF80
ENDCHAR
STARTCHAR 052
ENCODING 52
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 30 0 1
BITMAP
800020
C00060
E000E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
E000E0
DFFF60
BFFFA0
7FFFC0
3FFFA0
1FFF60
0000E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0000E0
000060
000020
ENDCHAR
STARTCHAR 053
ENCODING 53
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
BFFF80
DFFF00
EFFE00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFF00
BFFF80
7FFFC0
3FFFA0
1FFF60
0000E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0FFEE0
1FFF60
3FFFA0
7FFFC0
ENDCHAR
STARTCHAR 054
ENCODING 54
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
BFFF80
DFFF00
EFFE00
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
F00000
E00000
DFFF00
BFFF80
7FFFC0
BFFFA0
DFFF60
E000E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
EFFEE0
DFFF60
BFFFA0
7FFFC0
ENDCHAR
STARTCHAR 055
ENCODING 55
SWIDTH 1584 0
DWIDTH 22 0
BBX 18 31 0 1
BITMAP
FFFF80
7FFF40
3FFEC0
1FFDC0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
0000C0
000040
000000
000040
0000C0
0001C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0003C0
0001C0
0000C0
000040
ENDCHAR
STARTCHAR 056
ENCODING 56
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
BFFFA0
DFFF60
EFFEE0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
E000E0
DFFF60
BFFFA0
7FFFC0
BFFFA0
DFFF60
E000E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
EFFEE0
DFFF60
BFFFA0
7FFFC0
ENDCHAR
STARTCHAR 057
ENCODING 57
SWIDTH 1584 0
DWIDTH 22 0
BBX 19 32 0 0
BITMAP
7FFFC0
BFFFA0
DFFF60
EFFEE0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
F001E0
E000E0
DFFF60
BFFFA0
7FFFC0
3FFFA0
1FFF60
0000E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0001E0
0FFEE0
1FFF60
3FFFA0
7FFFC0
ENDCHAR
STARTCHAR 058
ENCODING 58
SWIDTH 1584 0
DWIDTH 22 0
BBX 5 22 0 5
BITMAP
70
F8
F8
F8
70
00
00
00
00
00
00
00
00
00
00
00
00
70
F8
F8
F8
70
ENDCHAR
ENDFONT

 

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

[Cutted BDF]

У меня он с первого раза конвертнулся

Вот командная строка которую я использовал:

bdf2u8g.exe digits32.bdf digits32 digits32.h -b 043 -e 058

Вот что выдал конвертор

encoding range 32..255
bbx 16 15 0 8 encoding 43
bbx 5 8 0 0 encoding 44
bbx 16 5 0 13 encoding 45
bbx 5 5 0 0 encoding 46
bbx 15 32 0 0 encoding 47
bbx 19 32 0 0 encoding 48
bbx 4 30 16 1 encoding 49
bbx 19 32 0 0 encoding 50
bbx 18 32 0 0 encoding 51
bbx 19 30 0 1 encoding 52
bbx 19 32 0 0 encoding 53
bbx 19 32 0 0 encoding 54
bbx 18 31 0 1 encoding 55
bbx 19 32 0 0 encoding 56
bbx 19 32 0 0 encoding 57
bbx 5 22 0 5 encoding 58
input file 'digits32.bdf'
u8g font name 'digits32'
output file 'digits32.h'
 

Вот реузльтат конвертации

/*
  Fontname: digits32
  Copyright: H`ugo
  Capital A Height: 0, '1' Height: 30
  Calculated Max Values w=19 h=32 x=16 y=13 dx=22 dy= 0 ascent=32 len=96
  Font Bounding box     w=22 h=31 x= 0 y= 0
  Calculated Min Values           x= 0 y= 0 dx= 0 dy= 0
  Pure Font   ascent =30 descent= 0
  X Font      ascent =30 descent= 0
  Max Font    ascent =32 descent= 0
*/
#include "u8g.h"
const u8g_fntpgm_uint8_t digits32[1345] U8G_SECTION(".progmem.digits32") = {
  0,22,31,0,0,30,4,130,4,162,32,255,0,32,0,30,
  0,255,255,255,255,255,255,255,255,255,255,255,16,15,30,22,
  0,8,1,128,3,192,3,192,3,192,3,192,63,252,127,254,
  255,255,127,254,63,252,3,192,3,192,3,192,3,192,1,128,
  5,8,8,22,0,0,112,248,248,248,112,48,96,128,16,5,
  10,22,0,13,63,252,127,254,255,255,127,254,63,252,5,5,
  5,22,0,0,112,248,248,248,112,15,32,64,22,0,0,0,
  14,0,14,0,28,0,28,0,56,0,56,0,56,0,112,0,
  112,0,112,0,224,0,224,1,192,1,192,1,192,3,128,3,
  128,7,0,7,0,7,0,14,0,14,0,28,0,28,0,28,
  0,56,0,56,0,56,0,112,0,112,0,224,0,224,0,19,
  32,96,22,0,0,127,255,192,191,255,160,223,255,96,239,254,
  224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,
  240,1,224,240,1,224,240,1,224,240,1,224,224,0,224,192,
  0,96,128,0,32,0,0,0,128,0,32,192,0,96,224,0,
  224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,
  240,1,224,240,1,224,240,1,224,239,254,224,223,255,96,191,
  255,160,127,255,192,4,30,30,22,16,1,16,48,112,240,240,
  240,240,240,240,240,240,240,112,48,16,0,16,48,112,240,240,
  240,240,240,240,240,240,112,48,16,19,32,96,22,0,0,127,
  255,192,63,255,160,31,255,96,15,254,224,0,1,224,0,1,
  224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,
  0,1,224,0,1,224,0,0,224,31,255,96,63,255,160,127,
  255,192,191,255,128,223,255,0,224,0,0,240,0,0,240,0,
  0,240,0,0,240,0,0,240,0,0,240,1,0,240,0,0,
  240,0,0,239,254,0,223,255,0,191,255,128,127,255,192,18,
  32,96,22,0,0,255,255,128,127,255,64,63,254,192,31,253,
  192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,
  0,3,192,0,3,192,0,3,192,0,3,192,0,1,192,63,
  254,192,127,255,64,255,255,128,127,255,64,63,254,192,0,1,
  192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,
  0,3,192,0,3,192,0,3,192,31,253,192,63,254,192,127,
  255,64,255,255,128,19,30,90,22,0,1,128,0,32,192,0,
  96,224,0,224,240,1,224,240,1,224,240,1,224,240,1,224,
  240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,224,
  0,224,223,255,96,191,255,160,127,255,192,63,255,160,31,255,
  96,0,0,224,0,1,224,0,1,224,0,1,224,0,1,224,
  0,1,224,0,1,224,0,1,224,0,1,224,0,0,224,0,
  0,96,0,0,32,19,32,96,22,0,0,127,255,192,191,255,
  128,223,255,0,239,254,0,240,0,0,240,0,0,240,0,0,
  240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,
  0,0,224,0,0,223,255,0,191,255,128,127,255,192,63,255,
  160,31,255,96,0,0,224,0,1,224,0,1,224,0,1,224,
  0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,15,
  254,224,31,255,96,63,255,160,127,255,192,19,32,96,22,0,
  0,127,255,192,191,255,128,223,255,0,239,254,0,240,0,0,
  240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,
  0,0,240,0,0,240,0,0,224,0,0,223,255,0,191,255,
  128,127,255,192,191,255,160,223,255,96,224,0,224,240,1,224,
  240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,
  1,224,240,1,224,239,254,224,223,255,96,191,255,160,127,255,
  192,18,31,93,22,0,1,255,255,128,127,255,64,63,254,192,
  31,253,192,0,3,192,0,3,192,0,3,192,0,3,192,0,
  3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,1,
  192,0,0,192,0,0,64,0,0,0,0,0,64,0,0,192,
  0,1,192,0,3,192,0,3,192,0,3,192,0,3,192,0,
  3,192,0,3,192,0,3,192,0,3,192,0,1,192,0,0,
  192,0,0,64,19,32,96,22,0,0,127,255,192,191,255,160,
  223,255,96,239,254,224,240,1,224,240,1,224,240,1,224,240,
  1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,
  224,224,0,224,223,255,96,191,255,160,127,255,192,191,255,160,
  223,255,96,224,0,224,240,1,224,240,1,224,240,1,224,240,
  1,224,240,1,224,240,1,224,240,1,224,240,1,224,239,254,
  224,223,255,96,191,255,160,127,255,192,19,32,96,22,0,0,
  127,255,192,191,255,160,223,255,96,239,254,224,240,1,224,240,
  1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,
  224,240,1,224,240,1,224,224,0,224,223,255,96,191,255,160,
  127,255,192,63,255,160,31,255,96,0,0,224,0,1,224,0,
  1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,
  224,0,1,224,15,254,224,31,255,96,63,255,160,127,255,192,
  5,22,22,22,0,5,112,248,248,248,112,0,0,0,0,0,
  0,0,0,0,0,0,0,112,248,248,248,112,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
  255};

 

hugoboss317
Offline
Зарегистрирован: 21.03.2013





















#include "u8g.h"

хм.. а это как там оказалось?

у меня хоть и непонятно что получается после конвертации но это тоже в 12-й строчке есть. С ним не компелирует. У вас в педидущем варианте небыло. (первый digits32)

Делаю вроде всё как и вы, не получается. вот вам и из под командной строки утилита. в чём причина и где искать глюк непонятно. остальной шрифт на скорую руку редактировал, там и в двойке лишняя точка и весь моноширный получился, включая точки, запятые ..... 

Спасибо что уделили время.

Пробую на домашнем компе, отправил кенту файлы, сказал что делать, итог один - четыре строчки в командной строке.(((((((

 

titovich
Offline
Зарегистрирован: 29.05.2013

hugoboss317 пишет:

#include "u8g.h"

хм.. а это как там оказалось?

у меня хоть и непонятно что получается после конвертации но это тоже в 12-й строчке есть. С ним не компелирует.

Этот include конвертор добавляет в выходной файл. Его нужно убирать, поскольку он уже включен при использовании библиотеки U8G.

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Не знаю как вы это делаете, пробовал на пяти разных машинах, ни на одном компе не получается. Вот сейчас пойду в гараж, там у меня старенький ноут, я им авто диагностирую, попробую ещё на нём, ХР стаит, может прокатит.

Уже 8 манин и не одна не справляется. Я думаю достаточно. И так ясно что мой ноут не при чём.

Клапауций
Offline
Зарегистрирован: 10.02.2013

hugoboss317 пишет:

Не знаю как вы это делаете, пробовал на пяти разных машинах, ни на одном компе не получается. Вот сейчас пойду в гараж, там у меня старенький ноут, я им авто диагностирую, попробую ещё на нём, ХР стаит, может прокатит.

Уже 8 манин и не одна не справляется. Я думаю достаточно. И так ясно что мой ноут не при чём.

Ну, так - это всем известный факт, только девятая машина способна повторить результат работы консольной утилиты, произведённый на первой.

Но, есть способ обойти это ограничение - распакуй архив и щёлкни два раза левой кнопой мыши по bdf2u8g.cmd

https://dl.dropboxusercontent.com/u/3671035/bdf2u8g.rar

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Ну и как это у вас получилось? А..а..а, не важно. 

Клапауций пишет:
Ну, так - это всем известный факт, только девятая машина способна повторить результат работы консольной утилиты, произведённый на первой.

Знаете, я когда пошёл в 18 лет работать на флот, тяжело было, очень тяжело. Так вот мне старики говорили - ты не переживай, это первые 9 лет тяжело, потом привыкаешь )))))). Это я про девятую машину вспомнил.

Клапауций, низкий от меня поклон.

 

 

Клапауций
Offline
Зарегистрирован: 10.02.2013

hugoboss317 пишет:
Ну и как это у вас получилось? А..а..а, не важно.

Как это "не важно"? - правой кнопой мыши на файле bdf2u8g.cmd -> в выпадающем меню выбрать "Изменить", и поймёшь, что я вообще ничего не делал, а функции copy/paste творят чудеса.

Кстати, если особо проникнешься, то можно вступить в лоно церкви.

hugoboss317
Offline
Зарегистрирован: 21.03.2013

Клапауций пишет:
правой кнопой мыши на файле bdf2u8g.cmd

То, что содержимое можно менять, эт я понял сразу, в распакованом архиве то видно всё. В остальном тоже Америку не открыли хотья пополнение теоритических определений не лишнее. 

hugoboss317
Offline
Зарегистрирован: 21.03.2013

titovich пишет:
Как закончите - похвастайтесь прокетом )))

)) хвастаюсь. Нашёл наконец время смонтировать ролик.

по теме последние 3 - 4 минуты...

https://www.youtube.com/watch?v=KOk0yA-wkGY

Клапауций
Offline
Зарегистрирован: 10.02.2013

Красавчик.

Реально крутое видео получилось.

на восьмой меге у тебя там что?

В комментарии к видео дай ссылку на форумные темы, где энто всё зарождалось.(если можно уже изменить)

hugoboss317
Offline
Зарегистрирован: 21.03.2013

 На восьмой меге модуль ИК пиёмника ))). А по коментам, да как то стремаюсь я показывать как всё это у меня туго выходило и как всем форумом наставляли на путь истинный. В ролике вроде как со стороны всё просто получается, а если по ссылкам ковырнуть так  нуб нубом получусь.