код полный - как я выложил? или вы что-то от себя добавляли?
Малость добавил, секундный таймер в конце main.c. У меня bootloader. Одним словом посмотрите сами. Вот архив полностью Atmega128, посмотрите код, может что забыл или что-то не так. Я обычно так делал, в Total Commande в одном окне ваш файл в другом мой, сравнить по содержимому.
если пронумеровать скрипты "как положено", начиная с 0, откорректировать их количество в конфигурации - ничего не виснет, все 6 скриптов работают. почему не работает перебор с нумерацией "вразброд" - пока не знаю.
Добавлено after 10 minutes 34 seconds: чтобы происходил перебор файлов "вразброд"пронумерованных (с пропускамии номров то есть), необходимо, чтобы PD5 был на земле - это "детектор" карты! это обязательное условие.
так делать нельзя: если в момент чтения конфига или поиска файла вы вытащите карту, плейер никогда не узнает, что её нет, т.к. не сможет отличить ошибку чтения от ошибки отсутствия. в итоге эффект по умолчанию не включится, и выглядеть это будет, как зависание.
Добавлено after 2 minutes 3 seconds: если вам нужно управлять при помощи PRESENT_ENABLED, то надо в макросе SD_present() анализировать текущее состояние FATFS и возвращать true, если ошибка не была связана с отсутствием карты. мне было влом - я задействовал выключатель слота.
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
ARV, все не так. Изначально файлы были пронумерованы от 0 до 110, потом из этого списка начал выкидывать на которых зависал 11 13 70 73 и 102 (на этих зависает). Со второго пакета там от 0 до 86, выкинул только 27 (на этом скрипте происходит перезапуск, начинает читать с 0 скрипта).
ARV писал(а):
так делать нельзя: если в момент чтения конфига или поиска файла вы вытащите карту,
как бы я в курсе, на это есть кнопка резет. К сожалению мой модуль SD не выводит этот контакт, хотя под линзой я его не рассматривал.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
в общем, зависание подтверждаю после 102-го скрипта. но это зависание не совсем зависание: светодиод карты часто-часто мерцает, т.е. плейер что-то там пытается читать, как я понимаю, переберает номера файлов и ищет тот, который можно открыть. почему при этом не происходит обнуление номера при превышении общего количества из конфига - не знаю, копать перед новым годом уже не стану.
если будете нумеровать все, как положено - проблем не будет.
"мультирун" мультирунит, не сбрасывает ничего.
Добавлено after 1 minute 1 second: я не подтверждаю зависаний скриптов на последней версии прошивки. во вском случае все, что вы мне прислали - не виснут.
Добавлено after 2 minutes 32 seconds: да, в протеусе тестировал - обнулеяет номер файла после 159-го! как в железе этого не происходит - ума не приложу...
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
чудны дела твои, господи! у меня, как и у Serzh2000, не обнулется, поиск файлов идет непрерывно. ждать, пока 65535 переберет, влом...
Dimon456 писал(а):
а что за указатели в этом "мультирун"?
ну фишка такая же, как и обычные указатели в Си X5 - это указатель по переменной V5. то есть из V5 берем содержимое по модулю 36 (сколько всего переменных), и вот то, что получилось - будет номером переменной, с которой будет вестись работа.
Код:
V5=06 указывать будем на V6 X5+01 теперь V6 увеличится на 1
или вот
Код:
VX=09 RPT XX=RD LVX
этот код заполнит случайными значениями переменные с V0 по V9 включительно - массив из 10 переменных таким образом можно делать массивы, что в DSM давно готово в окне наблюдений. в хелпе, кстати, тоже расписано, что такое указатель и как его есть.
кроме мультируна, через эти указатели можно много чего сделать
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
после выполнения скрипта долго думает и зажигает 1 светодиод, и так с 1 светодиодом запускается следующий скрипт, этот эффект был и в старых версиях прошивки
нельзя делать CLR внутри любых "блоков", будь то цикл или условный блок, потому как CLR очищает стек блоков, а так же все переменные и т.п. поэтому команда INF не знает, на какое место надо переходить, что в итоге приводит к разрушению внутренних структур интерпретатора, в итоге или мигает, как не надо, или виснет, или сбрасывается...
самый первый RPT в этом скрипте надо переместить ниже, перед самой первой VF=0A, и будет вам счастье
Добавлено after 2 minutes 2 seconds: кстати, я обратил внимание, что эта "полиция" мерцает слишком часто - это так и задумано, или у вас синхронизация (таймер) тоже переделана и не 10 мс составляет?
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
кстати, я обратил внимание, что эта "полиция" мерцает слишком часто - это так и задумано, или у вас синхронизация (таймер) тоже переделана и не 10 мс составляет?
Это ваш скрипт, flash/f2.sc.
ARV писал(а):
тоже переделана и не 10 мс составляет?
10мс, у вас мой архив и протеус, можете проверить.
Морзе не всем понравится. Но есть же USART... Или же LED/LCD можно было бы прикрутить опционально. Как раз текущую команду и отображать. Да и не только.
ARV, а вы те скрипты на каком фат тестировали? В протеусе усе работает, в железе нет, хотя фат16.
В общем дошел до ошибки в функции DRESULT disk_readp (...), возвращает FR_DISK_ERR. Ни знаю, может еще покапаю, может забью на это, остальные скрипты же работают.
Добавлено after 6 minutes 24 seconds: Dimon456, скрипт, если он менее 512 байт (т.е. 511 и меньше) считвается в буфер целиком, и потом исполняется оттуда, так что никакого обращения к диску не требуется. поскольку все ваши скрипты меньше этого размера, думаю, абсолютно нет связи между неработоспособностью скрипта и тем, как отформатирована флешка. разумеется, при условии, что чтение происходит на самом деле нормально.
я допускаю, что в библиотеке Чена может быть ошибка, Petit FatFS не самый важный его проект, так что... FAT16 тоже не самый ходовой формат, возможно, стечение обстоятельств именно таково, что какой-то сектор читаетс не корректно... попробуйте отформатировать в FAT32... поскольку памяти достаточно, можно будет попробовать вместо Petit использовать "настоящую" FatFS - Чен её больше внимания уделяет, как мне кажется. возможно, она будет лучше работать с FAT16... я её в другом проекте применяю, но тоже с FAT32, так что за FAT16 ничего не скажу.
но вообще связь с фаловой системой мне кажется не очень вероятной...
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
но вообще связь с фаловой системой мне кажется не очень вероятной...
Смена фат не помогло. Мне кажется портится оперативная память атмеги128, может для нее свой ld_script нужен? Скрипт выполняется полностью, и потом должно пойти затухание, а затухание нет и валит FR_DISK_ERR.
ARV писал(а):
скрипт, если он менее 512 байт
Тут где-то есть на 10 килобайт скрипт, идеально работает. Что в этих скриптах есть чего нет в остальных?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 43
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения