Сегодня я хотел бы рассмотреть новый камень (в данный момент не очень) камень от создателей Raspberry Pi - RP2040. Это 2-х ядерный микроконтроллер на 2-х ядрах Cortex-M0+ с максимальной частотой 133MHz, 264kB SRAM и отсутствующей внутренней flash памяти, зато возможность подключения до 16mb внешней. Звучит достаточно неплохо с учетом того что STM32 сейчас практически не достать, но все ли хорошо с поддержкой? Сегодня попробуем выяснить.
Сегодня мы рассмотрим самый интересный блок в новых контроллерах от Raspberry Pi Foundation RP2040 - PIO или programmable input/output block. В теории он должен позволить создавать модули кастомный периферии с чем сегодня мы попробуем разобраться.
Для одного из моих проектов у меня оказалась отладочная плата LDM-HELPER-K1921BK01T-FULL, как очевидно из названия платы и статьи на контроллере K1921VK01T. Вместе с ней шол дополнительный модуль LDM-HELPER-MB501-FULL. По сути все что нужно знать про эти 2 платы это их 2 шиматика раз и два, дабы вы могли сопоставить мои примеры со схемой вашей отладочной платы. По ходу статьи мы настроем среду для работы с данным контроллером в среде VSCode, и напишем простенькую программу.
В этой заметке я соберу короткие заметки касательно работы в CubeIDE, думаю результатами можно будет воспользоваться для любой IDE на основе eclipse. Если (вдруг) вам интересно мое мнение, то лучше не используйте CubeIDE, а настройте VScode, об этом есть статья в блоге.