Autor Tema: Error en simulacion de teclado 4x3 con PIC18F2550 (lib. KBD.C de CCS)  (Leído 4668 veces)

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

Desconectado ByR

  • PIC10
  • *
  • Mensajes: 7
Buenos Dias a todos,

Tengo problemas al simular un teclado numérico 4x3 en proteus (ver 7.2 SP6) con el PIC18F2550. He tomado como base para el programa, el ejemplo que trae el compilador PICC para lcd y teclado (Ex_lcdkb.c). El código que compilo es el siguiente:

#include <18f2550.h>
#use delay (CLOCK = 20000000)
#fuses HS,NOWDT,NOPROTECT,NOLVP
#define LCD_ENABLE_PIN  PIN_C2                                   
#define LCD_RS_PIN      PIN_C1                                   
//#define LCD_RW_PIN      PIN_B6                                   
#define LCD_DATA4       PIN_C4                                   
#define LCD_DATA5       PIN_C5                                   
#define LCD_DATA6       PIN_C6                                   
#define LCD_DATA7       PIN_C7
//#use fast_io(c)
#define use_portb_kbd TRUE

#include <lcd.c>
#include <kbd.c>

void main() {
   
   char k;
   lcd_init();
   kbd_init();
   port_b_pullups(TRUE);
   lcd_putc("\fReady...\n");

   while (TRUE) {
      k=kbd_getc();
      if(k!=0)
        if(k=='*')
          lcd_putc('\f');
        else                                                   
          lcd_putc(k);
   }
}
El teclado se conecta al puertoB y el LCD al puertoC. El detalle para el teclado es: fila1->B1, fila2->B2, fila3->B3,              fila4->B4, col1->B5, col2->B6 t col3->B7; y lo del LCD está especificado al inicio del programa.
La parte del LCD funciona bien, pero no logro simular el teclado. Compila correctamente y lo he probado cambiando otros PICS, el PIC16F876A y el PIC18F452; con los que si logra simular. Mi pregunta es, ¿debo configurar algo más para este pic?
¿la libreria KBD.C no funciona para este pic? ¿Proteus tiene algún error con este pic?.

Antes de terminar, quisiera agregar algo que observo al simular. Con  los pics que si logra funcionar, el puertob se pone como si todos sus pines estuvieran en estado lógico ALTO menos el pin B0, que se pone en BAJO (creo que al momento de ejecutar kbd_init();), pero en el caso del 18F2550 se pone como inactivo el PIN B1 (ni alto, ni bajo).  Espero puedan ayudarme, no logro encontrar la solución. :( y el mal humor me esta invadiendo  :5]
Saludos,

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Error en simulacion de teclado 4x3 con PIC18F2550 (lib. KBD.C de CCS)
« Respuesta #1 en: 20 de Enero de 2010, 14:01:57 »
Hola.

Verifica que esten como I/O digitales, ya que creo que el 18F2550, tiene canales ADC en el PORTB.

Saludos
El papel lo aguanta todo

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Error en simulacion de teclado 4x3 con PIC18F2550 (lib. KBD.C de CCS)
« Respuesta #2 en: 20 de Enero de 2010, 21:17:54 »
Exacto, como dice MLO__ te debe faltar un NOPBADEN en los Fuses.

Saludos desde Cocha.
.


 

anything