dev_led.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * Copyright (c) 2006-2022, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2009-01-05 Bernard the first version
  9. * 2010-12-27 onelife Modify for EFM32
  10. * 2011-05-06 onelife Add EFM32 development kit support
  11. * 2011-12-08 onelife Add giant gecko development kit support
  12. */
  13. #ifndef __DEV_LED_H__
  14. #define __DEV_LED_H__
  15. /* Includes ------------------------------------------------------------------*/
  16. /* Exported types ------------------------------------------------------------*/
  17. /* Exported constants --------------------------------------------------------*/
  18. /* Exported macro ------------------------------------------------------------*/
  19. #if defined(EFM32_G8XX_STK)
  20. #define LEDS_MAX_NUMBER (4)
  21. /* Configure GPIO port C 0-3 for LEDs */
  22. #define LEDS_PIN_PORT_0 gpioPortC
  23. #define LEDS_PIN_NUMBER_0 (0)
  24. #define LEDS_PIN_PORT_1 gpioPortC
  25. #define LEDS_PIN_NUMBER_1 (1)
  26. #define LEDS_PIN_PORT_2 gpioPortC
  27. #define LEDS_PIN_NUMBER_2 (2)
  28. #define LEDS_PIN_PORT_3 gpioPortC
  29. #define LEDS_PIN_NUMBER_3 (3)
  30. #elif (defined(EFM32_GXXX_DK) || defined(EFM32GG_DK3750))
  31. #define LEDS_MAX_NUMBER (16)
  32. #endif
  33. /* Exported functions ------------------------------------------------------- */
  34. rt_err_t rt_hw_led_init(void);
  35. void rt_hw_led_on(rt_uint8_t num);
  36. void rt_hw_led_off(rt_uint8_t num);
  37. void rt_hw_led_toggle(rt_uint8_t num);
  38. rt_uint8_t rt_hw_led_state(rt_uint8_t num);
  39. #endif /* __DEV_LED_H__ */