我想知道是否打电话给这样一条线:
analogWrite(4, 1024);
会导致ESP8266挂起吗?
我问,因为我的ESP8266在正常工作一周后就挂起了。调试很糟糕,但我设法将问题缩小到使用analogWrite()的函数。我对它进行了分析,我发现这些值的范围是0到1024而不是0到255,对吗?
这是Arduino的analogWrite()
函数:
extern "C" void analogWrite(uint8_t pin, int value) {
if (pin >= ESP_PINS_OFFSET) {
__analogWrite(pin - ESP_PINS_OFFSET, value);
}
else {
wifio::analogWrite(pin, value);
}
}
它调用了一些我不了解的SDK命令,我不确定是否可以验证他们在做什么?
答案 0 :(得分:2)
使用超出允许范围的值调用v-model
可能会导致未定义的行为;你应该在参加其他任何事情之前纠正这个问题:
ESP8266的语法:analogWrite(pin,valueParameters pin:pin 写信给。 value:占空比:介于0(始终关闭)和1023之间 (永远在线)。
忘记其他调试任务,直到纠正错误。