Autor Tema: LCD booleano para PIC 16F877  (Leído 1274 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Tho0oR

  • PIC10
  • *
  • Mensajes: 18
LCD booleano para PIC 16F877
« 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:)
« Última modificación: 19 de Enero de 2008, 14:05:09 por Tho0oR »

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: LCD booleano para PIC 16F877
« Respuesta #1 en: 19 de Enero de 2008, 14:49:44 »
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.