这两天有点忙,焊了四个按键,在LED灯的基础上,完成GPIO的输入
这次用的是ST公司的官方库
组要的仍是要了解GPIO的几个寄存器的功用
一起,要好好的了解它官方库里面的函数界说和用法
/**************************************************************/
void GPIO_Configuration(void)
{
GPIO_Init(LEDS_PORT, (LED1_PIN | LED2_PIN | LED3_PIN | LED4_PIN |
LED5_PIN | LED6_PIN | LED7_PIN | LED8_PIN),
GPIO_MODE_OUT_PP_HIGH_FAST);
GPIO_Init(KEYS_PORT,(KEY1_PIN | KEY2_PIN | KEY3_PIN | KEY4_PIN),
GPIO_MODE_IN_PU_NO_IT);//装备PF7,PF6,PF5,PF4上拉输入
}
这个是GPIO的装备
/****************************************************************/
#define LEDS_PORT (GPIOD)
#define LED1_PIN (GPIO_PIN_7)
#define LED2_PIN (GPIO_PIN_6)
#define LED3_PIN (GPIO_PIN_5)
#define LED4_PIN (GPIO_PIN_4)
#define LED5_PIN (GPIO_PIN_3)
#define LED6_PIN (GPIO_PIN_2)
#define LED7_PIN (GPIO_PIN_1)
#define LED8_PIN (GPIO_PIN_0)
#define LED1_ON GPIO_WriteLow(LEDS_PORT,(LED1_PIN))
#define LED1_OFF GPIO_WriteHigh(LEDS_PORT,(LED1_PIN))
#define LED2_ON GPIO_WriteLow(LEDS_PORT,(LED2_PIN))
#define LED2_OFF GPIO_WriteHigh(LEDS_PORT,(LED2_PIN))
#define LED3_ON GPIO_WriteLow(LEDS_PORT,(LED3_PIN))
#define LED3_OFF GPIO_WriteHigh(LEDS_PORT,(LED3_PIN))
#define LED4_ON GPIO_WriteLow(LEDS_PORT,(LED4_PIN))
#define LED4_OFF GPIO_WriteHigh(LEDS_PORT,(LED4_PIN))
#define LED5_ON GPIO_WriteLow(LEDS_PORT,(LED5_PIN))
#define LED5_OFF GPIO_WriteHigh(LEDS_PORT,(LED5_PIN))
#define LED6_ON GPIO_WriteLow(LEDS_PORT,(LED6_PIN))
#define LED6_OFF GPIO_WriteHigh(LEDS_PORT,(LED6_PIN))
#define LED7_ON GPIO_WriteLow(LEDS_PORT,(LED7_PIN))
#define LED7_OFF GPIO_WriteHigh(LEDS_PORT,(LED7_PIN))
#define LED8_ON GPIO_WriteLow(LEDS_PORT,(LED8_PIN))
#define LED8_OFF GPIO_WriteHigh(LEDS_PORT,(LED8_PIN))
#define KEYS_PORT (GPIOF)
#define KEY1_PIN (GPIO_PIN_7)
#define KEY2_PIN (GPIO_PIN_6)
#define KEY3_PIN (GPIO_PIN_5)
#define KEY4_PIN (GPIO_PIN_4)
这个是IO的一些界说
呵呵,太长了,详细工程在附件中,写的有点冗长。。。
不断的总结,不断的前进