From 6f3a7dc59e89d9f48f2bb3a55966d34551047894 Mon Sep 17 00:00:00 2001 From: supperthomas <78900636@qq.com> Date: Fri, 21 Apr 2023 22:24:08 +0800 Subject: [PATCH 1/2] add_files --- package/pikaRTDevice/pikaRTDevice.pyi | 36 -------- package/pikaRTDevice/pikaRTDevice_GPIO.c | 104 ----------------------- package/pikaRTDevice/pikaRTDevice_PWM.c | 52 ------------ package/pikaRTDevice/pika_hal_RTT_GPIO.c | 30 +++++++ 4 files changed, 30 insertions(+), 192 deletions(-) delete mode 100644 package/pikaRTDevice/pikaRTDevice.pyi delete mode 100644 package/pikaRTDevice/pikaRTDevice_GPIO.c delete mode 100644 package/pikaRTDevice/pikaRTDevice_PWM.c create mode 100644 package/pikaRTDevice/pika_hal_RTT_GPIO.c diff --git a/package/pikaRTDevice/pikaRTDevice.pyi b/package/pikaRTDevice/pikaRTDevice.pyi deleted file mode 100644 index 8edae26cd..000000000 --- a/package/pikaRTDevice/pikaRTDevice.pyi +++ /dev/null @@ -1,36 +0,0 @@ -#api -import PikaStdDevice - - -class GPIO(PikaStdDevice.GPIO): - def platformHigh(): - pass - - def platformLow(): - pass - - def platformEnable(): - pass - - def platformDisable(): - pass - - def platformSetMode(): - pass - - def platformRead(): - pass - - -class PWM(PikaStdDevice.PWM): - # override - def platformEnable(): - pass - - # override - def platformSetFrequency(): - pass - - # override - def platformSetDuty(): - pass diff --git a/package/pikaRTDevice/pikaRTDevice_GPIO.c b/package/pikaRTDevice/pikaRTDevice_GPIO.c deleted file mode 100644 index 7d827ca12..000000000 --- a/package/pikaRTDevice/pikaRTDevice_GPIO.c +++ /dev/null @@ -1,104 +0,0 @@ -#include "pikaRTDevice_GPIO.h" -#include -#include -rt_base_t pika_get_rt_mode_num(char* mode, char* pull); - -rt_base_t GPIO_get_pin_num(PikaObj* self) { -#ifdef RT_USING_PIN - char* pin = obj_getStr(self, "pin"); - int id = obj_getInt(self, "id"); - if (!strEqu("none", pin)) { - /* pin name exist */ - return rt_pin_get(pin); - } else { - return id; - } -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} - -void pikaRTDevice_GPIO_platformEnable(PikaObj* self) { -#ifdef RT_USING_PIN - char* pin = obj_getStr(self, "pin"); - char* mode = obj_getStr(self, "mode"); - char* pull = obj_getStr(self, "pull"); - int id = obj_getInt(self, "id"); - rt_base_t pin_num = GPIO_get_pin_num(self); - if (pin_num < 0) { - obj_setSysOut(self, - "[error]: gpio hardware fault, can not get pin number."); - obj_setErrorCode(self, 1); - } - rt_base_t mode_num = pika_get_rt_mode_num(mode, pull); - rt_pin_mode(pin_num, mode_num); -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} - -rt_base_t pika_get_rt_mode_num(char* mode, char* pull) { -#ifdef RT_USING_PIN - if (strEqu(mode, "out")) { - return PIN_MODE_OUTPUT; - } - if (strEqu(mode, "in")) { - if (strEqu(pull, "none")) { - return PIN_MODE_INPUT; - } - if (strEqu(pull, "up")) { - return PIN_MODE_INPUT_PULLUP; - } - if (strEqu(pull, "down")) { - return PIN_MODE_INPUT_PULLDOWN; - } - } - /* default */ - return PIN_MODE_OUTPUT; -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} - -void pikaRTDevice_GPIO_platformDisable(PikaObj* self) {} -void pikaRTDevice_GPIO_platformHigh(PikaObj* self) { -#ifdef RT_USING_PIN - char* pin = obj_getStr(self, "pin"); - rt_base_t pin_num = GPIO_get_pin_num(self); - rt_pin_write(pin_num, PIN_HIGH); -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} -void pikaRTDevice_GPIO_platformLow(PikaObj* self) { -#ifdef RT_USING_PIN - char* pin = obj_getStr(self, "pin"); - rt_base_t pin_num = GPIO_get_pin_num(self); - rt_pin_write(pin_num, PIN_LOW); -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} -void pikaRTDevice_GPIO_platformRead(PikaObj* self) { -#ifdef RT_USING_PIN - char* pin = obj_getStr(self, "pin"); - rt_base_t pin_num = GPIO_get_pin_num(self); - obj_setInt(self, "readBuff", rt_pin_read(pin_num)); -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} -void pikaRTDevice_GPIO_platformSetMode(PikaObj* self) { -#ifdef RT_USING_PIN - pikaRTDevice_GPIO_platformEnable(self); -#else - __platform_printf("[error]: gpio driver is no enable, please check the RT_USING_PIN macro. \r\n"); - while(1); -#endif -} diff --git a/package/pikaRTDevice/pikaRTDevice_PWM.c b/package/pikaRTDevice/pikaRTDevice_PWM.c deleted file mode 100644 index d68f21861..000000000 --- a/package/pikaRTDevice/pikaRTDevice_PWM.c +++ /dev/null @@ -1,52 +0,0 @@ -#include "pikaRTDevice_PWM.h" -#include -#include - -struct rt_device_pwm* PWM_getDevice(PikaObj* self) { -#ifdef RT_USING_PWM - char* name = obj_getStr(self, "name"); - rt_device_t pwm_device = rt_device_find(name); - if(NULL == pwm_device){ - printf("[error] PWM: device \"%s\" no found.\r\n", name); - } - return (struct rt_device_pwm*)pwm_device; -#else - __platform_printf("[error]: PWM driver is no enable, please check the RT_USING_PWM macro. \r\n"); - while(1); -#endif -} - -void pikaRTDevice_PWM_platformEnable(PikaObj* self) { -#ifdef RT_USING_PWM - struct rt_device_pwm* pwm_dev = PWM_getDevice(self); - int ch = obj_getInt(self, "ch"); - rt_pwm_enable(pwm_dev, ch); -#else - __platform_printf("[error]: PWM driver is no enable, please check the RT_USING_PWM macro. \r\n"); - while(1); -#endif -} - -void pikaRTDevice_PWM_platformSetDuty(PikaObj* self) { -#ifdef RT_USING_PWM - struct rt_device_pwm* pwm_dev = PWM_getDevice(self); - int ch = obj_getInt(self, "ch"); - int freq = obj_getInt(self, "freq"); - float duty = obj_getFloat(self, "duty"); - int period = (int)((1.0 / (float)freq) * 1000 * 1000); - int pulse = (int)((float)period * duty); - rt_pwm_set(pwm_dev, ch, period, pulse); -#else - __platform_printf("[error]: PWM driver is no enable, please check the RT_USING_PWM macro. \r\n"); - while(1); -#endif -} - -void pikaRTDevice_PWM_platformSetFrequency(PikaObj* self) { -#ifdef RT_USING_PWM - pikaRTDevice_PWM_platformSetDuty(self); -#else - __platform_printf("[error]: PWM driver is no enable, please check the RT_USING_PWM macro. \r\n"); - while(1); -#endif -} diff --git a/package/pikaRTDevice/pika_hal_RTT_GPIO.c b/package/pikaRTDevice/pika_hal_RTT_GPIO.c new file mode 100644 index 000000000..07f73283c --- /dev/null +++ b/package/pikaRTDevice/pika_hal_RTT_GPIO.c @@ -0,0 +1,30 @@ +#include "../PikaStdDevice/pika_hal.h" + +int pika_hal_platform_GPIO_open(pika_dev* dev, char* name) { + return -1; +} + +int pika_hal_platform_GPIO_close(pika_dev* dev) { + return -1; +} + +int pika_hal_platform_GPIO_read(pika_dev* dev, void* buf, size_t count) { + return -1; +} + +int pika_hal_platform_GPIO_write(pika_dev* dev, void* buf, size_t count) { + return -1; +} + +int pika_hal_platform_GPIO_ioctl_enable(pika_dev* dev) { + return -1; +} + +int pika_hal_platform_GPIO_ioctl_disable(pika_dev* dev) { + return -1; +} + +int pika_hal_platform_GPIO_ioctl_config(pika_dev* dev, + pika_hal_GPIO_config* cfg) { + return -1; +} From 5bd01a84b42c88b22e3f991edcf968f9809a8597 Mon Sep 17 00:00:00 2001 From: supperthomas <78900636@qq.com> Date: Fri, 21 Apr 2023 22:24:08 +0800 Subject: [PATCH 2/2] update_toml --- packages.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages.toml b/packages.toml index 61740fdf3..537c89b5b 100644 --- a/packages.toml +++ b/packages.toml @@ -356,7 +356,8 @@ releases = [ "v0.0.1 fe900b79d8d1075bb7e4e3dd9d4e1e187e0c9195", "v1.0.0 ac4247e5fd3e221eb110a1b41276849c623049ec", "v1.0.1 61e6a7352b65adbce0f2ad82ea1fc992dcbb603", - "v1.1.0 9f3a52558338503571b37c034a12219566f27aa2" + "v1.1.0 9f3a52558338503571b37c034a12219566f27aa2", + "v1.1.1 6f3a7dc59e89d9f48f2bb3a55966d34551047894" ] [[packages]]