Panowie mam nową zagwozdkę hmm .
Wpadła mi ręce klawiatura sterowana po I2C 7x7 , próbuje to ogarnąć najprościej jak tylko można , z marnym skutkiem .
Schemat organizacyjny klawiatury . Zmian w układzie sterowania nie mogę zmienić bo to taki produkt fabryczny
Na chwilę obecną wydumałem coś takiego .
Code: [Zaznacz cały] [Rozwiń/Zwiń]
- $regfile = "m8def.dat"
- $crystal = 8000000
- $hwstack = 32
- $swstack = 32
- $framesize = 128
- Config Lcd = 20 * 4
- Config Lcdpin = Pin , Db4 = Pinc.2 , Db5 = Pinc.3 , Db6 = Pinc.4 , Db7 = Pinc.5 , E = Pinc.1 , Rs = Pinc.0
- Dim A As Byte
- Dim B As Byte
- Dim C As Byte
- Dim Kol As Byte
- Dim Row As Byte
- Dim Temp As Byte
- Dim Temp1 As Byte
- Config Scl = Portd.6
- Config Sda = Portd.7
- A = 0
- B = 0
- C = 0
- Kol = &B01111111
- Row = &B11111110
- Cursor Off , Noblink
- Cls
- I2cinit
- Do
- I2csend &H40 , Kol 'U1
- Waitms 10
- I2csend &H42 , Row 'U2
- Temp = Kol + Row
- Temp1 = Temp
- Waitms 10
- I2creceive &H41 , B
- Waitms 10
- I2creceive &H43 , C
- Waitms 10
- Locate 3 , 2 : Lcd B ; " " ; C ; " "
- A = C + B
- If Temp1 <> A Then
- Locate 2 , 2 : Lcd Temp1 ; " "
- End If
- rotate Row , Left , 1
- rotate kol , right , 1
- Waitms 10
- Loop
- End
Jak za dawnych czasów ......Pomożecie to ogarnąć ?
Pozdrawiam Henryk .