STM32F103C8T6 GPIOA->BSRR = GPIO_BSRR_BS5; 代码解析
STM32F103C8T6 GPIOA->BSRR = GPIO_BSRR_BS5; 代码解析
这段代码是将 STM32F103C8T6 微控制器的 GPIOA 端口的第 5 个引脚设置为高电平。
代码解释:
- GPIOA: 指向 GPIOA 端口的指针。* BSRR: GPIO 端口的位设置/重置寄存器 (Bit Set/Reset Register)。* GPIO_BSRR_BS5: 一个预定义的宏,用于设置 BSRR 寄存器中对应 GPIOA 第 5 位的位。
工作原理:
- BSRR 寄存器用于快速设置或清除 GPIO 引脚的输出电平,无需进行读取-修改-写入操作。* 向 BSRR 寄存器的 BS 位写入 '1',可以将对应 GPIO 引脚设置为高电平。* 'GPIO_BSRR_BS5' 宏定义了 BSRR 寄存器中对应 GPIOA 第 5 位的 BS 位,将 'GPIO_BSRR_BS5' 写入 BSRR 寄存器,就会将 GPIOA 的第 5 位引脚设置为高电平。
总结:
'GPIOA->BSRR = GPIO_BSRR_BS5;' 这行代码简洁高效地实现了将 STM32F103C8T6 的 GPIOA 端口第 5 个引脚设置为高电平的功能。
原文地址: https://www.cveoy.top/t/topic/fNop 著作权归作者所有。请勿转载和采集!