Wie einige eventuel gelesen haben, versuche ich den Rasp per Schalter hoch und runterzufahren.
Das soll über einen Attiny 2313 geschehen.
Und das erkennen des Schaltzustandes war einfach zu lösen.
Nur in der Simulation von dem Code im Bascom Studio gibt er mir keinen Puls an Portb.1 aus.
Liegt das nun an der Simulation oder am falschem Programm? :s
Eigentlich habe ich den Pulseoutbefehl so eingegeben wie es mir unter der Hilfe von F1 angezeigt wird.
Kann es leider noch nicht an dem Controller testen, da Pollin sich mit der Bearbeitung der Bestellung Zeit lässt...
Code
$regfile = "ATtiny2313.dat" 'Sagt dem Programm welcher Microcontroller
$crystal = 4000000 ` 'der eingebauter RC-Oszillator läuft mit 4 Mhz
Config Pinb.0 = Input 'Pin12 Eingang
Config Portb.1 = Output 'Pin13 Ausgang
Portb.1 = 0 'Pin13 Low
Dim Old As Byte
dim new as byte
dim flanke as byte
Do
New = Pinb.0 'Schaltzustand einlesen
Flanke = New Xor Old 'Schaltzustande vergleichen
If Flanke = 1 Then 'wenn Anderungen vorhanden, dann:
If New = 1 Then 'sprung von 0 auf 1
Pulseout Portb , 1 , 500000 'Puls ausgeben
Else 'Änderung von 1 auf 0
Pulseout Portb , 1 , 500000 'Puls ausgeben
end if
end if
Old = New 'Angleichen der Werte
Loop
End
Alles anzeigen
Edit: Warum meine Kommentare so hin und herverschoben sind, weiß ich nicht in Bascom ist es nicht.