Zitat von
KingTobi
Leider werden bei mir die Bilder nicht angezeigt.
Es werden 4 Taster, welche alle auf der GND Seite mit einer LED verbunden sind. Sobald ich das mit
Eagle nochmal hinbekomme werde ich den Schaltplan dazu hochladen.
Die LED zeigt einen erfolgreichen Tastendruck an.
Das ist Unsinn!
Benutz die Taster nur um einen Pin auf Masse zu ziehen, vorher mit nem internen Pull-Up den Eingang auf +. Und dann lieber eine Led an einen Ausgang die leuchtet wenn eine der Tasten gerückt wird oder was mir besser gefallen würde, ein Summer.
und bei einer änderung ein Array mit den gedrückten Tasten gefüttert. Sobald dieses wie gewünscht aussieht
So wie ich das verstehe wird das nicht oder nur schlecht funktionieren.
Hallo,
ja das habe ich auch jetzt gemerkt. Werde dann für die LED noch ein zusätzliches Kabel vom AVR zur Schalttafel legen.
Sobald ich die Tafel ausgeschnitten habe werde ich davon mal ein Bild machen.
Also ich glaube das mit dem Programm hast du dann wirklich falsch verstanden ^^
hab hier einen Prototyp gemacht welcher leider noch keine wirklich dynamischen passwörter erlaubt, aber den habe ich gestern abend in einer viertel Stunde schnell zusammengeklimpert, und es sind meine ersten Schritte in Bascom.
Aber der Code funktionier sogar schon:
Code:
$regfile = "m8def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 1000000
Config Portd.5 = Output
Config Pind.4 = Input
Config Pinb.0 = Input
Config Pind.7 = Input
Config Pinc.3 = Input
Taste1 Alias Pind.7
Taste2 Alias Pinb.0
Taste3 Alias Pind.4
Taste4 Alias Pinc.3
Portd.7 = 1
Portb.0 = 1
Portc.3 = 1
Portd.4 = 1
Dim Code(4) As Byte
Do
If Taste1 = 0 Then 'wenn kein Widerstand vorhandem, d.h. strom fliesst
Portd.5 = 1
Code(1) = Code(2)
Code(2) = Code(3)
Code(3) = Code(4)
Code(4) = 1
While Taste1 = 0
Wend
Elseif Taste2 = 0 Then
Portd.5 = 1
Code(1) = Code(2)
Code(2) = Code(3)
Code(3) = Code(4)
Code(4) = 2
While Taste2 = 0
Wend
Elseif Taste3 = 0 Then
Portd.5 = 1
Code(1) = Code(2)
Code(2) = Code(3)
Code(3) = Code(4)
Code(4) = 3
While Taste3 = 0
Wend
Elseif Taste4 = 0 Then
Portd.5 = 1
Code(1) = Code(2)
Code(2) = Code(3)
Code(3) = Code(4)
Code(4) = 4
While Taste4 = 0
Wend
Else
Portd.5 = 0 'kein strom auf pin
End If
If Code(1) = 1 Then
If Code(2) = 2 Then
If Code(3) = 3 Then
If Code(4) = 4 Then
Portd.5 = 1
End If
End If
End If
End If
Loop
Werde den Code aber noch wesentlich verbessern, und zwar viel kürzer und Stringgestützt machen, sowie mit dynamischer Passwortlänge.
Es grüßt,
Basteltisch
Lesezeichen