From 83d383feab07fbea4b072446fa84044615405b0b Mon Sep 17 00:00:00 2001 From: Liu_Weichao Date: Mon, 20 Mar 2023 14:49:40 +0800 Subject: [PATCH] feat support event function for XiZi transform_layer --- .../transform_layer/xizi/transform.c | 24 +++++++++++++++++++ .../transform_layer/xizi/transform.h | 18 ++++++++++++++ Ubiquitous/XiZi_IIoT/kernel/thread/event.c | 2 +- 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/APP_Framework/Framework/transform_layer/xizi/transform.c b/APP_Framework/Framework/transform_layer/xizi/transform.c index ab9fa14f3..002c8f1be 100644 --- a/APP_Framework/Framework/transform_layer/xizi/transform.c +++ b/APP_Framework/Framework/transform_layer/xizi/transform.c @@ -68,6 +68,30 @@ int PrivSemaphoreAbandon(sem_t *sem) return sem_post(sem); } +/**********************event****************************/ +#ifndef SEPARATE_COMPILE +int PrivEventCreate(uint8_t flag) +{ + return UserEventCreate(flag); +} + +int PrivEvenDelete(int event) +{ + UserEventDelete(event); + return 1; +} + +int PrivEvenTrigger(int event, uint32_t set) +{ + return UserEventTrigger(event, set); +} + +int PrivEventProcess(int event, uint32_t set, uint8_t option, int32_t wait_time, unsigned int *Recved) +{ + return UserEventProcess(event, set, option, wait_time, Recved); +} +#endif + /**************************task*************************/ int PrivTaskCreate(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *), void *arg) diff --git a/APP_Framework/Framework/transform_layer/xizi/transform.h b/APP_Framework/Framework/transform_layer/xizi/transform.h index b964af973..2a949fcbf 100644 --- a/APP_Framework/Framework/transform_layer/xizi/transform.h +++ b/APP_Framework/Framework/transform_layer/xizi/transform.h @@ -43,6 +43,16 @@ extern "C" { #define NAME_NUM_MAX 32 +#ifndef EVENT_AND +#define EVENT_AND (1 << 0) +#endif +#ifndef EVENT_OR +#define EVENT_OR (1 << 1) +#endif +#ifndef EVENT_AUTOCLEAN +#define EVENT_AUTOCLEAN (1 << 2) +#endif + /*********************GPIO define*********************/ #define GPIO_LOW 0x00 #define GPIO_HIGH 0x01 @@ -385,6 +395,14 @@ int PrivSemaphoreObtainNoWait(sem_t *sem); int PrivSemaphoreAbandon(sem_t *sem); int32_t PrivSemaphoreSetValue(int32_t sem, uint16_t val); +/*********************event**********************/ +#ifndef SEPARATE_COMPILE +int PrivEventCreate(uint8_t flag); +int PrivEvenDelete(int event); +int PrivEvenTrigger(int event, uint32_t set); +int PrivEventProcess(int event, uint32_t set, uint8_t option, int32_t wait_time, unsigned int *Recved); +#endif + /*********************task**************************/ int PrivTaskCreate(pthread_t *thread, const pthread_attr_t *attr, diff --git a/Ubiquitous/XiZi_IIoT/kernel/thread/event.c b/Ubiquitous/XiZi_IIoT/kernel/thread/event.c index 4217b9676..4546cd644 100644 --- a/Ubiquitous/XiZi_IIoT/kernel/thread/event.c +++ b/Ubiquitous/XiZi_IIoT/kernel/thread/event.c @@ -288,7 +288,7 @@ int32 KEventTrigger(int32 id, uint32 events) * @param events events flag * @param options trigger way * @param msec timeout - * @processed event processed flag + * @param processed event processed flag * * @return EOK on success. */