TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: villor5 en 25 de Febrero de 2011, 14:41:44

Título: ayuda con un teclado
Publicado por: villor5 en 25 de Febrero de 2011, 14:41:44
hola, buenas tardes, vereis, os explico mi dilema, tengo una placa PIC school con un programa de radiofrecuencia en el cual no tengo un teclado programado el cual me gustaria tener pero no se como hacerlo, tengo el siguiente programa y me gustaria, si alguien supiera que me ayudara a tener programado un teclado en dicho programa:

#include <16f877.h>

#use delay(clock = 4000000 )        // poner el reloj a 4MHz
#use rs232(baud=9600, xmit=PIN_C6,rcv=PIN_C7)


#include "Control_lcd.h"

// Programa principal**************************************************
void main ()
{
   int x=0;
    LCD_INI();


    LCD_GOTOXY( 1,1);
    printf(LCD_DATO,"Cronometro");
    printf(" \n\r " );
    printf(" Aquí cada segundo se agregara una nueva linea del contador." );
    printf(" \n\r " );printf(" \n\r " );
    delay_ms(5000);
    while(true)
     { 

       // Para ver en el LCD
       LCD_GOTOXY( 1,1);
       printf(LCD_DATO,"Segundos: %d",x );
 
      // Para ver en el HyperTerminal a través del esclavo
       printf(" contador: %d ",x );
       printf(" \n\r " );
    
       x=x+1;

       delay_ms(1000);
     }
}

y el teclado es asi:
// Conexiones del teclado.
/*
            RB0 RB1 RB2 RB3
             ^   ^   ^   ^
             |   |   |   |
           |---|---|---|---|
  RB4 ---> | 1 | 2 | 3 | A |
           |---|---|---|---|
  RB5 ---> | 4 | 5 | 6 | B |
           |---|---|---|---|
  RB6 ---> | 7 | 8 | 9 | C |
           |---|---|---|---|
  RB7 ---> | F | 0 | E | D |
           |---|---|---|---|
*/

// Caracteres ASCII asociados a cada tecla:
char const KEYS[4][4] = {{'1','2','3','A'},
                         {'4','5','6','B'},
                         {'7','8','9','C'},
                         {'F','0','E','D'}};
Título: Re: ayuda con un teclado
Publicado por: bmb en 25 de Febrero de 2011, 14:57:59
Hola villor5, bienvenido al foro.  para adicionar un teclado como el que mencionas a tu código simplemente adicionas una líbrería como la que sale en este (http://www.ccsinfo.com/forum/viewtopic.php?t=28022&start=14) código al comienzo, de la misma manera que lo hiciste con la del LCD.

No utilizas ningún fuse en tu código?

Saludos!
Título: Re: ayuda con un teclado
Publicado por: villor5 en 28 de Febrero de 2011, 05:40:13
lo siento pero no me va el enlace, y eso del fuse no entiendo muy bien que es
Título: Re: ayuda con un teclado
Publicado por: bmb en 28 de Febrero de 2011, 10:35:10
Hola villor5, parece que la página del foro de CCS está caida temporalmente.  De todos modos aqui en el foro puedes buscar una librería extendida para el manejo de teclados como el que necesitas y adicionarla a tu código.  Los fuses son los bits de configuración del hardware del PIC, como por ejemplo hay algunos que especifican el tipo de oscilador, otros para el watchdog etc...

Saludos!