PIC16C54是一种价格低廉的单片机,目前在家用电器中得到了广泛的应用。本文介绍PIC16C54在消毒柜中的应用。该消毒柜采用臭氧消毒,具有消毒与加热功能,适合对碗筷等进行干燥和消毒。
功能介绍附图为消毒柜控制器电原理图。LED1、LED2为臭氧消毒指示灯,LED3、LED4为加热指示灯。开机时所有指示灯均熄灭,按一下AN1则LED1亮,J3吸合,臭氧发生器开始工作;45分钟后,LED1熄灭,LED2点亮;45分钟后,LED2熄灭,LED3点亮,同时J3释放,J2吸合,臭氧消毒结束,进入加热干燥阶段。30分钟后,LED3熄灭,LED4点亮,再经过30分钟后LED4熄灭,J2释放,整个消毒、加热干燥过程结束。需要不同种类的消毒、加热干燥时,可以通过按AN1进行选择,每按一次AN1,点亮的LED指示灯下移一位,只进行余下的消毒、干燥程序。本消毒柜有四种消毒干燥程序:
1)LED1亮消毒45分钟→消毒45分钟→加热30分钟→加热30分钟
2)LED2亮消毒45分钟→加热30分钟→加热30分钟
3)LED3亮加热30分钟→加热30分钟
4)LED4亮加热30分钟
AN2单独控制J1,按一下AN1,J1吸合,再按一下AN1,J1释放,该继电器用于控制消毒柜内的照明灯。
电路原理为降低成本,PIC16C54采用RC振荡器,工作频率为4MHz。由于R1、C1与PIC16C54的供电电压都对RC振荡器的频率有影响,为使定时时间准确,要用频率计测试第{15}脚(CLKOUT,频率为1/4振荡频率)的输出频率是否为1MHz。如果偏差较大,则需要调整R1、C1的大小。RA2、RA3用于检测按钮,平时通过R2、R3上拉为高电平,有按钮按下时变为低电平。RB0~RB3为输出口,用于驱动发光二极管,显示工作状态。RB4为提示音输出,当有按钮按下时,发出“嘟”声。RB5~RB7用于驱动继电器,对外部设备进行控制。KG为门吸开关,只有当消毒柜门关闭时臭氧发生器才能工作,防止臭氧泄漏。
软件编制由于臭氧发生器工作时产生较大的脉冲干扰,因此本电路对抗干扰有较高的要求,在软件设计时要充分考虑到这一点。另外PIC16C54具有看门狗(WDT)功能,可以在软件进入死循环时重新启动单片机。在程序恰当的地方加入CLKWDT指令,以免正常运行的程序被WDT打断。
下面给出在RB4输出提示音的程序供读者参考,输出频率2kHz,时间100ms。
BEEP MOVLW 0C8H ;设置时间为
100ms
MOVWF COUNT1
LOOP1 CLRWDT ;清看门狗
BSF RB,BEP;RB4输出高电平
MOVLW 053H ;置延时时间
250μs
MOVWF COUNT2
LOOP2 DECFSZ COUNT2,1;延时
GOTO LOOP2
BCF RB,BEP ;RB4输出低电平
MOVLW 053H ;设置延时时间为
250μs
MOVWF COUNT2
LOOP3 DECFSZ COUNT2,1;延时
GOTO LOOP3
DECFSZ COUNT1,1
GOTO LOOP1
RETLW 0