Ho un dubbio nel scrivere il codice per il controllo di un tastierino alfanumerico 4x4 a matrice.
Devo visualizzare attraverso un software in C, utilizzando la suite MikroC di MikroElektronica, su un display i tasti che premo nel tastierino (0 1 2 3 4 5 6 7 8 9 A B C D * #).
Il codice che ho scritto è il seguente:
codice:
void main() {
unsigned int kp;
portb= 0;
trisb= 00001111;
portc= 0;
kp = 0;
Keypad_Init(&PORTB);
Lcd_Init(&PORTC); // Initialize LCD on PORTC
Lcd_Cmd(LCD_CLEAR); // Clear display
Lcd_Cmd(LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1, 1, "Premuto:" );
Lcd_Out(3, 1, "A=10 B=20 C=30 D=40" );
ciclo:
//--- preparazione valori out
if(portb.F3=1, portb.F4=1) kp=1; //tasto 1
if(portb.F3=1, portb.F6=1) kp=2; //tasto 2
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//stringa per tasto seguente;
//--- preparazione valori out
goto ciclo;
kp = Keypad_Read(); //questa stringa forse non serve
Lcd_Chr(1, 10, kp); //stampa su LCD
}//fine
Questo codice però non mi funziona.
On-line non riesco a trovare niente.
Tempo addietro avevo fatto una cosa simile e andava, ora non riesco a capire...