一种借WiFi模块的单片机定时芯片的制作方法

文档序号:18474730发布日期:2019-08-20 20:51阅读:295来源:国知局
一种借WiFi模块的单片机定时芯片的制作方法

本发明涉及电器自动控制技术领域,尤其涉及一种借wifi模块的单片机定时芯片。



背景技术:

虽然物联网有被商业夸大的显现,但它促成了网络技术向简洁精细化发展,也惠及到了非互联网领域,本发明就尝试将互联网技术用于直接连接“微型服务器esp-12”。对于微控制电器、典型的单片机应用,为实现更方便直观的设置(常规的时间设置操作,因显示屏简单、按键功能重叠,缺少数字时间格式等编辑键盘,很容易忘记)或人机交互,将单片机应用再加上wifi连接手机或电脑,从而去掉成本高、占体积的显示屏、按键组,使外壳变小、设计简化。这种理想化的方案本来很不切实际,因为wifi连手机或电脑的技术难度远超单片机典型应用的技术含量,然而这种情况随着esp-12wifi单片机(esp8266)模块的普及已不存在了,一种新的单片机+wifi应用模式已经来到,本发明抛砖引玉,从典型的定时类应用作为开始。



技术实现要素:

基于上述背景技术,本发明提供一种借wifi模块的单片机定时芯片。

本发明所采用的技术方案如下:一种借wifi模块的单片机定时芯片,所述单片机定时芯片在使用前先通过配套的wifi连接模块,借助手机或电脑对其进行定时控制功能设置;

所述单片机定时芯片是单片机编程实现的定时控制芯片,有i2c(slave)两线串行总线接口,用于连接配套的wifi连接模块,实现用手机或电脑进行定时功能设置、定时检查确认、调出查看或修改重设;

所述配套的wifi连接模块是esp-12wifi模块,该模块被编程定义了带i2c(master)两线串行总线接口,用于连接所述单片机定时芯片的i2c(slave)接口;

单片机中数据主动传手机或电脑采用(i2c)scl上沿中断通知esp-12及html5+js的sse服务器推送技术;

在不同时间,一个wifi连接模块可分别同多个多种所述单片机定时芯片相连,仅在需要改变设定的定时功能或定时检查确认时连接一下,平时单片机定时芯片工作时不用wifi连接模块;

所述单片机定时芯片脱离wifi连接模块自已工作时,只要一个启动按键、一个或多个工作状态指示led;启动按键操作包括短按(短于0.5秒)、长按(超过0.5秒)、或逐次短按结合看工作状态指示led,实现多功能选择启动;单片机定时芯片的诸io口分别同启动按键、工作状态指示led连接;

所述单片机定时芯片具有1k以上的flasheeprom,用来保存所设置的起停时间、循环周期、起点时间、遥控红外码记录,断电不丢失;不用内置时钟保持电池,定时启动前只要连下手机或电脑,其上的时间就会同步到单片机定时芯片,或在设定的时间启动作为时间起点,更多的应用无需实时时钟,只要启动后的延时即可;

esp-12wifi模块采用nodemcu固件及lua脚本语言编程,开源公布,提供包括html5+js的sse程序范例及i2c(master)两线串行总线接口以scl上沿中断方式触发启动读发来的字节的程序范例,为让用户自己用脚本语言改写更适用的操作界面(html5);

手机或电脑wifi连接esp-12模块采用wifi直连(ap/station)模式,esp-12wifi模块包括http服务,手机或电脑不用下载安装app,只要浏览器访问196.168.4.1或196.168.x.x即可,其中196.168.x.x由无线路由器dhcp内定或指定;不涉及第三方网络服务,也不需要通外网连接;

手机或电脑wifi连接esp-12模块方法如下:

在单片机定时芯片工作启动前,先用手机或电脑进行时间或定时功能设置,因此要连上配套的wifi连接模块;若首次连接,手机或电脑在无线网络设置中找esp-12、无密码或12345678,进行wifi连接,连接成功后,打开浏览器访问196.168.4.1,进入操作界面后就可进行时间或定时功能设置;接着,将当地的无线路由器wifi连接名、密码置入配套的wifi连接模块中,使每次连上配套的wifi连接模块后其自动会连接当地的wifi;设置成功后记下所用的(dhcp)ip地址(196.168.x.x),此后手机或电脑无需再进无线网络设置中找esp-12连接,仍连原来的当地wifi即可,当手机或电脑再要联机设置时,只要用浏览器访问记下所用的(dhcp)ip地址196.168.x.x即可;

手机或电脑进入设置界面,有动态操作提示,包括直接测试效果或设置确认;设置满意后,撤掉wifi连接模块,以后使用时的启停工作只要按单片机所连的启动按键、观察led工作状态指示即可;

手机或电脑设置时间或定时有html5标准时间控件出现,只要选:月、日、时、分、周中某数字、或直接输入数字。

进一步的,定时设置包括以下典型格式:

[[日期][时间]]功能1:时长1[功能2:时长2][功能3:时长3]…[停时长]…

[日期]开时间1-关时间1[功能/参数1]

[日期]开时间2-关时间2[功能/参数2]

[]表示可缺省,以常用值默认;功能/参数可包括多个数值。

进一步的,所述配套的wifi连接模块的i2c(master)两线串行总线接口包括设计成带四芯插口的插拔部件,并规定四芯插口的排列为:+、scl、sda、-;另外还包括通过esp-12的rs串行口增设编程esp-12所用的与电脑联机的usb连线接口;

针对微小电流单片机控制,其5v以下的供电驱不动esp-12wifi模块,此种wifi连接模块包括3.7v锂电池供电,及充电口或电源插头;

考虑到用户会不即时拔掉wifi连接模块,wifi连接模块还包括无操作延时进入极低功耗模式、或用手机或电脑设置wifi连接模块中的esp-12进入极低功耗模式,唤醒通过esp-12上的rst按键或拔出再插上。

进一步的,所述单片机采用stc15系列单片机,包括8脚封装的,其中两个脚p3.3(sda)、p3.4(scl)作i2c从机通讯esp-12wifi连接模块,p3.0、p3.1两个脚除留着编程时连接电脑外,平时p3.0作定时器上的启动按键、p3.1作定时器上的工作状态指示led,p3.2、p3.5控制输出,或p3.2红外发码学习记录。

进一步的,所述单片机定时芯片若用做定时超声微孔雾化加湿装置,相关的超声微孔雾化片的驱动、湿度检测、及低压直流风扇的驱动,用stc15w104类8脚单片机实现的连接方式如下:单片机输出110khz的pwm矩形波的口p3.1串限流电阻r1接mos管mos1栅极g,mos管mos1源极s接地,mos管mos1漏极d接高频升压变压器b初级一端,b初级另一端接+12v,高频升压变压器b次级两端同超声微孔雾化片w两端并联;

湿度检测采用dht11一总线接口数字湿度传感器,单片机端口p3.2接dht11仅有的一根数据线,dht11的另两根引脚一根接地、一根接单片机电源(3.3v)+端;

单片机输出口p3.0串限流电阻r2接mos管mos2栅极g,mos管mos2源极s接地,mos管mos2漏极d接直流风扇f负极,直流风扇f正极接+12v;

单片机定时芯片若用做定时红外遥控器及学习型编码记录,用stc15w104类8脚单片机实现的连接方式如下:单片机输出口p3.5串限流电阻接红外发射led负端,红外发射led正端接单片机电源+端;红外接收头(hs0038)输出端接单片机端口p3.2,红外接收头的另两根引脚一根接地、一根接单片机电源(3.3v)+端。

本发明的有益效果是:将典型的单片机定时类应用借助wifi连接手机或电脑实现多种定时设置,操作方便直观,单片机系统还可去掉成本高、占体积的显示屏、按键组,使外壳变小、设计简化。这种单片机定时芯片因为可借手机或电脑实现多种定时设置,有了通用性,免去了用户单片机编程。并且用户还可用脚本语言自己改写更适用的操作界面(html5)。

附图说明

图1是esp-12wifi连接模块与stc15系列单片机定时芯片的连接图。

图2是单片机用mos管实现的定时超声微孔雾化片的驱动、低压直流风扇的驱动、及湿度检测。

具体实施方式

将单片机定时控制应用借助wifi连接手机或电脑实现个性化设置,具体技术路线(图1):esp-12wifi模块能实现wifi连接手机或电脑,单片机通过i2c两线接口同esp-12wifi模块双向(字节)通讯。

stc15系列单片机是性价比极高的国产微控制器mcu,特别是8脚封装的,包括贴片封装,价廉不占空间。对stc15系列8脚单片机,推荐接法为:脚p3.3(sda)、p3.4(scl)作i2c从机(slave)通讯esp-12wifi模块,p3.0、p3.1两个脚除留着编程时连接电脑外,平时p3.0作微控制定时电器上的启动按钮、p3.1作微控制定时电器上的led工作状态指示灯,p3.2、p3.5控制输出,或p3.2红外发码学习记录。

选用stc15系列单片机+esp-12wifi模块,平时就stc15系列单片机工作,esp-12wifi模块只在需要连接手机或电脑时才用到。

对一些很少设置的用户,esp-12wifi模块与单片机连接只要一根四芯连接线即可;对大多数需要个性化设置的,通常将esp-12wifi模块单独做成插拔式小插件(简称wifi插拔模块),它有一个四芯插口:两根i2c通讯、两根正负电源,排列为:+、scl、sda、-,现成的四芯插口很多(如usb的)。为编程方便,通过esp-12的rs串行口增设编程esp-12所用的与电脑联机的usb连线接口(esp-12的rs串口,也可包括rs-usb转换)。wifi插拔模块常同配套的已编程单片机定时芯片一起销售。

wifi插拔模块(在不同时间)可以为多个应用通用,其中的esp-12包括多种定时应用配套设置程序(用哪个由手机屏上菜单选择),所设置的参数,既有直接写入stc单片机eeprom中的、也有同时保存在所连接过的手机或电脑中的(html5本地储存),以便调出查看当时的设置。

采用i2c通讯,rs串口留作esp-12同电脑联机调程序更方便,再则,stc的8脚单片机也没有rs串行口。

i2c通讯协议分主(master)-从(slave)机,esp-12模块提供的是主机i2c,stc单片机正好有引脚可上下沿触发中断,由编程实现从机i2c(slave)很方便。但(不像双工通讯的rs串行口)单片机无法通过从机i2c(slave)主动(随机地)向esp-12模块发信息,为此要引入一个重要机制,即单片机要向esp-12模块发信息时,先发中断请求;另一端,在esp-12模块已定义了i2c的情况下再定义其中的scl脚具有上沿中断触发功能,一旦(当单片机要向esp-12模块发信息时先上拉scl脚)esp-12模块的scl脚被上拉中断响应时,立即禁止scl脚的中断功能,启动主机i2c(master)读过程,单片机端则常处在从机i2c(slave)状态,随时能根据scl时钟脉冲,配合发送数据sda串行位。

同样,由于采用http网络通讯协议,esp-12模块(采用wifi直连的超微型http服务器)也不能主动(随机)向手机或电脑(的浏览器)发信息,为此采用html5+js的sse(服务器推送)技术。

经过这两种通讯协议实现数据在单片机与手机或电脑间的双向传送,esp-12模块终于实现了仅四根线的插拔接口同单片机控制系统连接,还包括了esp-12模块的供电及插拔固定。

单片机(定时芯片)系统可简化到仅留一个启动按键及一两个工作状态指示led。对多功能选择启动,可看状态指示led逐次短按轮转,或长按。

关于单片机定时芯片用作超声微孔雾化片的驱动、湿度检测、及低压直流风扇的驱动(这些驱动具有典型性),对stc15w104类8脚单片机也能紧凑地实现:(图2中)微控制器mcu输出108khz的pwm矩形波的口p3.1串限流电阻r1接mos管mos1栅极g,mos管mos1源极s接地,mos管mos1漏极d接高频升压变压器b初级一端,b初级另一端接+12v,高频升压变压器b次级两端同超声微孔雾化片w两端并联(一些为谐振补偿还并联电容c,或一些为减弱同初级偶合还串联电感l)。

湿度检测采用dht11一总线接口数字湿度传感器,微控制器mcu端口p3.2接dht11仅有的一根数据线(p3.2具有上下沿中断功能,适合做一总线接口驱动),dht11的另两根引脚一根接地、一根接微控制器电源(3.3v)+端。

微控制器mcu输出口p3.0串限流电阻r2接mos管mos2栅极g,mos管mos2源极s接地,mos管mos2漏极d接直流风扇f负极,直流风扇f正极接+12v(直流电机类风扇还要并联电容或反接二极管吸收反高压)。

之所以将超声微孔雾化、温度(dht11同时具有温度检测)湿度检测、及风扇放在一起,是因为这三项功能组合在一起对种子发芽、育苗有重要作用,可组成发芽/育苗加湿实验箱。

stc15w104的p3.3(上下降沿中断)作sda、p3.4(仅下降沿中断)作scl,连接到i2c(slave)四芯插口。

stc15w104的p3.0、p3.1除串限流电阻接mos管栅极外,仍不影响连接电脑烧录程序(mos管栅极是高阻,还串电阻)。

关于单片机定时芯片用作红外遥控器及学习型编码记录:微控制器mcu输出口p3.5串限流电阻接红外发射led负端,红外发射led正端接微控制器电源+端;红外接收头(hs0038、pc838等)输出端接端口p3.2,红外接收头的另两根引脚一根接地、一根接微控制器电源(3.3v)+端,电路类似图2(去掉两mos管)。

操作说明:

手机或电脑wifi连接esp-12模块方法如下:

在单片机定时芯片工作启动前,先用手机或电脑进行时间或定时功能设置,因此要连上配套的wifi连接模块。若首次连接,手机或电脑在无线网络设置中找esp-12、无密码或12345678,进行wifi连接,连接成功后,打开浏览器访问196.168.4.1(esp-12的wifi连接ap模式的ip),进入操作界面后就可进行时间或定时功能设置。接着,常用的做法是将当地的无线路由器wifi连接名、密码置入配套的wifi连接模块中(esp-12的wifi连接station模式),使每次连上后其自动会连接当地的wifi(无线路由器);设置成功后记下所用的(dhcp)ip地址(如:196.168.0.103),此后手机或电脑无需再进无线网络设置中找esp-12连接,仍连原来的当地wifi即可,当手机或电脑再要联机设置时,只要用浏览器访问196.168.0.103即可。注意:这里esp-12模块的wifi连接的ap、station模式,就是所说的wifi直连方式(无须通外网、无须第三方服务,也不影响手机或电脑访问外网)。

上述接上wifi连接模块,用手机或电脑wifi联机设置单片机定时功能,简称联机。联机时,有动态操作提示,包括直接测试效果或设置确认;设置满意后,撤掉wifi连接模块,以后的使用(也就是脱离联机的单片机平时工作,即定时功能的启停),只要按单片机(定时芯片)所连的一个启动按键即可。对设有多种功能的选择启动,通过逐次短按启动按键,并观察指示灯led状态。

手机或电脑设置时间或定时有html5标准时间控件出现,只要选:月、日、时、分、周中某数字、或直接输入数字。

时间已启动,一般不能断电,除非是无需实时时间的延时类定时,在启动前可以断电。一些采用在设定的时间启动作为时间起点,如中午12点或晚上10点开机作为定时起点,可联机更改设定。

对一些长时间的定时控制,在中途可确认定时在正常进行中,既可通过手机或电脑联机详细了解,也可通过长按启动按键看led指示灯闪两次以上表示(长亮表示已断电过)。

一些微小电流单片机控制(如电容降压驱动可控硅),其5v以下的供电驱不动esp-12wifi模块,此种wifi连接模块包括3.7v锂电池供电,及充电口或电源插头。

另外,用户会(有意无意)不即时拔掉wifi连接模块,为防无故耗电或占wifi资源,esp-12wifi连接模块还包括无操作延时后进入极低功耗模式(deepsleep。rtctime.dsleep(0,4))、或用手机或电脑设置esp-12wifi模块进入极低功耗模式。可通过esp-12模块的rst按键或拔出再插上唤醒,继续wifi联机工作。

定时设置常用如下典型格式:

[[日期][时间]]功能1:时长1[功能2:时长2][功能3:时长3]…[停时长]…

[日期]开时间1-关时间1[功能/参数1]

[日期]开时间2-关时间2[功能/参数2]

[]表示可缺省,以常用值默认;功能/参数可包括多个数值。

例1:[[日期][时间]]都缺省了,默认为开机即启动,[停时长]缺省,默认为不循环:

大火:10(分钟)小火:30(分钟)

例2:

4月1日8:30闹铃10(分钟)

例3:

4:00-6:30洗澡水加热

22:00-8:00冰箱上电

定时类这种典型格式较为通用,所以wifi模块才能做得具有一定的通用性,为多种应用共用。

esp-12wifi模块编程采用nodemcu固件,lua脚本语言程序公开、html文件公开(一般都能直接从浏览器看到),则可教学推广,让用户可自己改写(脚本语言,改写一些名词、数字特别直观方便。特别是无需程序开发环境,有记事本就行,程序解释都在nodemcu固件中)为更适用美观的设置操作界面。特别要提供包括html5+js的sse程序范例及i2c(master)两线串行总线接口以scl上沿中断方式触发启动读发来的字节i2c.read(0,n):byte(1,n)的程序范例。

再有已编程单片机定时芯片的控制功能及用法通过技术文件完全公开,包括单片机引脚功能及连接图,则更能自已编程实现个性化功能。

本发明的核心是提出“借wifi模块”临时连接所带来的应用模式变化。

最初的想法是借wifi模块临时性地用手机或电脑wifi连接单片机,实现用手机或电脑来方便地设置工作要求(因为常规电器的设置很麻烦,例如电饭煲设时间、各类电子钟/定时器设时间),结果没想到,正是这种临时性地借wifi模块,带来了一系列的变化,特别是为单片机带来了一种新的应用模式。

首先是手机或电脑这种高普及率的使用,人人都会,具体的操作可设计成有动态提示。正是有了手机或电脑事先已做好了个性化定时设置,单片机工作、或定时类电器的具体启动就简单了,即单片机系统、或定时类应用电器上的显示屏、键盘就不需要了,仅设一个启动按钮及一两个状态指示led即可。也就是说这种单片机定时控制或所构成的电器的操作界面一般不要了、体积变小了、设计简化了、成本降低了。

顺着这个思路进一步推广,在单片机引脚允许的前提下,多编一些定时功能在单片机中,具体用哪个借wifi模块联机,由用户自己选择。因为手机或电脑有操作动态提示、下拉菜单、钩选等,功能选择或个性化详细定制很方便。因此这种已编程单片机成了不需要用户写程序的通用芯片了(特别适合快速低成本满足个性化小众需求,因个性化小众需求不适合定制芯片批量生产)。由此引发出两种应用用户,一种就是常规的最终用户,另一种用户是二次开发商家,凭借对nodemcu的熟悉及会lua脚本语言、html5编程,将这种已编程单片机按最终用户需求进行功能定制,同时调整配套的wifi模块操作界面,使最终用户拿到的单片机定时芯片及配套的wifi模块是已经过定制的、很专业的应用套件。

为二次开发商家对这种已编程单片机充分开发应用,已编程单片机必须有详细功能使用说明文件,包括单片机各引脚连接图及功能说明(输出控制信号还包括pwm、输入信号还包括adc,提供典型测试电路),以及配套的wifi模块中的nodemculua脚本编程、html5文件(包括提供html5+js的sse程序范例及i2c(master)两线串行总线接口以scl上沿中断方式触发启动读发来的字节i2c.read(0,n):byte(1,n)的程序范例)。最终用户也可根据这些改写(脚本语言,改写一些名词、数字特别直观方便。特别是无需程序开发环境,有记事本就行,程序解释都在nodemcu固件中)更适自己的设置操作界面。

注意:stc单片机因通常要执行高速操作,例如输出微孔雾化超声波所需要的110khz的pwm驱动信号,或学习红外遥控器发射的编码,还要同时有系统时钟、响应按键操作包括短按、长按,一般只能用高效的汇编语言(特别是stc15系列的8脚ic,片上资源有限,程序必须非常高效精简),编程难度大,因此对stc单片机的程序一般不作教学推广。

适用的应用类:

1、定时器控制类,定时器的设置实际上分成两部分:时钟设置、定时设置。这两种设置用常规的带显示屏时钟模块来设置很麻烦,要反复一次一次地按小按键,免不了偶然一次弄错又要全重来。理想的方法当然是用手机或电脑来做这种设置,它有(html5)时间控件,只要选选点击就行,或键盘直接输入数字或手写都很方便。无论是时钟设置、还是定时设置,设置完成后就不再需要手机或电脑了,单片机工作时不需要显示屏及键盘,仅留一个启动按钮及一两个状态指示led即可。控制包括通电断电、pwm数值调节、红外遥控、无线遥控、及微孔雾化超声波输出等。应用实例有冰箱峰谷供电节能插座、超声微孔雾化、学习型定时遥控器等。

2、数值调整类设置:微孔雾化片工作频率选定、led灯亮度设置(降低亮度很节能,特别对36颗led灯珠以上的高压恒流供电,目前已成主流,问题是只要其中一颗led灯珠坏就全坏,降低亮度是最好的保护)、电瓶车充电器工作微调(调小充电电流安全,但时间长;对没有电池保护电路的廉价组装电池,增加大电流充电限时设置)、电饭煲、炖锅、养生炉、电磁炉、电陶炉等(微控制电器)按个人需求设几个专项(如:烧饭:大火10分钟,小火20分钟,不保温;热菜:大火1分钟,小火3分钟,保温;老人安全加热:小火20分钟,不保温),这些琐碎的设置只有用手机或电脑来做才解释得清楚。一旦设置完成,平时使用就很方便了,不再需要手机或电脑,只要一个启动按钮及若干个状态指示led即可(例如,led1亮表示:大火10分钟、led2亮表示:小火20分钟、led3亮表示:保温60分钟;短按启动按钮轮换,长按取消或关)。

注意,上述两类的设置调整都可能包括较复杂的人机交互,例如微孔雾化片工作频率选定,由于微孔雾化片的加工差异或升压电感的制作差异,工作频率选定得正确则工作电流不很大雾化很强,若工作频率选定得不正确,雾化小、电流大,很可能烧毁驱动功率管,因此让用户自己微调工作频率,实时观察效果,选择最优固定(平时就不需要这个过程了)。

再例如电动车电瓶充电,想检查电瓶是否快坏了,通常观察充电时的电压上升情况,若上升快电压偏高,那电瓶就有问题了,这里涉及到了单片机要随机主动发采样数据给手机或电脑,让它们来进行复杂运算并显示结果。并且这些都是难得做一次的(插上配套的wifi模块联手机或电脑操作),平时工作不需要wifi模块,只要一个启动按钮及若干个状态指示led即可。

以上所列应用由已编程单片机实现很经济简洁,许多都是针对单片机定时控制的,省掉了显示屏键盘(有些甚至连启动按钮及led状态指示都不要,如led调光照明灯,它通过逐次断电切换)。难得需要复杂的调整设置时,借用配套的wifi模块在手机或电脑上临时做一下。并且配套的wifi模块可共用一个,将各配套的nodemculua程序合编在一起装入esp-12wifi模块,使用时由手机或电脑选择需要的应用。

因此,这就促成了本文所提出的一种单片机定时控制芯片。

手机或电脑联机不涉及第三方网络服务、更不要注册/密码、不下载安装app、也不需要通外网连接。因此不要把它同目前吹得高大上的物联网混淆,当然若需要联网,esp-12的nodemcu中有mqtt模块,本身就已经具备了物联网功能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1