Easyelectronics.ru

Электроника для всех
Текущее время: 24 янв 2020, 06:23

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 15:43 
Старожил
Аватара пользователя

Зарегистрирован: 06 авг 2014, 22:46
Сообщения: 333
Приветствую всех!
Может тема уже избитая но нагуглить не вышло, одни ардуинские библиотеки)
Имеется монохронмый OLED 0.96" (128*64). Данные на него валятся по 8 бит.
Но вот эти 8 бит выводятся вертикально, а не горизонтально,
тобишь за 1 передачу выводится столбец из 8 пикселей,
То есть за одну передачу посылаются пиксели: 0, 128, 256, 384....896
что крайне неудобно учитывая что картинки в памяти хранятся
в виде последовательных пикселей 0...7.

Как экономичнее всего выводить картинку при таких условиях?
Как то смущает побитово разворачивать все, это же по 4 инструкции на бит
в лучшем случаи, то есть 8192*4 инструкции.
Или я что-то не так делаю?

Картинки нарисованные с учетом архитектуры дисплея выводить вообще не проблема,
толкай байты последовательно и все.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 16:14 
Старожил

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Я использовал буфер в памяти контроллера. Тогда становится вообще пофиг на организацию дисплея. Мне как раз надо было на лету менять ориентацию на 90-180-270 градусов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 16:29 
Старожил
Аватара пользователя

Зарегистрирован: 06 авг 2014, 22:46
Сообщения: 333
bw429 писал(а):
Я использовал буфер в памяти контроллера. Тогда становится вообще пофиг на организацию дисплея. Мне как раз надо было на лету менять ориентацию на 90-180-270 градусов.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 19:32 
Старожил

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
А, наверное мой вариант и является вашим побитным поворотом картинки. Только я больште картинки не выводил - только текст и графические примитивы записывал побитово в буфер экрана.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 20:03 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2634
Откуда: Санкт-Петербург
Почитайте http://www.hackersdelight.org/hdcodetxt ... ose8.c.txt (гуглится по словам "transpose bit matrix") - может, более эффективный алгоритм подберёте.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 23:27 
Старожил
Аватара пользователя

Зарегистрирован: 06 авг 2014, 22:46
Сообщения: 333
aamonster писал(а):
Почитайте ... может, более эффективный алгоритм подберёте.

Мельком глянул, надо будет поковырять.
Подходит для массивов до 64 бит размерностью.
Но крутой результат можно получить 0,8 инстукции на бит.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разворот картинки под OLED со "столбцовым" выводом данных.
СообщениеДобавлено: 15 фев 2017, 23:35 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2634
Откуда: Санкт-Петербург
Там поворот матрицы 8*8, так что сможете "по клеточкам" повернуть любое изображение с размером, кратным 8.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB