ESP8266——已知问题

1.实时时钟

   ESP8266中的RTC精度极差,漂移可能为每分钟秒。作为一种解决方法,为了测量足够短的间隔,可以使用等函数,对于挂钟时间,使用包含的模块从网络同步。utime.time() ntptime.py

  由于 ESP8266 芯片的限制,内部实时时钟 (RTC) 将每隔 7:45 小时溢出一次。如果需要长期工作 RTC 时间,则或在 7 小时内至少调用一次。然后,MicroPython 将处理溢出。time() localtime()

 2.插槽和 WiFi 缓冲区溢出

  套接字实例将保持活动状态,直到它们被显式关闭。这有两个后果。首先,它们占用 RAM,因此打开套接字而不关闭它们的应用程序最终可能会耗尽内存。其次,未正确关闭的套接字可能会导致供应商 WiFi 堆栈的低级部分发出错误。如果数据进入套接字,并且未及时处理,则会发生这种情况。这可能溢出 WiFi 堆栈输入队列并导致死锁。唯一的恢复是通过硬重置。

上述情况也可能发生在应用程序出于任何原因(包括异常)终止并退出 REPL 之后。数据随后到达会因上述错误消息反复发出而引发故障。因此,无论应用程序是成功终止还是通过异常终止,无论使用 try/finally:在任何情况下都应关闭套接字:

sock = socket(...)
try:
    # Use sock
finally:
    sock.close()

猜你喜欢

转载自www.cnblogs.com/iBoundary/p/11984977.html
今日推荐