国产芯片的崛起,终于让我们不用再为芯片缺货、涨价而烦恼,国内很多厂商在新产品中运用了大量国产芯片,一方面保证了原材料供应渠道,另一方面大幅度降低了生产成本。
ESP8266和ESP32是两种非常受欢迎的选择,它们都是由乐鑫公司开发的Wi-Fi芯片,可以使用Arduino IDE或MicroPython进行编程。它们的主要区别如下:
? ESP32是ESP8266的升级版,它有双核处理器,运行速度更快,支持蓝牙4.2和BLE,内置霍尔效应传感器和温度传感器(旧版本),具有更多的GPIO和外设接口,支持触摸感应和低功耗模式。
? ESP8266比ESP32便宜,它有单核处理器,运行速度较慢,不支持蓝牙,没有内置传感器,具有较少的GPIO和外设接口,不支持触摸感应和低功耗模式。
ESP8266是一款集成了TCP/IP协议栈的低成本Wi-Fi芯片,于2014年发布。它拥有一个32位单核处理器,运行频率为80MHz,可以通过SPI或UART与外部MCU通信,也可以作为独立的微控制器使用。它支持802.11 b/g/n标准,提供了17个GPIO引脚,可以用于控制LED、按键、传感器等外围设备。它还支持SPI、I2C、UART、ADC、DAC和PWM等接口协议,可以与各种模块和扩展板连接。
ESP8266最大的优点是价格低廉
在市场上,可以轻松地以12~30元人民币的价格买到一个带有USB转串口芯片、电源管理电路、LED指示灯、复位按键等外围电路的开发板,例如NodeMCU或Wemos D1 mini等。这些开发板可以直接通过USB线连接到电脑上,并使用Arduino IDE或其他IDE进行编程。由于ESP8266出现较早,因此也有很多相关的资料、教程和项目可供参考。
ESP8266最大的缺点是性能较低
由于它只有一个单核处理器,并且运行频率较慢,因此在处理复杂的任务或同时执行多个任务时可能会遇到困难。例如,在使用Wi-Fi通信时,CPU会占用很大一部分资源,导致其他任务无法正常运行。此外,由于它只有17个GPIO引脚,并且某些引脚有特殊功能或限制(例如启动模式选择、串口通信等),因此在连接多个外围设备时可能会不够用。另外,它也不支持蓝牙通信,并且没有内置任何传感器。
ESP32是一款集成了TCP/IP协议栈、蓝牙协议栈和加密引擎的高性能Wi-Fi芯片,于2016年发布。它拥有一个32位双核处理器,运行频率为160MHz至240MHz(可调节),可以通过SPI或UART与外部MCU通信,也可以作为独立的微控制器使用。它支持802.11 b/g/n标准,并且还支持蓝牙4.2和BLE(低功耗蓝牙),提供了34个GPIO引脚,可以用于控制LED、按键、传感器等外围设备。它还支持SPI、I2C、UART、ADC、DAC、PWM等接口协议,并且还增加了CAN(控制器局域网)、Ethernet MAC(以太网媒体访问控制)等接口。此外,它还内置了霍尔效应传感器(用于检测磁场)和温度传感器(旧版本),并且还提供了10个触摸感应引脚(用于唤醒深度睡眠模式)。
ESP32最大的优点是性能高强
由于它有一个双核处理器,并且运行频率很快,因此在处理复杂的任务或同时执行多个任务时具有很大的优势。例如,在使用Wi-Fi通信时,CPU可以分配一部分资源给Wi-Fi协议栈,而另一部分资源给其他任务,从而实现多任务并行处理。此外,由于它有34个GPIO引脚,并且具有GPIO矩阵功能(可以任意映射GPIO引脚到不同的功能),因此在连接多个外围设备时具有很大的灵活性。另外,它也支持蓝牙通信,并且内置了一些传感器。
ESP32最大的缺点是价格较高
在市场上,可以轻松地以22~40元人民币的价格买到一个带有USB转串口芯片、电源管理电路、LED指示灯、复位按键等外围电路的开发板,例如DOIT ESP32 DEVKIT V1等。这些开发板也可以直接通过USB线连接到电脑上,并使用Arduino IDE或其他IDE进行编程。由于ESP32出现较晚,并且功能较多,因此相对于ESP8266来说相关的资料、教程和项目较少。