先上程序!!!(标准库方式实现PB0点亮)
int main(void)
{
RCC->IOPENR |=1<<1;//打开GPIOB的使能
GPIOB->MODER |=1<<0;//配置01输出模式(PB0的)
GPIOB->MODER &=~(1<<1);//配置01输出模式
GPIOB->OTYPER &=~(1<<0);//配置输出类型 推挽输出(PB0的)
GPIOB->OSPEEDR |=1<<0;//配置输出速度(PB0的)
GPIOB->OSPEEDR |=1<<1;//配置输出速度(PB0的)
while (1)
{
GPIOB->BRR=1<<0;//控制PB0输出低电平
}
}
(HAL库方式实现PB0点亮并且闪烁)
方法一:
while (1)
{ HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,0);//写输出数据
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,0);
HAL_Delay(500);//设置延时
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,1);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,1);
HAL_Delay(500);
}
方法二:
while (1)
{
HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_0);//IO口输出状态翻转
HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_1);
HAL_Delay(500);
}
1、GPIO简介(IO)
--GP General-purpose 通用
--input 输入
--output 输出
应用:(输出)LED灯、数码管、继电器(小电流控制大电流)
(输入):各种传感器、按键、光敏、adc
程序里:GPIOX,GPIO_PIN_0(GPIOB,GPIO_PIN_0)
通用输入输出接口GPIO是嵌入式系统、单片机开发过程中最常用的接口,用户可以通过编程灵活的对接口进行控制,实现对电路板上LED、数码管、按键等常用设备控制驱动,也可以作为串口的数据收发管脚,或AD的接口等复用功能使用。因此其作用和功能是非常重要的。
2. IO框图