×
嵌入式 > 技术百科 > 详情

STM8学习笔记(二):GPIO的输入

发布时间:2024-05-19 发布时间:
|

这两天有点忙,焊了四个按键,在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的一些定义



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ADI 高精度低功耗精密放大器