Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2017, 09:02   #1
Алексей Байдин
Новичок
Джуниор
 
Регистрация: 04.12.2017
Сообщений: 1
По умолчанию Светодиодный куб на C++

Здравствуйте! Я здесь новичок и хотел бы попросить помощи у знающих. Начну с того, что моё хобби - программировать микроконтроллёры на ассемблере. Задумал сделать светодиодный куб, видео которого можно найти в Ютубе. Посмотрев на готовую модель, можно представить как это реализуется на "байтовом уровне". 8 горизонтальных плоскостей, в каждой плоскости имеется 8 байтов, каждый бит которого вкл/выкл светодиод. Итого - массив из 64 байтов. Писал очень много на ассемблере, это конечно интересно и увлекательно, особенно когда найдешь все алгоритмические ошибки и всё работает как надо, но в тоже время это долго и порой "муторно". Знающие люди подсказали писать на С++... Вот мне и хотелось бы узнать, есть ли такая библиотека с функцией, которая создаёт куб в пространстве по координатам, то есть по моим битам в байтах по 2 точкам - 1) нижняя/левая/передняя - 2) верхняя/правая/задняя (это если оси координат идут от нуля: Х - вправо, Y - вверх, Z - от себя). Допустим нужно создать куб с координатами А(0,0,0) В(7,7,7). То есть, если представить, что размерность куба максимум - 8, установленный бит зажигает светодиод, массив из 64 байт, и первый байт с установленными битами зажигает нижнюю/переднюю грань куба, которая лежит по оси Х. 8 байт, равный 0хFF, зажигает нижнюю/заднюю грань, 56 байт массива равный 0хFF зажигает верхнюю/переднюю, 64 байт равный 0хFF зажигает верхнюю/заднюю грань куба. Вертикальные грани зажигают соответствующие байты массива равные как 0х81... как-то так...
СПАСИБО!
Алексей Байдин вне форума Ответить с цитированием
Старый 04.12.2017, 09:43   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию



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

Последний раз редактировалось min@y™; 04.12.2017 в 11:42.
min@y™ вне форума Ответить с цитированием
Старый 04.12.2017, 10:17   #3
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Многомерные массивы это называется.
Я бы сделал 8 плоскостей и там уже организовать адресацию к битам.
Только памяти это все сожрет нехило так. Контроллер то какой?

// Каждая грань куба это матрица 64*64 светодиода. Каждый бит отвечает за свой светодиод. Это если одноцветный куб.
Код:
BYTE cube_FRONT[8*8];
BYTE cube_BACK[8*8];
...
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.

Последний раз редактировалось WorldMaster; 04.12.2017 в 10:19.
WorldMaster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
3D куб Nekromant Помощь студентам 1 11.04.2012 12:05
Куб числа Nobel Паскаль, Turbo Pascal, PascalABC.NET 6 02.03.2012 07:49
Куб Er1kCartman Помощь студентам 3 10.12.2011 14:09
Куб в 3D Dixmix20120 Помощь студентам 1 19.12.2010 11:37
магический куб Diller Помощь студентам 3 09.09.2007 11:35