Hallo, Ich arbeite derzeit an einem projekt und wíll wenn ich eine tasteter am PB0 drücke das sich der pegel High hält bis ich den taster wieder betätige.Will das gerne software mäsig machen Danke im vorraus
Hallo Thomas, was möchtest Du genau - doch nicht, dass der Pegel am Schalter auf "1" bleibt - oder ? Otto
also ich betätige den taster an PB0 dann soll der Atmega am ausgang PC0 auf High schalten und erst wenn ich den taster am PB0 wieder betätige soll der pegel am PC0 wieder auf Low gehn
1. aktuellen Tasterzustand abfragen (Entprellen nicht vergessen). 2. wurde der Taster gedrückt, Zustand des PC0 ändern. 3. warten, solange der Taster gedrückt wurde 4. Zurück zu 1. Da keine Angaben zur Programmiersprache gemacht wurden, sollte das reichen...
Taster mit "pinb" abfragen und merken und abhängig vom gemerkten Ergebnis Portpin c setzen oder löschen Otto
>abhängig vom gemerkten Ergebnis Portpin c setzen oder löschen
Kann man per EXOR machen...
ich schreibe in Basic regfile = "m32def.dat" $framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 1000000 Config Portc.0 = Output 'Ein Pin wird als Ausgang konfiguriert PC0 Config Pind.0 = Input 'Ein Pin (PA0) wird als Eingang definier Porta.7 = 1 'Interner Pullup Widerstand ein Do If Pina.0 = 1 Then Was dann
Do Debounce Pina.0 , 0 , Tgl , Sub Loop Tgl: Toggle Portc.0 Return
ich will jetzt damit aber mehrere ausgäne so schalten wie muss ich das dann machen
Du toggelst den Port einfach jedes mal, wenn der Taster gedrueckt wird. Das kannst Du, indem Du den Portpin mit dem aktuellen Zustand verexklusivoderst. Ob ein Bit oder einen ganzen Port spielt dabei keine Rolle, das sind Bit-Operationen. Michael
Thomas St wrote: > ich will jetzt damit aber mehrere ausgäne so schalten wie muss ich das > dann machen Dann geh ich mal davon aus, dass der Vorschlag funktioniert hat. > hast du ein beispiel code Das ist jetzt aber nicht dein Ernst, oder? Do Debounce Pina.0 , 0 , Tgl , Sub Loop Tgl: Toggle Portc.0 Toggle Portc.1 Return Natürlich muss auch PC1 auf Ausgang geschaltet sein. Schau dir doch bitte die benutzten Befehle in der BASCOM Hilfe an.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.