0% encontró este documento útil (0 votos)
14 vistas3 páginas

Programa en C para Control de Funciones LCD

Este documento describe un programa para controlar 3 funciones (medida, calibración e inicialización) mediante un menú en una pantalla LCD. Define las funciones para cada operación y una función para ejecutar la función seleccionada en el menú. El programa muestra un menú en bucle que permite navegar entre las opciones y seleccionar una para ejecutar la función correspondiente.
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
14 vistas3 páginas

Programa en C para Control de Funciones LCD

Este documento describe un programa para controlar 3 funciones (medida, calibración e inicialización) mediante un menú en una pantalla LCD. Define las funciones para cada operación y una función para ejecutar la función seleccionada en el menú. El programa muestra un menú en bucle que permite navegar entre las opciones y seleccionar una para ejecutar la función correspondiente.
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

PROGRAMA3 #include <16F876.h> #fuses XT,NOWDT #use delay(clock= 4000000) #include <lcd.

c> #use standard_io(C) #use standard_io(A) enum funciones {med,cal,ini}; //Asigna un valor a cada elemento //med=0, cal=1 e ini=2 void medir(void){ //Funcin de medir //algoritmo correspondiente output_toggle(pin_C0); } void calibrar(void){ //Funcin de calibrar //algoritmo correspondiente output_toggle(pin_C1); } void inicializar(void){ //Funcin de inicializar //algoritmo correspondiente output_toggle(pin_C2); }

void run_func(int numfunc){ //Asignacin de la funcin a realizar //viene dada por la variable "item" switch(numfunc) { case med: medir(); break; case cal: calibrar(); break; case ini: inicializar(); break; } }

void main() { char item; //Variables de funciones char n_menus = 3; //Nmero de funciones // bit_set(TRISA,0); lcd_init(); while (1) { if (input(PIN_A0) == 1) { //Detecta botn de seleccin item++; //Si pulsa aumenta la variable delay_ms(300); //Para evitar rebotes lcd_putc('\f'); } if (item > (n_menus-1)) { //Si la variable supera el nmero de... item = 0; } //funciones la inicializa switch (item) { case 0: lcd_gotoxy(1,1); printf(lcd_putc, "MEDIR"); lcd_gotoxy(1,1); break; case 1: printf(lcd_putc, "CALIBRAR"); lcd_gotoxy(1,1); break; case 2: printf(lcd_putc, "INICIALIZAR"); lcd_gotoxy(1,1); break; } if (input(PIN_A1) == 1) //Si se pulsa el botn de seleccin {delay_ms(200); run_func(item);} //se llama a la funcin correspondiente } }

También podría gustarte