主函数代码
/**
******************************************************************************
* @file main.c
* @author fire
* @version V1.0
* @date 2015-xx-xx
* @brief 使用按键控制彩灯
******************************************************************************
* @attention
*
* 实验平台:野火 STM32 F429 开发板
* 论坛 :http://www.firebbs.cn
* 淘宝 :https://fire-stm32.taobao.com
*
******************************************************************************
*/
#include "stm32f4xx.h"
#include "./led/bsp_led.h"
#include "./key/bsp_key.h"
/**
* @brief 主函数
* @param 无
* @retval 无
*/
int main(void)
{
/* LED 端口初始化 */
LED_GPIO_Config();
/*初始化按键*/
Key_GPIO_Config();
/* 轮询按键状态,若按键按下则反转LED */
while(1)
{
if( Key_Scan(KEY1_GPIO_PORT,KEY1_PIN) == KEY_ON )
{
/*LED1反转*/
LED1_TOGGLE;
}
if( Key_Scan(KEY2_GPIO_PORT,KEY2_PIN) == KEY_ON )
{
/*LED2反转*/
LED2_TOGGLE;
}
}
}
/*********************************************END OF FILE**********************/
说明
这段代码是一个用于控制彩灯的嵌入式C语言程序,它运行在野火STM32 F429开发板上。以下是代码的主要功能和组成部分的解释:
1.文件注释部分:在代码开头有一段注释,用于提供关于该文件的基本信息,包括作者、版本、日期、简要说明以及其他相关信息。这是一种标准的代码注释风格,用于帮助开发人员理解和维护代码。
2.包含头文件:代码中包含了一些用于STM32开发的头文件,如"stm32f4xx.h"和自定义的LED和按键控制的头文件("./led/bspled.h"和"./key/bspkey.h")。这些头文件包含了必要的宏定义、函数原型和其他信息,以便程序能够与硬件进行交互。
3.主函数:主函数是程序的入口点,它执行程序的主要逻辑。主要的步骤包括:
4.LED初始化:通过调用LED_GPIO_Config()函