STM32(7):中断方式让按键点亮LED

概述

上一节“STM32(5):轮训方式让按键点亮LED”实现了基于轮训的方式,实现点亮LED灯,本节将基于另外一种通信方式:中断方式,来实现点亮LED。

代码概览

void delay(unsigned int time)
{
		unsigned int i = 0;
		while (time--)
		{
				i = 1000000;
				while (i--)
						;
		}
}

u8 key_read()
{
		u8 result = 0;
		// delay(1);
		// 注意这里是读取InputDataBit
		result = GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_12);

		return result;
}

void led_init()
{
		GPIO_InitTypeDef led;

		RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
		led.GPIO_Pin = GPIO_Pin_13;
		led.GPIO_Mode = GPIO_Mode_Out_PP;
		led.GPIO_Speed = GPIO_Speed_50MHz;
		GPIO_Init(GPIOC, &led);
		GPIO_WriteBit(GPIOC, GPIO_Pin_13, Bit_SET);
}

void key_init()
{
		GPIO_InitTypeDef key;

		RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
		key.GPIO_Pin = GPIO_Pin_12;
		key.GPIO_

你可能感兴趣的:(源码解读,STM32入门之旅,STM32,stm32)