Управление режимом выводов: различия между версиями

Материал из MIK32 микроконтроллер
(Новая страница: «Для выводов портов МК 32 могут быть установлены режимы 0-3. С режимами 0 и 2 связаны различны...»)
 
Нет описания правки
 
(не показаны 2 промежуточные версии этого же участника)
Строка 7: Строка 7:
int main() {
int main() {
   ...
   ...
   PAD_CONFIG->PORT_1_CFG = 1 << (3 << 1); //Установка режима 01 (GPIO) вывода 13
   PAD_CONFIG->PORT_1_CFG = 1 << (PIN << 1); // Установка вывода PIN
  // порта 1 в режим GPIO (режим 1)
   ...
   ...
}
}
</syntaxhighlight>
</syntaxhighlight>

Текущая версия от 19:25, 27 марта 2023

Для выводов портов МК 32 могут быть установлены режимы 0-3. С режимами 0 и 2 связаны различные функции периферий, режим 1 - режим порта ввода-вывода, режим 3 - аналоговый. При старте микроконтроллера большинство выводов устанавливаются в режим 0.

Для установки режима вывода нужно записать в регистр PORT_0_CFG, PORT_1_CFG или PORT_2_CFG (в зависимости от порта вывода) соответствующее значение по смещению 2*N. Выводы в регистре нумеруются аналогично номеру в порту, начиная с 0-го бита, по два бита на вывод.

#include <pad_config.h>
...
int main() {
  ...
  PAD_CONFIG->PORT_1_CFG = 1 << (PIN << 1); // Установка вывода PIN
  // порта 1 в режим GPIO (режим 1)
  ...
}