You are on page 1of 2

program Proyecto_LCD_8 ' Seccin de Declaracin Dim texto1 texto2 txt dato As As As As string[16] string[16] String[6] Byte '

' ' ' Variable Variable Variable Variable tipo String "texto1" tipo String "texto2" de contenido temporal tipo String tipo Byte para cargar datos

' Configuracin de los pines de la LCD Dim LCD_RS LCD_EN LCD_D4 LCD_D5 LCD_D6 LCD_D7 As As As As As As sbit sbit sbit sbit sbit sbit At At At At At At RB4_bit RB5_bit RB0_bit RB1_bit RB2_bit RB3_bit As As As As As As sbit sbit sbit sbit sbit sbit At At At At At At TRISB4_bit TRISB5_bit TRISB0_bit TRISB1_bit TRISB2_bit TRISB3_bit

LCD_RS_Direction LCD_EN_Direction LCD_D4_Direction LCD_D5_Direction LCD_D6_Direction LCD_D7_Direction

' Fin de la configuracin de conexiones TRISD = $FF main: dato = 25 texto1 = "P1 Suma P2 Resta" ' cargamos el texto en la variable texto2 = "Dato = " ' cargamos el texto en la variable LCD_Init() LCD_Cmd(_LCD_Clear) LCD_Cmd(_LCD_Cursor_Off) LCD_Out(1, 1,texto1) While true LCD_Out(2, 1,texto2) ByteToStr(dato, txt) Lcd_Out(2, 8, txt) ila 2, While PortD.0 = 1 r P1 no ' ha sido presionado, por lo tanto no se ejecut an las ' instrucciones dentro de while-wend. dato = dato + 1 ble "dato" delay_ms(300) ' Realiza una pausa de 300 milisegundos para ev ' Incrementa en una unidad el valor de la varia ' Imprime en la fila 1, columna 1 ' Convierte el valor numrico en String. ' Imprime el contenido cargado en "txt" en la f ' columna 8. ' Verifica si la condicin expresada se cumple, ' es decir, pregunta si RD0 fue presionado. Si ' RD0 no es igual a 1, significa que el pulsado ' Inicializamos la pantalla LCD ' Limpia la pantalla LCD ' Apaga el cursor en la pantalla ' Imprime en la fila 1, columna 1 ' Configuracin del puerto C como entrada.

itar que ' el incremento de la variable sea muy acelerad o mientras ' el pulsador P1 est presionado. ByteToStr(dato, txt)' Convierte el valor numrico en String. Lcd_Out(2, 8, txt) ' Imprime el contenido cargado en "txt" en la f ila 2, ' columna 8. If dato = 51 Then ato y se ' se interpreta asi: si dato es igual a 51, ent onces ' volvemos a hacer a "dato" igual a 50: dato = 50 End If Wend While PortD.1 = 1 r P2 no ' ha sido presionado, por lo tanto no se ejecut an las ' instrucciones dentro de while-wend. dato = dato - 1 ble "dato" delay_ms(300) itar que ' el decremento de la variable sea muy acelerad o mientras ' el pulsador P1 est presionado. ByteToStr(dato, txt)' Convierte el valor numrico en String. Lcd_Out(2, 8, txt) ' Imprime el contenido cargado en "txt" en la f ila 2, ' columna 8. If dato = 0 Then to y se ' se interpreta asi: si dato es igual a 0, ento nces ' volvemos a hacer a "dato" igual a 1: dato = 1 End If Wend Wend End. ' Fijamos un lmite inferior (1) a la variable da ' Realiza una pausa de 300 milisegundos para ev ' Decrementa en una unidad el valor de la varia ' Verifica si la condicin expresada se cumple, ' es decir, pregunta si RD1 fue presionado. Si ' RD0 no es igual a 1, significa que el pulsado ' Fijamos un lmite superior (50) a la variable d

You might also like