Następny dzień i następne problemy do rozwiązania.
Męczyłem się bardzo z tą klawiaturą, ale dzisiaj udało mi się ją częściowo zmuscić do współpracy.
Opisze mój program:
Poprzez funkcje getkbd, pobieramy informacje z jakiego przycisku skorzystaliśmy dzięki temu możemy wyswietlić tę liczbe na wyświetlaczu LED’owym czy LCD. I właśnie to zrobiłem.
Miałem problem z wyświetlaczem LED co widać na filmiku, jeden z kabelków nie działał tak jak powinien przez co nie miałem jednej kratki po prawej stronie. Postaram się to poprawić, póki co chciałem pochwalić się drobnym osiągnieciem.
Film z akcji:
Dość chaotycznie to wygląda przy aktualnym połączeniu kabelków, no ale co zrobić
Kod źródłowy programu:
$regfile "m16def.dat" $crystal = 16000000 ' konfiguracja portów wyswietlacza Config Lcdpin = Pin , Rs = Porta.0 , E = Porta.1 , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 Config Lcdbus = 4 Config Lcd = 16 * 2 Dim Klawisz As Byte Dim Kod(17) As Byte Kod(1) = &B11111001 Kod(2) = &B10100100 Kod(3) = &B10110000 Kod(4) = &B10001000 Kod(5) = &B10011001 Kod(6) = &B10010010 Kod(7) = &B10000010 Kod(8) = &B10000011 Kod(9) = &B11111000 Kod(10) = &B10000000 Kod(11) = &B10010000 Kod(12) = &B11000110 Kod(13) = &B10001111 Kod(14) = &B11000000 Kod(15) = &B10001001 Kod(16) = &B10100001 Kod(17) = &B01111111 'reprezentacja zera Config Portb = Output Config Portc = Output Portc = 1 Config Kbd = Portd Do Klawisz = Getkbd() ' inicjacja klawisza, getkbd Klawisz = Klawisz + 1 Portb = Kod(klawisz) Porta = Kod(klawisz) Cls Cursor Off ' wylaczenie kursora Lcd "Wybrana liczba:" Home Lower Lcd Klawisz ' w linijce nizej pokaze nam sie numer przycisku Waitms 250 Loop |