Удобная реализация работы с портами GPIO для STM32F0

По ходу дела решил поделиться своим способом работы с портами GPIO у STM32F030, так как считаю её самой удобной из всех, что я видел. Использовать SPL мне религия не позволяет, какие-то сторонние велосипеды – не моё, так что в свет вышел мой собственный)

Коротко – это просто описанный каждый бит каждого регистра. Плюс описанные комбинации для задания альтернативных функций выводов, и т.д. и т.п. Выглядит это в итоге так:

GPIOA_MODER |= GPIO_MODER_1_OUT | GPIO_MODER_0_OUT | GPIO_NODER_6_AF;
GPIOA_OSPEEDR |= GPIO_OSPEEDR_0_FAS | GPIO_OSPEEDR_1_FAS;
GPIOA_OTYPER |= GPIO_OTYPER_0_OD | GPIO_OTYPER_1_OD;
GPIOA_AFRL |= GPIO_AFRL_6_A1;
GPIOA_PUPDR |= GPIO_PUPDR_3_UP | GPIO_PUPDR_4_UP | GPIO_PUPDR_5_UP;

В итоге, получается быстро , а главное – интуитивно понятно настроить порт. Большое количество пинов так настраивать не сильно удобно, но мне пока и не приходилось, учитывая количество оных у STM32F030F4P6:D

Ссылка на файл: defines

 

2 Replies to “Удобная реализация работы с портами GPIO для STM32F0

  1. Очень все понятно. Написал какие-то строки. Для кого? Для тех кто это уже знает? А зачем? А для тех кто этого не знает? Настроил порт – очень хорошо. А для чего ты его настраивал? Что этот порт должен делать? В чем была проблема? Похоже на то, что админ просто хотел хоть какой то контент на сайт кинуть. Сайт пустой. Читать нечего, но почему-то в поиске Гугла на первой странице. Другие сайты с такой же тематикой глубоко в ….. Странно.

    1. Прошу заметить, это не сайт туториалов, это личный блог, где я размещаю свои наработки по мере появления времени на это размещение. Если есть разумные вопросы по применению моих участков кода – готов на них ответить, мне не сложно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *