Arduino 控制 LED 灯,发现灯无法真正关闭~(已解决)


  • Amateur

    最近在拿 Arduino 和 Go.Iot 折腾,

    • 上午试温度感应器的数据通过 pubsubclient 发布到Go.Iot 平台上,可以设置 图表展示木有问题。
    • 到了晚上 试着通过 callback 实现 LED 灯的开关控制
      按照 教程 mqtt_esp8266
      一步一步试,发现用了callback 功能,板子起来 上面的LED灯就亮了~
      然后随我怎么试发现LED灯就是一直常亮,然后把callback 功能停用,就拿一开始的LED 间隔闪烁来测试功能,又是可以的~
      真的百思不得其解,然后灵光一闪在 digitalWrite(ledPin, LOW); //熄灭小灯 , 灯灭后加了一个1秒延时,
      发现 开关 Switch 确实能够控制灯灭,但是1秒过后LED又亮回去了~ 亮回去了~

    我的项目在 https://goiot.cc/Samuel/iHome 这里~


  • Amateur

    早上再试,无意中发现和在Arduino LED 设置的针脚有关系,我原先是 ledPin 设置在 10 上面的
    pinMode(ledPin,OUTPUT);//定义小灯接口为输出接口

    然后今天看官方Function 手册的时候 看到 analogRead() 的时候有一段话
    Parameters
    pin: the number of the analog input pin to read from (0 to 5 on most boards, 0 to 7 on the Mini and Nano, 0 to 15 on the Mega)

    0 to 7 on the Mini and Nano,我的设备是 Arduino UNO R3 会不会和这个有关系啊? 然后我一改居然是这个问题,晕啊 看来还是基础知识不扎实啊,我在看 引脚支持PWM 的时候看到这方面确实有区别 当时我只拿了 10 和 13 做了替换测试当时情况还一样,我当时还想和针脚应该没有多少关系吧,结果换成 7 就立马有效果了~ 汗~


  • administrator

    很酷呀,大大的👍


Log in to reply
 

Looks like your connection to NodeBB was lost, please wait while we try to reconnect.