IAM MAKING TEMPERATURE CONTROLLER USING ntc THERMISTOR FROM -10 DEGREE TO 50 DEGREE.BUT MY TEMPERATURE IS NOT GOING BELOW 0. PLS CHECK MY CODE AND GUIDE ME.THANKS
'_________________________________________________ _________________________Code:DG1 VAR BYTE DG2 VAR BYTE DG3 VAR BYTE DIGIT VAR BYTE DG VAR BYTE COUNTT VAR BYTE NUMB VAR WORD N VAR WORD adval var word temp var word TEMPP VAR WORD ADCON1=%10000000 adcon0=%00000101 TRISA=1 TRISB=%00111000 TRISC=0 numb=0 gosub mread 'n=numb GOSUB DIGITCALC '------------------------------------------------------------------------- MAIN1: GOSUB DISPLAY IF PORTB.3=1 THEN MREAD IF PORTB.3=0 THEN MAIN GOTO MAIN1 '------------------------------------------------------------------------- MAIN: ADCON0.2=1 GO: IF ADCON0.2=1 THEN GO adval.HIGHBYTE = ADRESH adval.lowbyte = ADRESL temp=adval N=temp gosub display gosub digitcalc If adval>NUMB then PORTB.7=0 IF ADVAL< NUMB-5 THEN PORTB.7=1 GOTO MAIN1 '_____________________________________ UP: IF NUMB=50 THEN MAIN NUMB=NUMB+1 N=NUMB GOSUB DIGITCALC IF PORTB.4=1 THEN MEMORY GOTO MAIN1 memory: WRITE 0,numb.HighByte WRITE 1,numb.LowByte GOTO MAIN1 '_____________________________________ DOWN: IF NUMB=-10 THEN MAIN 'MIN LIMIT NUMB=NUMB-1 N=NUMB GOSUB DIGITCALC IF PORTB.5=1 THEN MEMORY GOTO MAIN1 '_____________________________________ MREAD: READ 0,numb.HighByte READ 1,numb.LowByte n=numb gosub digitcalc IF PORTB.4=1 THEN UP IF PORTB.5=1 THEN DOWN goto main1 ___________________________________________________ DISPLAY: FOR COUNTT=0 TO 99 PORTC=DG1 PORTB.2=1 PAUSEUS 300 PORTB.2=0 PORTC=DG2 PORTB.1=1 PAUSEUS 300 PORTB.1=0 PORTC=DG3 PORTB.0=1 PAUSEUS 300 PORTB.0=0 NEXT COUNTT RETURN '________________________________________________________________ '__________________________________________________________________________ DIGITCALC: DIGIT=0 LP1: IF N<100 THEN DS1 N=N-100 DIGIT=DIGIT+1 GOTO LP1 DS1: GOSUB FND DG1=DG DIGIT=0 LP2: IF N<10 THEN DS2 N=N-10 DIGIT=DIGIT+1 GOTO LP2 DS2: GOSUB FND DG2=DG DIGIT=N GOSUB FND DG3=DG RETURN '__________________________________________________________________________ '__________________________________________________________________________ FND: FND0: IF DIGIT>0 THEN FND1 DG=$7E '%0111 1110 GOTO FNDEND FND1: IF DIGIT>1 THEN FND2 DG=$48 '%0100 1000 GOTO FNDEND FND2: IF DIGIT>2 THEN FND3 DG=$3D '%0011 1101 GOTO FNDEND FND3: IF DIGIT>3 THEN FND4 DG=$6D '%0110 1101 GOTO FNDEND FND4: IF DIGIT>4 THEN FND5 DG=$4B '%0100 0011 GOTO FNDEND FND5: IF DIGIT>5 THEN FND6 DG=$67 '%0110 0111 GOTO FNDEND FND6: IF DIGIT>6 THEN FND7 DG=$77 '%0111 0111 GOTO FNDEND FND7: IF DIGIT>7 THEN FND8 DG=$4C '%0100 1100 GOTO FNDEND FND8: IF DIGIT>8 THEN FND9 DG=$7F '%0111 1111 GOTO FNDEND FND9: DG=$6F '%0110 1111 FNDEND: RETURN
Bookmarks