[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3996692#p3996692"]Но таки я бы посоветовал переписать с нуля.[/uquote]
Проект grbl
Под стм тут - https://github.com/robomechs/6-AXIS-USBCNC-GRBL
оригинал тут - https://github.com/gnea/grbl/releases
Боюсь что с нуля писать его долго...
и если и писать, то на аппаратных ШИМ каналах таймеров.
А для этого собирать на той СТМ где они есть = Black pill (STM32F411CEU6 Core Board)
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3996692#p3996692"]Да легко там все макросами делается.[/uquote]
Подводные камни есть?
Компиляция под STM32 с помощью gcc
- Реклама
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: Компиляция под STM32 с помощью gcc
[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3996692#p3996692"]я бы посоветовал переписать с нуля. Это быстрей будет.[/uquote]
Поддерживаю!
Буквально недавно разбирался с USB в STM'ках.Читал исходники той лапши, что Куб нагенерировал - там поседеть можно пока они через десяток переливаний одних и тех же значений из функции в функцию доберутся наконец до регистров. Кстати, до них я так и не добрался. В opencm3 чуть получше, но регистры они тоже спрятали мама не горюй. Как результат, самый вменяемый код как раз у Eddy_Em и оказался. Правда, я так и не понял как у него идет работа с EPnR и еще пара моментов, но уж такую мелочь можно и самостоятельно расковырять.
Как результат пустое USB устройство из Куба весит 14 кБ, а переписанный по-человечески - 3 кБ.
Поддерживаю!
Буквально недавно разбирался с USB в STM'ках.Читал исходники той лапши, что Куб нагенерировал - там поседеть можно пока они через десяток переливаний одних и тех же значений из функции в функцию доберутся наконец до регистров. Кстати, до них я так и не добрался. В opencm3 чуть получше, но регистры они тоже спрятали мама не горюй. Как результат, самый вменяемый код как раз у Eddy_Em и оказался. Правда, я так и не понял как у него идет работа с EPnR и еще пара моментов, но уж такую мелочь можно и самостоятельно расковырять.
Как результат пустое USB устройство из Куба весит 14 кБ, а переписанный по-человечески - 3 кБ.
- Eddy_Em
- Собутыльник Кота
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
- Контактная информация:
Re: Компиляция под STM32 с помощью gcc
[uquote="COKPOWEHEU",url="/forum/viewtopic.php?p=4004012#p4004012"]не понял как у него идет работа с EPnR[/uquote]
Да просто все: макрос KEEP_DTOG_STAT сохраняет значение DTOG'ов и STAT'ов, а макрос KEEP_DTOG — только DTOG'ов. Дальше уже в usb_lib.c: в обработчике прерываний usb_lp_can_rx0_isr() проверяем флаги, если что-то пришло, читаем/пишем, вызываем обработчик для конкретной точки. В этих обработчиках уже и сбрасываются флаги STAT/CTR, например.
Да просто все: макрос KEEP_DTOG_STAT сохраняет значение DTOG'ов и STAT'ов, а макрос KEEP_DTOG — только DTOG'ов. Дальше уже в usb_lib.c: в обработчике прерываний usb_lp_can_rx0_isr() проверяем флаги, если что-то пришло, читаем/пишем, вызываем обработчик для конкретной точки. В этих обработчиках уже и сбрасываются флаги STAT/CTR, например.
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: Компиляция под STM32 с помощью gcc
НеДа просто все: макрос KEEP_DTOG_STAT
Вспомнил что меня еще в вашем коде смущало: функция wr0. Кажется, вы в прерывании ждете пока передастся посылка целиком.
-
usavich
- Первый раз сказал Мяу!
- Сообщения: 21
- Зарегистрирован: Вс июн 04, 2023 10:26:50
- Откуда: Там, за горизонтом.
Re: Компиляция под STM32 с помощью gcc
[uquote="AlanDrakes",url="/forum/viewtopic.php?p=3766801#p3766801"]Кусочек из makefile'а:...
P.S.: Это работает в linux'е. Win* система потребует всё правильно переименовать. Ну и пути, естественно.
[/uquote]
Подтверждаю, в каноничной XP работает. Поприседать пришлось изрядно - GD сделала "как у бабочек, только немного по другому".
P.S.: Это работает в linux'е. Win* система потребует всё правильно переименовать. Ну и пути, естественно.
[/uquote]
Подтверждаю, в каноничной XP работает. Поприседать пришлось изрядно - GD сделала "как у бабочек, только немного по другому".
Заповедь инженера #1. "Работает? Не трожь!"
- Реклама
Re: Компиляция под STM32 с помощью gcc
[uquote="usavich",url="/forum/viewtopic.php?p=4473948#p4473948"]P.S.: Это работает в linux'е. Win* система потребует всё правильно переименовать. Ну и пути, естественно.
.[/uquote]
поставте cygwin, установите из комплекта cigwin make, и ничего менять не потребуется. правда cygwin давно уже не поддерживет winXP, но у меня в виртуалке остался. версию пишет 2016 год. 4.2.1
.[/uquote]
поставте cygwin, установите из комплекта cigwin make, и ничего менять не потребуется. правда cygwin давно уже не поддерживет winXP, но у меня в виртуалке остался. версию пишет 2016 год. 4.2.1


