Ножки PB3 и PB4 микроконтроллера STM32F103 и аналогичных моделей используются для порта отладки JTAG/SWD.
Чтобы освободить их для использования в качестве ввода-вывода, необходимо отключить JTAG и SWD отладочные порты с помощью специального регистра AFIO_MAPR. Перед этим необходимо активировать (тактировать) этот регистр следующим образом.
(* тактируем AFIO *) SYSTEM.GET(MCU.RCCAPB2ENR, x); SYSTEM.PUT(MCU.RCCAPB2ENR, x + {0});
(* освобождаем B3 & B4 *) SYSTEM.GET(MCU.AFIOMAPR, x); SYSTEM.PUT(MCU.AFIOMAPR, x + {26} - {24,25})
После этого ножки PB3 и PB4 возможно сконфиругировать как стандартные порты ввода-вывода GPIO:
PinCfg.Configure(PinCfg.B, 3, PinCfg.outputPushPull2MHz); PinCfg.Configure(PinCfg.B, 4, PinCfg.outputPushPull2MHz);
где PinCfg := MicroSTM32F10xPinCfg
и MCU := MicroSTM32F10xxD
.