PIC12C6718位單片機,可用其構成冰箱保護器,電路簡單。
電路工作原理如附圖所示。
圖中PIC12C671單片機的③腳控制冰箱壓縮機,②腳為欠壓顯示,⑤腳為過壓顯示,⑦腳為A/D模擬電壓輸入端。A/D轉換時分辨率為20mV,當R3、R4精度為0.1%時,欠壓、過壓的控制誤差為0.5%。Vcc隨市電按比例變化,經(jīng)R3、R4分壓后,輸入到PIC12C671的⑦腳轉換為數(shù)字量Di。程序中設定欠壓的數(shù)字量D1,把轉換的數(shù)字量Di與欠壓時的數(shù)字量D1比較,若Di≤D1且持續(xù)5秒,PIC12C671的③腳清零,②腳為高電平,冰箱壓縮機控制電路停止供電,欠壓燈亮。5分鐘后PIC12C671采集數(shù)據(jù),若已恢復正常,置②腳為0,③腳為1,電路回到正常工作狀態(tài)。當停電后來電時,程序延時5分鐘后③腳變?yōu)楦唠娖剑瑢崿F(xiàn)控制作用。
上電延時程序清單如下:
listp=12C671
#include<P12c671.Inc>
errorlevel -302
_CONFIG_CP_OFF &_WDT_ON &_MCLRE_ON&_PWRTE_ON &_INTRC_OSC
;*****VARIABLE DEFINITIONS
W_TEMP EQU0x0C
STATUS_TEMP EQU0x0D
PIR1 ?。牛眩眨埃埃?br/> LATB EQU0x20
PIE1 EQU0x8C
TEMP ?。牛眩眨埃玻?br/> COUNT EQU 0x21
TMRO EQU 0x01
PORTA EQU 0x05
ORG 0x00
GOTO START
ORG 0x04
GOTO ADCON
;remainingcode goes her
START:BSFSTATUS,RP0
MOVLW0x01
MOVWFGPI0
MOVLW0X0D6
?。停希郑祝疲希校裕桑希危撸遥牛?br/> BCF STATUS,RP0
BSF INTCON,7
BSF INTCON,5
?。拢茫?nbsp; INTCON,2
BSF INTCON,GIE
?。茫蹋遥?nbsp; COUNT
CLRF LATB
?。茫蹋遥?nbsp; TMR0
CLRF PORTA
MAIN:CLRWDT
MOVLW ?。埃埃疲?br/> SUBWF TMR0,0
BTFSC?。樱裕粒裕眨?,Z
GOTO ?。裕桑停牛?br/>TIME1:MOVLW 0x0FF
SUBWF?。茫希眨危裕?br/> BTFSC ?。樱裕粒裕眨樱?br/> GOTO TIME4
TIME3:MOVLW ?。埃玻?br/> SUBWF TEMP,0
?。拢裕疲樱??。樱裕粒裕眨樱?br/> BSF PORTA,2
GOTO MAIN
TIME2:INCF ?。茫希眨危?,1
CLRF ?。裕停遥?br/> GOTO TIME1
TIME4:INCF TEMP,1
CLRF COUNT
GOTO ?。裕桑停牛?br/>ADCON:…
END