Страница 1 из 1

AVRcanoid

Добавлено: Ср окт 19, 2016 22:22:55
ptr128
Это кому-то интересно? В смысле, надо ли статью писать о том, как я это сделал?

https://github.com/vpetryaev/ST7735

https://goo.gl/photos/5e8qqPt754j5KdrA6

Re: AVRcanoid

Добавлено: Сб окт 22, 2016 13:05:59
ptr128
80 просмотров и ни одного ответа.
Неужели и впрямь никому не интересно, как читать из фреймбуфера, чтобы управлять спрайтами на TFT?
Я ведь изначально весь этот проект написал только чтобы понять, как сделать падающие снежинки на TFT у погодной станции на AVR )

Re: AVRcanoid

Добавлено: Сб окт 22, 2016 14:28:28
COKPOWEHEU
Возможно, стоило выложить здесь на форуме описание (достаточно подробное и на русском) и ссылку на видео работы (то что у вас по 2 ссылке за 5 минут так и не загрузилось).

Re: AVRcanoid

Добавлено: Сб окт 22, 2016 17:42:12
ptr128
Реализовано управление спрайтами для AVR на TFT экране под управлением ST7735. Сложность заключалась в том, что хранить содержимое фреймбуфера в оперативной памяти МК не реально (это порядка 40 килобайт), а имеющиеся библиотеки оказались, во-первых, очень медленными, а во-вторых, не позволяли читать фреймбуфер из видеоконтроллера.
Работа по SPI была реализована через USART MSPIM, так как он, в отличии от аппаратного SPI ATMega328P (на которой выполнялось исследование) имеет буферизацию передатчика, что уже дало существенный прирост в скорости обмена. Все критичные участки написаны на ассемблере. Обмен по SPI оформлен в виде библиотечных функций в файлах ST7735_spi.c и .h.
Управление спрайтами так же оформлено в виде библиотечных функций в файлах ST7735_sprite.c и .h. Данная поддержка включает обработку коллизий с границами экрана, но коллизии между спрайтами или спрайта со статическим объектом должны определяться извне. Альфа канал для отрисовки спрайтов, естественно, поддерживается. В данном прототипе размер спрайтов ограничен 128 точками (256 байтами).

В качестве примера использования спрайтов была написана простенькая игра, подобная старой Arcanoid.

Как уже писал выше, изначально задачи написать игрушку не было. Хотелось просто разобраться как использовать спрайты для оформления экрана.

Re: AVRcanoid

Добавлено: Пн окт 24, 2016 11:29:21
ptr128