HPM APP
HPMicro Application solution
gpio_led.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 #ifndef GPIO_LED_H
8 #define GPIO_LED_H
9 
10 #include "board.h"
11 #include "hpm_gpio_drv.h"
12 #include "math.h"
13 
14 
19 #define LED_STATUS_ENABLE 1
24 #define LED_STATUS_CTRL HPM_GPIO0
25 #define LED_STATUS_INDEX GPIO_DO_GPIOA
26 
31 #define LED_RED_ERROR_PIN 31
32 #define LED_GREEN_OK_PIN 30
33 #define LED_BLUE_WORK_PIN 29
34 
39 #define LED_ON 0
40 #define LED_OFF 1
41 
47 #define LED_DIG_ENABLE 1
48 #define LED_DIG_DISABLE 0
49 
50 
55 #define LED_DIG0_PIN 15
56 #define LED_DIG1_PIN 12
57 #define LED_DIG2_PIN 10
58 #define LED_DIG3_PIN 14
59 #define LED_DIG4_PIN 13
60 
65 #define LED_NUMBER 5
70 #define DECIMAL_NUMBER 2//1 or 2,max 2
75 #define MULTI_COFFI pow(10,DECIMAL_NUMBER)
80 #define DISPLAY_DELAY_MS 5
85 #define DISPLAY_COUNT 10
86 
91 typedef enum{
98 
103 #define LED_POWER_CTRL HPM_GPIO0
104 #define LED_POWER_INDEX GPIO_DO_GPIOA
109 #define LED_DISPLAY_CTRL HPM_GPIO0
110 #define LED_DISPLAY_INDEX GPIO_DO_GPIOY
115 #define LED_DISPLAY_A_PIN 0
116 #define LED_DISPLAY_F_PIN 1
117 #define LED_DISPLAY_B_PIN 2
118 #define LED_DISPLAY_E_PIN 3
119 #define LED_DISPLAY_D_PIN 4
120 #define LED_DISPLAY_DP_PIN 5
121 #define LED_DISPLAY_C_PIN 6
122 #define LED_DISPLAY_G_PIN 7
123 
128 void init_led_pins(void);
133 void led_red_error(void);
138 void led_green_ok(void);
143 void led_blue_work(void);
144 
149 void init_led_diplay_pins(void);
154 void init_led_dig_pins(void);
161 void led_dig_enable(uint8_t index);
168 void led_dig_disable(uint8_t index);
173 void led_dig_disable_all(void);
174 
180 void led_display_number(uint8_t number);
187 void led_display_speed(float speed);
194 void led_display_float(float number);
199 void led_diplay_point(void);
204 void init_led_display(void);
205 #endif /* GPIO_LED_H */
void led_display_speed(float speed)
LED digital display speed ;LED数码管显示速度
Definition: gpio_led.c:232
void led_diplay_point(void)
LED digital tube displays decimal point ;LED数码管显示小数点
Definition: gpio_led.c:137
void led_dig_enable(uint8_t index)
LED display tube enable, 5 LED display tubes in total from 0 to 4 ;LED显示管使能,0~4共5个LED显示管
Definition: gpio_led.c:102
#define LED_DIG1_PIN
Definition: gpio_led.h:56
void init_led_dig_pins(void)
Initialize LED display tube power supply control pins ;初始化LED显示管供电控制引脚
Definition: gpio_led.c:86
#define LED_DIG0_PIN
LED display tube control pins, a total of 5 display tubes ;LED显示管控制引脚,共5个显示管
Definition: gpio_led.h:55
#define LED_DIG4_PIN
Definition: gpio_led.h:59
#define LED_DIG2_PIN
Definition: gpio_led.h:57
void led_red_error(void)
The red LED light is on, indicating that the current status is error ;红色LED灯亮,表示当前状态为error.
Definition: gpio_led.c:36
void led_dig_disable(uint8_t index)
LED display tube disable, 5 LED display tubes in total from 0 to 4 ;LED显示管禁用,0~4共5个LED显示管
Definition: gpio_led.c:113
LED_DIG_CTRL
LED display tube control pins, a total of 5 display tubes ;LED显示管控制引脚,共5个显示管
Definition: gpio_led.h:91
@ LED_DIG_2
Definition: gpio_led.h:94
@ LED_DIG_1
Definition: gpio_led.h:93
@ LED_DIG_3
Definition: gpio_led.h:95
@ LED_DIG_0
Definition: gpio_led.h:92
@ LED_DIG_4
Definition: gpio_led.h:96
#define LED_DIG3_PIN
Definition: gpio_led.h:58
void init_led_diplay_pins(void)
Initialize LED display control pins ;初始化LED显示控制引脚
Definition: gpio_led.c:56
void led_blue_work(void)
The blue LED light is on, indicating that the current status is work ;蓝色LED灯亮,表示当前状态为work.
Definition: gpio_led.c:48
void led_display_number(uint8_t number)
LED digital tube displays numbers ;LED数码管显示数字
Definition: gpio_led.c:141
void init_led_display(void)
Initialize LED digital display function ;初始化LED数码管显示功能
Definition: gpio_led.c:239
void init_led_pins(void)
Initialize the control pins of the LED light ;初始化LED灯的控制引脚
Definition: gpio_led.c:12
void led_dig_disable_all(void)
Disable all LED display tubes ;禁用所有的LED显示管
Definition: gpio_led.c:117
void led_display_float(float number)
LED digital tube displays floating-point numbers ;LED数码管显示浮点数
Definition: gpio_led.c:153
void led_green_ok(void)
The green LED light is on, indicating that the current status is OK ;绿色LED灯亮,表示当前状态为ok.
Definition: gpio_led.c:42