Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
29.10.2008, 22:02
|
#1
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Конвертирование из BMP в DATA
Добрый вечер уважаемые,
появилось надобность в преобразовании картинки в текстовой формат, чтоб можно было включить в текст исходника. Например из BMP сделать следующее
'------------------------------------------------------
' Picture name: mikro_bmp
' GLCD Model: Nokia3310 Like
------------------------------------------------------
const mikro_bmp as byte[350] = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 7, 14, 34, 196, 16, 71, 12, 102, 254, 24, 99, 12, 6, 222, 24, 99, 28, 6, 198, 24, 99, 60, 30, 198, 24, 99, 60, 14, 198, 24, 99, 60, 6, 198, 24, 99, 60, 6, 198, 24, 99, 60, 34, 198, 24, 103, 252, 255, 255, 27, 7, 254, 255, 255, 63, 143, 255, 255, 255, 255, 255, 3, 0, 0, 224, 255, 0, 0, 0, 128, 63, 0, 0, 0, 0, 63, 0, 0, 0, 0, 31, 0, 0, 0, 0, 15, 0, 0, 0, 0, 15, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 0, 0, 0, 0, 3, 248, 1, 254, 15, 3, 254, 3, 255, 63, 3, 254, 3, 255, 127, 3, 254, 3, 255, 63, 3, 252, 3, 255, 63, 3, 0, 0, 255, 15, 3, 0, 0, 7, 0, 7, 0, 0, 7, 0, 7, 0, 0, 7, 0, 7, 0, 0, 7, 0, 15, 0, 0, 7, 0, 15, 0, 0, 7, 0, 31, 0, 0, 7, 0, 31, 0, 0, 7, 0, 63, 0, 0, 7, 0, 255, 0, 0, 7, 0, 255, 1, 0, 7, 12 ![Горд собой](images/smilies/icon_dovl.gif)
Списал из редактора МикроЕ, да там монохром, надо цветное 8бит. И произвольного размера.
На худой конец сойдет и нечто, преобразующее файл из бинарного в текстовой цифровой формат. BIN2HEX имеется, да под DOS работает ![Бьюсь об стену](images/smilies/icon_obstenu.gif) Я там почти все подчистую запамятовал.
Спасибо заранее !
|
|
|
|
30.10.2008, 12:40
|
#2
|
Прописка
Регистрация: 23.01.2008
Сообщений: 102
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 19 сообщении(ях)
|
Цитата:
|
На худой конец сойдет и нечто, преобразующее файл из бинарного в текстовой цифровой формат
|
Ну это и самому да 10 минут сделать можно.
Вот сваял на PureBasic.
Программа в месте с исходником в архиве.
Прикрепленный файл: 9089942.rar
|
|
|
|
30.10.2008, 13:42
|
#3
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Сообщение от Pit_PB
|
Ну это и самому да 10 минут сделать можно.
|
Можно, если можеш. Я то не умею
Спасибо, если не сегодня завтра попробую.
Удачи!
зы. А надо опять засесть за учебники... Надоело, да никуда не денусь. Может кому надо интерактивное руководство по VB6, на русском. Старое, 2000 год ![Смешно](images/smilies/icon_lol.gif) Вышлю, если есть интерес. Большое, что то около 600 мб.
Прикрепленный файл: 9089942.rar
|
|
|
|
30.10.2008, 15:01
|
#4
|
Прописка
Регистрация: 23.01.2008
Сообщений: 102
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 19 сообщении(ях)
|
Если я ничего не путаю, Вы как-то начинали изучать PureBasic, но потом забросили...
Кстати, он немного на MicroBasic похож, но имеет намного больше функций.
Кроме того можно изготавливать свои библиотеки функций.
Если задача не сложная, то и API знать не обязательно.
|
|
|
|
30.10.2008, 15:09
|
#5
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Сообщение от Pit_PB
|
но потом забросили...
|
Забросил, думал VB6 осваивать, там окно можно редактировать в процессе отладки, а у PB один Вижуал дизайнер, если напутаеш снова сначала. Да и то забросил....
Может надо и замолчать, да Ваша программа выдает только одну длинющую строку. Текстовые редакторы плохо переваривают.
Удачи!
|
|
|
|
30.10.2008, 15:51
|
#6
|
Прописка
Регистрация: 23.01.2008
Сообщений: 102
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 19 сообщении(ях)
|
Цитата:
|
PB один Вижуал дизайнер, если напутаеш снова сначала. Да и то забросил....
|
Можно редактировать в процессе отладки. Есть способы.
Да и вообще можно создавать окна вручную, например, та программа что ранее выложил, сделана без использования визуального редактора.
Цитата:
|
Может надо и замолчать, да Ваша программа выдает только одну длинющую строку
|
Нет, почему-же, молчать не нужно.
Ведь прогой должно быть удобно пользоватся.
Немого переделал её.
Теперь формируются строки по 16 символов в формате $xx
Где xx - байт в шестнадцатеричной форме. Так наглядность больше.
PS
Программа только переводит числа из двоичной системы исчисления в шестнадцатеричную, т. е. она не работает непосредственно с рисунком.
Хотя если захотеть, то можно сделать и работу с рисунком, получится что-то типа этого http://www.ikarab.narod.ru/KS0108.html
Прикрепленный файл: 7268235.rar
|
|
|
|
30.10.2008, 17:32
|
#7
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Спасибо, ну а если в конце строки поставить запятую будет просто прекрасно ! Хотя я явно что то не учитваю, запихиваю рисунок в ПИК, выводится, да как то странновато, имеет схожесть с оригиналом, да оригинал синий а здесь желто-красная размазня ![Валяюсь от смеха](images/smilies/icon_biggrin.gif) Вероятно назначение битов по цветам не совпадает. У меня BBGGGRRR, что выдает BMP не очень понятно, там палитры, некий куб, вобщем будем обучатся дальше...
Удачи!
|
|
|
|
30.10.2008, 19:02
|
#8
|
Прописка
Регистрация: 23.01.2008
Сообщений: 102
Сказал спасибо: 0
Сказали Спасибо 21 раз(а) в 19 сообщении(ях)
|
Цитата:
|
если в конце строки поставить запятую будет просто прекрасно
|
Добавил.
Цитата:
|
что выдает BMP не очень понятно, там палитры, некий куб, вобщем будем обучатся дальше...
|
Я как-то тоже с такой проблемой сталкивался.
Сначала хотел разбиратся с самим рисунком, но потом нашёл более простой вариант.
Сделал так.
Загружал рисунок с помощью LoadImage((#Image, FileName$ [, Flags]) (поддерживаются форматы BMP, PNG, TIFF, JPEG).
Затем узнавал его размеры с помощью функций ImageHeight(#Image) (высота) и ImageWidth(#Image) (ширина).
Затем с помощью циклов сканировал по писксельно весь рисунок для того чтобы узнать цвет всех точек рисунка.
Комплексный цвет RGB получал с помощью функции Point(x, y) результат работы которой разбивал на отдельные цвета с помощью Red(Color), Green(Color), Blue(Color) и уже оринтрируясь на эти данные строил таблицу
Такой приём однозначно проще, надёжнее и универсальнее чем изучать способ кодирования рисунка и преобразовывать его.
Прикрепленный файл: 8941195.rar
|
|
|
|
30.10.2008, 19:04
|
#9
|
Вид на жительство
Регистрация: 15.03.2005
Сообщений: 351
Сказал спасибо: 17
Сказали Спасибо 8 раз(а) в 8 сообщении(ях)
|
прога HEX2BIN рулит
|
|
|
|
30.10.2008, 21:46
|
#10
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Спасибо Pit_PB
Здесь имеется приятная и понятная статья про BMP http://jenyay.net/index.php?id=bmp Как понимаю, не стоит цацкатся с 8 битным форматом, надо взять 24 битный, проще. Берем байт красного, переводим в 3 бита, зеленый в 3, синий в 2. Все это засовываем в один байт, добавляем запяыте и дело в шляпе ![Смешно](images/smilies/icon_lol.gif) Уже засел за VB6. Давно надо было сделать, да когда под задницей жжет как то шустрее работаю
Хотя можно и взять весь 8 битный BMP файл без изменений, засунуть в ПИК и там обрабатвать. 1К больше, переживу.
Посмотрим......
И все это надо чтоб управлять этим животным http://www.4dsystems.com.au/prod.php?id=15 Интересная штука однако, даже работает почти как написано, за исключением вывода RESET.
А HEX2BIN оказвается имеет варианты. Один выдает текст, другой тоже, да в формате для программаторов.
Такие дела,
Удачи !
зы Или я пробовал BIN2HEX ![Вопрос](images/smilies/icon_question.gif) Запутался однако
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
data memoty
|
Boris_Britva |
Микроконтроллеры, АЦП, память и т.д |
10 |
26.08.2008 09:35 |
wav, bmp -> hex
|
dosikus |
Микроконтроллеры, АЦП, память и т.д |
4 |
23.09.2007 21:35 |
DATA, DB, DE… как читать?
|
maxNTF |
Микроконтроллеры, АЦП, память и т.д |
0 |
13.02.2006 17:10 |
Multisensor Data Fusion - Помогите
|
niklaus |
Микроконтроллеры, АЦП, память и т.д |
0 |
24.07.2005 01:14 |
Часовой пояс GMT +4, время: 10:26.
|
|