meiyaolei 发表于 2023-1-22 21:54

【AT-START-F437-测评】2023年第一测评 点灯系列

本帖最后由 meiyaolei 于 2023-1-22 21:56 编辑

【AT-START-F437-测评】开发环境:KEIL
工具:437开发板,数据线一条
测评内容:首先是搭好的环境点灯,再使LED闪烁,再以200MS流水灯。
1、环境搭建就是安装KEIL,再装安装PACK文件。
2、资料
寄存器:

框架:

3.原理图


4.代码
LED初始化:
void LED_Init(void)
{
gpio_init_type gpio_init_struct;
crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE );/* enable the led clock */
crm_periph_clock_enable(CRM_GPIOD_PERIPH_CLOCK, TRUE );
gpio_default_para_init(&gpio_init_struct);/* set default parameter */
gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;/* configure the led gpio */
gpio_init_struct.gpio_out_type= GPIO_OUTPUT_PUSH_PULL;
gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
gpio_init_struct.gpio_pins =GPIO_PINS_13 |GPIO_PINS_14|GPIO_PINS_15;
gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
gpio_init(GPIOD, &gpio_init_struct);
      /*关掉LED*/
      gpio_bits_set(GPIOD,GPIO_PINS_13);
      gpio_bits_set(GPIOD,GPIO_PINS_14);
      gpio_bits_set(GPIOD,GPIO_PINS_15);
}


LED定义:
#define LED2_GPIO_PORT            GPIOD                                    /* GPIO port */
#define LED2_GPIO_CLK             RCC_AHB_PERIPH_GPIOD                /* GPIO port clock */
#define LED2_GPIO_PIN                              GPIO_PINS_13      

#define LED2_ON                        {LED2_GPIO_PORT->clr = LED2_GPIO_PIN;}
#define LED2_OFF                                        {LED2_GPIO_PORT->scr = LED2_GPIO_PIN;}
#define LED2_TOGGLE                              {LED2_GPIO_PORT->odt ^= LED2_GPIO_PIN;}

#define LED3_GPIO_PORT            GPIOD                                    /* GPIO port */
#define LED3_GPIO_CLK             RCC_AHB_PERIPH_GPIOD                /* GPIO port clock */
#define LED3_GPIO_PIN                              GPIO_PINS_14      

#define LED3_ON                        {LED3_GPIO_PORT->clr = LED3_GPIO_PIN;}
#define LED3_OFF                                        {LED3_GPIO_PORT->scr = LED3_GPIO_PIN;}
#define LED3_TOGGLE                              {LED3_GPIO_PORT->odt ^= LED3_GPIO_PIN;}

#define LED4_GPIO_PORT            GPIOD                                    /* GPIO port */
#define LED4_GPIO_CLK             RCC_AHB_PERIPH_GPIOD                /* GPIO port clock */
#define LED4_GPIO_PIN                              GPIO_PINS_15      

#define LED4_ON                        {LED4_GPIO_PORT->clr = LED4_GPIO_PIN;}
#define LED4_OFF                                        {LED4_GPIO_PORT->scr = LED4_GPIO_PIN;}
#define LED4_TOGGLE                              {LED4_GPIO_PORT->odt ^= LED4_GPIO_PIN;}


LED流水灯:
void LED_Flash(void)
{
      LED2_ON;
      LED3_OFF;
      LED4_OFF;
      Delay_ms(200);
      
      LED3_ON;
      LED2_OFF;
      LED4_OFF;
      Delay_ms(200);
      
      LED4_ON;
      LED2_OFF;
      LED3_OFF;
      Delay_ms(200);
      
      LED3_OFF;
      LED2_OFF;
      LED4_OFF;
      Delay_ms(200);
      
}


LED闪烁:
      void LED_blink(void)
{
    LED2_ON;
    LED3_ON;
    LED4_ON;
    Delay_ms(100);
    LED2_OFF;
    LED3_OFF;
    LED4_OFF;
    Delay_ms(100);
}


5.视频
https://www.bilibili.com/video/BV1Ey4y1d79E/?vd_source=0e4686609dd9c60a63b3f7fe54080c03

页: [1]
查看完整版本: 【AT-START-F437-测评】2023年第一测评 点灯系列