Comments 17
Самый главный недостаток STM32 - слишком популярные, из-за этого и цены стали не адекватные и не поддельный чип купить проблема большая. Особенно когда "санкции только на пользу" а из поставщиков остались только китайцы.
Второй главный недостаток - это наличие "графических" средств конфигурации и генерации шаблонных проектов. Что существенно снижает порог входа, но не делает микроконтроллер проще, и не отменяет необходимость чтения даташитов. После изучения экосистемы STM32 работа с любым контроллером этого семейства не вызывает особой сложности. А познание RP2040 пригодится только для работы с RP2040
ST еще в 2010 годах (примерно) вкинуло в рекламу больше денег, чем было потрачено на разработку этих МК (они сами об этом писали). И медленно но верно реклама дала плоды. Примерно чуть позже начало штормить уютненький мир pic и atmel...и мы все знаем, что произошло дальше.
Но тем не менее, мк жирные, и даже за оверпрайс они хорошие. Китайцы бы их не копировали, будь это не так.
Очень странно что не используется FIFO.
Раз уж вы решили чему-то полезному научить "ардуинщиков", то на полпути не стоило останавливаться :)
Тогда уж и stdout отправить в uart, что бы весь набор puts, printf и т.д. заработал.
ИМХО, конечно. Но FIFO имеет смысл использовать когда есть непрерывный стабильный поток данных на передачу. Например, оцифрованный сигнал какой-нибудь.
Забавно, автор предлагает ядро, о котором никто не знает, комунити у которого около нулевое, но при этом хейтит стм32 за сложность.
Спасибо. Пишите еще. В сети действительно очень мало материалов по нативному программировани под R2040. Одни ардуинщики и питонщики (
Перфекционисты спрашивают, что это за прикол - программный код в виде скриншотов, все разной ширины, у одного лапка соскальзывает край обрезан?
Вот никогда не понимал этих переизобретений колёс
Все уже написано за нас https://docs.embassy.dev/embassy-rp/git/rp2040/uart/struct.BufferedUart.html
Просто делаешь uart.write(&data).await
и ВСЕ
где printf? Прежде чем ругать ардуинщиков, откройте там учебник по программированию где начинают с hello world и какие стандартные иснструменты используют в отрасли, когда стараются получать результат которым могут пользоваться другие.
Stdin stdout тут не обязателен, достаточно релизаций _read _write
Про stm32 - для слабых вариантов libopencm3 попробуйте, все отлично без графических конфигураторов. Для мощных - какую-нить из опенсорсных rtos.
Rp4020 - нет вообще никакого readout protection, без него мало на что годится...
Ну что сказать. На первом же скрине (с которого нельзя скопировать код) смутили настройки UART. 2 стоп-бита и контроль четности - за то зачем???
Второе: я всегда считал, что логгирование это запись некой отладочной информации в журнал. Автор предлагает реализацию "логгирования в UART". Имхо это не логгирование, а debug out в чистом виде.
Функция которая в Irq set exclusive handler срабатывает два раза подряд. Пробовал сбрасывать как у вас флаг прерывания - не помогает
RP2040. Асинхронный вывод в UART по прерываниям