ESP8266+RTC兼容的库,及时钟模块比选

前几天之前diy的定时自动浇花器被阳光晒炸了,这次除了加强外壳之外,打算把芯片由Digispark换成ESP8266,增加外部更新定时器的功能,一开始打算使用timeAlarms,结果出现一些列报错,后来替换为adafruit出品的RTClib就OK了,可是这样稍微麻烦一点的是就得自己设置定时了,还好,ESP8266有ticker中断,把要定的时间写入eeprom,然后中断定时比对就行了。

顺便比较一下各种时钟模块:

DS1302 DS1307 DS3231
名称 接口 兼容库 精确度 电压
DS1302: 3 wire RTClib 一个月飘几分钟 双供电,没研究
DS1307: I2C RTClib/TinyRTClib/timeAlarms 一个月飘几分钟 5v
DS3231: I2C RTClib 非常,因为内部有温度补偿 3.3--5.5V

总结:

  • DS3231: 性能上最好,但是Digispark没库不好用,Arduino,ESP8266及相关芯片3~5v都可以,适用面算宽了;
  • DS1307: 最广泛,就是有点飘,如果用到3.3v的芯片上电压要改;
  • DS1302: 嗯,虽然只要三根线,有点类似SPI,但供电看起来还需要找专门库设置充电,没研究过还是算了。

以后会在本文记录arduinoIDE开发环境下,适合不同模块的优质library,毕竟Arduino 的优势就是库,可以避免重复造轮子。

今天先写第一条:

Arduino IDE优选库及对应芯片

功能 ESP8266系列 Arduino系列 Digispark系列
时钟: RTClib https://github.com/adafruit/RTClib RTC1037 TinyRTClib 无需下载,新版自带
中断: ticker MsTimer2

你可能感兴趣的:(ESP8266+RTC兼容的库,及时钟模块比选)