WIFI时钟在已有硬件基础上的实现

来源:互联网 发布:sql insert into set 编辑:程序博客网 时间:2024/06/05 07:51

WIFI时钟在已有硬件基础上的实现

暑假的小学期利用学校发的ESP8266-12f这块板子做了一个WIFI时钟,在最初做的时候发现有关ESP8266-12f资料相对来说还是比较少的,因此想要总结一下,自己以后查的时候也方便一些。

第一部分:焊接

用到的材料有
:
这里写图片描述

板子总体的样式:
这里写图片描述

把这些元件焊接到板上去,相对来说比较难的是USB插座和各种芯片以及OLED显示屏,而其他元件的焊点虽然比较小,但是点与点之间的距离比较远,可以先在一个点上涂上些锡,把原件焊上去再焊另一边。而前者的主要难度主要在于焊点是一排一排的,而且比较密,不可能一个点一个点的焊。对于前者,可以先焊上一个点,固定住,剩下的可以加上适量的锡,然后刷过去,把各个点焊上。如果锡用过量使得两点之间短路,可以使用吸锡纸吸去一部分或者用松香涂在两点间,往两边引导锡化开。

焊好之后一定要检查各个焊点之间有没有短路(最好用万用表检测一下),LED灯和开关二极管有没有接反。第一次插上USB时,注意感觉一下有没有板子哪个地方过热,如果过热的话立马拔电源检查,或换元件或重焊。

第二部分:代码

由于ESP8266-12f本身就能够写入代码,因此Arduino IDE有ESP8266板编译的选项,如何添加的教程可以点链接:http://www.geek-workshop.com/thread-26170-1-1.html
成功后如下:
这里写图片描述

由于WIFI时钟中需要使用到OLED屏和DS1302模块,因此还需要添加库 ESP8266、DS1302 以及 u8g2,第一个第三个一般在库管理器中都能搜到,直接安装即可,教程:http://www.arduino.cn/thread-17883-1-1.html,而DS1302的库DS1302的库,下下来后解压至~\Arduino\libraries即可。

还需要注意的是由于使用了USB转串口芯片CH340G,因此需要安装驱动CH340,之后电脑才能识别。如果正常通上电源后,ESP-12f会闪一下蓝光,写入代码后OLED屏应当有反应。如果OLED屏没有反应,看一下是否存在虚焊。下一步,可以尝试一下下载Blink示例,看一下ESP-12f是否能正常下载程序并正常做出反应。
这里写图片描述

如果没有反应或者下不进去程序显示各种Failed提示错误:
1.确定好USB线是否有问题(我第一次试的线就是下不进程序,换了一根就好了),或者没插稳也是有可能的。
2.考虑元件损坏的问题,例如三极管烧坏(血的教训啊。。。)等等,重焊。
3.可以考虑如下开发板配置再试一次
这里写图片描述

如果都没有问题的话,可以使用 WIFI时钟的代码了。

需要注意注释部分
这里写图片描述

然后自己可以去了解一下u8g2库里的函数的使用来调节一下自己的界面。

最后强调几点:
1. time.nist.gov的时间来源可能不是很稳定,我试了一下,10次中大概有7次无法成功,因此建议换一个国内的时间来源,我用的是北京邮电大学的s1a.time.edu.cn。
2. 数据线很重要,如果esp8266-12f能正常闪蓝光,说明没坏,如果下不进去程序很有可能是数据线的问题。
3. 建议通过串口监视器调试。

原创粉丝点击