当前位置:   article > 正文

STM32代码(不完全)

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高电平
  • 1
  • 2
  • 3
  • 4
  • 5

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);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/778201
推荐阅读
相关标签
  

闽ICP备14008679号