Codigo Parqueadero

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

sbit LCD_RS at RB4_bit;

sbit LCD_EN at RB5_bit;

sbit LCD_D4 at RB0_bit;

sbit LCD_D5 at RB1_bit;

sbit LCD_D6 at RB2_bit;

sbit LCD_D7 at RB3_bit;

sbit LCD_RS_Direction at TRISB4_bit;

sbit LCD_EN_Direction at TRISB5_bit;

sbit LCD_D4_Direction at TRISB0_bit;

sbit LCD_D5_Direction at TRISB1_bit;

sbit LCD_D6_Direction at TRISB2_bit;

sbit LCD_D7_Direction at TRISB3_bit;

int entrada=0,tarifa=0,tarifa2=0; //VARIABLES PARQUEADERO

char cont[16]; //VARIABLES CHAR

void main() {

////// Inicializa LCD--------------------

Lcd_Init(); // INICIALIZA LCD

Lcd_Cmd(_LCD_CURSOR_OFF); // Apaga el Cursor

Lcd_Cmd(_LCD_CLEAR); // Borra la LCD

// Apagamos el Cursor para evitar su visualizacion en la lcd

Lcd_Out(1,1,"BIENVENIDO");

Lcd_Out(2,1,"PARQUEADERO");
// delay_ms(1000);

TRISA = 0b111111;

TRISB = 0b00000000;

TRISC = 0b11111111;

TRISD = 0b11111111;

TRISE = 0b111; //configuracion de puertos

PORTA = 0x0;

PORTB = 0x0;

PORTC = 0x0;

PORTD = 0x0;

PORTE = 0x0;

ADCON1 = 0b1111;

while(1) { // PARA REPETIR CICLO

if (Button(&PORTD, 0, 1, 1))

Lcd_Cmd(_LCD_CLEAR); // Borra la LCD

if (PORTC.B0==1){Lcd_Out(1,1,"P1=O");} else {Lcd_Out(1,1,"P1=H");}

if (PORTC.B1==1){Lcd_Out(1,6,"P2=O");} else {Lcd_Out(1,6,"P2=H");}

if (PORTC.B2==1){Lcd_Out(1,12,"P3=O");} else {Lcd_Out(1,12,"P3=H");}

if (PORTC.B3==1){Lcd_Out(2,1,"P4=O");} else {Lcd_Out(2,1,"P4=H");}

if (PORTC.B4==1){Lcd_Out(2,6,"P5=O");} else {Lcd_Out(2,6,"P5=H");}

if (PORTC.B5==1){Lcd_Out(2,12,"P6=O");} else {Lcd_Out(2,12,"P6=H");}


}

// seleccionamos los pines para parqueadero habilitado y ocupado con if

if (Button(&PORTD,1,500,1))

entrada=entrada+1;

tarifa=tarifa+1;

tarifa2=tarifa*300;

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"card");

Lcd_Out(2,1,"entrando");

if(entrada > 6)

entrada = 6;

tarifa2=1800;

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"NO");

Lcd_Out(2,1,"carros");

// si se cumple que un carro haga entrada cuenta hasta 6 y del caso contrario diga no carros

if (Button(&PORTD, 2, 500, 1)&&entrada>0){

entrada = entrada-1;

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"Saliendo");
}

// si un carro hace salida reste

if (Button(&PORTD, 3, 1, 1)) {

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"TARIFA");

FloatToStr_Fixlen(tarifa2,cont,6);

Lcd_Out(2,1,cont); }

// se contabiliza de acuerdo a la entrada de carros

if (Button(&PORTD, 4, 1, 1)) {

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"PARQUEO");

FloatToStr_Fixlen(entrada,cont,2);

Lcd_Out(2,1,cont); }

// seleccionamos el puerto como parqueo para que nos indique cuantos carros hay parqueados

You might also like