专利名称:电脑时控密码锁的制作方法
技术领域:
本发明一般涉及电子密码锁,具体地说涉及一种由微电脑程序控制的多功能时控电子密码锁系统。
现在公知的电子密码锁种类较多,它的结构包括一操作键盘,一控制电路,一锁舌执行机构,当键盘输入的数码与锁具内存密码相同,这个锁具就开启。
另外还有一类公知的磁卡电子锁,当把带有编存数码的磁卡插入电子锁,一旦磁卡上的数码与锁的内存密码相吻合,这个锁具就打开。
这些已知的电子锁存在的不足1.只有一组内存密码,不够保险;2无定时自锁控制功能;3.锁具内存密码的数码组合数位不能超过锁具的数码显示器的个数,使得锁具密码容量受到显示器的限制;4.开启锁具时,锁具的内存密码在显示屏上被显示出来,使密码容易失密;5.采用交流电的电子锁,停电时,锁具不能使用,而采用直流电的电子锁又因为容易出现电池更换不及时而造成电压低,锁打不开;6.采用磁卡开锁的电子锁,其磁卡容易丢失,另外锁具的内存密码交换比较麻烦,同时磁卡要随密码的变换而变换。
因此,本发明总的目的是要提供一种电子锁系统,该控制系统由电脑程序控制,它具有时控功能,可选择多种密码组合进行开锁控制,能可靠的显示出各种控制状态,应急开锁的方法,安全且简便,锁具的操作使用方法简便具锁具的控制功能齐全。
本发明一个更为具体的目的是在上述锁具提供一种数码显示方法,使锁具的密码容量不受显示装置的限制;锁具在编存密码时,锁具的显示装置把编存的密码显示出来便于确认和记忆;当开启锁具时,锁具的显示装置不显示锁具的内存密码,保证内存密码不失密。
本发明又一个具体目的是在上述控制系统中提供一种定时自锁功能,且自锁时间的长短可任意确定;
本发明又一个具体目的是在上述控制系统中提供一种在紧急状态下取消该锁具的定时自锁状态并开启锁具的方法;
本发明又一个具体目的是在上述控制系统提供单密码组开锁或多密码组开锁的使用功能;
本发明再一个具体目的是在上述控制系统处于电源电压偏低时,锁具不能被锁闭,保证锁具的电池能及时更换。
本发明还有一个具体目的是在上述控制系统中提供两种编码控制功能,其第一编码控制功能用于在该锁具开启后,可以对该锁具进行编存密码的操作,变换锁具的内存密码;第二编码控制功能用于该锁具开启后,必须先给该锁具键入一组特定数码,这组特定数码可以是该锁具的内存密码,然后才能变换该锁具的内存密码。
本发明属电子密码锁,它包括一操作键盘,一显示装置,一带有存储器的微电脑程序控制器,一驱动马达,一马达起动开关。
按照本发明,其一个特点是,该锁具处于锁闭状态时,其键盘上的0~9数码键输入的数码不会在显示装置上显示出来,这样就提高了开锁密码的保密性;当锁具处于开启状态时,数码键输入的数码,其显示装置会将输入的数码逐位显示出来,这便于编存密码时对内存密码进行确认和记忆。
按照本发明其又一个特征是,当该锁具进行密码编存时,如果输入的数码位数超过其组成显示装置的显示器数量时,其显示装置将分段把输入数码显示出来,这使锁具编存密码的容量不受其显示装置的限制。例如,锁具的显示装置是由8只LED显示器组成,当输入15位数码进行密码编存时,其显示装置按数码输入的前后顺序将先输入的8位数码显示出来,然后消隐,接着再逐位显示出后输入的7位数码。
按照本发明,其另一个特征是,该锁具的微电脑程序控制器包括两个存储器,其第一存储器能长时间断电状态下,保存其内存不消失;其第二存储器为一随机存储器RAM。
按照本发明,其又一个特征是,该锁具的存储器带有6个数码计数器和一个递增计数器,这6个数码计数器1、2、3、4、7、8,递增计数器编号为计数器5,计数器1存储锁具数码键输入的数码,计数器2存储第一组开锁密码,计数器3和计数器4存储该锁具第二、三组开锁密码,计数器7和计数器8存储锁具第四、五组开锁密码,计数器5计录误码开锁的次数,每次进行开启锁具时,如果输入的数码与锁具内存密码不相同,则计数器5的内存数加一。
按照本发明,其又一个特征是,该锁具的存储器带有10个时间计数器,这10个时间计数器分别编号为计数器9、10、11、12、13、14、15、16、17和计数器18。计数器9、10、11、12、13、14、15、16、17,这9个计数器中的每一个计数器都带有三个存储单元,其第一存储单元为计数器的日单元,其第二存储单元为计数器的时单元,其第三存储单元为计数器的分单元,计数器9的日单元、时单元和分单元的内存数可以分别对应存入计数器10、11、12、13、14、15、16、17的日单元、时单元和分单元。且计数器9的日单元内存数可存入计数器18。该计数的时间计数器用于存储定时控制锁具使用功能的定时数。例如要给锁具存入12日18点30分这样一个控制时间,可把12存入时间计数器的日单元,把18存入时间计数器的时单元,把30存入时间计数器的分单元。
1.计数器10和计数器13为计时计数器,其日、时、分单元的内存数随着时间的变化而变化。例如计数器10的内存数为12日18点30分,计数器13的内存数是星期五,18点30分,当时间过去10小时20分钟后,则计数器10的内存数变为13日4时50分,计数器13的内存数变为星期六,4点50分。
2.计数器10、11、12为该锁的第一组时控系统,计数器11存储锁具定时自锁的开始时间,计数器12存储锁具定时自锁的结束时间。当锁具处于定时自锁状态时,只能用锁具内存的第一组密码开启锁具,而第2、3、4、5组内存密码不能开启锁具;当锁具处于非定时自锁状态时,能使用锁具的内存密码开启锁具。当计数器10的内存数等于计数器11的内存数时,锁具进入定时自锁状态;当计数器10的内存数等于计数器12的内存数时,锁具的定时自锁状态结束,锁具转变为非定时自锁状态。当计数器10的内存数等于计数器12的内存数时,计数器10和计数器11、12的内存数复零。当计数器11内存数为零时,可以变换计数器10和计数器11的内存数,反之则不能,当计数器12的内存数为零时,可以变换计数器12的内存数,反之则不能。
3.计数器13、14、15、16、17、18组成该锁具的第二组时控系统。该系统为锁具的循环定时自锁控制系统,计数器13为该系统的计时器,计数器14、16存储锁具定时自锁的结束时间;计数器15、17存储锁具定时自锁的开始时间;计数器18存储锁具时控循环周期数。例如,某银行在每星期7天内,从星期一至星期六是早上8点30分上班,中午12点下班,下午14点30分上班,下午18点下班,星期日休息,此银行金库门锁可以由上述锁具的第二组时控系统进行控制,每星期7天为一个循环周期,因此,在计数器18存储数码7,星期一至星期六6天时间是在8点30分上班,则要求锁具在8点30分解除定时自锁状态,因此,在计数器14的日单元存入数码6,在时单元存入数码8,在分单元存入数码30;在12点下班后,要求锁具进入定时自锁状态,则要求在该锁具计数器15的时单元内存入数码12;另外在计数器16的时单元存入数码14,在分单元存入数码30;在计数器17的时单元存入数码18。只要不改变计数器14、15、16、17、18的内存数,则金库门锁具在银行下班后就自动进入定时自锁状态,银行上班时间内锁具就处于非定时自锁状态的循环定时控制状态。
4.该锁具的第一组时控系统优先第二组时控系统对锁具进行定时控制。举例说明,第一组时控系统设定锁具在15日15时15分至16日16时30分为定时自锁状态;而第二组时控系统设定锁具每天的8点到18点为非定时自锁状态,其余时间处于定时自锁状态,则锁具在15日和16日这两天的时控状态是,15日零时至8时锁具为定时自锁状态,15日8时至15时15分为非定时状态,而15日15时15分至16日16时30分为定时自锁状态,而16日16时30分至18时为非定时自锁状态,16日18时至24时为定时自锁状态。
按照本发明,其又一个特征是,该锁具的锁闭操作不受时控系统的控制,当锁具的时控系统进入定时自锁状态后,锁具还能进行锁闭操作,使开启的锁具锁闭。
按照本发明,其又一个特征是,当锁具处于非定时自锁状态,可使用该锁具的第二组或第三组内存密码开启锁具。例如该锁具用于酒店的房门时,可将第二组内存密码交给客人,第三组内存密码由服务台经理掌握,这样房间客人和经理都可开启房门。
按照本发明,其再一个特征是,当锁具的计数器7和计数器8内存的第四组和第五组密码不是零时,且锁具处于非定时自锁状态,则需要给锁具输入第四组和第五组密码,锁具才能开启。例如银行的金库门需要两个人掌握开门的钥匙,当使用该锁具,则两个管开库门的人员,每人掌握一组密码,只有两组密码都输入锁具,库门才能开启。
按照本发明,其又一个特征是,当锁具的时间计数器10、11、12、13、14、15、16、17、18的内存数码为零,即上述计数器的日单元、时单元和分单元的内存数码都为零,该锁具是处于非时控状态。在锁具处于非时控状态,且锁具处于开启状态时,可输入一组数码变换数码计数器3内存的第二组开锁密码。而要变换数码计数器2、4、7、8内存的第一、三、四、五组开锁密码,则首先要使相应计数器内存数复零后,才能向计数器存入新密码。当锁具开启后,该锁具键盘输入计数器1的内存数码与计数器2内存的第一组密码相同时,则计数器2内存数复零,同样原理可使其它数码计数器的内存数复零。当锁具处于时控状态,变换锁具的任何一组内存密码,都必须先使相应的数码计数器的内存密码复零。
按照本发明,其又一个特征是,当该锁具内部直流电源的电压过低而不能带动电动机使锁具开启时,该锁具可接入一外接直流电源使锁具开启。
本发明的其它目的,优点和技术特征将在下面的实施例及附图逐一进行更为详细的说明。
图1是实施本发明的电脑时控密码锁示意图;
图2是图1电脑时控密码锁的电路原理图;
图3、4、5、6、7、8、9、10-1、10-2、10-3、11-1、11-2(a)、11-2(b)、12-1、12-2(a)、12-2(b)和12-2(c)为存储在图1电脑时控密码锁中,用以根据本发明操作锁具中微处理器的控制程序流程图;
图13是实施本发明的另一个实施例的工作原理示意图。
图1是实施本发明的一个总编号为01的电脑时控密码锁示意图;锁具01包括一个操作键盘1;一个由多位LED显示器组成的显示屏2,本实施例的显示屏2由8位LED显示器组成;一个由微电脑芯片组成的程序控制器17;一个由程序控制器17控制的驱动马达14和一个控制马达起动按键开关13。举例说按动开关13时,马达14通电转动带动锁舌完成锁具的锁闭或开启动作。锁具的键盘1和显示屏2设置在使用锁具物体的外部,程序控制器17,驱动马达14和按键开关13设置在物体的内部。通过锁具的键盘1和按键13可以实现锁具的双向开启或锁闭。
键盘1包括0~9十个数码键,用于给锁具01输入数码;键盘1还包括一个日历键(t1)7,一个小时键(t2)8,一个分种键(t3)10和一个定时键(T)9,用于锁具01编存时控数码,键盘还包括一复位键c11和一功能键+12;C11键用于消除数码键输入锁具的数码,即使计数器1和计数器9的内存数复零;+12键用于锁具的密码编存和锁具的开启或锁闭操作。键盘1还包括一个蜂鸣器6,用于输入误码报警;还包括一发光二极管(LED)3、(LED)4和(LED)5;LED3指示锁具处于电源电压偏低状态需要更换新电池,LED4指示锁具处于开启状态,LED5指示锁具处于锁闭状态;举例说LED3是黄色,LED4是绿色,LED5是红色。键盘1还包括外接电源插口15,用于在锁具01的内部电源电压已降到不能驱动马达14使锁具开启时,通过插口15接入外接电源使马达14起动。
图2是图1电脑时控密码锁的电路原理和电子元件示意图。锁具01的程序控制器17包括一微处理器30,一电可擦可编程只读存储器(EEPROM)31和一随机存储器(RAM)32。EEPROM31给微处理器30提供操作程序并存储开锁密码和循环时控数码,即数码计数器2、3、4、7、8和定时计数器14、15、16、17、18是设置在EEPROM31内;RAM32则存储键盘1的数码键输入的数码和计时及时控数码,即数码计数器1、递增计数器5、时间计数器9、计时计数器10、13和定时计数器11、12是设置在RAM32内。程序控制器17内的电子元件还包括一驱动器23,一驱动器24,一驱动器25,一驱动器26,一驱动器27,一驱动器28;微处理器30借助驱动器23能驱动显示屏2,借助于驱动器24能驱动LED3,借助驱动器25能驱动LED4,借助于驱动器26能驱动LED5,借助于驱动器27能驱动蜂鸣器6,借助驱动器28能驱动锁具的马达控制器33,控制器33控制马达14的电源开关的接通和断开。程序控制器17的其它电子元件还包括电源电路20,电源电路20包括外接电源插座19,交流变压器16,一直流电池电源18;锁具01可通过插座19接入直流电流电源,通过变压器16锁具01可以接入交流电流。程序控制器17还包括一电源电压传感器21,传感器21用于检测电源电路20的输出电压;传感器21还包括一模/数转换器22,转换器22的输出端与微处理器30相接,使微处理器能读出电源电路20的输出电压。
图3是存储在EEPROM31中用以操作微处理器30进行信号输入控制程序流程图。当锁具01接通电源微处理器30开始工作(步骤50)。接着微处理器确定标记1是否设置好(步骤52)。当锁具进入锁闭状态,微处理器就在EEPROM31内设置标记1。若微处理器确定标记1已设置好,微处理器就从步骤52跳到步骤53,激励红色LED5,接着微处理器从步骤53跳到步骤56。在步骤56,微处理器30开定时TO,并允许程序中断。定时器TO的作用是使微处理器在工作过程中,每经过TO预定的时间t后,就调用一次中断服务程序,使锁具获得时控功能。如果微处理器在步骤52确定标记1没有设置,则微处理器接着就激励绿色LED4(步骤54),接下去,微处理器执行步骤56。然后,微处理器对键盘进行信号扫描(步骤58)。接着微处理器确定是否有按键信号输入(步骤60)。若确定无按键信号输入,则微处理器从步骤60返回步骤58;若确定有按键信号输入,则微处理器就从步骤60跳到步骤62,查键盘输入的键信号。接下去,微处理器执行散转程序(步骤64),在步骤64中,微处理器根据键盘输入的按键信号,分别转调相应的功能键控制程序。
图4是图3中“0~9”十个数码键的功能程序流程图。数码键的功能是将数码信号输入锁具;当锁具处于锁闭状态,数码键输入的数码不会在锁具的显示屏上显示,保证数码键输入密码开锁时,开锁密码不会失密;当数码键给锁具编存密码时,显示屏会将数码键输入锁具的数码显示出来,便于输入数码的确认和记忆,并且当数码键输入的显示数码将显示屏占满后,数码键再输入的数码在显示数码消隐后,再接着逐位在显示屏上显示出来,这样锁具01编存密码的容量就不受锁具显示屏的限制。
当操作键盘1上的数码键,则微处理器30从步骤64跳到步骤70。在步骤70,微处理器将数码键输入的数码存入数码计数器1。接着,微处理器确定标记1是否设置好(步骤71)。正如下面所指出的那样,当锁具处于锁闭状态时,则微处理器就在存储器EEPROM31内设置标记1;而锁具01处于开启状态时,微处理器就使EEPROM31内设置的标记1复零。在步骤71中,若微处理器确定标记1已设置好,则微处理器就跳到步骤75,使微处理器返回步骤58执行信号扫描;若微处理器确定标记1没设置,则微处理器接着就确定显示屏2的显示器是否被显示符占满(步骤72)。若显示屏2被显示符占满,则微处理器就使显示符消隐(步骤73)。接着微处理器激励显示屏2将输入数码显示出来(步骤74)。然后,微处理器执行步骤75。举例,锁具的显示屏是由8位LED显示器组成,当数码键给锁具输入第9位数码后,则显示屏2显示出的8位数码消隐后,第9位数码再在显示屏显示出来;若微处理器确定显示屏没有被显示符占满,则微处理器从步骤72跳到步骤74,将输入数码显示出来,所述输入数码显示方法的优点,在于锁具编存密码的容量不受显示屏的限制,而编存密码时,数码组容易确认和记忆,并提高开锁时锁具内存密码的保密性。
图5是图3中日历键t17的功能程序流程图。日历键t17的功能是将键盘1的数码键输入计数器1的内存数存入计数器9的日单元。当操作t17键时,微处理器30在执行步骤64后就跳到步骤80。在步骤80,微处理器将计数器1的内存数存入计数器9的日单元9(a)。接着微处理器激励显示屏2显示计数器9的内存数(步骤82)。接下去微处理器使计数器1是内存数复零(步骤84)。然后,微处理器返回步骤58进行键盘信号扫描(步骤86)。
图6是图3中的小时键t28的功能程序流程图,小时键t28的功能是将计数器1的内存数存入计数器9的时单元。当操作t28键,微处理器30就从步骤64跳到步骤90。在步骤90微处理器将计数器1的内存数存入计数器9的时单元9(b)。接着微处理器激励显示屏2显示计数器9的内存数(步骤92)。接下去计数器1内存数复零(步骤94),计数器1内存数复零后,便能存入新的数码。然后,微处理器执行步骤96,使微处理器返回执行步骤58。
图7是图3中的分钟键t310的功能程序流程图。分钟键t310的功能是将数码键输入计数器1的内存数存入计数器9的分单元,确定锁具的分定时数。当操作t310键,微处理器就从步骤64跳到步骤100。在步骤100中,微处理器使计数器1的内存数存入计数器分单元9(C)。接着微处理器激励显示屏2显示计数器9的内存数(步骤102),例如计数器9的日单元内存数为30,时单元内存数20,分单元内存数为10,则显示屏就显示出数码组30∶20∶10,表示定时数为30号20点10分。接下去,微处理器使计数器1内存数复零(步骤104)。然后微处理器执行步骤106,使微处理器返回步骤58。
图8是图3中的复位键c11的功能程序流程图。复位键c11的功能是使计数器1和计数器9的内存数复零,以便给锁具输入新的数码。当操作C11锁,微处理器执行步骤64后,就跳到步骤110,使计数器1的内存数复零。接下去微处理器使计数器9的内存数复零(步骤112)。接着微处理器激励显示屏显示提示符H(步骤114),表示计数器1和计数器9的内存数复零。然后微处理器执行步骤116,使微处理器返回执行步骤58。
图9是图3中转换键S13的功能程序流程图。转换键S13的功能是使锁具获得双向操作控制的功能。锁具01的键盘1装置使用锁具物体的外表面,转换键S13装置使用锁具物体的内表面。举例说,把锁具01安装在门上,则键盘是装在门的正面,而S13键装在门的背面。当人在门外通过操作键盘给锁具输入锁密码,使锁具开启,就能把门打开。当人进到房内把门关好,再操作S13键,就能在门内把门锁锁好;当人要从房内出来时,只要操作S13键就使锁具开启把门打开。
另外,根据本发明的设计,当锁具处于定时自锁状态时,操作S13键是不能开启锁具,使锁具完成双向定时自锁。还有,当锁具的电源电压低于锁具额定工作电压时,操作S13键是不能使锁具锁闭,使锁具的电源电池能及时更换,避免出现锁具锁闭后,因电压低而锁具不能开启的情况。
当操作S13键后,微处理器经历步骤64后,就跳到步骤120。在步骤120中,微处理器确定标记1是否设置好,若标记1没设置,即锁具01处于开启状态,则微处理器接着就读出电压传感器21的输出数。以测量电源电压(步骤121)。接着微处理器将传感器21输出的电流电压读出值与设置在EEPROM31内的锁具额定工作电压数值VO进行比较(步骤122)。若传感器21的输出数值小于或等于V0时,则微处理器从步骤122跳到步骤135,激励黄色LED3,这时锁具不能锁闭,使锁具的电池及时更换。微处理器执行步骤135后,接着微处理器就跳到步骤136。在步骤136中,微处理器返回执行步骤58进行键盘扫描。若微处理器在步骤122确定电源电压数值大于V0值,则微处理器接着就激励锁具控制器33接通马达14的电源,使马达带动锁具锁闭(步骤123)。接着微处理器接通红色LED5(步骤124)。接下去微处理器设置标记1(步骤125)。然后微处理器跳到步骤136。
在步骤120中,若微处理器确定标记1已设置好,则微处理器就从步骤120跳到步骤126。在步骤126,微处理器确定标记3是否设置好。标记3是设置在存储器EEPROM31内,标记3的作用是确定锁具是否处于定时自锁状态。当锁具进入定时自锁状态时,微处理器就在EEPROM31中设置标记3,若锁具的定时自锁状态结束时,微处理器就使EEPROM31中的标记3复零。在步骤126中,若微处理器确定标记3已设置好,则微处理器就从步骤126跳到步骤136;若微处理器在步骤126确定标记3已复零,则微处理器使标记1复零(步骤130)。接着微处理器激励锁具控制器33接通马达14的电源,使马达14转动开启锁具(步骤131)。接下去微处理器接通绿色LED4(步骤132)。然后微处理器读出传感器21的输出数值来测量电源电压(步骤133)。接着微处理器将传感器21的输出数值与锁具额定工作电压值VO进行比较(步骤134);若传感器21的输出数值大于V0值,则微处理器就从步骤134跳到步骤136;若传感器21的输出数值不大于额定电压数值VO,则微处理器就从步骤134跳到步骤135接通黄色LED3。然后微处理器执行步骤136。
图10是图3中储码/启动键+12的功能程序流程图。+12键的功能如下所述1.当锁具处于锁闭状态时,必须操作+12键才能使锁具开启。2.当锁具处于开启状态时,操作+12键可以使锁具锁闭,还可以完成锁具密码的存储;还可以使锁具内存密码复零;还可以完成锁具第一时控系统的计数器的内存数复零;还可以完成锁具第一时控系统和第二时控系统计数基数的设置,即计时计数器10、13的内存数码的编存。
当操作+12键时,微处理器执行步骤64后就跳到步骤140。在步骤140,微处理器确定标记1是否设置。若微处理器在步骤140确定标记1已复零,即锁具处于开启状态,则微处理器接着就确定计数器9的内存数是否为零(步骤141)。若确定计数器9的内存数不是零,则微处理器接着就确定标记2是否设置(步骤142)。标记2的作用即将下面谈到,当操作+12键完成锁具第二组循环时控系统计时基数的设定,即将计数器9的内存数存入计数器13,微处理器就在存储器EEPROM31中设置标记2,标记2设置好后,就不能改变锁具第二组循环时控系统设定的定时数;当标记2复零后,则可重新设定第二组循环时控系统的计数器13、14、15、16、17、18的内存数。在步骤142中,若微处理器确定标记2没设置,则微处理器接着就使计数器13内存数复零状态(步骤143),然后,微处理器将计数器9的内存数存入计数器13,完成第二组循环时控系统的计时基数的设定(步骤144)。接着,微处理器在EEPROM31中设置标记2(步骤145)。接下去微处理器激励显示屏2显示提示符P2(步骤146),提示符P2表示锁具的第二组循环时控系统的内存数码已编存好,第二组时控系统开始工作。微处理器执行步骤146后,接着就执行步骤260。在步骤260微处理器返回步骤58执行键盘信号扫描。
在步骤142中,若微处理器确定标记2已设置好,则微处理器从步骤142跳到步骤150。在步骤150微处理器确定计数器11的内存数是否为零;若计数器11的内存数不为零,则微处理器接着激励显示屏2显示揭示符PE1(步骤156)。然后微处理器跳到步骤260。提示符PE1表示锁具的第一和第二时控系统内存数都已编存好,输入锁具的数码不能改变锁具时控系统的内存数。若微处理器在步骤150确定计数器11内存数为零,则微处理器接着就将计数器9的内存数存入计数器10(步骤152)。接下去微处理器就激励显示屏显示提示符P1(步骤154)。然后微处理器执行步骤260。提示符P1表示锁具第一组时控系统的内存数已经编存好,第一时控系统开始工作。
若微处理器在步骤141确定计数器9的内存数为零,则微处理器接着就确定计数器1的内存数是否为零(步骤160)。若微处理器确定计数器1的内存数为零,则微处理器就读出传感器21的电压输出数值测量电源电压(步骤161)。接着微处理器比较电压输出数值与锁具额定工作电压数值VO的大小(步骤162)。若电压输出数值小于或等于VO值,则微处理器从步骤162跳到步骤166,微处理器在锁具没有锁闭的情况下接通黄色LED3。接着微处理器执行步骤260。若微处理器在步骤162确定电压输出数值大于VO值,则微处理器就激励锁具控制器33使锁具锁闭(步骤163)。接着微处理器激励红色LED5(步骤164),并在EEPROM31中设置标记1(步骤165)。然后微处理器执行步骤260。
按照微处理器执行步骤141、160、161、162、164、165的说明,即锁具计数器1、9的内存数都复零后,操作+12键锁具01就锁闭。若微处理器在步骤160中确定计数器1的内存数不为零,则微处理器就从步骤160跳到步骤170。在步骤170,微处理器调用编码子程序。当微处理器调用编码子程序,微处理器首先就执行步骤171,确定计数器2的内存数是否为零。若微处理器确定计数器2的内存数为零,则微处理器就使数码键输入计数器1的内存数存入计数器2作为锁具的第一组密码(步骤180)。接着微处理器激励显示屏显示提示符P(步骤181),提示符P表示数码键输入的数码存入锁具的密码计数器,完成了一组开锁密码的编存。微处理器在执行步骤181后,接着就跳到步骤216执行子程序返回,在步骤216,微处理器返回+12键功能主控制程序的步骤260。
若微处理器在步骤171确定计数器2的内存数不为零,则微处理器将计数器1的内存数与计数器2的内存数进行比较,以确定计数器1的内存数与计数器2内存的第一组密码是否相同(步骤172)。若计数器1内存数与第一组密码是相同的,则微处理器使计数器2内存的第一组密码复零(步骤182)。接着,微处理器使计数器3、4、7、8内存的第二、三、四、五组密码复零,同时使锁具第一组时控系统的计数器10、11、12内存数复零,并使标记2也复零(步骤183)。然后微处理器激励显示屏显示提示符H1(步骤184)。提示符H1的作用是使操作者确认锁具所有的内存开锁密码,第一组时控系统的内存数和标记2都复零,可以重新编存锁具的开锁密码和第一、二组时控系统的时控数码。因此,锁具内存的第一组开锁密码为锁具的总管理应急密码。微处理器在执行步骤184后,接着就跳到步骤216。
若微处理器在步骤172确定计数器1的内存数与计数器2内存的第一组密码是不相同的,则微处理器接着就确定计数器2内存数的末位数码是否为零(步骤173),若第一组密码的末位数码不是零,则锁具只能使用第一、四、五组密码开锁。即第一组密码的数码组合确定锁具的使用功能,当微处理器在步骤173确定计数器2内存的第一组密码的末位数码为零,则微处理器接着确定计数器7的内存数是否为零(步骤174)。若计数器7的内存数为零,则微处理器就使计数器1的内存数存入计数器7作为锁具内存的第四组密码(步骤185)。然后微处理器激励显示屏显示提示符P(步骤187)。接着微处理器跳到步骤216。若微处理器在步骤174确定计数器7的内存数不为零,则微处理器接着就确定计数器8的内存数是否为零(步骤175)。若计数器8的内存数为零,则微处理器就使计数器1的内存数存入计数器8作为锁具内存的第五组密码(步骤186)。然后微处理器执行步骤187、216。若微处理器在步骤175确定计数器8的内存数不为零,则微处理器接着比较确定计数器1的内存数是否等于计数器7的内存数(步骤176)。若比较确定计数器1的内存数等于计数器7的内存数,则微处理器就使计数器7内存的第四组密码复零(步骤188)。接着微处理器激励显示屏显示提示符H(步骤190)。提示符H表示一组锁具内存密码已经复零,可以编存一组新密码。然后微处理器从步骤190跳到步骤216。若微处理器在步骤176确定计数器1的内存数不等于计数器7的内存数,则微处理器接着比较确定计数器1的内存数是否与计数器8内存的第五组密码相同(步骤177),若计数器1的内存数与计数器8内存数是相同的,则微处理器使计数器8的内存数复零,以便编存新的第五组密码(步骤189)。接着微处理器执行步骤190和步骤216。若微处理器在步骤177确定两计数器的内存数是不相同,则微处理器接着激励显示屏显示提示符PE(步骤178),然后,微处理器执行步骤216,提示符PE,表示锁具已有内存密码,新的输入数码不能编存新的密码。
如果微处理器在步骤173,确定计数器2内存的第一组密码的末位数码不是零,则微处理器就跳到步骤200,开始进行锁具的第二、三组密码的编存程序。在步骤200,微处理器确定时间计数器14的内存数是否为零。若计数器14内存数为零,则微处理器接着就确定计数器11的内存数是否为零(步骤201),若计数器11内存数为零,则微处理器接着将计数器1内存数存入计数器3,完成锁具的第二组密码的编存(步骤203)。微处理器经历步骤200、201、203,说明当时间计数器11、14的内存数为零,即锁具处于非时控状态时,且锁具处于开启状态,则可以输入一组数码给锁具编存或变换第二组开锁密码。微处理器执行步骤203后,接着就执行步骤206激励显示屏显示提示符P。然后微处理器跳到步骤216。
当锁具处于时控状态,如微处理器在步骤200确定计数器14的内存数不为零,则微处理器就从步骤200跳到步骤202,确定计数器3的内存数是否为零又如微处理器在步骤201确定计数器11的内存数不为零,则微处理器也跳到步骤202确定计数器3内存数是否为零。若微处理器在步骤202,确定计数器3的内存数为零,则微处理器才从步骤202跳到步骤203,将计数器1的内存数存入计数器3来完成第二组密码的编存。假定微处理器在步骤202中确定计数器3的内存数不为零,则锁具的第二组密码是不能改变的,微处理器从步骤202跳到步骤204,在步骤204,微处理器确定计数器4的内存数是否为零。若计数器4的内存数为零,则微处理器将计数器1的内存数存入计数器4,完成锁具的第三组密码的编存(步骤205)。然后微处理器执行步骤206、216。
若微处理器在步骤204确定计数器4的内存数不为零,即锁具的第二、三组密码都不是零码状态,则密码理器就从步骤204跳到步骤210,确定计数器1的内存数与计数器3内存的第二组密码是否相同。若微处理器在步骤210确定计数器1的内存数与计数器3的内存数相同,则微处理器就使计数器3的内存数复零,以便重新编存第二组密码(步骤211)。接着微处理器激励显示屏显示提示符H(步骤215)。然后微处理器执行步骤216。当微处理器在步骤210中比较确定计数器1的内存数与计数器3的内存数是不相同的,则微处理器就接着就比较确定计数器1的内存数是否与计数器4内存的第三组密码相同(步骤212)。若计数器1的内存数与计数器4的内存数相同,则微处理器接着就使计数器4的内存数复零(步骤213)。然后微处理器执行步骤215,假定微处理器在步骤212,确定计数器1的内存数与计数器4的内存数是不相同的,则微处理器就激励显示屏显示提示符PE(步骤214)。然后微处理器执行步骤216。
当锁具处于锁闭状态时,操作+12键,微处理器将从步骤140跳到步骤220,调用控制开锁子程序。根据发明的原理,当锁具处于时控自锁状态时,只能用第一组密码开启锁具;当锁具内存第一组密码的末位数码不是零时,只能用锁具第一、二、三组密码中的任一组密码开锁;当锁具的第一组密码的末位数码为零时,如果锁具的第五组密码为零码状态,则只能用第一或第四组密码开锁,如果第五组密码不为零码状态,除了使用第一组密码可开启锁具外,必须将第四和第五组密码输入锁具,锁具才能开启,如果只用第四或第五组密码中的单独一组密码是不能开锁的。
若微处理器在步骤140确定标记1是设置好的,即锁具处于锁闭状态,则微处理器从步骤140跳到步骤220,调用控制开锁程序。微处理器调用控制开锁子程序时,首先,微处理器比较确定计数器1内存数是否与计数器2内存的第一组密码相同(步骤221)。若比较确定计数器1的内存数与计数器2内存的第一组密码是不相同的,则微处理器接着就确定标记3是否设置好(步骤222)。标记3的作用即将在下面谈到,当锁具进入定时自锁状态时,微处理器就在存储器EEPROM31中设置标记3,这种状态下,除了第一组密码能开启锁具,锁具其它内存密码是不能开启锁具的,而当锁具解除定时自锁状态时,标记3就复零,若微处理器在步骤222中确定标记3已设置好,则微处理器就从步骤222直接跳到步骤235激励显示屏显示提示符OM表示锁具进入定时自锁状态,接着从步骤235跳到步骤260。当微处理器在步骤222中确定标记3已复零,则微处理器接着就确定计数器2的内存数末位数码是否为零(步骤223)。若微处理器确定计数器2内存数的末位数码为零,在这种状态下,锁具只能被第四、五组密码开启,因此微处理器接着就比较确定计数器1的内存数与计数器7内存的第四组密码是否相同(步骤224)。若微处理器在步骤224确定计数器1与计数器7的内存数是相同的,则微处理器接着就确定计数器8的内存数是否为零(步骤225),若计数器8的内存数为零,即锁具没有编存第五组密码,这种状态下,微处理器就激励锁具控制器33接通马达14的电源,使马达转动锁具开启(步骤250)。若微处理器在步骤225确定计数器8的内存数不为零,则微处理器接着就确定标记5是否设置好(步骤226)。标记5的作用即将在下面谈到,当锁具编存了第四组密码和第五组密码,即计数器7和计数器8的内存数不为零,且第一组密码的末位数码为零;如果先给处于锁闭状态的锁具输入第五组密码,则微处理器将在存储器RAM32中设置标记5,接着再给锁具输入第四组密码后,锁具就会开启;而假定先给锁闭的锁具输入第四组密码,锁具也不会开启,而是在RAM32中设置标记4,然后再输入第五组密码后,锁具才会开启。而锁具开启后,标记4和标记5都复零。在步骤226中,若微处理器确定标记5已设置好,则微处理器就接着执行步骤250,使锁具开启,若微处理器在步骤226中确定标记5没有设置,则微处理器就在RAM32中设置标记4(步骤227)。然后微处理器从步骤227跳到步骤258执行子程序返回。
微处理器在执行步骤250,使锁具开启后,接着,就使标记1复零(步骤251),接着下去,微处理器使标记4和标记5处于复零状态(步骤252),然后微处理器使计数器5复零(步骤253)。计数器5为一递增计数器,用于计录使用误码开锁的次数,计数器5是设置在存储器RAM32中,锁具开启后,计数器5的内存数复零。微处理器在执行步骤253后,接着就激励绿色LED4(步骤254)。然后微处理器读出传感器21输出的电压读数,测量电源电压(步骤255)。接着,微处理器将电压读数值与VO值进行比较,确定电源电压的高低(步骤256)。若电源电压值等于或小于V0值,则微处理器就激励黄色LED3(步骤257),接着微处理器执行步骤258。若电源电压值高于V0,则微处理器就从步骤256直接跳到步骤258。
在步骤224中,若微处理器比较确定计数器1的内存数与计数器7的内存数是不相同的,则微处理器接着就比较确定计数器1与计数器8的内存数是否相同的(步骤228)。若确定计数器1与计数器8的内存数是相同的,则微处理器接着就确定标记4是否设置(步骤229)。若微处理器确定标记4已设置好,则微处理器从步骤229跳到步骤250,使锁具开启,若微处理器在步骤229中确定标记4没有设置,则微处理器就设置标记5(步骤230)。然后微处理器从步骤230跳到步骤258。
若微处理器在步骤228中,确定计数器1的内存数与计数器8的内存数不相同,即输入的数码与锁具内存的第一、四、五三组密码都不相同,则微处理器激励显示屏显示提示符E(步骤231)。提示符E表示输入的开锁数码是错误的。接着,微处理器确定计数器5的内存数加1是否大于3(步骤232)。若计数器5的内存数增大1后大于3,则微处理器接通蜂鸣器6激励报警(步骤233)。接着,微处理器调用延时15分种子程序(步骤234),微处理器在执行延时15分种子程序的过程中,锁具处于自锁状态不接受任何输入信号。然后微处理器从步骤234跳到步骤258。若微处理器在步骤232确定计数器5的内存数不大于3,则微处理器就从步骤232跳到步骤258。步骤232的作用说明,每次使用错误数码开锁,计数器5的内存数加1,如果计数器5的内存数小于3,则蜂鸣器不报警,如果连续3次使用错码开锁,则蜂鸣器报警,锁具进入15分钟的自锁状态。
在步骤223中,若微处理器确定计数器2的内存数末位数码不为零,则微处理器就从步骤223跳到步骤240,确定计数器1的内存数是否等于计数器3内存的第二组密码。若确定计数器1的内存数与计数器3的内存数相同,则微处理器就从步骤240跳到步骤250,使锁具开启。若微处理器在步骤240确定计数器1的内存数与计数器3的内存数是不相同的,则微处理器接着就确定计数器4的内存数是否为零(步骤241)。若确定计数器4的内存数不为零,则微处理器就接着就比较确定计数器1的内存数与计数器4内存的第三组密码是否相同(步骤242)。若计数器1的内存数与第三组密码是相同的,则微处理器就从步骤242跳到步骤250,使锁具开启。若微处理器在步骤242确定计数器1的内存数与计数器4的内存数是不同的,这样就是说输入锁具开锁的数码组与锁具内存的第一、二、三组密码都不相同,锁具是不会开启的,则微处理器接着就激励显示屏显示提示符E(步骤243)。接着,微处理器确定计数器5内存数增加1后是否大于3(步骤244)。若计数器5内存数增大1后是不大于3的,则微处理器就从步骤244跳到步骤258执行子程序返回;若计数器5内存数加1大于3,则微处理器就激励蜂鸣器6报警(步骤245)。接着,微处理器调用延时15分钟子程序(步骤246)。然后,微处理器执行步骤258。若微处理器在步骤241确定计数器4内存数为零,即锁具没有编存第三组密码,则微处理器就从步骤241跳到步243。也就是当第三组密码为零码状态时,输入数码零是不能开启锁具的;而当第二组密码为零码状态时,输入数码零,锁具会开启。
图11为图3中定时键T9的功能程序流程图。定时键T9的作用在于完成锁具定时控制数码的设定。当锁具处于锁闭状态,操作定时键T9可使锁具第一时控系统和第二时控系统内存的时控数码在显示屏上显示出来。当锁具处于开启状态,则操作T9键可以将时间计数器9的内存数存入第一时控系统和第二时控系统的时间计数器,完成锁具时控数码的设定。根据本发明的原理,在设定锁具第一组时控数码时,要求锁具定时自锁开始的定时数小于定时自锁结束的定时数,即锁具定时自锁开始的时间在前,定时自锁结束在后;这就要求时间计数器11内存的定时数不大于时间计数器12内存的定时数。而在设定锁具第二组循环时控系统的时控数码时,锁具的时间计数器14、15、16、17、18内存的定时控制数码应是按时间要求的前后顺序设定,在一个时控循环周期内,计数器14的内存数在时间上排在最前面,其它计数器内存数排在后。为了使锁具的非定时自锁状态定时数的选择比较方便,因此,在计数器14、16、18内存锁具的定时自锁状态结束的定时数,而计数器15、17内存锁具的定时自锁状态开始的定时数。
另外,锁具的第一组时控系统的内存数和第二组时控系统的内存数是分开进行设定和显示。在设定锁具时控系统的时间计数器的内存数时,其计数器应处于零码状态,即计数器的日、时、分单元内存数都为零码或空码状态。
当操作定时键T9,微处理器经历步骤58、60、62、64后跳到步骤259,确定标记1是否设置。若锁具处于锁闭状态,则标记1设置,微处理器就从步骤259跳到步骤280,确定计数器11的内存数是否为零。若微处理器确定计数器11的内存数不为零,显示计数器10的内存数(步骤281)。接着,微处理器激励显示屏显示提示符ON及计数器11的内存数(步骤282)接着,微处理器执行延时3秒子程序(步骤282)。然后,微处理器确定计数器12的内存数是否为零(步骤283)。若计数器12的内存数不为零,则微处理器就激励显示屏显示提示符OF及计数器12的内存数(步骤284)。接着微处理器使显示屏上的显示符号延时3秒后消隐(步骤285)。然后微处理器从步骤285跳到步骤369,执行返回步骤58的程序,使微处理器返回信号扫描步骤。举例当锁具处于锁闭状态时,操作T9键后,锁具的显示屏出现ON10∶18∶30的显示符3秒钟,然后又显示出OF∶11∶8∶30的显示符3秒后消隐,这两组符号表示锁具在10号18点30分进入自锁状态,在11号8点30分结束自锁状态。
在步骤283,若微处理器确定计数器12的内存数为零,则微处理器就从步骤283跳到步骤369。例如当锁具处于锁闭状态,操作T9键,显示屏显示符号ON∶12∶12∶10然后显示符消隐没有显示出其它显示符,则锁具在12日12时10分这一时间进入自锁状态后,其锁具的自锁状态会一直延续下去,直到使用第一组密码将锁具开启,使锁具结束自锁状态为止。
在步骤280,若微处理器确定计数器11的内存数为零,即锁具的第一组时控系统的计数器没有编存时控数码,则微处理器接着确定计数器14的内存数是否为零(步骤290)。若计数器14的内存数为零,则微处理器从步骤290跳到步骤369。若微处理器在步骤290确定计数器14的内存数不为零,则微处理器激励显示屏显示计数器13的内存数(步骤291),接着微处理器激励显示屏显示提示符PF及计数器14的内存数(步骤292)。然后微处理器确定计数器15的内存数是否为零(步骤293)。若计数器15的内存数不为零,则微处理器就激励显示屏显示“PN”及计数器15的内存数(步骤294)。接着微处理器使显示屏的显示符延时3秒后消隐(步骤295)。显示符“ON”和“OF”分别表示锁具第一组时控系统控制锁具进入定时自锁状态和结束定时自锁状态的提示符,而显示符“PF”和“PN”则分别表示锁具第二组循环时控系统控制锁具结束循环定时自锁状态和进入循环定时自锁状态的提示符。锁具的两组时控系统选择不同的提示符是为了便于区别两组时控数码。微处理器在步骤295后接着就确定计数器16的内存数是否为零(步骤296)。而如果微处理器在步骤293确定计数器15的内存数为零,则微处理器就从步骤293跳到步骤296。若微处理器在步骤296确定计数器16的内存数不为零,则微处理器激励显示屏提示“PF”及计数器16的内存数(步骤297)。然后微处理器接着确定计数器17的内存数是否为零(步骤298)。若微处理器在步骤296确定计数器16的内存数为零,则微处理器就从步骤296直接跳到步骤298。在步骤298,若微处理器确定计数器17的内存数不为零,则微处理器就激励显示屏显示PN及计数器17的内存数(步骤299)。接着微处理器使显示符延时3秒后消隐(步骤300)。然后微处理器确定计数器18的内存数是否为零(步骤302)。若微处理器在步骤299确定计数器17的内存数为零,则微处理器就从步骤299跳到步骤302。若计数器18内存数为零,则微处理器就从步骤302跳到步骤369。若微处理器确定计数器18内存数不为零,则微处理器激励显示屏显示“PH”及计数器18内存数(步骤303)。接着,微处理器使显示屏上的显示符延时3秒后消隐(步骤304)。然后,微处理器就跳到步骤369。显示符“PH”是表示锁具时控状态的循环周期数的提示符。例如当显示屏出现PH7∶00∶00的显示符,则表示锁具的循环时控周期为7天时间,即每经过一星期的时间,锁具的时控状态就重复出现一次。
如果锁具处于开启状态,操作T9键,则微处理器在步骤259就会确定出标记1已复零。接着,微处理器确定标记2是否设置好(步骤261)。标记2的作用将在下面谈到,当微处理器完成锁具第二组循环时控系统内存时控数码的设置后,微处理器就在存储器EEPROM31内存设置标记2,一旦设置了标记2就不能对第二组循环时控系统内存数进行更改;若要重新设定第二组时控系统的内存数,则首先要在锁具处于开启状态时给锁具输入第一组密码,使标记2复零,然后才能重新设定计数器13、14、15、16、17、18的内存数。
若微处理器在步骤261确定标记2已设置好,则微处理器接着确定计数器11的内存数是否为零(步骤262)。若计数器11的内存数是零,则微处理器就将计数器9的日、时、分单元的内存数存入计数器11的日、时、分单元(步骤263)。接着微处理器激励显示屏显示ON及计数器9的内存数(步骤264)。接下去,微处理器使显示屏的显示符延时3秒后消隐(步骤265)。然后,微处理器从步骤265跳到步骤369。
在步骤262,若微处理器确定计数器11内存数不为零,则微处理器接着就确定计数器12的内存数是否为零(步骤270)。若微处理器确定计数器12的内存数不为零,即锁具的第一组时控系统的时控数码已设定,则微处理器从步骤270跳到步骤279,激励显示屏显示提示符PE。显示提示符“PE”表示输入锁具的数码不能存入计数器进行时控数码的编存。微处理器在执行步骤279后,接着就使显示屏的显示符延时3秒后消隐(步骤305)。接着微处理器执行步骤369。
若微处理器在步骤270确定计数器12的内存数为零,则微处理器接着就比较确定计数器9日单元内存数是否大于计数器11日单元的内存数(步骤271)。若确定计数器9日单元内存数大于计数器11日单元内存数,则微处理器就从步骤271跳到步骤276。在步骤276微处理器将计数器9的日、时、分单元内存数对应存入计数器12的日、时、分单元。接着微处理器激励显示屏显示OF及计数器9的内存数(步骤277)。然后微处理器执行步骤305和步骤369。
在步骤271,若微处理器比较确定计数器9日单元内存数不大于计数器11的日单元内存数,则微处理器接着就比较确定计数器9日单元内存数是否小于计数器11日单元内存数(步骤272)。若微处理器确定计数器9日单元内存数小于计数器11日单元内存数,则微处理器从步骤272跳到步骤278,激励显示屏显示提示符“E”。然后微处理器执行步骤305和步骤369。提示符“E”为操作错误的提示符,因为编存锁具第一时控系统的时控数码时,要求锁具定时自锁出现在前,因此,计数器11内存的定时数要小于计数器12内存的定时数。当在编存计数器12内存的锁具定时自锁结束的定时数码时,是将计数器9的内存数存入计数器12,若计数器9日单元内存数小于计数器11日单元内存数,就不能满足锁具编存计数器12的内存数的要求,因此,微处理器就激励显示误操作提示符“E”。
若微处理器在步骤272比较确定计数器9日单元内存数不小于计数器11日单元的内存数,即两计数器的日单元内存数是相等的,则微处理器接着就确定计数器9时单元内存数是否大于计数器11时单元内存数(步骤273)。若微处理器确定计数器9时单元内存数大于计数器11时单元内存数,则微处理器就从步骤278跳到步骤276,将计数器9的内存数存入计数器12;若微处理器确定计数器9时单元内存数不大于计数器11时控单元的内存数,则微处理器就从步骤273跳到步骤274,比较确定计数器9时单元内存数是否小于计数器11时单元内存数。若计数器9时单元内存数小于计数器11时单元内存数,则微处理器就从步骤274跳到步骤278,激励显示屏显示提示符“E”。在步骤274,若微处理器比较确定计数器9时单元内存数不小于计数器11时单元内存数,则微处理器接着就确定计数器9分单元内存数是否大于计数器11的分单元内存数(步骤275)。若微处理器确定计数器9分单元内存数大于计数器11的分单元内存数,则微处理器接着就执行步骤276,将计数器9的内存数存入计数器12,若微处理器确定计数器9分单元内存数不大于计数器11的分单元内存数,则微处理器就从步骤275跳到步骤278。
假定在步骤261,微处理器确定标记2处于复零状态,则微处理器就从步骤261跳到步骤310,调用设定锁具第二组循环时控系统时控数码的编存循环定时子程序。根据本发明的设想,在设定第二组循环时控系统的时控数码时,要求编存计数器18的内存数应大于计数器14日单元的内存数;而设定计数器14、15、16、17这四个计数器的时单元和分单元的内存定时数应保证,计数器14的定时数在时间排列上应排在最前,计数器15的定时数排在第二,计数器16的定时数排在第三,计数器17的定时数排在最后,在步骤310,微处理器调用编存循环定时子程序时,首先微处理器确定时间计数器9的内存数是否为零(步骤311),若微处理器确定时间计数器9的内存数为零,则微处理器接着就执行步骤320、321、322、323、324,使计数器14、15、16、17、18的内存数复零。然后微处理器激励显示屏显示提示符H2(步骤325)。接着微处理器从步骤325跳到步骤367,使显示屏显示符延时3秒后消隐。然后,微处理器执行循环定时子程序返回,使微处理器返回T9键功能程序的步骤369(步骤368)。提示符H2表示锁具第二组循环时控系统的计数器14、15、16、17、18的内存数处于复零空码状态,可以进行编存第二组时控系统的时控数码的操作。
若微处理器在步骤311中,确定计数器9的内存数不为零,则微处理器接着就确定计数器14的内存数是否为零(步骤312);若确定计数器14的内存数为零,则微处理器将计数器9的内存数存入计数器14(步骤313)。接着微处理器激励显示屏显示PF及计数器9的内存数(步骤314)。然后微处理器接着执行步骤367和步骤368。
在步骤312中,若微处理器确定计数器14的内存数不为零,则微处理器接着就确定计数器15的内存数是否为零(步骤330),若微处理器确定计数器15的内存数为零,则微处理器接着就比较确定计数器9的日单元内存数是否大于计数器14日单元内存数(步骤331)。若微处理器确定计数器9的日单元内存数大于计数器14日单元内存数,则微处理器就从步骤331跳到步骤337,将计数器9日单元内存数存入计数器18。接着微处理器激励显示屏显示PH及计数器9的内存数(步骤338)。然后微处理器接着执行步骤367和步骤368。
若微处理器在步骤331,确定计数器9日单元内存数不大于计数器14日单元内存数,则微处理器接着就确定计数器9时单元内存数是否大于计数器14时单元内存数(步骤332);若微处理器确定计数器9时单元内存数大于计数器14时单元内存数,则微处理器从步骤332跳到步骤335,将计数器9的内存数存入计数器15。接着微处理器激励显示屏显示PN及计数器9内存数(步骤336),然后,微处理器执行步骤367和步骤368。若微处理器在步骤332确定计数器9的时单元不大于计数器14时单元内存数,则微处理器接着就比较确定计数器9的时单元内存数是否小于计数器14时单元内存数(步骤333);若计数器9时单元内存数小于计数器14时单元内存数,则微处理器从步骤333跳到步骤346,激励显示屏显示误码提示符“E”。接着微处理器执行步骤367和步骤368。在步骤333,若微处理器确定计数器9时单元内存数不小于计数器14时单元内存数,即两计数器时单元内存数相同,则微处理器接着就确定计数器9分单元内存数是否大于计数器14分单元内存数(步骤334)。若微处理器在步骤334确定计数器9分单元内存数大于计数器14分单元内存数,则微处理器就将计数器9的内存数存入计数器15(步骤335)。若微处理器在步骤334确定计数器9分单元内存数不大于计数器14分单元内存数,则微处理器就激励显示屏显示提示符“E”(步骤346)。
在步骤330中,若微处理器确定计数器15内存数不为零,则微处理器接着确定计数器16内存数是否为零(步骤340)。若微处理器在步骤340确定计数器16内存数为零,则微处理器接着就比较确定计数器9时单元内存数是否大于计数器15时单元内存数(步骤341)。若确定计数器9时单元内存数大于计数器15时单元内存数,则微处理器就从步骤341跳到步骤344将计数器9的内存数存入计数器16。接着微处理器激励显示屏显示PF及计数器9的内存数(步骤345)。然后,微处理器执行步骤367和步骤368。
若微处理器在步骤341确定计数器9时单元内存数不大于计数器15时单元内存数,则微处理器接着就比较确定计数器9时单元内存数是否小于计数器15时单元内存数(步骤342)。若确定计数器9时单元内存数小于计数器15时单元内存数,则微处理器从步骤342跳到步骤346,激励显示屏显示提示符“E”。如果微处理器在步骤342确定计数器9时单元内存数不小于计数器15时单元内存数,即两计数器时单元内存数相等,则微处理器接着就比较确定计数器9分单元内存数是否大于计数器15分单元内存数(步骤343)。若微处理器在步骤343确定计数器9分单元内存数大于计数器15分单元内存数,则微处理器将计数器9内存数存入计数器16(步骤344);若微处理器在步骤343确定计数器9分单元内存数不大于计数器15分单元内存数,则微处理器就从步骤343跳到步骤346,激励显示屏显示提示符“E”。
在步骤340,若微处理器确定计数器16的内存数不为零,则微处理器就从步骤340跳到步骤350,确定计数器17的内存数是否为零。若微处理器在步骤350确定计数器17的内存数为零,则微处理器接着就比较确定计数器9时单元内存数是否大于计数器16的时单元内存数(步骤351)。若微处理器在步骤351确定计数器9时单元内存数大于计数器16时单元内存数,则微处理器从步骤351跳到步骤354,将计数器9的内存数存入计数器17。接着,微处理器激励显示屏显示符号Pn及计数器9的内存,以便确认编存入计数器17的定时数码(步骤355)。然后微处理器执行步骤367和步骤368。若微处理器在步骤351确定计数器9时单元内存数不大于计数器16时单元内存数,则微处理器接着就确定计数器9时单元内存数是否小于计数器16时单元内存数(步骤352);若微处理器确定计数器9时单元内存数小于计数器16时单元内存数,则微处理器就从步骤352跳到步骤365,激励显示屏显示提示符E。然后微处理器执行步骤367和步骤368。假定,微处理器在步骤352确定计数器9时单元内存数不小于计数器16时单元内存数,则微处理器接着就确定计数器9的分单元内存数是否大于计数器16的分单元内存数(步骤353)。若确定计数器9分单元内存数大于计数器16分单元内存数,则微处理器就从步骤353跳到步骤354;而如果确定计数器9分单元内存数不大于计数器16分单元内存数,则微处理器就从步骤353跳到步骤365。
若微处理器在步骤350确定计数器17内存数不为零,则微处理器接着确定计数器18内存数是否为零(步骤360);若确定计数器18内存数不为零,则微处理器从步骤360跳到步骤366,激励显示屏显示提示符PE。接着微处理器执行步骤367和步骤368。如果微处理器在步骤360确定计数器18的内存数为零,则微处理器接着就比较确定计数器9日单元内存数是否大于计数器14日单元内存数(步骤361)。若微处理器确定计数器9日单元内存数不大于计数器14日单元的内存数,则微处理器就从步骤361跳到步骤365。如果微处理器确定计数器9日单元内存数大于计数器14日单元内存数,则微处理器接着就将计数器9日单元内存数存入计数器18(步骤362)。接下去,微处理器激励显示屏显示PH及计数器9内存数(步骤363)。然后,微处理器执行步骤367和步骤368。
图12是存储在EEPROM31中用于操纵根据本发明的微处理器30的中断服务程序流程图。当锁具01通电开始工作时,微处理器30在执行控制程序的步骤54,打开设置在锁具01内的定时器T0,使微处理器根据定时器设定的时间t,在微处理器执行锁具各功能键控制程序过程中,每经过时间t,例如t=0.1秒,微处理器就使功能键控制程序中断执行,而调用中断服务程序,通过微处理器执行中断服务程序,实现锁具的时控功能。微处理器执行中断服务程序后,继续执行功能键控制程序。
当微处理器在执行功能键控制程序t时间后,微处理器就执行一次中断服务程序。微处理器执行中断服务程序时,首先微处理器执行步骤400保护现场。接着微处理器确定计数器11内存数是否为零(步骤402)。若微处理器在步骤402确定计数器11内存数为零,则微处理器接着确定计数器14的内存数是否为零(步骤404)。若微处理器在步骤404确定计数器14内存数为零,这样计数器11和计数器14的内存数都为零,即锁具的第一和第二时控系统没有编存定时数码,锁具处于非时控状态,则微处理器就从步骤404跳到步骤510。在步骤510,微处理器恢复现场。接着微处理器使中断返回(步骤520)。微处理器通过执行步骤520从中断服务程序返回控制程序中断执行的步骤继续执行。
若微处理器在步骤402确定计数器11内存数不为零,则微处理器从步骤402跳到步骤406。而微处理器在步骤404确定计数器14内存数不为零,则微处理器就从步骤404跳到步骤406。在步骤406,微处理器使设置在RAM32中的计时器T1的0.1秒单元内存数加1。接着,微处理器确定计数器T1的0.1秒单元内存数增大1后是否等于10(步骤408);若0.1秒单元的内存数不等于10,则微处理器从步骤408跳到步骤510。恢复现场。若微处理器在步骤408确定计数器T1的0.1秒单元内存数等于10,则微处理器使T1的0.1秒单元内存数清零,而T1的秒单元内存数增大1(步骤410)。接着,微处理器确定T1的秒单元内存数是否等于60(步骤412)。若微处理器确定T1的秒单元内存数不等于60,则微处理器就从步骤412跳到步骤510。若微处理器在步骤412确定T1的秒单元内存数等于60,则微处理器接着就使T1的秒单元内存数清零和分单元内存数加1(步骤414)。接着,微处理器使计数器10的分单元内存数加1(步骤416)。接下去,微处理器使计数器13的分单元内存数加1(步骤418)。然后,微处理器确定T1的分单元内存数是否等于60(步骤420)。若微处理器确定T1的分单元内存数不等于60,则微处理器就从步骤420跳到步骤450,调用时间计数器查看子程序,步骤450将在下面述叙。若微处理器在步骤420确定T1的分单元内存数等于60,则微处理器接着就使T1的分单元内存数清零和时单元内存数加1(步骤422)。接着微处理器使计数器10的分单元内存数清零和时单元内存数加1(步骤424)。接下去微处理器使计数器13的分单元内存数清零和时单元内存数加1(步骤426)。然后,微处理器确定T1的时单元内存数是否等于24(步骤428)。若微处理器确定T1的时单元内存数不等于24,则微处理器就从步骤428跳到步骤450,调用时间计数器查看程序。若微处理器在步骤428确定T1的时单元内存数等于24,则微处理器接着使T1的时单元内存数清零(步骤430)。接着,微处理器使计数器10的时单元内存数清零和日单元内存数加1(步骤432)。接下去,微处理器使计数器13的时单元内存数清零和日单元内存数增大1(步骤434)。然后,微处理器确定计数器10的日单元内存数是否等于31(步骤436),若计数器10的日单元内存数等于31,则微处理器使计数器10的日单元内存数清零(步骤438)。接着,微处理器确定计数器13的日单元内存数是否等于7(步骤440)。如果微处理器在步骤436确定计数器10的日单元内存数不等于31,则微处理器就从步骤436跳到步骤440。若微处理器在步骤440确定计数器13的日单元内存数等于7,则微处理器就使计数器13的日单元内存数清零(步骤442)。接着微处理器从步骤442跳到步骤450,调用时间计数器查看程序。若微处理器在步骤440确定计数器13的日单元内存数不等于7,则微处理器就从步骤440直接跳到步骤450。
本实施例设定,当计数器10的日单元内存数为31时,计数器10的日单元内存数清零,即锁具第一组时控系统一次设定最长的连续时控时间为一个月31天。而设定当计数器13的日单元内存数为7,则计数器13的日单元内存数清零,即锁具第二组循环时控系统一次设定最长的循环时控周期最长时间为一星期7天。要说明的一点是,计数器10和计数器13日单元内存数的清零数码可以根据需要先择其它的数,而不受31和7这两个数的限制。
在步骤450,微处理器调用时间计数器查看程序时,首先微处理器就确定计数器11内存数是否为零(步骤451);若微处理器确定计数器11内存数不为零,则微处理器接着就比较确定计数器10日单元内存数是否大于计数器11日单元内存数(步骤452);若微处理器确定计数器10日单元内存数不大于计数器11日单元内存数,则微处理器接着确定计数器10日单元内存数是否等于计数器11日单元内存数(步骤453)。若微处理器在步骤453确定计数器10日单元内存数不等于计数器11日单元内存数,即计数器10日单元内存数小于计数器11日单元内存数,锁具还未进入定时自锁状态,则微处理器从步骤453跳到步骤504,使标记3处于复零状态。然后微处理器执行时间计数器查看子程序返回中断服务程序步骤510(步骤506)。
若微处理器在步骤453确定计数器10和计数器11这两个计数器日单元内存数是相等,则微处理器接着比较确定计数器10时单元内存数是否小于计数器11时单元内存数(步骤454)。若微处理器在步骤454确定计数器10的时单元内存数小于计数器11的时单元内存数,则微处理器从步骤454跳到步骤504。因为锁具还没有进入定时自锁状态,所以微处理器跳到步骤504使标记3处于复零状态。若微处理器在步骤454确定计数器10时单元内存数不小于计数器11时单元内存数,则微处理器接着就确定计数器10时单元内存数是否等于计数器11时单元内存数(步骤455);若微处理器在步骤455确定两计数器时单元内存数相等,则微处理器接着就确定计数器10分单元内存数是否小于计数器11的分单元内存数(步骤456)。若计数器10分单元内存数小于计数器11分单元内存数,则微处理器就从步骤456跳到步骤504。如果微处理器在步骤456确定计数器10分单元内存数是不小于计数器11分单元内存数,则微处理器就接着确定计数器12内存数是否为零(步骤457)。而假定在步骤455,微处理器确定出计数器10的时单元内存数不等于计数器11时单元内存数,即计数器10的时单元内存数大于计数器11的时单元内存数,锁具已进入定时自锁状态,则微处理器就从步骤455跳到步骤457。在步骤452,如果微处理器是确定计数器10日单元内存数大于计数器11日单元内存数,则微处理器从步骤452跳到步骤457。
在步骤457,若微处理器确定计数器12的内存数不为零,则微处理器接着就确定计数器10日单元内存数是否小于计数器12日单元内存数(步骤458)。若计数器10日单元内存数小于计数器12日单元的内存数,则微处理器就从步骤458跳到步骤502,设置标记3;因为此时锁具进入了定时自锁状态。若微处理器在步骤458确定计数器10日单元内存数不小于计数器12日单元内存数,也就是当两计数器日单元内存数相等时,微处理器接着就比较确定计数器10的时单元内存数是否等于计数器12的时单元内存数(步骤459)。若微处理器确定两计数器时单元内存数是不相等的,则微处理器就从步骤459跳到步骤502,设置标记3。如果微处理器在步骤459确定两计数器的时单元内存数是相等时,则微处理器就接着确定计数器10的分单元内存数是否与计数器12的分单元内存数相等(步骤460),若两计数器的分单元内存数是不相等的,则微处理器就从步骤460跳到步骤502设置标记3。如果微处理器在步骤460确定两计数器分单元内存数是相等的,则微处理器接着就使计数器12的内存数清零(步骤461),然后微处理器执行步骤462,463、464,使计数器11、计数器10和计数器3的内存数清零。接着微处理器将计数器4的内存数存入计数器3(步骤465)。接下去微处理器确定计数器14的内存数是否为零(步骤480)。若微处理器确定计数器14的内存数为零,即锁具第二组循环时控系统内存时控数码为零码状态,锁具为非时控状态,则微处理器就从步骤480跳到步骤504,使标记3处于复零状态。
当微处理器在步骤450调用时间计数器查看程序时,首先在步骤451确定锁具是否受第一组时控系统的控制,若第一组时控系统处于工作状态,则计数器10的内存数随着时间的变化而变化,当微处理器确定计数器10与计数器11的日、时、分单元内存数对应相等时,锁具进入自锁状态标记3被设置好,当计数器10内存数变到与计数器12的日、时、分单元内存数对应相等时,锁具结束自锁状态,并使标记3复零,锁具第一组时控系统复零。然后微处理器判定锁具的第二组循环时控系统是否处于工作控制状态。
在步骤480,若微处理器确定计数器14的内存数不为零,即第二组循环时控系统处于工作状态,则微处理器接着就确定计数器14的日单元内存数是否为零(步骤481)。若微处理器在步骤481确定计数器14日单元内存数不为零,则微处理器接着就比较确定计数器13的日单元内存数是否大于计数器14的日单元内存数(步骤482)。若微处理器在步骤482中确定计数器13日单元的内存数大于计数器14日单元的内存数,则微处理器接着就确定计数器13的日单元内存数是否大于计数器18的内存数(步骤483)。若计数器13日单元内存数大于计数器14日单元内存数,而又不大于计数器18的内存数,则锁具进入定时自锁状态,微处理器就从步骤483跳到步骤502设置标记3。如果微处理器在步骤483确定计数器13日单元内存数大于计数器18内存数,即锁具第二组循环时控系统对锁具已完成了一个周期时间的控制,则微处理器就使计数器13日单元内存数复零开始下一个时控周期的日计数(步骤484)。
微处理器在执行步骤484后,接着就确定计数器15的内存数是否为零(步骤486),若计数器15的日、时、分三个单元的内存数都为零,则微处理器就从步骤486跳到步骤504使标记3处于复零状态。例如,计数器14的日单元内存数为6,而时单元内存数为零,计数器18的内存数为7,则锁具时控状态为,每个循环时控周期的前6天时间全天锁具为非定时自锁状态,而第7天全天都为定时自锁状态。这种状态微处理器执行步骤486,就不用继续确定时间计数器时单元和分单元的内存数是否为零。
若微处理器在步骤481确定计数器14日单元内存数为零,也就是说计数器14的内存不为零,而其日单元内存数为零,则锁具的第二组时控系统的循环周期数为24小时,这种状态下,微处理器就从步骤481跳到步骤436。如果微处理器在步骤482确定计数器13日单元内存数不大于计数器14日单元内存数,则微处理器就从步骤482跳到步骤486。
如果微处理器在步骤486确定计数器15的内存数不为零,则微处理器接着就比较确定计数器13时单元内存数是否小于计数器14时单元内存数(步骤487);若计数器13时单元内存数小于计数器14的时单元内存数,则锁具的定时自锁状态没有解除,微处理器就从步骤487跳到步骤502,设置标记3,如果在步骤487微处理器确定计数器13时单元内存数不小于计数器14时单元内存数,则微处理器接着就确定计数器13时单元内存数是否等于计数器14时单元内存数(步骤488),若两计数器时单元内存数是相等的,则微处理器接着就比较确定计数器13分单元内存数是否大于计数器14分单元内存数(步骤489)。在步骤489中,若计数器13分单元内存数不大于计数器14分单元内存数,则微处理器就从步骤489跳到步骤502。如果计数器13分单元内存数大于计数器14分单元内存数,则微处理器就从步骤489跳到步骤490,确定计数器13时单元内存数是否小于计数器15时单元内存数。假定微处理器在步骤488确定计数器13和计数器14时单元内存数是不相同的,即计数器13时单元内存数大于计数器14时单元内存数,则微处理器就从步骤488跳到步骤490。
在步骤490,若微处理器确定计数器13时单元内存数是小于计数器15时单元内存数,即锁具是处于非定时自锁状态,则微处理器从步骤490跳到步骤504,使标记3复零。如果微处理器在步骤490确定计数器13时单元内存数不小于计数器15时单元内存数,则微处理器接着就确定计数器13时单元内存数是否等于计数器15时单元内存数(步骤491)。若微处理器在步骤491确定两计数器时单元内存数是相等的,则微处理器接着就比较确定计数器13分单元内存数是否大于计数器15分单元内存数(步骤492)。若计数器13分单元内存数不大于计数器15分单元内存数,则微处理器从步骤492跳到步骤504。如果微处理器在步骤492确定计数器13分单元内存数大于计数器15分单元内存数,则微处理器接着就确定计数器17内存数是否为零(步骤493)。假定微处理器在步骤491确定计数器13时单元内存数大于计数器15时单元内存数大于计数器15时单元内存数,则微处理器也从步骤491跳到步骤493。
在步骤493,若微处理器确定计数器17内存数为零码状态,则微处理器就从步骤493跳到步骤502,设置标记3。如果微处理器在步骤493确定计数器17内存数不为零,则微处理器接着就确定计数器13时单元内存数是否小于计数器16时单元内存数(步骤494),若计数器13时单元内存数小于计数器16时单元内存数,则锁具处于定时自锁状态,微处理器从步骤494跳到步骤502设置标记3,如果微处理器在步骤494确定计数器13时单元内存数不小于计数器16时单元内存数,则微处理器接着就确定计数器13时单元内存数与计数器16时单元内存数是否相等(步骤495),若两计数器时单元内存数是确定为相等的,则微处理器接着就确定计数器13分单元内存数是否小于计数器16分单元内存数(步骤496)。若计数器13的分单元内存数小于计数器16的分单元内存数,则微处理器就从步骤496跳到步骤502。如果微处理器确定计数器13分单元内存数不小于计数器16的分单元内存数,则微处理器就从步骤496跳到步骤497,确定计数器13时单元内存数是否小于计数器17的时单元内存数。假定微处理器在步骤495确定计数器13的时单元内存数与计数器16的时单元内存数是不相等的,则微处理器就从步骤495跳到步骤497。
在步骤497,若微处理器确定计数器13的时单元内存数小于计数器17的时单元内存数,则微处理器就从步骤497跳到步骤504,使标记3处于复零状态。如果微处理器确定计数器13的时单元内存数不小于计数器17的时单元内存数,则微处理器接着就确定计数器13时单元内存数是否等于计数器17的时单元内存数(步骤498),若两计数器时单元内存数不相等,则微处理器就从步骤498跳到步骤502设置标记3。若微处理器确定两计数器的时单元内存数是相等的,则微处理器就从步骤498跳到步骤499,确定计数器13的分单元内存数是否大于计数器17的分单元内存数。若微处理器确定计数器13的分单元内存数大于计数器17的分单元内存数,则微处理器就从步骤499跳到步骤502设置标记3,接着执行步骤506。假定微处理器在步骤499确定计数器13的分单元内存数不小于计数器17分单元内存数,则微处理器就从步骤499跳到步骤504使标记3处于复零状态,然后微处理器执行步骤506,时间计数器查看子程序返回执行中断服务程序的步骤510。
在图12-2(a)的步骤451中,若微处理器确定时间计数器11的内存数为零,则微处理器就从步骤451跳到步骤470。在步骤470,微处理器确定计数器14的内存数是否为零,若微处理器确定计数器14的内存数为零,则锁具处于非时控状态,微处理器就从步骤470跳到步骤504使标记3复零,若微处理器在步骤470确定计数器14内存数不为零,则接着微处理器就确定计数器15的内存数是否为零(步骤472)。在步骤472若微处理器确定计数器15的内存数不为零,则微处理器就从步骤472跳到步骤481,确定计数器14日单元内存数是否为零。如果微处理器在步骤472确定计数器15的内存数为零,则微处理器接着比较确定计数器13时单元内存数是否与计数器14时单元内存数相等(步骤474)。若微处理器在步骤474确定计数器13时单元内存数与计数器14的时单元内存数是不相等的,则微处理器就从步骤474跳到步骤504,使标记3处于复零状态。若微处理器在步骤474确定计数器13和计数器14这两计数器时单元内存数相等,接着,微处理器就比较确定计数器13和计数器14这两个计数器的分单元内存数是否相等(步骤476);若两计数器分单元内存数是不相等的,则微处理从步骤476跳到步骤504。如果微处理器在步骤476确定计数器13分单元内存数与计数器14分单元内存数相等,则微处理器接着就使计数器3内存的第二组密码数清零(步骤478);接着去,微处理器将计数器4的内存数存入计数器3(步骤479),即计数器4内存的第三组密码存入计数器3。然后微处理器从步骤479跳到步骤504。
步骤470、472、474、476、478、479的作用,在于使锁具获得自动变换内存密码的功能。也就是说,当只在锁具01的第二组时控系统的计数器14内设定一组定时数码时,则锁具进入工作状态时,锁具每经过24小时,锁具计数器3内存的第二组密码就被自动变换成第三组密码。
前面所述的步骤464和步骤465的作用,是锁具01通过第一组时控系统的时控数码的定时控制,使锁具01计数器3内存的第二组密码锁自动定时换码。锁具01的第一组时控系统的自动换码功能与第二组时控系统的自动换码功能的不同之处在于,第一组时控系统每设定一组时控数码,锁具内存的第二组密码只能自动变码一次;而第二组时控系统的计数器14每设定一组时控数码,锁具01在工作过程中,每过24小时,锁具01内存的第二密码就可以自动变码一次。
锁具01的自动变换内存密码的作用将在下面举例中加以说明。如前举例所述,当锁具01用于宾馆客房门锁,并且锁具01由第一、二、三组内存控制开锁,则第二组密码由客房客人掌握,第三组密码由客房服务台掌握;当客人退房后,锁具01通过自动变换系统,使锁具01的第二组内存密码自动取消复零或自动变换密码。
图13是本发明另一个实施例的工作原理示意图。该实施例包括图1和图2的各元件,还包括一红外摇控器40,一红外接收器41和一信号放大器42。图13中的红外摇控器40上包含有图1中所述键盘1的十个数字键、复位键11和功能键12。图2和图13所述的两实施例中各相同编号相同的元件,其工作原理和控制功能是相同的。图13所述实施例的控制程序流程图与图3、4、5、6、7、8、9、10、11和图12是相同的。且图13中所述红外线控器40上装设的各操作按键的功能与图1中所述键盘1上装设的数码键、复位键11和功能键12的功能是相同的。
图13所述实施例与图2所述实施例的不同之处在于,图13所述实施例中的键盘1是装设在使用本发明的物体的内部或其它隐蔽之处,使锁具安装安全隐蔽不易破坏,所述的键盘1的操作按键,用于编存锁具的开锁密码和时控数码。所述的红外摇控器40与所述密码锁01的其它元件是分离的,红外接收器41是安装在使用本发明的物体的外表面;当操作所述的红外摇控器40上的按键,红外摇控器40内的集成电路就产生一个适当的脉冲调制信号,当红外发射信号照射到红外接收器41上,红外接收器41产生一个相应的变化电信号,经放大器42放大后输入给微处理器30对所述密码锁01的开启和锁闭实施控制。红外控制为已知技术,故不详述。
另外,在图13所述的实施例中,其中所述的键盘1和使用本发明物体的外表面都装设有LED2、LED3、LED4和LED5,以便对所述密码锁的编码、锁闭和开启进行监控。
上面所述公开了实施本发明的电脑时控密码锁。但只要不脱离本发明的范围,是可以对它们进行各种修改和变换。举例说1.驱动马达可以是汽车或摩托车的起动马达,对汽车或摩托车的起动实施控制;另外,马达还可以是微型马达或者是交流电动马达。2.驱动马达14可以是单个马达,也可以是一组多个马;当驱动马达14是一组多个马达时,马达控制器33,可以根据控制要求,控制一组马达同时工作,也可以控制一组马达按要求分别起动工作。3.马达控制器33可以是装在马达14一起,也可以分离安装。4.报警器6可以是有线控制,也可以无线摇控。又例如,可以对图12-2(a)进行这样的修改可以取消步骤465和步骤479,令步骤464直接引到步骤480,令步骤478直接引到步骤504。还可以将步骤465和步骤479的内容改为将计数器4的内存数加10后存入计数器3,使得计数器3内存的第二组密码自动变码后与第三组密码是不相同的。因此,本发明已以举例说明的方式加以公开,所举实施例并不对本发明起限制作用。
权利要求
1.一种电脑时控密码锁,它是由一操作系统、一显示系统、一报警装置、一程序控制器、一内设电源、一状态换换装置和驱动马达所组成,所述密码锁的特征在于,包括一定时编码系统,用于设定所述密码锁的内存时控数码;一密码编存系统,用于编存所述密码锁的控制开锁密码;一电压测量比较器,用于测量比较所述密码锁的电源电压值。三个状态指示灯,其中一个用于显示所述密码锁进入锁闭状态,另一个用于显示所述密码锁处于开启状态,再一个用于显示所述密码锁的电源电压值低于锁具的预定电平;一外接电源装置,用于当所述密码锁内设电源电压值低于锁具的最低工作电平时,给所述密码锁接入外电源;一驱动控制器,用于接通和断开所述密码锁的驱动装置的工作电源;一状态转换控制系统,用于使所述密码锁由开启状态较换为锁闭状态,或者所述密码锁由锁闭状态转换为开启状态。
2.如权利要求1所述的密码锁,其特征在于,其中所述的显示系统包括一控制器,用于当所述密码锁处于开启状态时,控制将所述操制系统输入锁具的数码在显示系统上显示出来;而当所述密码锁处于锁闭状态时,控制所述操作系统给锁具输入的数码,不会被显示系统显示出来。
3.如权利要求1所述的密码锁,其特征在于,其中所述的显示系统包括另一控制器,用于控制将所述密码锁内存的时控数码在显示出来。
4.如权利要求1所述的密码锁,其特征在于,其中所述的密码编存系统,包括第一数码计数器,用于存储所述的操作系统输入锁具的数码;第二数码计数器,用于存储所述密码锁的第1组开锁密码;第三数码计数器,用于存储所述密码锁的第2组开锁密码;第四数码计数器,用于存储所述密码锁的第3组开锁密码;第五数码计数器,用于存储所述密码锁的第4组开锁密码;第六组数码计数器,用于存储所述密码锁的第5组开锁密码。
5.如权利要求1所述的密码锁,其特征在于,其中所述的报警装置包括一计数器,用于计录所述密码锁被使用误码进行开锁的次数。
6.如权利要求1所述的密码锁,其特征在于,其中所述的定时编码系统,包括第一时间计数器,用以把所述的第一数码计数器内存数码转换成所述密码锁时控数码;和第一组编码系统,用以编存所述密码锁的第一组定时自锁控制数码组;和第二组编码系统,用以编存所述密码锁的第二组循环时控数码组。
7.如权利要求6所述的密码锁,其特征在于,其中所述的第一组编码系统,包括第二时间计数器,用以作为所述密码锁的第一组时控系统的计时器,确定所述的第一组时控系统开始工作的时刻,并记录第一组时控系统的工作时间;第三时间计数器,用以编存所述的第一组时控系统控制所述密码锁定时自锁状态开始的定时数码;第四时间计数器,用以编存所述的第一组时控系统控制所述密码锁定时自锁状态结束的定时数码。
8.如权利要求6所述的密码锁,其特征在于,其中所述的第二组编码系统,包括第五时间计数器,用于作为所述密码锁的第二组循环时控系统的计时器,确定所述的第二组循环时控系统开始工作时间;并记录第二组循环时控系统工作时间;第六时间计数器,用于编存所述的第二组循环时控系统中第一组控制所述密码锁定时自锁状态结束的时控数码;第七时间计数器,用于编存所述的第二组循环时控系统中第二组控制所述密码锁定时自锁状态开始的时控数码;第八时间计数器,用于编存所述的第二组循环时控系统中第二组控制所述密码锁定时自锁状态结束的时控数码;第九时间计数器,用于编存所述的第二组循环时控系统中第一组控制所述密码锁定时自锁状态开始的时控数码;第十时间计数器,用于编存所述的第二组循环时控系统中所述密码锁的循环时控状态的控制周期数码。
9.如权利要求1所述的密码锁,其特征在于,其中所述的定时编码系统的时间计数器的存储区分为第一存储单元区、第二存储单元区和第三存储单元区。
10.如权利要求1所述的密码锁,其特征在于,其中所述的定时编码系统所包括第二时间计数器和第五时间计数器的内存数随着所述密码锁工作时间的变化而变化。
11.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括第一状态控制装置,用以当所述密码锁处于锁闭状态,在所述密码锁内设置第一控制标记;当所述密码锁处于开启状态,消除锁具内设的第一控制标记;第二状态控制装置,用于当所述的第二组循环时控系统的内存数码已编存好,就在所述密码锁内设置第二控制标记,使第二组循环时控系统的内存数不被改变;第三状态控制装置,用于当所述密码锁处于定时自锁状态,在所述密码锁内设置第三控制标记;而当所述密码锁处于非定时自锁状态,消除锁具内设的第三控制标记;第四状态控制装置,用于当所述密码锁处于锁闭状态并由第四开锁密码和第五开锁密码控制开锁时,且所述的操作系统输入锁具的开锁数码组与第四组开锁密码相同时,在所述密码锁内设第四状态控制标记;第五状态控制装置,用于当所述密码锁处于锁闭状态并由第四组开锁密码和第五组开锁密码控制开锁时,且输入锁具的开锁数码组与第五开锁密码相同时,在所述密码内设置第五控制标记;
12.如权利要求1所述的密码锁,其特征在于,其中所述的定时编码系统,包括第一定时编码器,用以将所述的第一数码计数器的内存数存入所述的第一时间计数器的第一存储单元区;第二定时编码器,用以将所述的第一数码器的内存数存入所述的第一时间计数器的第二存储单元区;第三定时编码器,用以将所述的第一数码计数器的内存数存入所述的第一时间计数器的第三存储单元区;第四定时编码器,用以将所述的第一时间计数器的第一存储单元区、第二存储单元区和第三存储单元区的内存数分别对应存入所述密码锁的其他时间计数器的第一存储单元区、第二存储单元区和第三存储单元区。一数码比较器,用以比较所述的第一时间计数器的第一存储单元区、第二存储单元区和第三存储单元区的内存数与所述密码锁的其他时间计数器的第一存储单元区、第二存储单元区和第三存储单元区的内储数的大小。
13.如权利要求1所述的密码锁,其特征在于,其中所述的密码编存系统,包括第一编码控制器,用于所述密码锁处于开启状态,且所述的第二数码计数器的内存数为零,控制将所述第一数码计数器的内存数码存入所述的第二数码计数器;第二编码控制器,用于所述密码锁处于时控开启状态,且所述的第二数码计数器的内存数码组中不包括一预定数码的特定排列,当所述的第三数码计数器内存数为零时,控制将所述的第一数码计数器的内存数码存入第三数码计数器;第三编码控制器,用于所述密码锁处于时控开启状态,且所述的第二数码计数器的内存数码组中不包含一预定数码的特定排列,当所述的第三数码计数器内存数不为零,而所述的第四数码计数器内存数为零时,控制将所述的第一数码计数器内存数存入所述的第四数码计数器;第四编码控制器,用于所述密码锁处于非时控开启状态,且所述的第二数码计数器内存数码组中不包含一预定数码的特定排列,控制将所述的第一数码计数器的内存数存入所述的第三数码计数器;第五编码控制器,用于所述密码锁处于开启状态,且所述的第二数码计数器内存数码组中包含一预定数码的特定排列,当所述的第五数码计数器内存数为零,控制将所述的第一数码计数器的内存数存入所述的第五数码计数器;第六编码控制器,用于所述密码锁处于开启状态,且所述的第二数码计数器内存数码组中包括一预定数码的特定排列,当所述的第五数码计数器内存数不为零,而所述的第六数码计数器内存数为零,控制将所述的第一数码计数器内存数存入所述的第六计数器。
14.如权利要求1所述密码锁,其特征在于,其中所述的密码编存系统,包括第一复位控制器,用于使所述密码锁的第一数码计数器和第一时间计数器的内存数复零;第二复位控制器,用以在所述密码锁处于开启状态,且所述的第一数码计数器的内存数与所述的第二数码计数器的内存数相同时,使所述密码锁内存的开锁密码、第一编码系统内存的时控数码和所述的第二控制标记同时复零;第三复位控制器,用以在所述密码锁处于时控开启状态,且所述的第二数码计数器的内存数码组中不包括一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第三数码计数器的内存数相同时,使所述的第三数码计数器的内存数复零;第四复位控制器,用以在所述密码锁处于时控开启状态,且所述的第二数码计数器的内存数码组中不包括一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第四数码计数器的内存数相同时,使所述的第四数码计数器的内存数复零;第五复位控制器,用以在所述密码锁处于开启状态,且所述的第二数码计数器的内存数码组中包括一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第五数码计数器的内存相同时,使所述的第五数码计数器的内存数复零;第六复位控制器,用以在所述密码锁处于开启状态,且所述的第二数码计数器的内存数码组中包含一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第六数码计数器的内存数相同时,使所述的第六数码计数器的内存数复零。
15.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括第一开锁控制器,用于当所述密码锁处于锁闭状态,且所述的第一数码计数器的内存数与所述的第二数码计数器的内存是相同的,控制所述的驱动控制器起动马达使所述密码锁开锁;第二开锁控制器,用于在所述密码锁处于非定时自锁的锁闭状态,且锁具的第二数码计数器的内存数码组中不包含一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第三数码计数器的内存数是相同的,激励所述的驱动控制器使所述密码锁开启;第三开锁控制器,用以在所述密码锁处于非定时自锁的锁闭状态,且所述的第二数码计数器的内存数码组中不包含一预定数码的特定排列,当所述的第一数码计数器的内存数与所述的第四数码计数器的内存数是相同的,激励所述的驱动控制器使所述密码锁开启;第四开锁控制器,用以在所述密码锁处于非定时自锁的锁闭状态,且所述的第二数码计数器的内存数码组中包含一预定数码的特定排列和所述的第六数码计数器的内存数为零,当所述的第一数码计数器的内存数与所述的第五数码计数器的内存数是相同的,激励所述的驱动控制器使所述密码锁开启;第五开锁控制器,用以在所述密码锁处于非定时自锁的锁闭状态,且所述的第二数码计数器的内存数码组中包含一预定数码的特定排列和所述密码锁内设置了所述的第五控制标记,当所述的第一数码计数器的内存数与所述的第五数码计数器的内存数是相同的,激励所述的第五数码计数器的内存数是相同的,激励所述的驱动控制器使所述密码锁开启;第六开锁控制器,用以在所述密码锁处于非定时自锁的锁闭状态,且所述的第二数码计数器的内存数码组中包含一预定数码的特定组合和所述密码锁内设置了所述的第四控制标记,当所述的第一数码计数器内存数与所述的第六数码计数器的内存数是相同的,激励所述的驱动控制器使所述密码锁开启;第七开锁控制器,用以当所述密码锁的报警装置的计数器的内存数达到一预定数时,使所述密码锁进入一预定时间的定时自锁状态,并激励报警装置发生报警信号。
16.如权利要求1所述的密码锁,其特征在于,其所述的程序控制器,包括一锁闭控制装置,用于在所述密码锁的电源电压低于预定电平值时,使所述的密码锁不能锁闭。
17.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括一处理器,当所述的第一组编码系统和第二组编码系统的时间计数器编存了时控数码,所述的处理器使所述的第一组编码系统内存的时控数码优先于所述的第二组编码系统内存的时控数码对所述密码锁进行定时自锁控制。
18.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括一数码比较器,用以确定所述的第二数码计数器内存数码组中是否包括一预定数码的特定排列。
19.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括一定时器,用于使所述的程序控制器定时调用所述密码锁内存的中断服务程序对所述密码锁进行控制;一计时器,用于使所述的程序控制器对所述的第二时间计数器的内存数和第五时间计数器的内存数随所述密码锁的工作时间进行调整变换。
20.如权利要求1所述的密码锁,其特征在于,其中所述的程序控制器,包括一自动变码器,用以控制所述的第3数码计数器的内存数码定时自动变换为另一预定的数码组。
21.如权利要求1所述的密码锁,其特征在于,其中所述的状态转换控制系统包括一控制器,当所述密码锁处于锁闭状态,且设置了所述的第三控制标记,所述的状态转换控制系统的控制器使所述密码锁保持锁闭状态。
22.一种操作一电子密码时控系统的方法,该电子密码锁时控系统包括一组数码输入装置、一组定时编码装置、一显示器、一组状态指示灯、一编码及启动控制装置、一警报器、一状态转换装置、一驱动控制器和一电压比较器,其特征在于,该方法包括下列步骤当接通所述密码锁的电源,且所述密码锁处于锁闭状态时,使表示所述密码锁处于锁闭状态的指示灯工作;当接通所述密码锁的电源,且所述密码锁处于开启状态时,使表示所述密码锁处于开启状态的指示灯工作;当所述密码锁处于开启状态,且操作所述的数码输入装置时,所述显示器将把输入的数码逐位显示出来;操作数码输入装置,且所述密码锁处于锁闭状态时,保持所述的显示器不工作;操作定时编码装置时,显示器将把所述密码锁内存的时控数码显示出来;当操作状态转换装置,且所述密码锁处于开启状态和所述密码锁的电源电压不低于预定电平时,起动驱动控制器工作,使所述密码锁锁闭,并使表示所述密码锁锁闭的状态指示灯工作;当操作状态转换装置,且所述密码锁处于开启状态和所述密码锁的电源电压值低于预定电平时,保持驱动控制器不工作;当操作状态转换装置,且所述密码锁处于非定时自锁的锁闭状态和所述密码锁的电源电压值不低于预定电平时,起动所述的驱动和控制器工作,使所述密码锁开启,并起动表示所述密码锁开启的状态指示灯工作;当操作状态转换装置,且所述密码锁处于非定时自锁的锁闭状态和所述密码锁的电源电压值低于预定电平时,走动所述的驱动控制器使密码锁开启,并起动表示所述密码锁开启的状态指示灯工作和表示所述密码锁电源电压偏低的状态指示灯工作;当所述密码锁处于定时自锁状态时,操作所述状态转换装置,所述密码锁的驱动控制器保持不工作状态;当所述密码锁处于锁闭状态时,操作所述的编码及启动控制装置,起动所述的程序控制器的开锁控制器工作;当所述密码锁处于开启状态,且所述的第一时间计数器内存数不为零时,操作所述的编码及启动控制装置,则起动所述的定时编码系统工作而保持所述密码锁的驱动控制器不工作;当所述密码锁处于开启状态,且所述的第一时间计数器内存数为零,而所述的第一数码计数器内存数不为零时,操作所述的编码启动控制装置时,则起动所述的密码锁编存系统工作而保持所述的密码锁的驱动控制器不工作。当所述密码锁处于开启状态,且所述的第一数码计数器的内存数为零和第一时间计数器内存数为零,并且所述密码锁的电源电压值不低于预定电平时,操作所述的编码启动控制装置时,则起动所述密码锁的驱动控制器和表示所述密码锁处于锁闭状态的指示灯工作;当所述密码锁处于开启状态,且所述的第一数码计数器的内存数为零和第一时间计数器内存数为零,而所述密码锁的电源电压值低于预定电平时,操作所述的编码启动控制装置时,则起动表示所述密码锁电源电压偏低的状态指示灯工作而保持所述的驱动控制器不工作;当所述的密码锁处于定时自锁状态,且所述的第一数码计数器内存数与所述的第二数码计数器内存数相同时,操作所述的编码启动控制装置,则起动所述的驱动控制器使所述密码锁开启;当所述密码锁处于定时自锁状态,且所述的第一数码计数器内存数与所述的第二数码计数器的内存数不相同时,操作所述的编码启动控制装置,则起动所述的显示器显示出输入误码的提示符而保持所述的驱动控制器不工作。
23.如权利要求1所述的密码锁,其中所述的程序控制器存储了所述密码锁的控制程序,其特征在于,所述的密码锁的控制程序包括下列控制子程序一所述密码锁密码编存系统的数码输入控制子程序;一所述密码锁的状态转换控制系统的控制子程序;一所述密码锁的开锁密码编存控制子程序;一所述密码锁的开锁控制子程序;一所述密码锁的定时编码系统的第一组编码系统的编码控制子程序;一所述密码锁的定时编码系统的第二组编码系统的编码控制子程序;一所述密码锁的控制程序的中断服务子程序。
全文摘要
一种电脑时控密码锁,包括一程序控制器,一内设电源和一外接电源装置,用以控制密码锁进行定时自锁和定时自动变换密码锁的内存密码,并控制密码锁采用单组密码控制开锁或采用双密码组控制开锁,还用以控制密码锁内存的开锁密码和时控数码的显示;当密码锁电源电压偏低时控制密码锁不能锁闭,及时更换密码锁的电源电池,当密码锁内设电源偏低使锁具不能开启时,通过外接电源使密码锁开启。
文档编号E05B37/20GK1075185SQ92113480
公开日1993年8月11日 申请日期1992年11月25日 优先权日1992年11月25日
发明者李晞晖 申请人:李晞晖