Система TronXY X5S (Marlin) - Очень медленные меню

Это моя плата MKS Melzi v2.0 клонированная

MKS Melzi v2.0 cloned

Я заменил MCU (фактическую микросхему) на новый ATmega1284P 16 МГц, потому что старый MCU был поврежден - причина заключалась в том, что вентилятор запылился, а линия электропередачи стала нестабильной. Я заменил MCU на точно такую же модель.

Я много раз пытался прошить его с помощью usbasp. Это работает, но та же проблема, что и при загрузке системных меню, по-прежнему настолько медленная, что это болезненно. Это занимает минуты на старой версии Marlin 1.1.6, часы на новой версии Marlin 2.x

Я думаю, что это что-то связанное с MCU (частотами кварцевых генераторов). Возможно, система использует внутренний кристалл, поэтому микроконтроллер застрял.

  1. Как я могу переключиться на внешний кристалл?
  2. Если это не так, то что может вызвать проблему?

Ссылки на прошивку:

, 👍2

Обсуждение

Просто в качестве примечания, Ваша плата выглядит как клон материнской платы Zonestar ZRIB v2, которая происходит от Melzi, @craftxbox


1 ответ


Лучший ответ:

1

Либо:

  • У вас установлен предварительный калибровщик часов, или;
  • Вы не используете внешний генератор на плате.

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

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

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

Подробности см. в спецификации ATmega1284P.


Прескалер

Раздел 7.12.2 CLKPR - Регистр предварительной настройки часов, страница 38. Это относится к общей тактовой частоте и показывает регистр CLKPR в конкретных битах 3:0.

7.12.2 CLKPR - Clock Prescale Register

Или раздел 7.11 Прескалер Системных Часов

7.11 System Clock Prescaler

Внешние часы

Раздел 7.2 Источники тактовойсинхронизации показывает, что биты CKSEL 3:0 устанавливают, какие часы используются, внутренние или внешние. Вы, вероятно, хотите использовать внешние часы, поэтому установите все четыре бита на ноль

7.2 Clock Sources


Чтобы настроить или проверить любой из регистров, вы должны использовать usbasp. Я не могу вспомнить, что это за команды. Если вы посмотрите на SE.Arduino или SE.Electronics, я уверен, что есть вопрос с ответом. Я смутно помню, что у меня была такая же проблема с АТтини.


,

Я протестировал с помощью этой команды "avrdude-c usbasp-patmega1284p-U lfuse:w:0b01100000:m" значение по умолчанию равно 0x62 = 01100010, поэтому я изменил биты 3:0 на нулевое новое значение 0x60 = 01100000, и MCU больше не отвечает., @ioen jid

Есть ли перемычка, которую вам нужно сделать, чтобы применить внешние часы? Может быть, этого не хватает. На плате явно присутствует кристалл 16 МГц. Можете ли вы проверить (с помощью осциллографа), есть ли тактовый сигнал, *как* от кристалла, так и на выводе часов MCU? В противном случае решение будет непростым. Пока чип не разрядился, вам нужно будет применить внешние часы, см. [этот пост](https://www.avrfreaks.net/forum/tutsoft-recovering-locked-out-avr). Возможно, вам придется удалить SMD или добавить провод к часам, внешним по отношению ко всей плате, например, с помощью таймера 555., @Greenonline

Я не вижу перемычки для выбора часов, глядя на изображение в [это PDF](https://github.com/makerbase-mks/Datasheet/blob/master/Chinese%20datasheet/MKS%20MELZI%20V2.0%E6%95%B0%E6%8D%AE%E6%89%8B%E5%86%8C.pdf), похоже, это "жестко запрограммировано". Возможно, проверьте, правильно ли припаяна тактовая линия, путем визуального осмотра и проверки с помощью осциллографа. Это просто звучит так, как будто не проходит внешний тактовый сигнал. Проверьте схему синхронизации, может быть, поврежден кристалл или пара конденсаторов емкостью 22 пФ (C11) или другие дополнительные компоненты (C14 или R24)?, @Greenonline

Я заменил кристалл на новый и проверил линию - все подключено, но проблема та же. Моя плата немного отличается от оригинала, поэтому у меня нет "C11", "C14", " R24`. Его производит Tronxy "cxy v. 2-0508". У меня есть два конденсатора на кристалле, на каждой ножке есть по одному здесь [link](https://www.tronxyonline.com/Tronxy-Ramps1-4-Update-Version-3D-Printer-Reprap-mainboard-CXY-V-2-p69319.html) страницы Tronxy, @ioen jid

Трудно увидеть названия/номера компонентов как с вашей фотографии, так и с фотографии в ссылке, но, похоже, есть два резистора (рядом друг с другом) и два конденсатора с другой стороны (в строке). Помимо проверки того, хороши ли компоненты (R и C), вам нужно будет проверить, есть ли тактовый сигнал с помощью осциллографа, чтобы увидеть, что происходит на самом деле - в противном случае мы просто гадаем. Либо это, либо примените внешний источник синхронизации, чтобы запустить микроконтроллер, чтобы вы могли снова использовать внутренние часы (0x62). Затем вы можете проверить настройку прескалера., @Greenonline

Если MCU снова настроен на использование внутренних часов, то скорость будет 8 МГц, так что я должен прошить Marlin, используя "1284p" с опцией "8 МГц", а не "16 МГц", верно ? На осциллографе сигнал выглядит странно, это не квадратный сигнал. Единственная надежда попросить Тронкси о помощи. я скоро обновлю решение, @ioen jid

Внутренняя тактовая частота будет определяться значением прескалера. Вы проверили, что это было, прежде чем устанавливать предохранители для внешних часов? Форма сигнала не была бы квадратной, если бы были проблемы с емкостью (утечка и т.д.). Возможно, была повреждена одна из дорожек на печатной плате? Не могли бы вы опубликовать **новый вопрос** об отсутствующих внешних часах (поскольку на ваш первоначальный вопрос был дан ответ, это новый вопрос) и добавить фотографию/скриншот вывода области, показывающий форму сигнала? В новом вопросе вернитесь к этому вопросу, используя URL-адрес этого вопроса, поскольку они связаны., @Greenonline

Вам нужно задать *новый вопрос* для нового выпуска пропавших часов. Как только вы откроете новый вопрос, я могу скопировать для вас информацию из этих комментариев. Заранее большое спасибо., @Greenonline

спасибо, что уделили мне свое время, @ioen jid

Добро пожаловать :-), @Greenonline