RUI3 (RAK Unified Interface 3) - RAK4631
udrv_system.h File Reference

Go to the source code of this file.

Data Structures

struct  udrv_system_event_t
 

Macros

#define RANDOM_LENGTH   4
 
#define SEED_LENGTH   4
 
#define EVENT_QUEUE_SIZE   (128)
 
#define EVENT_DATA_SIZE   (8)
 

Typedefs

typedef void(* UDRV_TASK_HANDLER) (void)
 

Enumerations

enum  udrv_system_event_op_t {
  UDRV_SYS_EVT_OP_SERIAL_UART = 0x00,
  UDRV_SYS_EVT_OP_SERIAL_BLE,
  UDRV_SYS_EVT_OP_LORAWAN,
  UDRV_SYS_EVT_OP_LORAWAN_JOIN_CB,
  UDRV_SYS_EVT_OP_USER_APP,
  UDRV_SYS_EVT_OP_USER_TIMER,
  UDRV_SYS_EVT_OP_SYS_TIMER,
  UDRV_SYS_EVT_OP_SERIAL_NFC,
  UDRV_SYS_EVT_OP_SERIAL_FALLBACK,
  UDRV_SYS_EVT_OP_RTC,
  UDRV_SYS_EVT_OP_GPIO_INTERRUPT
}
 event operation. More...
 

Functions

void udrv_system_event_init (void)
 
int32_t udrv_system_event_produce (udrv_system_event_t *event)
 
void udrv_system_event_consume (void)
 
void udrv_system_reboot (void)
 
void udrv_system_critical_section_begin (uint32_t *mask)
 
void udrv_system_critical_section_end (uint32_t *mask)
 
unsigned long udrv_system_random (unsigned long maxvalue)
 
void udrv_system_randomseed (unsigned long seed)
 
int32_t udrv_system_user_app_timer_create (timer_handler tmr_handler, TimerMode_E mode)
 
int32_t udrv_system_user_app_timer_start (uint32_t count, void *m_data)
 
int32_t udrv_system_user_app_timer_stop (void)
 
int32_t udrv_create_thread (char *name, UDRV_TASK_HANDLER handler)
 
void udrv_destroy_thread (char *name)
 
void udrv_destroy_myself (void)
 
void udrv_thread_lock (void)
 
void udrv_thread_unlock (void)
 

Macro Definition Documentation

◆ RANDOM_LENGTH

#define RANDOM_LENGTH   4

◆ SEED_LENGTH

#define SEED_LENGTH   4

◆ EVENT_QUEUE_SIZE

#define EVENT_QUEUE_SIZE   (128)

◆ EVENT_DATA_SIZE

#define EVENT_DATA_SIZE   (8)

Typedef Documentation

◆ UDRV_TASK_HANDLER

typedef void(* UDRV_TASK_HANDLER) (void)

Enumeration Type Documentation

◆ udrv_system_event_op_t

event operation.

Enumerator
UDRV_SYS_EVT_OP_SERIAL_UART 
UDRV_SYS_EVT_OP_SERIAL_BLE 
UDRV_SYS_EVT_OP_LORAWAN 
UDRV_SYS_EVT_OP_LORAWAN_JOIN_CB 
UDRV_SYS_EVT_OP_USER_APP 
UDRV_SYS_EVT_OP_USER_TIMER 
UDRV_SYS_EVT_OP_SYS_TIMER 
UDRV_SYS_EVT_OP_SERIAL_NFC 
UDRV_SYS_EVT_OP_SERIAL_FALLBACK 
UDRV_SYS_EVT_OP_RTC 
UDRV_SYS_EVT_OP_GPIO_INTERRUPT 

Function Documentation

◆ udrv_system_event_init()

void udrv_system_event_init ( void  )

◆ udrv_system_event_produce()

int32_t udrv_system_event_produce ( udrv_system_event_t event)

◆ udrv_system_event_consume()

void udrv_system_event_consume ( void  )

◆ udrv_system_reboot()

void udrv_system_reboot ( void  )

◆ udrv_system_critical_section_begin()

void udrv_system_critical_section_begin ( uint32_t *  mask)

◆ udrv_system_critical_section_end()

void udrv_system_critical_section_end ( uint32_t *  mask)

◆ udrv_system_random()

unsigned long udrv_system_random ( unsigned long  maxvalue)

◆ udrv_system_randomseed()

void udrv_system_randomseed ( unsigned long  seed)

◆ udrv_system_user_app_timer_create()

int32_t udrv_system_user_app_timer_create ( timer_handler  tmr_handler,
TimerMode_E  mode 
)

◆ udrv_system_user_app_timer_start()

int32_t udrv_system_user_app_timer_start ( uint32_t  count,
void *  m_data 
)

◆ udrv_system_user_app_timer_stop()

int32_t udrv_system_user_app_timer_stop ( void  )

◆ udrv_create_thread()

int32_t udrv_create_thread ( char *  name,
UDRV_TASK_HANDLER  handler 
)

◆ udrv_destroy_thread()

void udrv_destroy_thread ( char *  name)

◆ udrv_destroy_myself()

void udrv_destroy_myself ( void  )

◆ udrv_thread_lock()

void udrv_thread_lock ( void  )

◆ udrv_thread_unlock()

void udrv_thread_unlock ( void  )