当单片机的P1.O,P1.1,P1.2,P1.3为低电平时,Q4,Q6,Q8,Q10截止,V1和V2处于浮空状态,电机静止;当开锁时,单片机的P1.0,P1.3为高电平,P1.1,P1.2为低电平,Q4,Q5,Q10,Q11导通,Q6,Q7,Q8,Q9截止,V1为正,V2为负,电机正转开锁;当闭锁时,单片机的P1.0,P1.3为低电平,P1.1,P1.2为高电平,Q4,Q5,Q10,Q11截止,Q6,Q7,Q8,Q9导通,V1为负,V2为正,电机反转闭锁。
在程序实现时,必须注意严禁P1.0,P1.1,P1.2,P1.3同时为高电平,即Q4,Q6,Q8,Q10同时处于导通状态。
1.5 电机保护电路
直流变速电机执行开锁、闭锁操作一定时间后,外部机械装置会迫使电机停止转动,如果不采取措施,会产生较大电流,损坏直流电机,所以保护电路是必不可少的。
保护电路由TLV2252运算放大器、电阻R4,R5,R6组成,电路如图5所示。TLV2252的1IN+(引脚3)接R5,R6构成分压电路;11N-(引脚2)接电阻R4,电阻R4串联到电机倒向驱动电路的公共输出端。当电机正常工作时,通过R4的电流较小,TLV2252的输出(引脚1)经两个反向驱动后送给单片机的P3.3,此时为“1”,进行正常的开关操作。当外部机械装置迫使电机停止转动时,由于直流电机负载过大,通过R4的电流较大,这时放大器TLV2522输出经两个反向驱动后送给单片机的P3.3,此时为“O”,利用此信号产生中断信号,停止开锁、闭锁操作,以此起到对电机的保护作用。
2 软件系统设计
系统软件由控制部分主程序、数据接收程序、电机驱动程序、手持部分主程序、数据发送程序组成。控制部分与手持部分传送开门、关门信号和钥匙密码信号,其中钥匙密码信号用1l位二进制数,具有较好的安全性。
2.1 数据“0”,“1”传送方法
采用异步FSK通讯方式,使用信号的不同频率来区分“0”和“1”,如图6所示。
当信号频率为20 kHz时,代表传输为“O”;当信号频率为10 kHz时,代表传输为“1”。当晶振为12 MHz时,机器周期大约为1μs。在接收部分,定时器/计数器1用来记录机器周期的个数。当记录的机器周期个数在30~70之间时,可以确定接收到的是“O”(O的标准个数为50个);当记录的机器周期个数在80~120之间时,确定接收到的是“1”(1的标准个数为100个),其他情况按错误处理。
2.2 通信协议设计
在传送的信息中,一部分是开锁、闭锁控制命令信号,另一部分是钥匙密码信息。控制部分接收到钥匙密码信息,经验证与本机的密码一致后可以执行开锁、闭锁操作。采用异步通信方式,定义协议格式为起始位、钥匙密码信息位、开/关位、校验位。其中,起始位为1位;钥匙密码信息为11位;开/关位为1位;校验位为4位。当起始位为“0"时,表示一帧数据的开始,加上此后连续的16位为一帧数据。