智能避雷定时插座及其控制方法

文档序号:7384020阅读:248来源:国知局
智能避雷定时插座及其控制方法
【专利摘要】一种智能避雷定时插座及其控制方法,包括同220V交流电源相连接的带有防雷保护电路的变压器,所述的变压器同稳压装置相连接,稳压装置同用于反向器的电阻组和电源选择电路连接,电源选择电路同单片机、4位共阳极7段数码管、带有按键和滤波电路的输入电路以及继电器电路相连接,而4位共阳极7段数码管、反向器、带有按键和滤波电路的输入电路以及继电器电路分别同单片机的对应管脚相连接,所述的继电器电路的电源输出端同插座的电极相连接。这样的结构结合其方法避免了现有技术中现在还没有可靠有效的只具有单一功能无法对电器设备进行时间控制以及另外通常的插座不具备避雷的作用的缺陷。
【专利说明】智能避雷定时插座及其控制方法
【技术领域】
[0001]本发明属于避雷插座【技术领域】,具体涉及一种智能避雷定时插座及其控制方法。
[0002]【背景技术】
通常人们日常生活中使用的插座,只具有单一功能,实现开关和接用各种电器,但有时需要对电器设备进行时间控制。另外通常的插座不具备避雷的作用,当发生雷击时,接在插座上的电器(例如:电视)就可能被烧毁。

【发明内容】

[0003]本发明的目的提供一种智能避雷定时插座及其控制方法,包括同220V交流电源相连接的带有防雷保护电路的变压器,所述的变压器的出口同稳压装置的入口相连接,稳压装置的出口同用于反向器的电阻组和电源选择电路的入口相连接,电源选择电路的出口同单片机的电源输入管脚、4位共阳极7段数码管的电源输入引脚、带有按键和滤波电路的输入电路的电源输入端以及继电器电路的电源输入端相连接,而4位共阳极7段数码管的引脚、反向器的引脚、带有按键和滤波电路的输入电路的输出端以及继电器电路的受控端分别同单片机的对应管脚相连接,所述的继电器电路的电源输出端同插座的电极相连接。这样的结构结合其方法避免了现有技术中现在还没有可靠有效的只具有单一功能无法对电器设备进行时间控制以及另外通常的插座不具备避雷的作用的缺陷。
[0004]为了克服现有技术中的不足,本发明提供了一种智能避雷定时插座及其控制方法的解决方案,具体如下:
一种智能避雷定时插座,包括同220V交流电源相连接的带有防雷保护电路的变压器Tl,所述的变压器Tl的出口同稳压装置的入口相连接,稳压装置的出口同用于反向器A2的电阻组和电源选择电路的入口相连接,电源选择电路的出口同单片机Al的电源输入管脚、4位共阳极7段数码管A3的电源输入引脚、带有按键和滤波电路的输入电路的电源输入端以及继电器电路的电源输入端相连接,而4位共阳极7段数码管A3的引脚、反向器A2的弓丨脚、带有按键和滤波电路的输入电路的输出端以及继电器电路的受控端分别同单片机Al的对应管脚相连接,所述的继电器电路的电源输出端同插座的电极相连接。
[0005]所述的带有防雷保护电路的变压器Tl的防雷保护电路包括第一双极型瞬态电压抑制二极管VD1,所述的第一双极型瞬态电压抑制二极管VDl的一极同第二双极型瞬态电压抑制二极管VD2的一极、变压器Tl的原边的一端以及220V交流电源的火线Vl相电连接,所述的第一双极型瞬态电压抑制二极管VDl的另一极同第三双极型瞬态电压抑制二极管VD3的一极、变压器Tl的原边的另一端以及220V交流电源的零线V2相电连接,所述的第二双极型瞬态电压抑制二极管VD2的另一极和第三双极型瞬态电压抑制二极管VD3的另一极接地,所述的变压器Tl的副边的两端就构成了所述的变压器Tl的出口,变压器Tl的出口能够输出9V交流电。
[0006]所述的稳压装置包括顺序依次连接的全波整流电路、前部滤波电路、7805稳压电路U19以及后部滤波电路,所述的全波整流电路包括第一普通二极管D8,所述的第一普通二极管D8的正极同变压器Tl的副边的一端和第二普通二极管D7的负极相连接,第二普通二极管D7的正极同第三普通二极管DlO的正极相连接,第三普通二极管DlO的负极同第四普通二极管D9的正极和变压器Tl的副边的另一端相连接,第四普通二极管D9的负极同第一普通二极管D8的负极相连接,所述的第三普通二极管DlO的负极和第一普通二极管D8的正极就构成了稳压装置的入口 ;所述的前部滤波电路包括第一有极性电容C36,所述的第一有极性电容C36的正极同第四普通二极管D9的负极和第一普通电容C37的一极相连接,所述的第一有极性电容C36的负极同第二普通二极管D7的正极和第一普通电容C37的另一极相连接;所述的7805稳压电路U19的输入端IN同所述的第一普通电容C37的一极相连接,所述的7805稳压电路U19接地的接地端GND同所述的第一普通电容C37的另一极相连接;所述的后部滤波电路包括第二有极性电容C16,所述的第二有极性电容C16的正极同7805稳压电路U19的输出端OUT和第二普通电容C17的一极相连接,所述的第二有极性电容C16的负极同7805稳压电路U19接地的接地端GND和第二普通电容C17的另一极相连接,所述的第二普通电容C17的一极还同第三普通电容C18的一极、第四普通电容C19的一极以及第五普通电容C20的一极相连接,所述的第二普通电容C17的另一极还同第三普通电容C18的另一极、第四普通电容C19的另一极以及第五普通电容C20的另一极相连接,所述的第五普通电容C20的一极就构成了稳压装置的出口 VCCG,稳压装置的出口 VCCG能够输出5V直流电。
[0007]所述的单片机Al为AT89C51单片机,所述的反向器A2为ULN2003A集成芯片。
[0008]所述的电源选择电路包括第五普通二极管D2,作为电源选择电路的入口的第五普通二极管D2的正极同稳压装置的出口 VCCG相连接,所述的第五普通二极管D2的负极同第六普通二极管Dl的负极相连接,所述的第六普通二极管Dl的正极同4.5V的直流电源相连接,这样第六普通二极管Dl的负极就构成了电源选择电路的出口 VCC。
[0009]所述的带有按键和滤波电路的输入电路包括第一电阻R10,作为带有按键和滤波电路的输入电路的电源输入端的第一电阻RlO的一端同电源选择电路的出口 VCC相连接,所述的第一电阻RlO的另一端同作为功能切换信号QIEH发生源的第一按键SI的一端、第六普通电容C4的一极以及AT89C51单片机中的标识为P3.3的管脚相连接,第一按键SI的另一端和第六普通电容C4的另一极接地,第一电阻RlO和第六普通电容C4构成了第一 RC滤波电路;第二电阻Rll的一端同电源选择电路的出口 VCC相连接,所述的第二电阻Rll的另一端同作为开通的时间设定和复位信号FUW发生源的第二按键S2的一端、第七普通电容C5的一极以及AT89C51单片机中的标识为P3.4的管脚相连接,第二按键S2的另一端和第七普通电容C5的另一极接地,第二电阻Rll和第七普通电容C5构成了第二 RC滤波电路;第三电阻R12的一端同电源选择电路的出口 VCC相连接,所述的第三电阻R12的另一端同作为关闭的时间设定和确认信号QID发生源的第三按键S3的一端、第八普通电容C6的一极以及AT89C51单片机中的标识为P3.5的管脚相连接,第三按键S3的另一端和第八普通电容C6的另一极接地,第三电阻R12和第八普通电容C6构成了第三RC滤波电路;第四电阻R13的一端同电源选择电路的出口 VCC相连接,所述的第四电阻R13的另一端同作为小时调整信号TIAOS发生源的第四按键S4的一端、第九普通电容C7的一极以及AT89C51单片机中的标识为P3.6的管脚相连接,第四按键S4的另一端和第九普通电容C7的另一极接地,第四电阻R13和第九普通电容C7构成了第四RC滤波电路;第五电阻R14的一端同电源选择电路的出口 VCC相连接,所述的第五电阻R14的另一端同作为分钟调整信号TIAOF发生源的第五按键S5的一端、第十普通电容C8的一极以及AT89C51单片机中的标识为P3.7的管脚相连接,第五按键S5的另一端和第十普通电容CS的另一极接地,第五电阻R14和第十普通电容C8构成了第五RC滤波电路。
[0010]所述的4位共阳极7段数码管电路中的标识为13的引脚、4位共阳极7段数码管电路中的标识为9的引脚、4位共阳极7段数码管电路中的标识为5的引脚、4位共阳极7段数码管电路中的标识为3的引脚、4位共阳极7段数码管电路中的标识为2的引脚、4位共阳极7段数码管电路中的标识为12的引脚以及4位共阳极7段数码管电路中的标识为6的引脚分别同AT89C51单片机中的标识为Pl.0的管脚、AT89C51单片机中的标识为Pl.1的管脚、AT89C51单片机中的标识为Pl.2的管脚、AT89C51单片机中的标识为Pl.3的管脚、AT89C51单片机中的标识为Pl.4的管脚、AT89C51单片机中的标识为Pl.5的管脚以及AT89C51单片机中的标识为Pl.6的管脚相连接,而作为4BIT端的4位共阳极7段数码管电路中的标识为14的引脚、作为3 BIT端的4位共阳极7段数码管电路中的标识为11的弓丨脚、作为2 BIT端的4位共阳极7段数码管电路中的标识为10的引脚以及作为I BIT端的4位共阳极7段数码管电路中的标识为7的引脚分别同所述的ULN2003A集成芯片中的标识为10的引脚、所述的ULN2003A集成芯片中的标识为11的引脚、所述的ULN2003A集成芯片中的标识为12的引脚以及所述的ULN2003A集成芯片中的标识为13的引脚相连接,另外4位共阳极7段数码管电路中的标识为8的引脚通过第六电阻R19同AT89C51单片机中的标识为P3.0的管脚相连接。
[0011]所述的继电器电路的包括带有常开触点的继电器JDQ,所述的继电器JDQ的线圈的一端同第七普通二极管D4的负极以及电源选择电路的出口 VCC相连接,作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端同第七普通二极管D4的正极相连接,所述的常开触点的一端同220V交流电源的火线Vl相连接,作为继电器电路的电源输出端的所述的常开触点的另一端V3同插座的电极相连接,作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端还同所述的ULN2003A集成芯片中的标识为14的引脚相连接。
[0012]所述的AT89C51单片机中的标识为RST的管脚同第七电阻Rl的一端以及第十一普通电容C3的一极相连接,所述的第七电阻Rl的另一端接地,所述的第十一普通电容C3的另一极同电源选择电路的出口 VCC相连接;所述的AT89C51单片机中的标识为P3.1的管脚同所述的ULN2003A集成芯片中的标识为3的引脚相连接,所述的AT89C51单片机中的标识为XTAL2的管脚和所述的AT89C51单片机中的标识为XTALl的管脚分别同晶振Yl的两端相连接,晶振Yl的两端还分别同第十二普通电容Cl的一极和第十三普通电容C2的一极相连接,所述的第十二普通电容Cl的另一极和第十三普通电容C2的另一极均接地;所述的AT89C51单片机中的标识为Vss的管脚接地;所述的AT89C51单片机中的标识为P2.3的管脚、AT89C51单片机中的标识为P2.2的管脚、AT89C51单片机中的标识为P2.1的管脚以及AT89C51单片机中的标识为P2.0的管脚分别同所述的ULN2003A集成芯片中的标识为4的引脚、ULN2003A集成芯片中的标识为5的引脚、ULN2003A集成芯片中的标识为6的引脚以及ULN2003A集成芯片中的标识为7的引脚相连接;ULN2003A集成芯片中的标识为8的引脚接地;所述的ULN2003A集成芯片中的标识为14的引脚、ULN2003A集成芯片中的标识为13的引脚、ULN2003A集成芯片中的标识为12的引脚、ULN2003A集成芯片中的标识为11的引脚以及ULN2003A集成芯片中的标识为10的引脚分别同第八电阻R2的一端、第九电阻R3的一端、第十电阻R4的一端、第^ 电阻R5的一端以及第十二电阻R6的一端相连接,第八电阻R2的另一端、第九电阻R3的另一端、第十电阻R4的另一端、第十一电阻R5的另一端以及第十二电阻R6的另一端均同稳压装置的出口 VCCG相连接;所述的AT89C51单片机中的标识为Vpp的管脚和AT89C51单片机中的标识为Vcc的管脚均同电源选择电路的出口 VCC相连接。
[0013]所述的AT89C51单片机中还包括有主控模块、定时中断模块、第二功能模块、第一功能模块、开通时间设定模块、计时模块、开通时间比较模块、关闭时间模块、关闭时间比较模块、数码管显示模块、复位模块。
[0014]所述的智能避雷定时插座的控制方法,步骤如下:
步骤1:所述的AT89C51单片机上电后,同时启动主控模块,所述的主控模块按照预先设定的值分别对定时器和中断系统进行初始化,并且把AT89C51单片机中的作为内存的RAM的存储单元的值清零;
步骤2:AT89C51单片机进入等候定时中断的阶段;
步骤3:当定时器触发了定时中断事件后,AT89C51单片机就执行定时中断模块,所述的定时中断模块首先判断第一按键SI是否按下产生上升沿脉冲,如果为第一按键SI按下产生上升沿脉冲的状态,就把内存地址为21H的存储单元的值按位取反,然后判断内存地址为21H的存储单元的值是否为I,如果内存地址为21H的存储单元的值为I,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;如果不为第一按键SI按下产生上升沿脉冲的状态,然后判断内存地址为21H的存储单元的值是否为1,如果内存地址为21H的存储单元的值为1,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;然后进入步骤6执行数码管显示模块;接着按照预先设定的值重新设定定时器,然后返回执行步骤2;
步骤4:第二功能模块首先判断第二按键S2是否按下产生下降沿脉冲,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,然后判断内存地址为23H的存储单元的值是否为1,如果内存地址为23H的存储单元的值为1,就进入步骤7执行开通时间设定模块,然后判断第二按键S2是否按下产生下降沿脉冲,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值清零,然后依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果不为第二按键S2按下产生下降沿脉冲的状态,依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果内存地址为23H的存储单元的值不为1,就判断第三按键S3是否按下产生下降沿脉冲,如果为第三按键S3按下产生下降沿脉冲的状态,就把内存地址为43H的存储单元的值置1,然后判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键S3是否按下产生下降沿脉冲,如果第三按键S3为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零;如果不为第三按键S3按下产生下降沿脉冲的状态,判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键S3是否按下产生下降沿脉冲,如果第三按键S3为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零,如果内存地址为43H的存储单元的值为I,转入步骤12执行时间设定模块;
步骤5:第一功能模块首先判断第三按键S3是否按下而产生了下降沿的脉冲信号,如果第三按键S3为按下而产生了下降沿的脉冲信号的状态,就将内存地址为IOH的存储单元的值置为1,然后判断内存地址为IOH的存储单元的值是否为I,如果内存地址为IOH的存储单元的值不为1,就转入步骤12执行时间设定模块,然后判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果内存地址为IOH的存储单元的值为1,就把存储有定时用的时分秒的寄存器加1,然后判断存储有定时用的时分秒的寄存器是否为非O值,如果存储有定时用的时分秒的寄存器不为非O值,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果存储有定时用的时分秒的寄存器为非O值,就把该寄存器存储秒的值的单元执行减一操作,执行减一操作后判断该减I操作是否有存储秒的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储秒的值的单元的十位减一,然后存储秒的值的单元的个位为9 ;再判断该减I操作是否有存储秒的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储分的值的单元的个位减一,然后存储秒的值的单元的十位为5 ;再判断该减I操作是否有存储分的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储分的值的单元的十位减一,然后存储分的值的单元的个位为9 ;再判断该减I操作是否有存储分的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储时的值的单元的个位减一,然后存储分的值的单元的十位为5 ;再判断该减I操作是否有存储时的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储时的值的单元的十位减一,然后存储时的值的单元的个位为9 ;再判断该减I操作是否有存储时的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把该寄存器的存储时分秒的单元均设置为O,然后运行步骤14的执行模块,再判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;
步骤6:数码管显示模块把AT89C51单片机中的标识为P2.0的管脚清零,然后把第一存储单元P2字节内的数据循环左移,判断AT89C51单片机中的标识为P2.0的管脚的值是否为1,如果标识为P2.0的管脚的值不为1,就把定时的小时的十位值赋值给第二存储单元A,如果标识为P2.0的管脚的值为1,判断AT89C51单片机中的标识为P2.1的管脚的值是否为1,如果标识为P2.1的管脚的值不为1,就把定时的小时的个位值赋值给第二存储单元A,如果标识为P2.1的管脚的值为1,判断AT89C51单片机中的标识为P2.2的管脚的值是否为1,如果标识为P2.2的管脚的值不为1,就把定时的分钟的十位值赋值给第二存储单元A,如果标识为P2.2的管脚的值为1,判断AT89C51单片机中的标识为P2.3的管脚的值是否为1,如果标识为P2.3的管脚的值不为1,就把定时的分钟的个位值赋值给第二存储单元A,如果标识为P2.3的管脚的值为1,判断第二存储单元A的值是否为O,如果第二存储单元A的值是O,就把COH赋值给第三存储单元Pl,如果第二存储单元A的值不是O,就继续判断第二存储单元A的值是否为I,如果第二存储单元A的值是I,就把F9H赋值给第三存储单元Pl,如果第二存储单元A的值不是I,就继续判断第二存储单元A的值是否为2,如果第二存储单元A的值是2,就把A4H赋值给第三存储单元Pl,如果第二存储单元A的值不是2,就继续判断第二存储单元A的值是否为3,如果第二存储单元A的值是3,就把BOH赋值给第三存储单元Pl,如果第二存储单元A的值不是3,就继续判断第二存储单元A的值是否为4,如果第二存储单元A的值是4,就把99H赋值给第三存储单元Pl,如果第二存储单元A的值不是4,就继续判断第二存储单元A的值是否为5,如果第二存储单元A的值是5,就把92H赋值给第三存储单元Pl,如果第二存储单元A的值不是5,就继续判断第二存储单元A的值是否为6,如果第二存储单元A的值是6,就把82H赋值给第三存储单元Pl,如果第二存储单元A的值不是6,就继续判断第二存储单元A的值是否为7,如果第二存储单元A的值是7,就把F8H赋值给第三存储单元Pl,如果第二存储单元A的值不是7,就继续判断第二存储单元A的值是否为8,如果第二存储单元A的值是8,就把80H赋值给第三存储单元Pl,如果第二存储单元A的值不是8,就继续判断第二存储单元A的值是否为9,如果第二存储单元A的值是9,就把90H赋值给第三存储单元Pl,如果第二存储单元A的值不是9,退出数码管显示模块;
步骤7:开通时间设定模块先把定时的时分秒数据存储到存储定时用的时分秒的寄存器中,接着把开通时间的时分秒数据存储到定时的时分秒数据单元中,然后依次进入步骤12执行时间设定模块和步骤6的数码管显示模块,最后将定时的时分秒数据存储到开通时间的时分秒数据单元中,最后退出开通时间设定模块;
步骤8:计时模块先把存储定时用的时分秒的寄存器中的值加一,然后判断存储定时用的时分秒的寄存器中的值是否为零,如果为零,退出计时模块;如果不为零,就把该寄存器中存储秒值的个位单元加一,如果该寄存器中存储秒值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的个位单元加一操作有进位操作,就把该寄存器中存储秒值的十位单元加一,而把该寄存器中存储秒值的个位单元置为O,如果该寄存器中存储秒值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的十位单元加一操作有进位操作,就把该寄存器中存储分值的个位单元加一,而把该寄存器中存储秒值的十位单元置为O,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分值的十位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储分值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出计时模块;
步骤9:开通时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同开通时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器导通插座;
步骤10:关闭时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同关闭时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器断开插座;
步骤11:关闭时间模块首先把定时的时分秒存入存储定时用的时分秒的寄存器中,再把关闭时间的时分秒数据存入存储定时的时分秒的存储单元中,依次进入步骤12执行时间设定模块和进入步骤6执行数码管显示模块,然后把定时的时分秒存入存储关闭时间的时分秒数据的存储单元中,再把存储定时用的时分秒的寄存器中的定时用的时分秒值取出,退出关闭时间模块;
步骤12:时间设定模块首先判断第四按键S4是否被按下并产生了向上沿的脉冲信号,如果第四按键S4处于被按下并产生了向上沿的脉冲信号,把存储定时用的时分秒的寄存器中存储分值的个位单元加一,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分值的十位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储分值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第四按键S4处于没被按下并没产生向上沿的脉冲信号,继续判断第五按键S5是否被按下并产生了向上沿的脉冲信号,如果第五按键S5处于被按下并产生了向上沿的脉冲信号,把该寄存器中存储时值的个位单元加一,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第五按键S5没有处于被按下并产生了向上沿的脉冲信号,退出时间设定模块;步骤13:复位模块就是把存储定时用的时分秒的寄存器的值清零,并且操纵继电器断开插座;
步骤14:执行模块就是操作继电器导通插座。
[0015]应用本发明上述方案,通过智能避雷定时插座,它将定时功能加入插座中,用户可以根据需要自由设定时间,待时间到达时,插座自动接通或者断开。当发生雷击时,插座保持断电状态,保护接在插座上的电器,系统采用单片机控制系统,来检测用户的按键输入以及数据处理,采用数码管显示时间数据,继电器输出来控制插座的接通与断开,采用瞬态电压抑制二极管,当产生过压电流时,瞬态电压抑制二极管导通,过压电流入地,保护电器。
【专利附图】

【附图说明】
[0016]图1为本发明的稳压装置的结构示意图。
[0017]图2为本发明的继电器电路的结构示意图。
[0018]图3为本发明的4位共阳极7段数码管的结构示意图。
[0019]图4为本发明的带有按键和滤波电路的输入电路的结构示意图。
[0020]图5为本发明的带有防雷保护电路的变压器的结构示意图。
[0021]图6为本发明的单片机的连接结构示意图。
[0022]图7为本发明的电源选择电路的结构示意图。
【具体实施方式】
[0023]人们需要具有定时和避雷功能的智能插座。智能避雷定时插座将定时功能加入在插座中,用户可以根据需要自由设定时间,待时间到达时,插座自动接通或者断开。当发生雷击时,插座保持断电状态,保护接在插座上的电器。
[0024]下面结合附图对
【发明内容】
作进一步说明:
参照图1、图2、图3、图4、图5、图6和图7所示,一种智能避雷定时插座,包括同220V交流电源相连接的带有防雷保护电路的变压器Tl,所述的变压器Tl的出口同稳压装置的入口相连接,稳压装置的出口同用于反向器A2的电阻组和电源选择电路的入口相连接,电源选择电路的出口同单片机Al的电源输入管脚、4位共阳极7段数码管A3的电源输入引脚、带有按键和滤波电路的输入电路的电源输入端以及继电器电路的电源输入端相连接,而4位共阳极7段数码管A3的引脚、反向器A2的引脚、带有按键和滤波电路的输入电路的输出端以及继电器电路的受控端分别同单片机Al的对应管脚相连接,所述的继电器电路的电源输出端同插座的电极相连接。所述的带有防雷保护电路的变压器Tl的防雷保护电路包括第一双极型瞬态电压抑制二极管VD1,所述的第一双极型瞬态电压抑制二极管VDl的一极同第二双极型瞬态电压抑制二极管VD2的一极、变压器Tl的原边的一端以及220V交流电源的火线Vl相电连接,所述的第一双极型瞬态电压抑制二极管VDl的另一极同第三双极型瞬态电压抑制二极管VD3的一极、变压器Tl的原边的另一端以及220V交流电源的零线V2相电连接,所述的第二双极型瞬态电压抑制二极管VD2的另一极和第三双极型瞬态电压抑制二极管VD3的另一极接地,所述的变压器Tl的副边的两端就构成了所述的变压器Tl的出口,变压器Tl的出口能够输出9V交流电,当有雷电发生产生过电压时,过压电流可经瞬态电压抑制二极管入地,从而保护电器设备,具体来说当有雷电发生产生过电压时,过压电流可经线地之间的第二双极型瞬态电压抑制二极管VD2和第三双极型瞬态电压抑制二极管VD3入地,而它们的对地电压之差又被两线间第一双极型瞬态电压抑制二极管VDl进一步抑制,从而保护电器设备。所述的稳压装置包括顺序依次连接的全波整流电路、前部滤波电路、7805稳压电路U19以及后部滤波电路,所述的全波整流电路包括第一普通二极管D8,所述的第一普通二极管D8的正极同变压器Tl的副边的一端和第二普通二极管D7的负极相连接,第二普通二极管D7的正极同第三普通二极管DlO的正极相连接,第三普通二极管DlO的负极同第四普通二极管D9的正极和变压器Tl的副边的另一端相连接,第四普通二极管D9的负极同第一普通二极管D8的负极相连接,所述的第三普通二极管DlO的负极和第一普通二极管D8的正极就构成了稳压装置的入口 ;所述的前部滤波电路包括第一有极性电容C36,所述的第一有极性电容C36的正极同第四普通二极管D9的负极和第一普通电容C37的一极相连接,所述的第一有极性电容C36的负极同第二普通二极管D7的正极和第一普通电容C37的另一极相连接;所述的7805稳压电路U19的输入端IN同所述的第一普通电容C37的一极相连接,所述的7805稳压电路U19接地的接地端GND同所述的第一普通电容C37的另一极相连接;所述的后部滤波电路包括第二有极性电容C16,所述的第二有极性电容C16的正极同7805稳压电路U19的输出端OUT和第二普通电容C17的一极相连接,所述的第二有极性电容C16的负极同7805稳压电路U19接地的接地端GND和第二普通电容C17的另一极相连接,所述的第二普通电容C17的一极还同第三普通电容C18的一极、第四普通电容C19的一极以及第五普通电容C20的一极相连接,所述的第二普通电容C17的另一极还同第三普通电容C18的另一极、第四普通电容C19的另一极以及第五普通电容C20的另一极相连接,所述的第五普通电容C20的一极就构成了稳压装置的出口 VCCGjIS装置的出口 VCCG能够输出5V直流电。所述的单片机Al为AT89C51单片机,所述的反向器A2为ULN2003A集成芯片,在通常用单片机作为的控制系统中,常需要用开关量去控制和驱动一些执行元件,但一般的单片机驱动能力有限,且高电平(拉电流)比低电平(灌电流)驱动电流小。通常会采用晶体管相关电路来提升驱动能力,单片机一个输出点对应一个晶体管驱动电路,当单片机系统由多个输出点时,晶体管驱动电路就会比较多,会占用印刷电路板的空间,而且晶体管驱动电路的驱动能力有限。为了节省印刷电路板空间和加大驱动能力,采用ULN2003A集成芯片和单片机的综合应用。ULN2003A集成芯片每片封装了 7个达林顿管,每个驱动管的输出电流可达500mA (峰值600mA),输出电压达DC50V,为感性负载集成了抑流二极管,对于较大的电流,可以将输出并接使用,输入与TTL/CMOS/PMOS/DTL兼容,ULN2003A集成芯片在使用时,相当于一个反向器。所述的电源选择电路包括第五普通二极管D2,作为电源选择电路的入口的第五普通二极管D2的正极同稳压装置的出口 VCCG相连接,所述的第五普通二极管D2的负极同第六普通二极管Dl的负极相连接,所述的第六普通二极管Dl的正极同4.5V的直流电源相连接,这样第六普通二极管Dl的负极就构成了电源选择电路的出口 VCC。所述的带有按键和滤波电路的输入电路包括第一电阻R10,作为带有按键和滤波电路的输入电路的电源输入端的第一电阻RlO的一端同电源选择电路的出口 VCC相连接,所述的第一电阻RlO的另一端同作为功能切换信号QIEH发生源的第一按键SI的一端、第六普通电容C4的一极以及AT89C51单片机中的标识为P3.3的管脚相连接,第一按键SI的另一端和第六普通电容C4的另一极接地,第一电阻RlO和第六普通电容C4构成了第一 RC滤波电路;第二电阻Rll的一端同电源选择电路的出口 VCC相连接,所述的第二电阻Rll的另一端同作为开通的时间设定和复位信号FUW发生源的第二按键S2的一端、第七普通电容C5的一极以及AT89C51单片机中的标识为P3.4的管脚相连接,第二按键S2的另一端和第七普通电容C5的另一极接地,第二电阻Rll和第七普通电容C5构成了第二 RC滤波电路;第三电阻R12的一端同电源选择电路的出口 VCC相连接,所述的第三电阻R12的另一端同作为关闭的时间设定和确认信号QID发生源的第三按键S3的一端、第八普通电容C6的一极以及AT89C51单片机中的标识为P3.5的管脚相连接,第三按键S3的另一端和第八普通电容C6的另一极接地,第三电阻R12和第八普通电容C6构成了第三RC滤波电路;第四电阻R13的一端同电源选择电路的出口 VCC相连接,所述的第四电阻R13的另一端同作为小时调整信号TIAOS发生源的第四按键S4的一端、第九普通电容C7的一极以及AT89C51单片机中的标识为P3.6的管脚相连接,第四按键S4的另一端和第九普通电容C7的另一极接地,第四电阻R13和第九普通电容C7构成了第四RC滤波电路;第五电阻R14的一端同电源选择电路的出口 VCC相连接,所述的第五电阻R14的另一端同作为分钟调整信号TIAOF发生源的第五按键S5的一端、第十普通电容C8的一极以及AT89C51单片机中的标识为P3.7的管脚相连接,第五按键S5的另一端和第十普通电容CS的另一极接地,第五电阻R14和第十普通电容CS构成了第五RC滤波电路,按键的结构通常为机械弹性元件,在按键按下和断开时,触点在闭合和断开的瞬间会接触不稳定的抖动,按键的抖动时间一般为5?10ms,抖动现象会引起单片机对一次按键操作进行多次处理,从而产生错误。为了消除抖动现象,采用了 RC滤波电路,当按键按下时,由于对应的电容两端电压不能突变,按键两端端并不能立即变成0V,要待对应的电容C4放电结束(约IOms时间)后,按键两端为0V,从而有效避免了一次按键操作进行多次处理。所述的4位共阳极7段数码管电路中的标识为13的引脚、4位共阳极7段数码管电路中的标识为9的引脚、4位共阳极7段数码管电路中的标识为5的引脚、4位共阳极7段数码管电路中的标识为3的引脚、4位共阳极7段数码管电路中的标识为2的引脚、4位共阳极7段数码管电路中的标识为12的引脚以及4位共阳极7段数码管电路中的标识为6的引脚分别同AT89C51单片机中的标识为Pl.0的管脚、AT89C51单片机中的标识为Pl.1的管脚、AT89C51单片机中的标识为Pl.2的管脚、AT89C51单片机中的标识为Pl.3的管脚、AT89C51单片机中的标识为Pl.4的管脚、AT89C51单片机中的标识为Pl.5的管脚以及AT89C51单片机中的标识为Pl.6的管脚相连接,而作为4BIT端的4位共阳极7段数码管电路中的标识为14的引脚、作为3 BIT端的4位共阳极7段数码管电路中的标识为11的引脚、作为2 BIT端的4位共阳极7段数码管电路中的标识为10的引脚以及作为I BIT端的4位共阳极7段数码管电路中的标识为7的引脚分别同所述的ULN2003A集成芯片中的标识为10的引脚、所述的ULN2003A集成芯片中的标识为11的引脚、所述的ULN2003A集成芯片中的标识为12的引脚以及所述的ULN2003A集成芯片中的标识为13的引脚相连接,另外4位共阳极7段数码管电路中的标识为8的引脚通过第六电阻R19同AT89C51单片机中的标识为P3.0的管脚相连接,这种结构就能够采用动态显示方式,使得4BIT端、3 BIT端、2 BIT端、I BIT端循环高电平,逐一点亮每一位数码管,使4位7段数码管高速循环显示,从而显示出当前数值。所述的继电器电路的包括带有常开触点的继电器JDQ,所述的继电器JDQ的线圈的一端同第七普通二极管D4的负极以及电源选择电路的出口 VCC相连接,作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端同第七普通二极管D4的正极相连接,所述的常开触点的一端同220V交流电源的火线Vl相连接,作为继电器电路的电源输出端的所述的常开触点的另一端V3同插座的电极相连接,作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端还同所述的ULN2003A集成芯片中的标识为14的引脚相连接,而常开触点这样当作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端有DC5V时,继电器不工作,220V交流电源的火线Vl与作为继电器电路的电源输出端的所述的常开触点的另一端V3断开,插座断电;当当作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端有OV时,继电器工作,220V交流电源的火线Vl与作为继电器电路的电源输出端的所述的常开触点的另一端V3接通,插座通电。所述的AT89C51单片机中的标识为RST的管脚同第七电阻Rl的一端以及第十一普通电容C3的一极相连接,所述的第七电阻Rl的另一端接地,所述的第十一普通电容C3的另一极同电源选择电路的出口 VCC相连接;所述的AT89C51单片机中的标识为P3.1的管脚同所述的ULN2003A集成芯片中的标识为3的引脚相连接,所述的AT89C51单片机中的标识为XTAL2的管脚和所述的AT89C51单片机中的标识为XTALl的管脚分别同晶振Yl的两端相连接,晶振Yl的两端还分别同第十二普通电容Cl的一极和第十三普通电容C2的一极相连接,所述的第十二普通电容Cl的另一极和第十三普通电容C2的另一极均接地;所述的AT89C51单片机中的标识为Vss的管脚接地;所述的AT89C51单片机中的标识为P2.3的管脚、AT89C51单片机中的标识为P2.2的管脚、AT89C51单片机中的标识为P2.1的管脚以及AT89C51单片机中的标识为P2.0的管脚分别同所述的ULN2003A集成芯片中的标识为4的引脚、ULN2003A集成芯片中的标识为5的引脚、ULN2003A集成芯片中的标识为6的引脚以及ULN2003A集成芯片中的标识为7的引脚相连接;ULN2003A集成芯片中的标识为8的引脚接地;所述的ULN2003A集成芯片中的标识为14的引脚、ULN2003A集成芯片中的标识为13的引脚、ULN2003A集成芯片中的标识为12的弓丨脚、ULN2003A集成芯片中的标识为11的引脚以及ULN2003A集成芯片中的标识为10的引脚分别同第八电阻R2的一端、第九电阻R3的一端、第十电阻R4的一端、第^ 电阻R5的一端以及第十二电阻R6的一端相连接,第八电阻R2的另一端、第九电阻R3的另一端、第十电阻R4的另一端、第十一电阻R5的另一端以及第十二电阻R6的另一端均同稳压装置的出口 VCCG相连接,这样当AT89C51单片机中的标识为P2.3的管脚、AT89C51单片机中的标识为P2.2的管脚、 AT89C51单片机中的标识为P2.1的管脚以及AT89C51单片机中的标识为P2.0的管脚为高电平时,ULN2003A集成芯片中的标识为13的引脚、ULN2003A集成芯片中的标识为12的引脚、ULN2003A集成芯片中的标识为11的引脚以及ULN2003A集成芯片中的标识为10的引脚就输出低电平,对应的数码管就不显示,而当AT89C51单片机中的标识为P2.3的管脚、AT89C51单片机中的标识为P2.2的管脚、AT89C51单片机中的标识为P2.1的管脚以及AT89C51单片机中的标识为P2.0的管脚为低电平时,ULN2003A集成芯片中的标识为13的引脚、ULN2003A集成芯片中的标识为12的引脚、ULN2003A集成芯片中的标识为11的引脚以及ULN2003A集成芯片中的标识为10的引脚就输出高电平,对应的数码管就显示,另外当220V交流电源的火线Vl有电时,稳压电源电路正常输出DC5V电压,稳压装置的出口 VCCG处有DC5V电压,这时第五普通二极管D2导通,第六普通二极管Dl截止,电源选择电路的出口 VCC处输出DC5V电压;当220V交流电源的火线Vl失电时,稳压电源电路不能输出DC5V电压,稳压装置的出口 VCCG处悬空,这时第六普通二极管Dl导通,第五普通二极管D2截止,电源选择电路的出口 VCC处输出DC4.5V电压,改为4.5V的直流电源的备用电池供电。当采用备用电池供电时,ULN2003A集成芯片与之连接的稳压装置的出口 VCCG悬空,所以44BIT端、3 BIT端、2 BIT端、I BIT端、作为继电器受控信号JDSC的发生源的所述的继电器JDQ的线圈的另一端悬空,继电器不工作,数码管中数字不显示,节省备用电池的电能。数码管中间两点显示是独立控制的,所以中间两点是有显示的,表示系统仍然在工作中;所述的AT89C51单片机中的标识为Vpp的管脚和AT89C51单片机中的标识为Vcc的管脚均同电源选择电路的出口 VCC相连接。所述的AT89C51单片机中还包括有主控模块、定时中断模块、第二功能模块、第一功能模块、开通时间设定模块、计时模块、开通时间比较模块、关闭时间模块、关闭时间比较模块、数码管显示模块、复位模块、
所述的智能避雷定时插座的控制方法,步骤如下:
步骤1:所述的AT89C51单片机上电后,同时启动主控模块,所述的主控模块按照预先设定的值分别对定时器和中断系统进行初始化,并且把AT89C51单片机中的作为内存的RAM的存储单元的值清零;
步骤2:AT89C51单片机进入等候定时中断的阶段;
步骤3:当定时器触发了定时中断事件后,AT89C51单片机就执行定时中断模块,定时中断模块是实现系统功能的核心部分,在定时中断模块中实现数据处理和按键扫描检测以及根据条件实现对继电器的控制,从而实现插座的接通和断开,所述的定时中断模块首先判断第一按键SI是否按下产生上升沿脉冲,如果为第一按键SI按下产生上升沿脉冲的状态,就把内存地址为21H的存储单元的值按位取反,然后判断内存地址为21H的存储单元的值是否为1,如果内存地址为21H的存储单元的值为1,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;如果不为第一按键SI按下产生上升沿脉冲的状态,然后判断内存地址为21H的存储单元的值是否为1,如果内存地址为21H的存储单元的值为1,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;然后进入步骤6执行数码管显示模块;接着按照预先设定的值重新设定定时器,然后返回执行步骤2,用户每按一次第一按键SI,定时中断模块变换一下执行方向,定时中断模块由执行第一功能模块变换成执行第二功能模块,或者程序由执行第二功能模块变换成执行第一功能模块,然后执行数码管显示模块,让用户能够看到正在执行的时间,然后重装定时器初值,返回等待下一次定时中断发生;
步骤4:第二功能模块首先判断第二按键S2是否按下产生下降沿脉冲,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,然后判断内存地址为23H的存储单元的值是否为1,如果内存地址为23H的存储单元的值为1,就进入步骤7执行开通时间设定模块,然后判断第二按键S2是否按下产生下降沿脉冲,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值清零,然后依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果不为第二按键S2按下产生下降沿脉冲的状态,依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果内存地址为23H的存储单元的值不为1,就判断第三按键S3是否按下产生下降沿脉冲,如果为第三按键S3按下产生下降沿脉冲的状态,就把内存地址为43H的存储单元的值置1,然后判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键S3是否按下产生下降沿脉冲,如果第三按键S3为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零;如果不为第三按键S3按下产生下降沿脉冲的状态,判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键S3是否按下产生下降沿脉冲,如果第三按键S3为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零,如果内存地址为43H的存储单元的值为I,转入步骤12执行时间设定模块,这样第二功能模块能够显示时间,初态00:00,用户可以自由设定时间,用户还可以设定开插座接通和断开的时间,当时间到达时,插座接通或者断开。进入第二功能模块先检测用户是否按第二按键,如果按了第二按键,进入开通时间设定模块,用户可以设定插座接通的时间。没按下第二按键,检测是否按第三按键,如果按了第三按键,程序进入关闭时间设定模块,用户可以设定插座断开的时间,如果没按下第三按键,就进入计时模块,以便让数码管显示当前最新时间。然后进入开通时间模块和关闭时间比较模块,比较当前时间是否等于设定的插座开通时间和关闭时间,等于则继电器输出或者复位,插座接通或者断开,不相等退出第二功能模块;
步骤5:第一功能模块首先判断第三按键S3是否按下而产生了下降沿的脉冲信号,如果第三按键S3为按下而产生了下降沿的脉冲信号的状态,就将内存地址为IOH的存储单元的值置为1,然后判断内存地址为IOH的存储单元的值是否为I,如果内存地址为IOH的存储单元的值不为1,就转入步骤12执行时间设定模块,然后判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果内存地址为IOH的存储单元的值为1,就把存储有定时用的时分秒的寄存器加1,然后判断存储有定时用的时分秒的寄存器是否为非O值,如果存储有定时用的时分秒的寄存器不为非O值,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果存储有定时用的时分秒的寄存器为非O值,就把该寄存器存储秒的值的单元执行减一操作,执行减一操作后判断该减I操作是否有存储秒的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储秒的值的单元的十位减一,然后存储秒的值的单元的个位为9 ;再判断该减I操作是否有存储秒的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储分的值的单元的个位减一,然后存储秒的值的单元的十位为5 ;再判断该减I操作是否有存储分的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储分的值的单元的十位减一,然后存储分的值的单元的个位为9 ;再判断该减I操作是否有存储分的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储时的值的单元的个位减一,然后存储分的值的单元的十位为5 ;再判断该减I操作是否有存储时的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储时的值的单元的十位减一,然后存储时的值的单元的个位为9 ;再判断该减I操作是否有存储时的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把该寄存器的存储时分秒的单元均设置为O,然后运行步骤14的执行模块,再判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键S2没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;主要实现倒计时接通或者关闭插座的功能。进入第一功能模块,先检测用户是否按第二按键S2,如果没按第二按键S2,进入时间设定部分,用户可以自由设定时间;如果按了第二按键S2,则进入倒计时状态,待时分秒全为零时,插座接通或者断开。然后检测用户是否按第三按键S3,按第三按键S3系统复位,时分秒全归零、插座断开;没按第三按键S3,退出第一功能模块;
步骤6:数码管显示模块把AT89C51单片机中的标识为P2.0的管脚清零,然后把第一存储单元P2字节内的数据循环左移,判断AT89C51单片机中的标识为P2.0的管脚的值是否为1,如果标识为P2.0的管脚的值不为1,就把定时的小时的十位值赋值给第二存储单元A,如果标识为P2.0的管脚的值为1,判断AT89C51单片机中的标识为P2.1的管脚的值是否为1,如果标识为P2.1的管脚的值不为1,就把定时的小时的个位值赋值给第二存储单元A,如果标识为P2.1的管脚的值为1,判断AT89C51单片机中的标识为P2.2的管脚的值是否为1,如果标识为P2.2的管脚的值不为1,就把定时的分钟的十位值赋值给第二存储单元A,如果标识为P2.2的管脚的值为1,判断AT89C51单片机中的标识为P2.3的管脚的值是否为1,如果标识为P2.3的管脚的值不为1,就把定时的分钟的个位值赋值给第二存储单元A,如果标识为P2.3的管脚的值为1,判断第二存储单元A的值是否为O,如果第二存储单元A的值是O,就把COH赋值给第三存储单元Pl,如果第二存储单元A的值不是0,就继续判断第二存储单元A的值是否为I,如果第二存储单元A的值是I,就把F9H赋值给第三存储单元Pl,如果第二存储单元A的值不是I,就继续判断第二存储单元A的值是否为2,如果第二存储单元A的值是2,就把A4H赋值给第三存储单元Pl,如果第二存储单元A的值不是2,就继续判断第二存储单元A的值是否为3,如果第二存储单元A的值是3,就把BOH赋值给第三存储单元Pl,如果第二存储单元A的值不是3,就继续判断第二存储单元A的值是否为4,如果第二存储单元A的值是4,就把99H赋值给第三存储单元Pl,如果第二存储单元A的值不是4,就继续判断第二存储单元A的值是否为5,如果第二存储单元A的值是5,就把92H赋值给第三存储单元Pl,如果第二存储单元A的值不是5,就继续判断第二存储单元A的值是否为6,如果第二存储单元A的值是6,就把82H赋值给第三存储单元P1,如果第二存储单元A的值不是6,就继续判断第二存储单元A的值是否为7,如果第二存储单元A的值是7,就把F8H赋值给第三存储单元Pl,如果第二存储单元A的值不是7,就继续判断第二存储单元A的值是否为8,如果第二存储单元A的值是8,就把80H赋值给第三存储单元Pl,如果第二存储单元A的值不是8,就继续判断第二存储单元A的值是否为9,如果第二存储单元A的值是9,就把90H赋值给第三存储单元P1,如果第二存储单元A的值不是9,退出数码管显示模块;
步骤7:开通时间设定模块先把定时的时分秒数据存储到存储定时用的时分秒的寄存器中,接着把开通时间的时分秒数据存储到定时的时分秒数据单元中,然后依次进入步骤12执行时间设定模块和步骤6的数码管显示模块,最后将定时的时分秒数据存储到开通时间的时分秒数据单元中,最后退出开通时间设定模块;
步骤8:计时模块先把存储定时用的时分秒的寄存器中的值加一,然后判断存储定时用的时分秒的寄存器中的值是否为零,如果为零,退出计时模块;如果不为零,就把该寄存器中存储秒值的个位单元加一,如果该寄存器中存储秒值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的个位单元加一操作有进位操作,就把该寄存器中存储秒值的十位单元加一,而把该寄存器中存储秒值的个位单元置为0,如果该寄存器中存储秒值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的十位单元加一操作有进位操作,就把该寄存器中存储分值的个位单元加一,而把该寄存器中存储秒值的十位单元置为0,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分值的十位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储分值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出计时模块;
步骤9:开通时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同开通时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器导通插座;
步骤10:关闭时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同关闭时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器断开插座;
步骤11:关闭时间模块首先把定时的时分秒存入存储定时用的时分秒的寄存器中,再把关闭时间的时分秒数据存入存储定时的时分秒的存储单元中,依次进入步骤12执行时间设定模块和进入步骤6执行数码管显示模块,然后把定时的时分秒存入存储关闭时间的时分秒数据的存储单元中,再把存储定时用的时分秒的寄存器中的定时用的时分秒值取出,退出关闭时间模块;
步骤12:时间设定模块首先判断第四按键S4是否被按下并产生了向上沿的脉冲信号,如果第四按键S4处于被按下并产生了向上沿的脉冲信号,把存储定时用的时分秒的寄存器中存储分值的个位单元加一,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分值的十位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储分值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为0,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为0,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第四按键S4处于没被按下并没产生向上沿的脉冲信号,继续判断第五按键S5是否被按下并产生了向上沿的脉冲信号,如果第五按键S5处于被按下并产生了向上沿的脉冲信号,把该寄存器中存储时值的个位单元加一,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为0,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第五按键S5没有处于被按下并产生了向上沿的脉冲信号,退出时间设定模块;
步骤13:复位模块就是把存储定时用的时分秒的寄存器的值清零,并且操纵继电器断开插座;
步骤14:执行模块就是操作继电器导通插座。
[0025]以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。
【权利要求】
1.一种智能避雷定时插座,其特征在于包括同220V交流电源相连接的带有防雷保护电路的变压器,所述的变压器的出口同稳压装置的入口相连接,稳压装置的出口同用于反向器的电阻组和电源选择电路的入口相连接,电源选择电路的出口同单片机的电源输入管脚、4位共阳极7段数码管的电源输入引脚、带有按键和滤波电路的输入电路的电源输入端以及继电器电路的电源输入端相连接,而4位共阳极7段数码管的引脚、反向器的引脚、带有按键和滤波电路的输入电路的输出端以及继电器电路的受控端分别同单片机的对应管脚相连接,所述的继电器电路的电源输出端同插座的电极相连接。
2.根据权利要求1所述的智能避雷定时插座,其特征在于所述的带有防雷保护电路的变压器的防雷保护电路包括第一双极型瞬态电压抑制二极管,所述的第一双极型瞬态电压抑制二极管的一极同第二双极型瞬态电压抑制二极管的一极、变压器的原边的一端以及220V交流电源的火线相电连接,所述的第一双极型瞬态电压抑制二极管的另一极同第三双极型瞬态电压抑制二极管的一极、变压器的原边的另一端以及220V交流电源的零线相电连接,所述的第二双极型瞬态电压抑制二极管的另一极和第三双极型瞬态电压抑制二极管的另一极接地,所述的变压器的副边的两端就构成了所述的变压器的出口,变压器的出口能够输出9V交流电。
3.根据权利要求2所述的智能避雷定时插座,其特征在于所述的稳压装置包括顺序依次连接的全波整流电路、前部滤波电路、7805稳压电路以及后部滤波电路,所述的全波整流电路包括第一普通二极管,所述的第一普通二极管的正极同变压器的副边的一端和第二普通二极管的负极相连接,第二普通二极管的正极同第三普通二极管的正极相连接,第三普通二极管的负极同第四普通二极管的正极和变压器的副边的另一端相连接,第四普通二极管的负极同第一普通二极管的负极相连接,所述的第三普通二极管的负极和第一普通二极管D8的正极就构成了稳压装置的入口 ;所述的前部滤波电路包括第一有极性电容,所述的第一有极性电容的正极同第四普通二极管的负极和第一普通电容的一极相连接,所述的第一有极性电容的 负极同第二普通二极管的正极和第一普通电容的另一极相连接;所述的7805稳压电路的输入端同所述的第一普通电容的一极相连接,所述的7805稳压电路接地的接地端同所述的第一普通电容的另一极相连接;所述的后部滤波电路包括第二有极性电容,所述的第二有极性电容的正极同7805稳压电路的输出端和第二普通电容的一极相连接,所述的第二有极性电容的负极同7805稳压电路接地的接地端和第二普通电容的另一极相连接,所述的第二普通电容的一极还同第三普通电容的一极、第四普通电容的一极以及第五普通电容的一极相连接,所述的第二普通电容的另一极还同第三普通电容的另一极、第四普通电容的另一极以及第五普通电容的另一极相连接,所述的第五普通电容的一极就构成了稳压装置的出口,稳压装置的出口能够输出5V直流电。
4.根据权利要求3所述的智能避雷定时插座,其特征在于所述的单片机为AT89C51单片机,所述的反向器为ULN2003A集成芯片。
5.根据权利要求4所述的智能避雷定时插座,其特征在于所述的电源选择电路包括第五普通二极管,作为电源选择电路的入口的第五普通二极管的正极同稳压装置的出口相连接,所述的第五普通二极管的负极同第六普通二极管的负极相连接,所述的第六普通二极管的正极同4.5V的直流电源相连接,这样第六普通二极管的负极就构成了电源选择电路的出口。
6.根据权利要求5所述的智能避雷定时插座,其特征在于所述的带有按键和滤波电路的输入电路包括第一电阻,作为带有按键和滤波电路的输入电路的电源输入端的第一电阻的一端同电源选择电路的出口相连接,所述的第一电阻的另一端同作为功能切换信号发生源的第一按键的一端、第六普通电容的一极以及AT89C51单片机中的标识为P3.3的管脚相连接,第一按键的另一端和第六普通电容的另一极接地,第一电阻和第六普通电容构成了第一 RC滤波电路;第二电阻的一端同电源选择电路的出口相连接,所述的第二电阻的另一端同作为开通的时间设定和复位信号FUW发生源的第二按键的一端、第七普通电容的一极以及AT89C51单片机中的标识为P3.4的管脚相连接,第二按键的另一端和第七普通电容的另一极接地,第二电阻和第七普通电容构成了第二 RC滤波电路;第三电阻的一端同电源选择电路的出口相连接,所述的第三电阻的另一端同作为关闭的时间设定和确认信号QID发生源的第三按键的一端、第八普通电容的一极以及AT89C51单片机中的标识为P3.5的管脚相连接,第三按键的另一端和第八普通电容的另一极接地,第三电阻和第八普通电容构成了第三RC滤波电路;第四电阻的一端同电源选择电路的出口相连接,所述的第四电阻的另一端同作为小时调整信号TIAOS发生源的第四按键的一端、第九普通电容的一极以及AT89C51单片机中的标识为P3.6的管脚相连接,第四按键的另一端和第九普通电容的另一极接地,第四电阻和第九普通电容构成了第四RC滤波电路;第五电阻的一端同电源选择电路的出口相连接,所述的第五电阻的另一端同作为分钟调整信号TIAOF发生源的第五按键的一端、第十普通电容的一极以及AT89C51单片机中的标识为P3.7的管脚相连接,第五按键的另一端和第十普通电容的另一极接地,第五电阻和第十普通电容构成了第五RC滤波电路。
7.根据权利要求6所述的智能避雷定时插座,其特征在于所述的4位共阳极7段数码管电路中的标识为13的引脚、4位共阳极7段数码管电路中的标识为9的引脚、4位共阳极7段数码管电路中的标识为5的引脚、4位共阳极7段数码管电路中的标识为3的引脚、4位共阳极7段数码管电路中的标识为2的引脚、4位共阳极7段数码管电路中的标识为12的引脚以及4位共阳极7段 数码管电路中的标识为6的引脚分别同AT89C51单片机中的标识为Pl.0的管脚、AT89C51单片机中的标识为Pl.1的管脚、AT89C51单片机中的标识为Pl.2的管脚、AT89C51单片机中的标识为Pl.3的管脚、AT89C51单片机中的标识为Pl.4的管脚、AT89C51单片机中的标识为Pl.5的管脚以及AT89C51单片机中的标识为Pl.6的管脚相连接,而作为4BIT端的4位共阳极7段数码管电路中的标识为14的引脚、作为3 BIT端的4位共阳极7段数码管电路中的标识为11的引脚、作为2 BIT端的4位共阳极7段数码管电路中的标识为10的引脚以及作为I BIT端的4位共阳极7段数码管电路中的标识为7的引脚分别同所述的ULN2003A集成芯片中的标识为10的引脚、所述的ULN2003A集成芯片中的标识为11的引脚、所述的ULN2003A集成芯片中的标识为12的引脚以及所述的ULN2003A集成芯片中的标识为13的引脚相连接,另外4位共阳极7段数码管电路中的标识为8的引脚通过第六电阻R19同AT89C51单片机中的标识为P3.0的管脚相连接。
8.根据权利要求7所述的智能避雷定时插座,其特征在于所述的继电器电路的包括带有常开触点的继电器,所述的继电器的线圈的一端同第七普通二极管的负极以及电源选择电路的出口相连接,作为继电器受控信号JDSC的发生源的所述的继电器的线圈的另一端同第七普通二极管的正极相连接,所述的常开触点的一端同220V交流电源的火线相连接,作为继电器电路的电源输出端的所述的常开触点的另一端同插座的电极相连接,作为继电器受控信号JDSC的发生源的所述的继电器的线圈的另一端还同所述的ULN2003A集成芯片中的标识为的引脚相连接。
9.根据权利要求8所述的智能避雷定时插座,其特征在于所述的AT89C51单片机中的标识为RST的管脚同第七电阻的一端以及第十一普通电容的一极相连接,所述的第七电阻的另一端接地,所述的第十一普通电容的另一极同电源选择电路的出口相连接;所述的AT89C51单片机中的标识为P3.1的管脚同所述的ULN2003A集成芯片中的标识为3的引脚相连接,所述的AT89C51单片机中的标识为XTAL2的管脚和所述的AT89C51单片机中的标识为XTALl的管脚分别同晶振的两端相连接,晶振的两端还分别同第十二普通电容的一极和第十三普通电容的 一极相连接,所述的第十二普通电容的另一极和第十三普通电容的另一极均接地;所述的AT89C51单片机中的标识为Vss的管脚接地;所述的AT89C51单片机中的标识为P2.3的管脚、AT89C51单片机中的标识为P2.2的管脚、AT89C51单片机中的标识为P2.1的管脚以及AT89C51单片机中的标识为P2.0的管脚分别同所述的ULN2003A集成芯片中的标识为4的引脚、ULN2003A集成芯片中的标识为5的引脚、ULN2003A集成芯片中的标识为6的引脚以及ULN2003A集成芯片中的标识为7的引脚相连接;ULN2003A集成芯片中的标识为8的引脚接地;所述的ULN2003A集成芯片中的标识为14的引脚、ULN2003A集成芯片中的标识为13的引脚、ULN2003A集成芯片中的标识为12的引脚、ULN2003A集成芯片中的标识为11的引脚以及ULN2003A集成芯片中的标识为10的引脚分别同第八电阻的一端、第九电阻的一端、第十电阻的一端、第i 电阻的一端以及第十二电阻的一端相连接,第八电阻的另一端、第九电阻的另一端、第十电阻的另一端、第十一电阻的另一端以及第十二电阻的另一端均同稳压装置的出口相连接;所述的AT89C51单片机中的标识为Vpp的管脚和AT89C51单片机中的标识为Vcc的管脚均同电源选择电路的出口相连接;所述的AT89C51单片机中还包括有主控模块、定时中断模块、第二功能模块、第一功能模块、开通时间设定模块、计时模块、开通时间比较模块、关闭时间模块、关闭时间比较模块、数码管显示模块、复位模块。
10.根据权利要求9所述的智能避雷定时插座的控制方法,步骤如下: 步骤1:所述的AT89C51单片机上电后,同时启动主控模块,所述的主控模块按照预先设定的值分别对定时器和中断系统进行初始化,并且把AT89C51单片机中的作为内存的RAM的存储单元的值清零; 步骤2:AT89C51单片机进入等候定时中断的阶段; 步骤3:当定时器触发了定时中断事件后,AT89C51单片机就执行定时中断模块,所述的定时中断模块首先判断第一按键是否按下产生上升沿脉冲,如果为第一按键SI按下产生上升沿脉冲的状态,就把内存地址为21H的存储单元的值按位取反,然后判断内存地址为21H的存储单元的值是否为1,如果内存地址为21H的存储单元的值为1,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;如果不为第一按键SI按下产生上升沿脉冲的状态,然后判断内存地址为21H的存储单元的值是否为1,如果内存地址为21H的存储单元的值为1,就转入步骤4去执行第二功能模块,如果内存地址为21H的存储单元的值不为1,就转入步骤5去执行第一功能模块;然后进入步骤6执行数码管显示模块;接着按照预先设定的值重新设定定时器,然后返回执行步骤2; 步骤4:第二功能模块首先判断第二按键S2是否按下产生下降沿脉冲,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,如果为第二按键S2按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值置为1,然后判断内存地址为23H的存储单元的值是否为1,如果内存地址为23H的存储单元的值为1,就进入步骤7执行开通时间设定模块,然后判断第二按键是否按下产生下降沿脉冲,如果为第二按键按下产生下降沿脉冲的状态,就把内存地址为23H的存储单元的值清零,然后依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果不为第二按键按下产生下降沿脉冲的状态,依次转入步骤8执行计时模块、步骤9执行开通时间比较模块、步骤10执行关闭时间比较模块;如果内存地址为23H的存储单元的值不为1,就判断第三按键是否按下产生下降沿脉冲,如果为第三按键按下产生下降沿脉冲的状态,就把内存地址为43H的存储单元的值置1,然后判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键是否按下产生下降沿脉冲,如果第三按键为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零;如果不为第三按键按下产生下降沿脉冲的状态,判断内存地址为43H的存储单元的值是否为1,如果内存地址为43H的存储单元的值为1,转入步骤11执行关闭时间模块,接着继续判断判断第三按键是否按下产生下降沿脉冲,如果第三按键为按下产生下降沿脉冲的状态,把内存地址为43H的存储单元的值清零,如果内存地址为43H的存储单元的值为1,转入步骤12执行时间设定模块; 步骤5:第一功能模块首先判断第三按键是否按下而产生了下降沿的脉冲信号,如果第三按键为按下而产生了下降沿的脉冲信号的状态,就将内存地址为10H的存储单元的值置为1,然后判断内存地址为10H的存储单元的值是否为1,如果内存地址为10H的存储单元的值不为1,就转入步骤12执行时间设定模块,然后判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果内存地址为10H的存储单元的值为1,就把存储有定时用的时分秒的寄存器加1,然后判断存储有定时用的时分秒的寄存器是否为非O值,如果存储有定时用的时分秒的寄存器不为非O值,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果存储有定时用的时分秒的寄存器为非O值,就把该寄存器存储秒的值的单元执行减一操作,执行减一操作后判断该减1操作是否有存储秒的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储秒的值的单元的十位减一,然后存储秒的值的单元的个位为9 ;再判断该减1操作是否有存储秒的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储分的值的单元的个位减一,然后存储秒的值的单元的十位为5 ;再判断该减I操作是否有存储分的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储分的值的单元的十位减一,然后存储分的值的单元的个位为9 ;再判断该减I操作是否有存储分的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把存储时的值的单元的个位减一,然后存储分的值的单元的十位为5 ;再判断该减I操作是否有存储时的值的单元的个位借位的情况,如果没有出现个位借位的情况,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键S2被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了个位借位的情况,就把存储时的值的单元的十位减一,然后存储时的值的单元的个位为9 ;再判断该减I操作是否有存储时的值的单元的十位借位的情况,如果没有出现十位借位的情况,就判断第二按键是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块;如果出现了十位借位的情况,就把该寄存器的存储时分秒的单元均设置为O,然后运行步骤14的执行模块,再判断第二按键S2是否被按下而产生下降沿脉冲信号,如果第二按键没被按下,就退出第一功能模块;如果第二按键被按下而产生下降沿脉冲信号,就转入步骤13进入复位模块,然后退出第一功能模块; 步骤6:数码管显示模块把AT89C51单片机中的标识为P2.0的管脚清零,然后把第一存储单元P2字节内的数据循环左移,判断AT89C51单片机中的标识为P2.0的管脚的值是否为1,如果标识为P2.0的管脚的值不为1,就把定时的小时的十位值赋值给第二存储单元A,如果标识为P2.0的管脚的值为1,判断AT89C51单片机中的标识为P2.1的管脚的值是否为1,如果标识为P2.1的管脚的值不为1,就把定时的小时的个位值赋值给第二存储单元A,如果标识为P2.1的管脚的值为1,判断AT89C51单片机中的标识为P2.2的管脚的值是否为1,如果标识为P2.2的管脚的值不为1,就把定时的分钟的十位值赋值给第二存储单元A,如果标识为P2.2的管脚的值为1,判断AT89C51单片机中的标识为P2.3的管脚的值是否为1,如果标识为P2.3的管脚的值不为1,就把定时的分钟的个位值赋值给第二存储单元A,如果标识为P2.3的管脚的值为1,判断第二存储单元A的值是否为O,如果第二存储单元A的值是O,就把COH赋值给第三存储单元Pl,如果第二存储单元A的值不是O,就继续判断第二存储单元A的值是否为I,如果第二存储单元A的值是I,就把F9H赋值给第三存储单元Pl,如果第二存储单元A的值不是I,就继续判断第二存储单元A的值是否为2,如果第二存储单元A的值是2,就把A4H赋值给第三存储单元Pl,如果第二存储单元A的值不是2,就继续判断第二存储单元A的值是否为3,如果第二存储单元A的值是3,就把BOH赋值给第三存储单元P1,如果第二存储单元A的值不是3,就继续判断第二存储单元A的值是否为4,如果第二存储单元A的值是4,就把99H赋值给第三存储单元Pl,如果第二存储单元A的值不是4,就继续判断第二存储单元A的值是否为5,如果第二存储单元A的值是5,就把92H赋值给第三存储单元Pl,如果第二存储单元A的值不是5,就继续判断第二存储单元A的值是否为6,如果第二存储单元A的值是6,就把82H赋值给第三存储单元Pl,如果第二存储单元A的值不是6,就继续判断第二存储单元A的值是否为7,如果第二存储单元A的值是7,就把F8H赋值给第三存储单元Pl,如果第二存储单元A的值不是7,就继续判断第二存储单元A的值是否为8,如果第二存储单元A的值是8,就把80H赋值给第三存储单元Pl,如果第二存储单元A的值不是8,就继续判断第二存储单元A的值是否为9,如果第二存储单元A的值是9,就把90H赋值给第三存储单元Pl,如果第二存储单元A的值不是9,退出数码管显示模块; 步骤7:开通时间设定模块先把定时的时分秒数据存储到存储定时用的时分秒的寄存器中,接着把开通时间的时分秒数据存储到定时的时分秒数据单元中,然后依次进入步骤12执行时间设定模块和步骤6的数码管显示模块,最后将定时的时分秒数据存储到开通时间的时分秒数据单元中,最后退出开通时间设定模块; 步骤8:计时模块先把存储定时用的时分秒的寄存器中的值加一,然后判断存储定时用的时分秒的寄存器中的值是否为零,如果为零,退出计时模块;如果不为零,就把该寄存器中存储秒值的个位单元加一,如果该寄存器中存储秒值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的个位单元加一操作有进位操作,就把该寄存器中存储秒值的十位单元加一,而把该寄存器中存储秒值的个位单元置为O,如果该寄存器中存储秒值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储秒值的十位单元加一操作有进位操作,就把该寄存器中存储分值的个位单元加一,而把该寄存器中存储秒值的十位单元置为O,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分值的十位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储分值的 十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出计时模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出计时模块; 步骤9:开通时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同开通时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器导通插座; 步骤10:关闭时间比较模块通过将定时的时分秒的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值分别同关闭时间的秒的个位值、秒的十位值、分的个位值、分的十位值、时的个位值和时的十位值依次相比较,如果均相等,就操纵继电器断开插座; 步骤11:关闭时间模块首先把定时的时分秒存入存储定时用的时分秒的寄存器中,再把关闭时间的时分秒数据存入存储定时的时分秒的存储单元中,依次进入步骤12执行时间设定模块和进入步骤6执行数码管显示模块,然后把定时的时分秒存入存储关闭时间的时分秒数据的存储单元中,再把存储定时用的时分秒的寄存器中的定时用的时分秒值取出,退出关闭时间模块; 步骤12:时间设定模块首先判断第四按键S4是否被按下并产生了向上沿的脉冲信号,如果第四按键处于被按下并产生了向上沿的脉冲信号,把存储定时用的时分秒的寄存器中存储分值的个位单元加一,如果该寄存器中存储分值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的个位单元加一操作有进位操作,就把该寄存器中存储分 值的十位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储分值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储分值的十位单元加一操作有进位操作,就把该寄存器中存储时值的个位单元加一,而把该寄存器中存储分值的十位单元置为O,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第四按键处于没被按下并没产生向上沿的脉冲信号,继续判断第五按键是否被按下并产生了向上沿的脉冲信号,如果第五按键S5处于被按下并产生了向上沿的脉冲信号,把该寄存器中存储时值的个位单元加一,如果该寄存器中存储时值的个位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的个位单元加一操作有进位操作,就把该寄存器中存储时值的十位单元加一,而把该寄存器中存储时值的个位单元置为O,如果该寄存器中存储时值的十位单元加一操作没有进位操作,就退出时间设定模块,如果该寄存器中存储时值的十位单元加一操作有进位操作,就把该寄存器中存储时分秒值的十位单元全部清零并退出时间设定模块;如果第五按键没有处于被按下并产生了向上沿的脉冲信号,退出时间设定模块; 步骤13:复位模块就是把存储定时用的时分秒的寄存器的值清零,并且操纵继电器断开插座; 步骤14:执行模块就是操作继电器导通插座。
【文档编号】H02H9/04GK103996938SQ201410247102
【公开日】2014年8月20日 申请日期:2014年6月6日 优先权日:2014年6月6日
【发明者】王啸东 申请人:南京铁道职业技术学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1