Плейер световых эффектов - помогите стать лучше

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

скрипта на 10 килобайт я не припоминаю... но размер скрипта не играет роли, т.к. он кэшируется в 512 байтном буфере, т.е. все килобайты, сколько б их там не было, будут читаться по 512 байт, считанное будет исполняться, потом будет считываться следующий кусок и т.д. единственное, что при этом будет - некоторое замедление эффекта в моменты считывания. в принципе, задежки будут составлять единицы миллисекунд и на глаз могут быть никак не заметны... если на границе этих 512-байтных блоков не будет команд цикла - будет наверняка незаметно.

на счет ld_script не уверен... хотя надо поизучать, чем отличаются эти скрипты для МК с флешем больше 64К... хотя все равно ведь прошивка и до 32К не дотягивает...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

ARV писал(а):скрипта на 10 килобайт я не припоминаю...
Группы бег 14s.zip
(578 байт) 235 скачиваний
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

ох ты ж, блин! :) но я не каждый скрипт тут просматриваю - раз вопросов никто не задавал, я и не обращал внимания.
этот скрипт был "нарисован", потому такой большой - он "не портабельный", т.е. жестко расчитан на одну-единственную конфигурацию пикселов...

между прочим, "мультирун" и у меня далеко не с первой попытки заработал - тоже вис наглухо. но тот вариант, что я выложил, работает четко. честно говоря, ситуация загадочная... но разбираться уже некогда - отложим на будущий год :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

ARV, проблема оказалась (условно оказалась) в sd-карте, заменил карту на другую и скрипты пошли.
По чему "условно", по чему остальные идут, а эти нет? Вопрос остается открытым.
"Мультирун" теперь на новой sd-карте ведет себя иначе, после выполнения этого скрипта прекращается вывод сообщений в терминал, хотя плеер остается в работе, скрипты последовательно выполняются.

Petit FatFS от Чена, это тоже самое что и основное, просто выкинуто лишнее, не думаю что поможет замена на полно ценную.
Библиотека корявая и это факт, другой нету.

Есть еще вариант с отладчиком JTAG. У меня четвертая студия (не охота скачивать седьмую студию 1,7Гб ради одного контролера), смогу настроить или нет это еще вопрос.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

Знаете, когда проблема была "условно не решена", она выглядела менее загадочно... Как связана карта со скриптом?!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

ARV писал(а): Как связана карта со скриптом?!
я несколько раз проделал одну и ту же операцию, факт остается фактом.
Старая 2Гб новая 512Мб(в старом телефоне случайно нашел).
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

хм... ща заменю свою 128 мегабайтную карту на 2Г - погляжу, что изменится.

Добавлено after 26 minutes 10 seconds:
Ну что ж, я проверил на карте 2Г: отформатировал в FAT32 с размером кластера по умолчанию, скопировал все скрипты с предыдущей карты 128Мб... все скрипты ведут себя абсолютно идентично, в том числе, и "мультирун".

Dimon456, вы попробуйте свой диагностический вывод убрать совсем - может, дело в нем?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

вот что меня немного беспокоит: я разослал 4 платы плейера, и часть даже с почти полным комплектом компонентов, а ни один из получателей до сих пор в теме не отметился, как "сборщик"... уж праздник близится, а отзывов все нет :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
max50
Мучитель микросхем
Сообщения: 497
Зарегистрирован: Ср дек 10, 2008 21:24:28
Откуда: Алтайский край, Барнаул

Re: Плейер световых эффектов - помогите стать лучше

Сообщение max50 »

[uquote="ARV",url="/forum/viewtopic.php?p=3752398#p3752398"]вот что меня немного беспокоит: я разослал 4 платы плейера, и часть даже с почти полным комплектом компонентов, а ни один из получателей до сих пор в теме не отметился, как "сборщик"... уж праздник близится, а отзывов все нет :)[/uquote]
Скоро, скоро отпишусь.
Того, кто не задумывается о далеких трудностях, ожидают близкие неприятности.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

делюсь еще одним матричным эффектом:

Код: Выделить всё

ПОТЁКИ
CLR
_R=FF VR=FF
VD=FF VD/06 VD+01
RPT
  RPT
    VT=RD VT%06 VT*VD
  LVT=VC
  VC=VT
  V1=50
  RPT
    V0=TC
    MRD
    RPT
      MR=01
      PP=V0 PB=FF
      MR=00
      I_R=00 IRD<15 PI=VC EI EI
      I_G=00 IRD<15 PI=VC EI EI
      I_B=00 IRD<15 PI=VC EI EI
      PM=V0
    LV0
    WT=07
  LV1
INF
неторопливый такой :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

ARV писал(а):Dimon456, вы попробуйте свой диагностический вывод убрать совсем - может, дело в нем?
Да, дело в нем, после выполнения скрипта мультирун printf_P перестает работать однозначно. Это и в протеусе видно, после нескольких безрезультатных попыток вызова printf_P происходит ребут контроллера. Уж не помню что протеус пишет, но выход за пределы SRAM. Вот на этом участке кода
Спойлерbrge .+14 ; 0x3d8c <fputc+0x46>
ld r30, Y
ldd r31, Y+1 ; 0x01
movw r24, r30
adiw r24, 0x01 ; 1
std Y+1, r25 ; 0x01
st Y, r24
st Z, r17
Пришлось свой printf_P написать, в протеусе работает, в железе завтра проверять буду.
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

Проверил в железе, результат устраивает, перезагрузок нет, зависаний нет, вывод в терминал есть.
Но все равно, это не выход из положения. Что-то в этой 128меге не так.
Добавил электронную проверку наличия карты
Спойлер

Код: Выделить всё

#define SD_present()	sd_check()

BYTE sd_check(void) {
  BYTE i = 100;
  do { 
    send_cmd(CMD55, 0);
    if(send_cmd(ACMD41, 0x40000000) == 0) return 0;
  } while(--i);
  return 1;
}
Работает идеально[uquote="ARV",url="/forum/viewtopic.php?p=3750528#p3750528"]так делать нельзя: если в момент чтения конфига или поиска файла вы вытащите карту, плейер никогда не узнает, что её нет, т.к. не сможет отличить ошибку чтения от ошибки отсутствия. в итоге эффект по умолчанию не включится, и выглядеть это будет, как зависание.[/uquote]
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

вообще-то у Чена где-то внутри disk_initialize есть такая проверка, но как-то уж у него лихо там идет переопределение результатов функций, что я утерял нить... если разобраться, то можно просто при получении !FS_OK посмотреть внутрь структуры FATFS и увидеть, что именно там не так... но сейчас совсем нет возможности копаться в коде...

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

Мой уютный бложик... заходите!
Dimon456
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Re: Плейер световых эффектов - помогите стать лучше

Сообщение Dimon456 »

Тогда надо ваш код изменять

Код: Выделить всё

if(pf_open(script.fname) == FR_OK){

Код: Выделить всё

FRESULT pf_open (
	const char *path	/* Pointer to the file name */
)
и в зависимости от возврата
typedef enum {
	FR_OK = 0,			/* 0 */ успешное завершение функции
	FR_DISK_ERR,		/* 1 */ произошла невосстановимая ошибка на низком уровне (функции I/O диска)
	FR_NOT_READY,		/* 2 */ некорректного извлечения носителя или ошибка функции disk_initialize
	FR_NO_FILE,			/* 3 */ файл не найден
	FR_NOT_OPENED,		/* 4 */  файл не был открыт
	FR_NOT_ENABLED,		/* 5 */ не смонтирован диск
	FR_NO_FILESYSTEM	/* 6 */ на диске нет допустимого тома с файловой системой FAT
} FRESULT;
уже выбирать то или иное действие
Мне переписать или как?
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

я не об этом говорил... где-то внутри структуры FATFS есть какое-то поле, которое то ли обнуляется при ошибках доступа на уровне "диска", то ли наоборот, заFF-ливается... при "нормальных" ошибках файлового доступа это поле содержит какое-то "корректное" значение. вот и надо найти это поле и сравнивать его с корректным значением в SD_present - так будет лучше всего, имхо.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
max50
Мучитель микросхем
Сообщения: 497
Зарегистрирован: Ср дек 10, 2008 21:24:28
Откуда: Алтайский край, Барнаул

Re: Плейер световых эффектов - помогите стать лучше

Сообщение max50 »

Парни!
Есть гирлянда из 50 пикселей. Что посоветуете: разрезать на матрицу 5х10 или оставить как есть?
Того, кто не задумывается о далеких трудностях, ожидают близкие неприятности.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

если вешать на ёлку, то лучше матрицей. если гирлянда будет урашать что-то другое, то тут можно и так и этак: матрицей хорошо украшать стену или окно, гирляндой хорошо украшать какой-то предмет (шкаф, например, диван или ковер на стене).

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

могу посоветовать сделать, как я: сделать полоски по 5 светиков с небольщими разъемами по краям. тогда их можно соединить последовательно, а можно и "матрицей" (если добавить дополнительные соединительные проводки). то есть сделать "так" и посмотреть, а потом сделать "этак" и тоже посмотреть. и выбрать, что лучше :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
max50
Мучитель микросхем
Сообщения: 497
Зарегистрирован: Ср дек 10, 2008 21:24:28
Откуда: Алтайский край, Барнаул

Re: Плейер световых эффектов - помогите стать лучше

Сообщение max50 »

[uquote="ARV",url="/forum/viewtopic.php?p=3754673#p3754673"]если вешать на ёлку, то лучше матрицей.[/uquote]
Да, именно на елку. Услышал, спасибо.
Теперь другой вопрос: где располагается первый пиксель?
Того, кто не задумывается о далеких трудностях, ожидают близкие неприятности.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Re: Плейер световых эффектов - помогите стать лучше

Сообщение ARV »

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

Мой уютный бложик... заходите!
Аватара пользователя
max50
Мучитель микросхем
Сообщения: 497
Зарегистрирован: Ср дек 10, 2008 21:24:28
Откуда: Алтайский край, Барнаул

Re: Плейер световых эффектов - помогите стать лучше

Сообщение max50 »

[uquote="ARV",url="/forum/viewtopic.php?p=3754827#p3754827"]который ближе к плейеру, тот и первый[/uquote]
Понял. А направление столбцов?
Того, кто не задумывается о далеких трудностях, ожидают близкие неприятности.
Ответить

Вернуться в «AVR»