estudiante
#include
#use delay(clock= 4M)
#fuses XT,NOWDT,NOPROTECT,NOLVP
#define use_portb_kbd TRUE //Puerto B, definido para usar con el teclado.
#include//Incluye la librería para manejar el teclado 4x4
#include //Librería para menejo del LCD 16x2
#rom 0x2100={'0','0','0','0'}
#rom 0x2101={'0','0','0','0'}
#rom 0x2102={'0','0','0','0'}
#rom0x2103={'0','0','0','0'}
#rom 0x2104={'0','0','0','0'}
void menu_inicial(void);
void menu_secundario(void);
void seleccion(void);
void administrador(void);
void usuarios(void);
voidclave_usuario(int j);
void entrada(void);
void entrada_usuario(int a);
void boton(void);
char tecla1,opcion;
char clave[4];
int i;
void main(void)
{
lcd_init(); //Inicializamos el LCDkbd_init(); //Inicializamos el teclado
port_b_pullups(TRUE); //Activamos las resistencias de pull-up del puerto B
while(TRUE)
{
menu_inicial();
//secundario:
boton();
menu_secundario();boton();
delay_ms(1000);
boton();
//goto secundario;
}
}
//Funcion menu_inicial
void menu_inicial(void)
{
lcd_putc("\f");
lcd_gotoxy(3,1);
lcd_putc("UNIVERSIDAD");
lcd_gotoxy(4,2);lcd_putc("NACIONAL");
delay_ms(700);
lcd_putc("\f");
lcd_gotoxy(7,1);
lcd_putc("DE");
lcd_gotoxy(3,2);
lcd_putc("INGENIERIA");
delay_ms(700);
lcd_putc("\f");
lcd_gotoxy(3,1);lcd_putc("Electronica");
lcd_gotoxy(4,2);
lcd_putc("Aplicada");
delay_ms(1000);
}
//Funcion de menu_secundario
void menu_secundario(void)
{
uno:
lcd_putc("\f");
lcd_gotoxy(2,1);
lcd_putc("A:Cambiar clave");lcd_gotoxy(5,2);
lcd_putc("B:Entrar");
delay_ms(200);
while(TRUE)
{
do{opcion=kbd_getc();
}while(opcion==0);
if(opcion=='A')
{
seleccion();
delay_ms(1000);
goto uno;
break;}
if(opcion=='B')
{
entrada();
delay_ms(1000);
goto uno;
break;
}
if(opcion!= 'A' || 'B')
{
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("Tecla incorrecta");
lcd_gotoxy(1,2);...
Regístrate para leer el documento completo.