Witam
Mam problem z przypisaniem danej wartości do danego wyświetlacza.
Konkretnie Wyświetlacz 1 wartość 1, wyświetlacz 2 wart 2
Sam układ znaków podłączenie wyświetlacza itp jest ok.
Jedyne co mi się udało to albo wyświetla mi na danym wyświetlaczu 0 a na reszcie 888 albo zgaszę jedną cyfrę a w reszcie same 0.
Jak poprawnie wpisać wartość do konkretnego wyświetlacza? Jestem bardzo początkujący i po 4 godzinach pass
Naskrobałem coś takiego:
Mam problem z przypisaniem danej wartości do danego wyświetlacza.
Konkretnie Wyświetlacz 1 wartość 1, wyświetlacz 2 wart 2
Sam układ znaków podłączenie wyświetlacza itp jest ok.
Jedyne co mi się udało to albo wyświetla mi na danym wyświetlaczu 0 a na reszcie 888 albo zgaszę jedną cyfrę a w reszcie same 0.
Jak poprawnie wpisać wartość do konkretnego wyświetlacza? Jestem bardzo początkujący i po 4 godzinach pass
Naskrobałem coś takiego:
$regfile = "m8def.dat"
$crystal = 8000000
Config Portd = Output
Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output
Config Timer0 = Timer , Prescale = 256
Declare Sub Pobr_znaku(cyfra As Byte)
On Timer0 Mult_wysw
Dim A As Byte
Dim B As Byte
Dim C As Byte
Dim D As Byte
'Dim X As Byte
'Dim Wart As Byte
Dim Nr_wysw As Byte
W1 Alias Portb.0
W2 Alias Portb.1
W3 Alias Portb.2
W4 Alias Portb.3
Wait 2
Set W1
Set W2
Set W3
Set W4
Wait 2
Enable Interrupts
Enable Timer0
Load Timer0 , 125
Do
Loop
End 'Koniec pogramu
'------------------------Obłsuga LED----------------------------------------
Sub Pobr_znaku(cyfra As Byte)
Portd = Lookup(cyfra , Kody7seg)
End Sub
Mult_wysw:
Load Timer0 , 150
Set W1
Set W2
Set W3
Set W4
Select Case Nr_wysw
Case 0:
Call Pobr_znaku(a)
Reset W1
Case 1:
Call Pobr_znaku(b)
Reset W2
Case 2:
Call Pobr_znaku(c)
Reset W3
Case 3:
Call Pobr_znaku(d)
Reset W4
End Select
Incr Nr_wysw
If Nr_wysw = 4 Then
Nr_wysw = 0
End If
Return
'--------------------------Kody Znaków-----------------------------------
Kody7seg:
Data &B01000000 , &B01111001 , &B00100100 , &B00110000 , &B00101001,
Data &B00010010 , &B00000010 , &B01111000 , &B00000000 , &B00010000
' 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 '