potrzebuję wyświetlić na na wyświetlaczu LED kolejno cyfry podane przez pilota RC5
mam program w Bascomie który wyświetla mi zadane przeze mnie zmienne :
wszystko jest OK wyświetla się to co powinno ale jak gdziekolwiek włożę takie linijki:
zmienna D nie podmienia się tak jak powinno na 7 a na wszystkich segmentach wyświetla się 8 co jest nie tak - jak zmienić wartości zmiennych A,B,C,D za pomocą pilota RC5? Acha powyższy kod nie jest mojego autorstwa są to wycinki pobrane ze strony firmy AND-tech to ich płytek uruchomieniowych
Poprawiłem trochę tekst i rzeczywiście linia and D=7 nie ma sensu
Proszę pamiętać o używaniu znaczników code. - arnoldziq
mam program w Bascomie który wyświetla mi zadane przeze mnie zmienne :
$regfile = "m32def.dat"
'Częstotliwość kwarcu domyślnie 16MHz
$crystal = 16000000
$hwstack = 32
$swstack = 10
$framesize = 40
'Podłaczenie wyświetlacza 7 segmentowego
' Digit1 PORTB.0
' Digit2 PORTB.1
' Digit3 PORTB.2
' Digit4 PORTB.3
'Segment A PORTA.1
'Segment B PORTA.2
'Segment C PORTA.3
'Segment D PORTA.4
'Segment E PORTA.5
'Segment F PORTA.6
'Segment G PORTA.7
Config Porta = Output
Config Pinb.0 = Output
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output
'Pin odbiornika TSOP4836
Config Rc5 = Pind.2
'the interrupt routine is inserted automatic but we need to make it occur
'so enable the interrupts
Enable Interrupts
'reserve space for variables
Dim Address As Byte , Command As Byte
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 Nr_wysw As Byte
W1 Alias Portb.0
W2 Alias Portb.1
W3 Alias Portb.2
W4 Alias Portb.3
Enable Timer0
Load Timer0 , 125
Enable Interrupts
Do
A = 1
B = 2
C = 3
D = 4
Loop
End
Sub Pobr_znaku(cyfra As Byte)
Porta = 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
Kody7seg:
Data &B10000001 , &B11110011 , &B01001001 , &B01100001 , &B00110011 ,
Data &B00100101 , &B00000101 , &B11110001 , &B00000001 , &B00100001
wszystko jest OK wyświetla się to co powinno ale jak gdziekolwiek włożę takie linijki:
Do
Getrc5(address , Command)
Command = Command And &B01111111
and D =7
End If
Loop
End
zmienna D nie podmienia się tak jak powinno na 7 a na wszystkich segmentach wyświetla się 8 co jest nie tak - jak zmienić wartości zmiennych A,B,C,D za pomocą pilota RC5? Acha powyższy kod nie jest mojego autorstwa są to wycinki pobrane ze strony firmy AND-tech to ich płytek uruchomieniowych
Poprawiłem trochę tekst i rzeczywiście linia and D=7 nie ma sensu
Proszę pamiętać o używaniu znaczników code. - arnoldziq
