我正在使用ESP32。我在GPIO2上使用内置led。我想读取引脚的电平。
let led = 2;
GPIO.set_mode(led, GPIO.MODE_OUTPUT);
GPIO.write(led, 0);
Timer.set(1000, true, function(){
print(GPIO.read(led)==0);
if (GPIO.read(led)==0){
GPIO.write(led, 0);
}
else{
GPIO.write(led, 1);
}}, null);尽管led指示灯亮起,但print语句仅在控制台上打印‘0’。代码出了什么问题?为什么GPIO.read()不能正常工作?
发布于 2020-03-04 01:38:26
因此,gpio.read()无法读取输出引脚的状态
我通过在init.js中从"mgos_gpio.h“导入一个c函数来解决这个问题。在main.c中,导入了"mgos_gpio.h“,在init.js文件中,我使用了以下代码-
let readPinVal = ffi('bool mgos_gpio_read_out(int)');
let pinStatus = readPinVal(pinNo);https://stackoverflow.com/questions/59948933
复制相似问题