STM32代码(不完全)

1.内置LED闪烁

STM32最小系统板拥有内置LED,连接芯片PC13口
1+.根据cubemx生成代码模板;(网上有详细教程)
2+.在模板的主函数处的while(1)处,填写代码(如图):
在这里插入图片描述

	//HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET)是HAL库中自定义的管脚,可以自行查看
	HAL_Delay(50);
	HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);//RESET低电平
	HAL_Delay(50);
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);//SET高电平

2.按键

  • 三个按键,两个LED
  • 实现功能:按键1按下,控制LED1亮灭;按键2按下,控制LED2亮灭;按键3按下,控制LED1和LED2亮灭
  • 管脚设置,详细上拉下拉设置,之前写过,可以翻阅查看

在这里插入图片描述

  • 代码
    在这里插入图片描述
		#define KEY0			HAL_GPIO_ReadPin((GPIO_TypeDef *)GPIOC, (uint16_t) GPIO_PIN_5)  //宏定义按键,方便下边使用
		
		#define KEY1			HAL_GPIO_ReadPin((GPIO_TypeDef *)GPIOA, (uint16_t) GPIO_PIN_15)
		
		#define KEYWKUP		HAL_GPIO_ReadPin((GPIO_TypeDef *)GPIOA, (uint16_t) GPIO_PIN_0)
		
		if(KEY0==0)HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET);
		if(KEY1==1)HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_RESET);	

		
		if(KEY1==0)HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET);
		if(KEY0==1)HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
		
		if(KEYWKUP==0)HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET);	HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_SET);
		if(KEYWKUP==1)HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);	HAL_GPIO_WritePin(LED0_GPIO_Port, LED0_Pin, GPIO_PIN_RESET);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值