
在ESP8266传输过程中有很大的概率会死机。这取决于接收设备的传输速度,因为串口的速度是非常快的,而发送的速度可能无法匹配所以在大量数据传输时非常容易因为堵塞模块内部内存而导致死机的现象,这里的死机并不是指单片机死机,但其实也差不多,因为在做TCP主机的时候,发送的数据量时必须事先给定的,这个时候死机就必须进行复位。
多半是内存使用不当。
1. 若是你要用很大长度的数组,那么能够换用更小的数据类型。好比,int值要占用两个字节,你能够用byte(只占用一个字节)代替;
2. esp8266有时会莫明重启,大部分状况是变量设置不当,虽然编译经过了,但变量在调用过程当中出现异常,形成函数运行时变量内存溢出,写复杂代码时,
最好是不要一次写了不少再编译调试。
3. 尽可能少用全局变量,全局变量在整个生命周期都会存在,很是耗内存,内存不足也是esp8266不稳定因素之一。长串的变量尽可能做长度控制,设定边界,若是你的项目很大,必定要规划好变量。
4. 尽可能不要在loop循环中定义变量,尽可能只放函数封装,貌似这里定义了变量不会像函数中的局变量用完就回收。