Как стать автором
Обновить

Комментарии 17

НЛО прилетело и опубликовало эту надпись здесь
Я использую «Image generate v.2.104» от Alex_EXE. В ней можно как рисовать свои, так и вставлять готовые картинки в .bmp и преобразовывать в массив hex чисел для дисплеев от 4х8 до 240х320. Тут же можно задавать контрастность и инвертировать цвета. Вообщем достаточно удобно и интуитивно все ясно.
По моему еще Gimp умеет экспортировать в HEX в виде cpp файла. Поправьте если не так.
Это просто формат изображений такой есть — X BitMap (и более развитый цветной вариант — X PixMap), представляет собой валидный код на С. Я картинки в Ардуино именно так генерировал — создавал ч/б изображение в Paint'e, потом брал XnView и конвертировал их в XPM.
Пример XBM
#define x_width 58
#define x_height 8
static char x_bits[] = {
0xbb, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
0x01, 0x67, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 
0x6c, 0x9e, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 
0x83, 0x9f, 0x1c, 0x8e, 0xe3, 0x38, 0x86, 0xff, 
0x28, 0x9e, 0x4c, 0x26, 0x49, 0x92, 0x24, 0xff, 
0x01, 0x1f, 0x4e, 0xe6, 0x79, 0x92, 0x24, 0xff, 
0x93, 0x9f, 0x4c, 0x26, 0x49, 0x92, 0x24, 0xff, 
0xc7, 0x9f, 0x98, 0x8c, 0xe3, 0x38, 0x26, 0xff, 
};
Пример XPM
/* XPM */
static char *Raccoon_xpm[] = {
/* width height num_colors chars_per_pixel */
"    58     8        2            1",
/* colors */
"0 c #000000",
"1 c #ffffff",
/* pixels */
"0010001000001111000000000000000000000000000000000000000000",
"0111111100011001100000000000000000000000000000000000000000",
"1100100110000110110000000000000000000000000000000000000000",
"0011111000000110110001111000111000111000111000111001111000",
"1110101110000110110011011001101101101101101101101101101100",
"0111111100000111100011011001100001100001101101101101101100",
"0011011000000110110011011001101101101101101101101101101100",
"0001110000000110111001101100111000111000111000111001101100"
};
Отличный способ, кстати, рекомендую. Никаких проблем с именами файлов и т.д.
Спасибо!!!
мне только кажется, или быстрее всего взять python, библиотеку чтения графики (вон, недавно pillow увеличил версию) и за пол часа написать скрипт, который сам из любых кратинок будет генерировать готовый для copy-paste исходник?

Под «из любых», я подразумеваю, что существую библиотеки которые не только открывают всякое разнообразие растровых форматов, но еще и имеют их обрабатывать, уж resize и преобразовать в 1bit BW, проблем-то не составляет.

Может быть, если не знакомы с python, это займет не пол часа, а целый вечер, да.
НЛО прилетело и опубликовало эту надпись здесь
как по мне, это имеет смысл когда не хочется разбираться с кучей всякого стороннего софта (я уж забыл даже как Corel выглядит, например), а наоборот — разобраться с новым инструментом для разработки.

Для меня работа с растровыми изображениями — это как алфавит. Я уж не помню, рисовали мы что-то на экране «Специалист» в далёких 80-ых, но точно помню, что наверянка как и многие писал свою читалку PCX, потом GIF, и далее куда не ткнись, нужно было что-то с растровой графикой уметь сделать в программе. И если раньше это всё руками и своей головой, то теперь-то львиная доля всего просто готовая есть, в виде удобных библиотек.
Скрипт будет «в 30 строк»:
1) вывести окно tkFileDialog.askopenfilename чтобы получить путь до открываемого файла
2) попробовать открыть картинку
3) изменить размер картинки, естественно центрировать
4) изметить режим картинки на чёрнобелый (двухцветный, однобитный, кому как угодно), вроде фильтры ещё есть для более качественного преобразования
5) выгрузить в строку hex значения цвета, если не ошибаюсь их необходимо ещё инвертировать
6) profit
НЛО прилетело и опубликовало эту надпись здесь
Особенно, если можно просто пользоваться графическим редактором/смотрелкой, умеющей сохранять в XBM/XPM (под Linux, по-моему, каждая первая это умеет).
Выучить питон и написать скрипт — будет полезнее. Вот скрипт конвертирующий любые картинки в hex код. Открываете в нём картинку/фотографию (по умолчанию jpg, но можно выбрать любой другой формат), скрипт генерирует hex код для картинки 84x48 и сохраняет его в файл — «имя картинки/фотографии.txt». Код можно загрузить в редактор иконок (он из моей статьи указанной автором) и поправить рисунок.
Вот например
Такую девушку лучше отобразить в цвете. Берём цветной экранчик на базе чипа ILI9341, на нём же есть слот под карту памяти.
Заливаем на карту фотки в формате bmp и простеньким демо скетчем из библиотеки, например adafruit tft, выводим на экран )
Я когда извлек такой дисплей из старой нокии тоже гадал чего бы полезного сделать и придумал сделать датчик температуры и влажности. Докупил датчик dht22 и собрал девайс, уже второй год на полочке работает. Всегда знаю когда нужно включать увлажнитель воздуха.
А расскажете как?
В поиске хабра " arduino dht22", Одна из десятка статей про создание метеостанции: habrahabr.ru/post/240677/

К каким контактам подключали дисплей?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации