diff --git a/luat/modules/luat_lib_gpio.c b/luat/modules/luat_lib_gpio.c index 8ad770a0..6dde680f 100644 --- a/luat/modules/luat_lib_gpio.c +++ b/luat/modules/luat_lib_gpio.c @@ -5,23 +5,16 @@ #include "luat_malloc.h" static int l_gpio_handler(lua_State *L, void* ptr) { + // 给 sys.publish方法发送数据 luat_gpio_t *gpio = (luat_gpio_t *)ptr; lua_getglobal(L, "sys_pub"); if (!lua_isnil(L, -1)) { lua_pushfstring(L, "IRQ_%d", (char)gpio->pin); lua_pushinteger(L, luat_gpio_get(gpio->pin)); lua_call(L, 2, 0); - lua_pushinteger(L, 0); - return 1; } - //else { - // luat_print("_G.sys_pub is nil\n"); - // lua_pop(L, 1); - //} - lua_pushinteger(L, MSG_GPIO); - // lua_pushinteger(L, gpio->pin); - // lua_pushinteger(L, luat_gpio_get(gpio->pin)); - // return 3; + // 给rtos.recv方法返回个空数据 + lua_pushinteger(L, 0); return 1; } diff --git a/luat/rtt/luat_gpio_rtt.c b/luat/rtt/luat_gpio_rtt.c index 42aa498e..fde0541d 100644 --- a/luat/rtt/luat_gpio_rtt.c +++ b/luat/rtt/luat_gpio_rtt.c @@ -54,10 +54,10 @@ int luat_gpio_setup(luat_gpio_t* gpio) { rt_pin_mode(gpio->pin, mode); if (gpio->mode == Luat_GPIO_IRQ) { int irq = 0; - if (irq == Luat_GPIO_RISING) { + if (gpio->irq == Luat_GPIO_RISING) { irq = PIN_IRQ_MODE_RISING; } - else if (irq == Luat_GPIO_FALLING) { + else if (gpio->irq == Luat_GPIO_FALLING) { irq = PIN_IRQ_MODE_FALLING; } else {