跑马灯实验中IO口是输出口,下面我们研究STM32的IO口作为输入口:
STM32的IO口输入使用时是通过调用做输入使用的时候,是通过调函数GPIO_ReadInputDataBit()来读取 来读取 IO口的状态。
Mini32上面有三个按钮:KEY0/KEY1、WK_UP来控制2个LED DS0和DS1
按键实验中需要额外引入key.c和h,然后就可以开始分析代码了
//按键初始化函数
//PA15和PC5 设置成输入
void KEY_Init(void)
{
0.首先设置结构体
GPIO_InitTypeDef GPIO_InitStructure;
1.时钟设置 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOC,ENABLE);//使能PORTA,PORTC时钟
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);//关闭jtag,使能SWD,可以用SWD模式调试
2.设置针脚,输入模式,速度不用设置了
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;//PA15
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入
GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化GPIOA15
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;//PC5
GPIO_InitStructure.GPIO_Mode &#