-
- При беглом анализе сложилось впечатление что состояние пинов Marlin генерирует программно, получая прерывание от таймера. Более высокую частоту чем таймер получает просто в программном цикле внутри прерывания, несколько раз программно дрюкая ножку. И похоже что система не работает в мультитаске, на генерирование STEP скорее всего тратится 100% времени, прерываясь на задачи опроса в тот момент когда один из движков доезжает до конца. Прерываний несколько, но они все RxTx(42 знак., 23.06.2023 16:20, ссылка)
- Ну, я в его коде ковырялся: думал, может себе что-нибудь ценное
выдерну. Eddy_Em(1355 знак., 21.06.2023 14:01, ссылка)
- "Я код на калокубе даже длинной палкой тыкать не буду, чтобы не заляпаться!" А где ты там STM32Cube узрел? Файлы и функции называются HAL? так это еще не Cube, это просто Hardware Access Layer, их собственный код, к HAL от ST отношения не имеет. Но и там HAL/LL/CMSIS можно использовать как библиотеку без собственно кодогенератора STM32Cube. - RxTx(23.06.2023 22:30)
- "Жаль, правда, не хватило таймеров" Конечно, не хватило, раз ты на 8 движков зачем-то задействовал 8 аппаратных таймеров STM32. Аппаратный таймер считает и перегружает значение за 0 тактов, бесплатно. Зато обнуление/совпадение таймера приводит к вызову ISR = 12t+10t. Но если считать счетчики программно в ISR срабатывающем с высокой частотой, то это +4 добавочных такта на каждый таймер (decrement счетчика, и условный переход если-не-0): LDR reg; SUBS 1; STR reg; CBNZ. А RxTx(132 знак., 23.06.2023 22:26)
- Умеет флоаты, Марлин умудрился, программно. В G-коде практически
всё параметры в плавающей точке. А UART для управления драйверами
софтовый - в чём проблема, нужно редко, чтобы настроить и изредка
вычитывать ошибки. Для широты номенклатуры поддерживаемых
контроллеров, программный интерфейс - преимущество и нормальное
решение. Это не рукожопие, а нормальный инженерный подход, решающий
задачу. Nikolay_Po(252 знак., 21.06.2023 14:08)
- Ну, я подозреваю, что "куб" они использовали ради
"универсализации". Eddy_Em(469 знак., 21.06.2023 15:06)
- "Ты непонел". Куча готовых плат в уже существующих принтерах у
пользователей с Mega2560 уже была. Выбрать контроллер под задачу
любой дурак сможет. А инженер сделает под имеющийся. Nikolay_Po(399 знак., 21.06.2023 15:53)
- Ну, я-то зоопарки поддерживать не собираюсь. Eddy_Em(1402 знак., 21.06.2023 16:18)
- Всё у тебя хорошо. Просто прошу не называть ...ом работу других
людей, сделанную совсем в других условиях, для других целей и в
других масштабах. Только лишь потому, что у тебя другие условия и
другие цели. - Nikolay_Po(21.06.2023 23:52)
- Оспадя... Да пусть называет. От этого что-то изменится? Это как
срач ПИК-АВР. - mse homjak(22.06.2023 12:18)
- У, срачи - это классно! Eddy_Em(77 знак., 22.06.2023 12:34)
- Это было актуально ещо на Телесиське. Лет 20 назад. - mse homjak(22.06.2023 12:37)
- Тогда я только в сраче "виндовз мест дай" на ЛОРе и других форумах участвовал... Eddy_Em(314 знак., 22.06.2023 12:46)
- Это было актуально ещо на Телесиське. Лет 20 назад. - mse homjak(22.06.2023 12:37)
- У, срачи - это классно! Eddy_Em(77 знак., 22.06.2023 12:34)
- Оспадя... Да пусть называет. От этого что-то изменится? Это как
срач ПИК-АВР. - mse homjak(22.06.2023 12:18)
- Всё у тебя хорошо. Просто прошу не называть ...ом работу других
людей, сделанную совсем в других условиях, для других целей и в
других масштабах. Только лишь потому, что у тебя другие условия и
другие цели. - Nikolay_Po(21.06.2023 23:52)
- Ну, я-то зоопарки поддерживать не собираюсь. Eddy_Em(1402 знак., 21.06.2023 16:18)
- "Ты непонел". Куча готовых плат в уже существующих принтерах у
пользователей с Mega2560 уже была. Выбрать контроллер под задачу
любой дурак сможет. А инженер сделает под имеющийся. Nikolay_Po(399 знак., 21.06.2023 15:53)
- Ну, я подозреваю, что "куб" они использовали ради
"универсализации". Eddy_Em(469 знак., 21.06.2023 15:06)