TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Tho0oR en 19 de Enero de 2008, 13:57:44
-
Hola queridos programadores de todopic.
Os expongo un tema un poco xungillo (por lo menos para mi) y que me ha llevao verdaderos comederos de cabeza.
El enunciado es facil, hacer un LCD en el que el texto aparazca estatico, y se mueva solo cuando pulse la interrupcion externa de forma que cuando vuelva a pulsar la interrupcion externa, se pare otra vez. La direcion da iwal, izq o derecha, y la interrupcion ext es un pulsador.
Este es el codigo que e desarrollao hasta ahora:
#include<16f877.h>
#use delay(clock=4000000)
#fuses xt
#use standard_io(a)
#include<LCD_flexible.c>
///LLAMADA FUNCION INTERRUPCION
#INT_EXT
//EXT_isr()
void IntRB0()
{
int a,b,c; /*variable para hacer la rotacion de la linea inferior*/
inicio:
b=14; //variables linea de abajo
c=1; //variable linea arriba
lcd_init();
for(a=0;a<25;a++)
{
while(!input(pin_b0));
{
disable_interrupts(GLOBAL);
}
//lcd_init();
delay_ms(200);
lcd_gotoxy(c,1);
printf(lcd_putc,"Hola");
lcd_gotoxy(b,2);
printf(lcd_putc,"mundo");
c++;
b--;
}
a=0; //pone a cero la cuenta de digitos
b=14;
c=1;
goto inicio;
}
///PROGRAMA
void main(void)
{
enable_interrupts(int_ext); //activar interrupcion externa
ext_int_edge(L_TO_H); //configuracion:interrupcion cuando señal esta en alta
enable_interrupts(GLOBAL); //todas las interrupciones desactivadas
for( ; ; ){} //bucle infinito esperando interrupcion
}
muchas gacias de antemano!
(vszener!! ayudanos x favor!!! :mrgreen:)
-
El mismo problema ya se está tratando en este otro hilo.
http://www.todopic.com.ar/foros/index.php?topic=20059.0
Cierro el tema para no duplicar espacio y soluciones a la misma cuestión.