You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

19 lines
362 B

2 years ago
  1. #include <stdbool.h>
  2. #include <stdint.h>
  3. #include <stdlib.h>
  4. uint8_t g_port_exit_critical_count;
  5. void sys_critical_enter(void) {
  6. if (g_port_exit_critical_count == 0) {
  7. __disable_irq();
  8. }
  9. g_port_exit_critical_count++;
  10. }
  11. void sys_critical_exit(void) {
  12. g_port_exit_critical_count--;
  13. if (g_port_exit_critical_count == 0) {
  14. __enable_irq();
  15. }
  16. }