#define POWER(A) A == 0?GPIO_SetBits(GPIOA,GPIO_Pin_15):GPIO_ResetBits(GPIOA,GPIO_Pin_15)//POWER
void IOout_Init() //端口初始化
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA | RCC_AHBPeriph_GPIOB, ENABLE); // 开启外设时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_15; // LED引脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; // 输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // 高速输出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; // 推完输出
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; // 无上下拉(浮空)
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6; // LED引脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT; // 输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // 高速输出
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; // 推完输出
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; // 无上下拉(浮空)
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_ResetBits(GPIOA, GPIO_Pin_2);
GPIO_SetBits(GPIOA, GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_15);
GPIO_SetBits(GPIOB, GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6);
POWER(TRUE);
}
STM32f030K6T6 GPIO初始化配置代码
最新推荐文章于 2023-12-09 17:38:12 发布