Hallo Leute,
ich will mich noch kurz vorstellen, da ich neu hier im Board bin.
Nun zu meinem Problem:
Ich habe hier einen DTMF Dekoder (MT8870). Dieser gibt die DTMF Töne als BCD aus.
Da ich mir einen BCD zu Dezimaldekoder sparen möchte will ich das ganze mit dem Attiny 2313 erledigen.
Dazu kommt noch, dass die Ausgänge getoggelt werden sollen.
Ich habe das Problem, dass der Attiny in der Schaltung nicht vom 0 auf 1 Zustand schaltet. Egal welche Zahl ich dem DTMF Dekoder vorgebe.
Das Signal liegt aber bei jeder Zahl am Attiny an.
Hier der geschriebene Quellcode:
Code:
$regfile = "attiny2313.dat"
$crystal = 8000000
Config Portd.0 = Input 'für die BCD Eingänge
Config Portd.1 = Input 'für die BCD Eingänge
Config Portd.2 = Input 'für die BCD Eingänge
Config Portd.3 = Input 'für die BCD Eingänge
Config Portd.4 = Output
Config Portd.5 = Output
Config Portb.7 = Output
Config Portb.6 = Output
Config Portb.5 = Output
Config Portb.4 = Output
Config Portb.3 = Output
Config Portb.2 = Output
Config Portb.1 = Output
Config Portb.0 = Output
Config Portd.6 = Output
Const 1 = &B0001 'BCD Code für 1, usw.
Const 2 = &B0010
Const 3 = &B0011
Const 4 = &B0100
Const 5 = &B0101
Const 6 = &B0110
Const 7 = &B0111
Const 8 = &B1000
Const 9 = &B1001
Const S = &B1011 'BCD Code für Stern
Const R = &B1100 'BCD Code für Raute
Portd.4 = 0 'Ausgänge auf GND
Portd.5 = 0
Portb.7 = 0
Portb.6 = 0
Portb.5 = 0
Portb.4 = 0
Portb.3 = 0
Portb.2 = 0
Portb.1 = 0
Portb.0 = 0
Portd.6 = 0
S_ausgang Alias Portd.4 'Ausgang für Stern
R_ausgang Alias Portd.5 'Ausgang für Raute
1_ausgang Alias Portb.7 'Ausgang für 1, usw.
2_ausgang Alias Portb.6
3_ausgang Alias Portb.5
4_ausgang Alias Portb.4
5_ausgang Alias Portb.3
6_ausgang Alias Portb.2
7_ausgang Alias Portb.1
8_ausgang Alias Portb.0
9_ausgang Alias Portd.6
Do
If Portd = 1 Then
Toggle 1_ausgang
Waitms 200
End If
If Portd = 2 Then
Toggle 2_ausgang
Waitms 200
End If
If Portd = 3 Then
Toggle 3_ausgang
Waitms 200
End If
If Portd = 4 Then
Toggle 4_ausgang
Waitms 200
End If
If Portd = 5 Then
Toggle 5_ausgang
Waitms 200
End If
If Portd = 6 Then
Toggle 6_ausgang
Waitms 200
End If
If Portd = 7 Then
Toggle 7_ausgang
Waitms 200
End If
If Portd = 8 Then
Toggle 8_ausgang
Waitms 200
End If
If Portd = 9 Then
Toggle 9_ausgang
Waitms 200
End If
If Portd = S Then
Toggle S_ausgang
Waitms 200
End If
If Portd = R Then
Toggle R_ausgang
Waitms 200
End If
Loop
End
Ich hoffe, dass mir jemand helfen kann.
Lesezeichen