渣作,还望各位大大多指点
实现功能:红外遥控开锁,密码加密存储,时间天气显示,闹钟等
硬件部分:单片机STC15F2K60S2,存储24C02,RTC R8025AC, 显示屏 1.3寸OLED(SH1106),Wi-Fi模块ESP-12(ESP8266)
PCB是假期作业时剩下的,因为觉得没什么高速的就自动布线然后改了很少的部分,看上去很乱.....上面顺便放了个CH340下载用
开机会联网同步时间和天气(前提是Wi-Fi模块已经能连接到网络),由ESP8266中的程序从网络获取时间并通过串口发送给单片机。数据来源:百度API http://apistore.baidu.com
显示的IP是Wi-Fi模块从上级获取的IP
做显示部分的队友,他的英文是高数老师教的,不要在意
这个屏有点蛋疼,没字库,图标是队友手动画出来的
输入密码的界面,密码用STC的唯一ID号加密后保存在24C02中
长时间无操作进入掉电模式界面,此状态下单片机由R8025AC的定时输出(设定为每分钟)来唤醒更新屏幕,此状态下功耗较低
设置页面,可以设置闹钟、密码、是否静音等,还可以查看当天详细天气
天气在主页只会显示图标,具体的温度等信息要在这个页面里看。原意是想装在门上,出门时看看要不要带伞什么的..
闹钟使用了R8025AC内部的一个闹钟,功能比较强大
现在板子不在我这,这三个页面的详情暂时没法放图
开机的时候如果Wi-Fi模块尝试连接原设置的热点超时,则会由STA模式变为AP模式,
电脑连接后可以打开一个小小的网页配置界面
这个界面是在Wi-Fi模块里实现的,涉及一些网络编程的东西,可供参考的代码也很少,看的半懂不懂的。。不过最后还是搞出来了
刚开始是用ESP8266的SDK来做,后来写得实在蛋疼换了nodemcu,用Lua开发。
Lua上手很快。优点是很简单很方便,缺点是稍稍大意就爆内存.......
嗯...无视那个群号。
这次比赛对于我们三个而言都充满意义,接触到了很多新的东西。
因为平时太懒,没什么模块的经验积累,所有的东西几乎都是参考Datasheet从零开始完成的。
看来以后要多积累才行XD
最后感谢无协的各位大神师兄,感谢赞助商的奖品~
|