STM32学习---GPIO和按键(流水灯学习)

本文详细介绍了STM32微控制器中GPIO口的配置与使用,通过实例展示了如何实现流水灯效果。同时,探讨了如何接入和处理按键输入,为初学者提供了基础的硬件交互实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//main的完整过程:
int main(void){
	 
	LED_GPIO_CONFIG();	//定义LED灯;
	
	
	KEY_GPIO_CONFIG();	//定义按键;
	 
	 //循环判断按键的过程:
	 while(1){
			if((KEY_SCANF(GPIOC,GPIO_Pin_5)==0)){				//确定按键完全按下
				if(GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_2)==0)	//当灯都亮起时,GPIO_ReadOutputDataBit(GPIOD,GPIO_Pin_2)读到输出数据;
				      GPIO_SetBits(GPIOD,GPIO_Pin_2);			//置位,灯灭;
				else
					GPIO_ResetBits(GPIOD,GPIO_Pin_2);			//复位,灯亮
			}
	}
}
 
//关于KEY的操作;
 //实现操作:(初始时灯亮)按一下按键后灯灭,再按一下灯亮;
 
 先按之前的代码点亮一个LED灯;
 GPIO_InitTypeDef GPIO_D;
	 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE);

	 GPIO_D.GPIO_Pin=GPIO_Pin_2;
	 GPIO_D.GPIO_Mode=GPIO_Mode_Out_PP;
	 GPIO_D.GPIO_Speed=3;
	 GPIO_Init(GPIOD,&GPIO_D);

//然后定义按键;
void KEY_GPIO_CONFIG(void)
{
	GPIO_InitTypeDef GPIO_C;
	RCC_A
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值