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

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

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

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

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

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

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

Закрытая тема
Опции темы
Непрочитано 31.10.2008, 12:33   #21
krasla
Прописка
 
Аватар для krasla
 
Регистрация: 15.03.2007
Адрес: Украина, Новомосковск
Сообщений: 258
Сказал спасибо: 5
Сказали Спасибо 17 раз(а) в 13 сообщении(ях)
krasla на пути к лучшему
По умолчанию

Сообщение от krasla
Вот ещё один конвертор, может подойдёт.
Успехов!!!!!
Пример перекодировки моего аватара.
Тотже файл в ворде за две минуты убрал DATA,&H.
Поиск и замена.

Прикрепленный файл: 177406.zip
Реклама:
__________________
Жизнь на столько короткая,что не остаётся времени,что-бы пожить.
krasla вне форума  
Непрочитано 31.10.2008, 14:46   #22
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию

Спасибо,
так как с МикроБейсиком разбираюсь более-менее успешно, запихал весь BMP файл в массив констант IMAGE. Перекодировку сделал ПИКом.
Код:
sub procedure SHOW_IMAGE 

dim _I, _J, _X,_Y,_X_size,_Y_size,DATA_START,PALETTE_START, _Temp, IMAGE_SIZE as word
dim _RED,_GREEN,_BLUE as byte

IMAGE_SIZE = IMAGE[3]
IMAGE_SIZE = IMAGE_SIZE ‹‹ 8
IMAGE_SIZE = IMAGE_SIZE + IMAGE[2]

DATA_START = IMAGE[11]
DATA_START = DATA_START ‹‹ 8
DATA_START = DATA_START + IMAGE[10]

PALETTE_START = IMAGE[15]
PALETTE_START = PALETTE_START ‹‹ 8
PALETTE_START = PALETTE_START + IMAGE[14]
PALETTE_START = PALETTE_START + 14

_X = 5
_Y = 150
_X_size = 100
_Y_size = 168

Usart_Write($49)
Usart_Write(Hi(_X))
Usart_Write(Lo(_X))
Usart_Write(Hi(_Y))
Usart_Write(Lo(_Y))
Usart_Write(Hi(_X_size))
Usart_Write(Lo(_X_size))
Usart_Write(Hi(_Y_size))
Usart_Write(Lo(_Y_size))
Usart_Write(8) '8 битово изображение

for _I = (IMAGE_SIZE - _X_size - 1) to DATA_START step -100
  _J = 0
  while _J ‹ _X_size
  inc(_J)
  _Temp = IMAGE[_I + _J]
  _Temp = _Temp ‹‹ 2

  _BLUE = IMAGE[PALETTE_START + _Temp ]
  _GREEN = IMAGE[PALETTE_START + _Temp + 1 ]
  _RED = IMAGE[PALETTE_START + _Temp + 2]

  _BLUE = _BLUE ›› 6
  _GREEN = _GREEN ›› 5
  _RED = _RED ›› 5

  _Temp = _BLUE
  _Temp = _Temp ‹‹ 3
  _Temp = _Temp or _GREEN
  _Temp = _Temp ‹‹ 3
  _Temp = _Temp or _RED

  Usart_Write(_Temp)
  wend
next _I

WAIT_ACK
end sub
Пока все очень сыро, да основа для дальнейшего усовершенствования имеется
‹center›
-- Прилагается рисунок: --
[img]nuke/users_images/31102008/2201523.JPG[/img]‹/center›
Popeye вне форума  
Непрочитано 31.10.2008, 22:11   #23
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию

Mда. Должен выжать воду из кода
Код:
sub procedure SHOW_IMAGE

dim _I, _J, _X_size,_Y_size,DATA_START,PALETTE_START, _Temp, IMAGE_SIZE as word
dim _RED,_GREEN,_BLUE as byte

IMAGE_SIZE = IMAGE[3] 'Размер файла / массива IMAGE BMP
IMAGE_SIZE = IMAGE_SIZE ‹‹ 8
IMAGE_SIZE = IMAGE_SIZE + IMAGE[2] 

DATA_START = IMAGE[11]  'Начало области с байтами цвета пикселей
DATA_START = DATA_START ‹‹ 8
DATA_START = DATA_START + IMAGE[10] 

PALETTE_START = IMAGE[15] 'Начало палитры
PALETTE_START = PALETTE_START ‹‹ 8
PALETTE_START = PALETTE_START + IMAGE[14]
PALETTE_START = PALETTE_START + 14 

_X_size = 100 'Размер X
_Y_size = 168 'Размер Y

for _I = (IMAGE_SIZE - _X_size - 1) to DATA_START step -100
  _J = 0
  while _J ‹ _X_size
  inc(_J)
  _Temp = IMAGE[_I + _J] 'Берем байт цвета пикселя
  _Temp = _Temp ‹‹ 2 'Умножаем на 4. В палитре 4 байта с цветами BGR. Последний не используется.

  _BLUE = IMAGE[PALETTE_START + _Temp ] 'Байт синего из палитры
  _GREEN = IMAGE[PALETTE_START + _Temp + 1 ] 'Байт зеленого
  _RED = IMAGE[PALETTE_START + _Temp + 2] 'Байт красного

  _BLUE = _BLUE ›› 6  'uVGA имеет 2 бита синего. Из _BLUE берем 2 старших
  _GREEN = _GREEN ›› 5 '3 старших бита зеленого
  _RED = _RED ›› 5 '3 старших бита красного

  _Temp = _BLUE  'В _Temp запихиваем биты синего
  _Temp = _Temp ‹‹ 3 'Смещение на 3 бита влево
  _Temp = _Temp or _GREEN 'Добавляем зеленые биты
  _Temp = _Temp ‹‹ 3 'Опять смещение на 3 бита
  _Temp = _Temp or _RED 'Добавляем красные биты
'Получаем _Temp в формате BBGGGRRR
  Usart_Write(_Temp)'Запихиваем данные в uVGA
  wend
next _I

end sub
Прошу прощения за переменные типа _BLUE В коде имеется глобальная константа BLUE, так же RED и GREEN. Появились подозрения путаницы. Потому и поставил '_' впереди BLUE. Заодно пострадало и почти все остальное
Удачи!
Popeye вне форума  
Непрочитано 31.10.2008, 22:18   #24
user_ushastyj
Временная регистрация
 
Регистрация: 06.12.2007
Сообщений: 91
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
user_ushastyj на пути к лучшему
По умолчанию

А в бейсике структур нет ?
Жалко на код смотреть...
__________________
разум когда-нибудь победит... (с)
user_ushastyj вне форума  
Непрочитано 31.10.2008, 22:20   #25
xerox2
Вид на жительство
 
Регистрация: 15.03.2005
Сообщений: 351
Сказал спасибо: 17
Сказали Спасибо 8 раз(а) в 8 сообщении(ях)
xerox2 на пути к лучшему
По умолчанию

Сообщение от user_ushastyj
А в бейсике структур нет ?
Жалко на код смотреть...
вы наверна программер. а эмбеддеры пишут кто в лес кто по дрова. самому иногда страшно и стыдно бывает
xerox2 вне форума  
Непрочитано 31.10.2008, 22:33   #26
user_ushastyj
Временная регистрация
 
Регистрация: 06.12.2007
Сообщений: 91
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
user_ushastyj на пути к лучшему
По умолчанию

да просто напрашивается
Код:
 union
{
  struct{
    unsigned BLUE:2;
    unsigned GREEN:3;
    unsigned RED:3 
  }rgb;
  unsigned char Temp;
}un;
un.rgb.BLUE=arr[a];
un.rgb.GREEN=arr[a+1];
un.rgb.RED=arr[a+2];
Usart_Write(Temp);
__________________
разум когда-нибудь победит... (с)
user_ushastyj вне форума  
Непрочитано 31.10.2008, 22:33   #27
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию

Сообщение от user_ushastyj
А в бейсике структур нет ?
В этом Бейсике структуры имеются. Злой вы однако. Писал же я
Цитата:
Пока все очень сыро, да основа для дальнейшего усовершенствования имеется
А вы сразу за зад
Цитата:
Жалко на код смотреть...
Все это за пол дня написал в спешке и сомнениях. Противно однако.
Popeye вне форума  
Непрочитано 31.10.2008, 23:19   #28
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию

Сообщение от Popeye
Все это за пол дня написал в спешке и сомнениях. Противно однако.
Цитата:
Не ошибается лишь тот , кто ничего не делает...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 05.11.2008, 16:24   #29
Kabron
Почётный гражданин KAZUS.RU
 
Аватар для Kabron
 
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,535
Сказал спасибо: 698
Сказали Спасибо 4,313 раз(а) в 1,977 сообщении(ях)
Kabron на пути к лучшему
По умолчанию

Я тут немного раньше этот вопрос тоже поднимал:
https://kazus.ru/forum/topics/13013.html
Kabron вне форума  
Непрочитано 06.11.2008, 21:40   #30
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию

Kabron спасибо, но в сущности я проблему почти решил, надеюсь Да и есть необходимость не только в ПИК заливать, надобно пошаманить несколько изображений в память I2C запихать. Т.е. еще один выходной файл, для программатора памяти. Тут борюсь с Вижуал Бейсиком, окончу дам исходники. Надеюсь на этот раз никто не будет возмущатся деревянным кодом
Удачи!
Popeye вне форума  
Закрытая тема

Закладки


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
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, время: 13:01.


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