Помогите с кодом для глобуса

Все прочитали, вроде даже поняли, взяли паяльник - а нифига не получается? Скорее сюда! Поможем. Чем можем...
Ответить
Встал на лапы
Аватара пользователя
Сообщения: 118
Зарегистрирован: Пт апр 20, 2012 12:22:34
Откуда: Луганск

Сообщение iPolt »

А помогите пожалуйста и мне =)

Мне очень нужно понять проблему с 3д глобусом, реализованным на атмеге8.

Образец как на этом популярном сайте =)
http://easyelectronics.ru/3d-led-globus.html

Вот кусочек кода из файла фрейм:

//=============
// Массив для поочерёдности вставки фреймов , кадры... отсчет начинается с нуля.
//cadrs:
//.db 0,1,2,3,3,2,1,0
;============= массивы ==========
addrs: ;адреса фреймов
.dw frame0*2,frame1*2;,frame2*2,frame3*2

frame0: ;фреймы
;.db 0xaa,0x55,0xaa,0x55
.db 192,0,0,16 ; фрейм "Глобус украины "
.db 224,0,3,244
.db 224,0,15,248
.db 224,0,23,252
.db 224,0,15,248
.db 192,0,31,244
.db 224,0,23,252
.db 192,0,39,212
.db 192,0,39,158
.db 192,0,75,74
.db 192,3,195,242
..
.db 240,0,127,248
.db 240,0,95,240
.db 240,0,31,248
.db 240,0,15,248
.db 240,0,31,254
.db 240,0,191,252
.db 240,1,127,252
.db 240,0,31,252
.db 240,49,143,248
.db 241,122,0,56
.db 240,114,0,56
.db 240,0,0,176
.db 224,0,0,80
.db 208,0,0,48
.db 193,0,0,48
.db 192,128,0,16
.db 192,0,0,16

frame1:
;.db 0x55,0xaa,0x55,0xaa
.db 0,0,0,0 ; фрейм "с новым годом 2010"

.db 0,0,1,0
.db 0,0,6,0
.db 0,0,56,0
.db 0,0,200,0
.db 0,0,4,128
.db 0,0,7,0
.db 0,0,24,0
.db 0,0,96,0
.db 0,0,0,0
.db 0,0,31,128
.db 0,0,5,0
.db 0,0,2,0
.db 0,0,4,0
.db 0,0,0,0
.....
.db 0,0,0,0
.db 0,0,0,0

;frame2:

;.db 1,2,3,4

;frame3:

;.db 8,9,10,11

Вопрос: как можно исправить фрейм №1, в котором надпись "Happy New Ear" (с ошибкой вроде) на что-то другое, например на "Привет, Натали!" =)

п.с. часть массива чтоб сократить пост выкинула - цифры,
а целиком архив с файлами тут http://easyelectronics.ru/img/readyd...animations.rar .

Пожалуйста, помогите советом, как это реализовать или где об этом почитать, очень надо! =)
Сотней огней
Нам светил на этом пути
Пепел уже давно сгоревших звёзд.
Контактная информация:
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 118
Зарегистрирован: Пт апр 20, 2012 12:22:34
Откуда: Луганск

Сообщение iPolt »

Ну посоветуйте пожалуйста, как записать числа, которые получатся при разложении графики в цифру? :(
Сотней огней
Нам светил на этом пути
Пепел уже давно сгоревших звёзд.
Контактная информация:
Реклама
Вымогатель припоя
Сообщения: 630
Зарегистрирован: Пн июн 14, 2010 13:07:29
Откуда: Жуковский

Сообщение a_skr »

похоже, что каждая строчка из 4-х чисел - это один столбец из 32-х точек.
рисуем столбец точками, делим по 8 штук на байт, например:
11011010110010011110011110011001 - 32 точки
11011010 11001001 11100111 10011001 - 4 байта в двоичном виде
DA C9 E7 99 - в шестнадцатеричном
218 201 231 153 - в десятичном
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

Да, так и есть, и если не ошибаюсь 70 столбцов. Удобно на листе в клеточку нужные квадратики закрасить и по 8 штук перевести в 16-е числа.
Реклама
Эиком - электронные компоненты и радиодетали
Вымогатель припоя
Сообщения: 630
Зарегистрирован: Пн июн 14, 2010 13:07:29
Откуда: Жуковский

Сообщение a_skr »

по исходникам там по 75 столбцов. судя по глобусу, каждый столбец записывается снизу вверх.
как по мне - проще программку накидать, чем на бумажке рисовать ;-)
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

Программку конечно проще... Если навык есть, но судя по теме, его-то как раз нет, так что ИМХО лучше на листочке в клеточку...
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 118
Зарегистрирован: Пт апр 20, 2012 12:22:34
Откуда: Луганск

Сообщение iPolt »

Программку конечно проще... Если навык есть, но судя по теме, его-то как раз нет, так что ИМХО лучше на листочке в клеточку...
Пока нет =)
"Я не волшебник программист, я только учусь" (с) :))) :))) :)))

Пойду разбираться, всем огромное спасибо за помощь!!)))
Сотней огней
Нам светил на этом пути
Пепел уже давно сгоревших звёзд.
Контактная информация:
Вымогатель припоя
Сообщения: 630
Зарегистрирован: Пн июн 14, 2010 13:07:29
Откуда: Жуковский

Сообщение a_skr »

вот, набросал тут программку. сам собираюсь делать нечто подобное, так что пригодится.
кнопки:
"из картинки" - конвертировать из графического файла
"из файла" - открыть фрейм, сохраненный ранее кнопкой "генерировать"
"очистить" - очистить всю область
"залить" - заполнить всю область
"генерировать" - сохранить фрейм в ассемблерном виде в файл
включение/выключение точки - клик мышкой на нужном квадратике.
при запуске загружается файл frame.txt (если есть в текущей папке)
Вложения
Globus.zip
(267.14 КБ) 510 скачиваний
Встал на лапы
Аватара пользователя
Сообщения: 118
Зарегистрирован: Пт апр 20, 2012 12:22:34
Откуда: Луганск

Сообщение iPolt »

Ого!!! Спасибо большое!!!

Остается вопрос, как получить полноценную папку с файлами, чтобы все сдружилось =)

Открыть файл проекта, исправить в нем в конце ссылку на обновленный теперь файл с фреймами (заменила кодировку фрейма №1 в блокноте на новую - спасибо! =) )и перекомпилировать, таким образом получится полноценный пакет файлов или еще какие-то надо добавить в папку с проектом перед компиляцией?
(смущает файл с именем macro (файл "ASM" ).
Сотней огней
Нам светил на этом пути
Пепел уже давно сгоревших звёзд.
Контактная информация:
Вымогатель припоя
Сообщения: 630
Зарегистрирован: Пн июн 14, 2010 13:07:29
Откуда: Жуковский

Сообщение a_skr »

добавлять ничего не надо. вроде все должно собираться.
macro.asm смущать не должен.
.include"C:\AVR_maked\3D_led_Globe_with_animations\frames.inc" - да, абсолютные пути - не есть хорошо. ;-)
Ответить

Вернуться в «Практика»