control con histéresis en microcode

3
CONTROL CON HISTÉRESIS EN MICROCODE DEFINE LCD_DREG PORTB DEFINE LCD_DBIT 4 DEFINE LCD_RSREG PORTB DEFINE LCD_RSBIT 2 DEFINE LCD_EREG PORTB DEFINE LCD_EBIT 1 DEFINE ADC_BITS 8 DEFINE ADC_CLOCK 3 DEFINE ADC_SAMPLEUS 50 TRISA = 255 TRISC= 0 TRISD= 255 lm var byte y VAR byte set VAR byte Y1 VAR byte hist VAR byte Y2 VAR byte z VAR byte lcdout $fe,1 pause 100 Lcdout "ESPE" lcdout $fe,$c0,"CONTROL DIGITAL" pause 300 inicio: ADCIN 0,lm ADCIN 1,set ADCIN 2,hist if PORTD.0=0 then y=(20*lm)/51 y1=(20*set)/51 if y>y1 then LOW PORTC.0 else HIGH PORTC.0 endif

Upload: lauren-stewart

Post on 25-Sep-2015

215 views

Category:

Documents


1 download

DESCRIPTION

lineas de codigo para el control ON OFF

TRANSCRIPT

CONTROL CON HISTRESIS EN MICROCODE

DEFINE LCD_DREG PORTBDEFINE LCD_DBIT 4DEFINE LCD_RSREG PORTBDEFINE LCD_RSBIT 2DEFINE LCD_EREG PORTBDEFINE LCD_EBIT 1

DEFINE ADC_BITS 8 DEFINE ADC_CLOCK 3 DEFINE ADC_SAMPLEUS 50 TRISA = 255TRISC= 0TRISD= 255

lm var bytey VAR byteset VAR byteY1 VAR bytehist VAR byteY2 VAR bytez VAR bytelcdout $fe,1pause 100Lcdout "ESPE"lcdout $fe,$c0,"CONTROL DIGITAL"pause 300

inicio:ADCIN 0,lmADCIN 1,setADCIN 2,histif PORTD.0=0 theny=(20*lm)/51y1=(20*set)/51if y>y1 thenLOW PORTC.0elseHIGH PORTC.0endiflcdout $fe,1pause 100Lcdout "LM35", DEC y, " C "lcdout $fe,$c0,"SETPOINT= ",DEC y1,"C"pause 300

elsey=(20*lm)/51y1=(20*set)/51y2=((20*hist)/51)z=(y2*y1)/100if (y1+z)y thenHIGH PORTC.0endiflcdout $fe,1pause 100Lcdout "histe", DEC y2, " % "lcdout $fe,$c0,"SETPOINT= ",DEC y1,"C"pause 300lcdout $fe,1pause 100Lcdout "lm35 ", DEC y, " C "pause 300endifgoto inicio