stm32f103输出高电平和低电平的代码有什么区别吗
时间: 2023-12-23 21:03:32 浏览: 215
STM32定时器捕获高电平时间程序
5星 · 资源好评率100%
输出高电平和低电平的代码区别主要在于控制寄存器的设置不同。
在STM32F103中,每个IO口都有一个控制寄存器,可以通过设置控制寄存器来控制IO口的输出状态。具体来说,当要输出高电平时,需要将控制寄存器中的输出状态位设置为1;当要输出低电平时,需要将输出状态位设置为0。
因此,输出高电平和低电平的代码区别在于设置控制寄存器中的输出状态位的值不同。例如,以下代码实现了将PA0口输出高电平和低电平的功能:
输出高电平的代码:
```
GPIOA->BSRR = GPIO_BSRR_BS0; // 设置PA0口输出高电平
```
输出低电平的代码:
```
GPIOA->BSRR = GPIO_BSRR_BR0; // 设置PA0口输出低电平
```
可以看到,输出高电平的代码将控制寄存器中的输出状态位设置为1,而输出低电平的代码将输出状态位设置为0,这是两者的区别所在。
阅读全文