1 /*
2  * Copyright (c) 2006-2021, RT-Thread Development Team
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  *
6  * Change Logs:
7  * Date           Author       Notes
8  * 2011-03-03     lgnq
9  */
10 
11 #ifndef __LED_H__
12 #define __LED_H__
13 
14 #include "mb9bf506r.h"
15 
16 #define LEDS_MAX_NUMBER         4
17 
18 /* LED */
19 #define USER_LED1      (1UL<<0x9)
20 #define USER_LED2      (1UL<<0xa)
21 #define USER_LED3      (1UL<<0xb)
22 
23 #define USER_LED_MASK       (USER_LED1 | USER_LED2 | USER_LED3)
24 #define USER_LED_PFR            FM3_GPIO->PFR1
25 #define USER_LED_PCR            FM3_GPIO->PCR1
26 #define USER_LED_PDOR           FM3_GPIO->PDOR1
27 #define USER_LED_DDR            FM3_GPIO->DDR1
28 
29 #define RT_DEVICE_CTRL_LED_ON           0
30 #define RT_DEVICE_CTRL_LED_OFF          1
31 #define RT_DEVICE_CTRL_LED_TOGGLE       2
32 
33 void rt_hw_led_init(void);
34 void rt_hw_led_on(rt_uint8_t num);
35 void rt_hw_led_off(rt_uint8_t num);
36 void rt_hw_led_toggle(rt_uint8_t num);
37 void pwm_update(rt_uint16_t value);
38 
39 #endif
40