Hallo Ich muss für die Schule einen Schrittmotor mit dem PIC16F84 programmieren, habe aber noch nicht so viel Erfahrung im programmieren. Mein Problem ist, dass ich ich 3 Taster habe und diese so ins Programm einbinden muss, dass wenn ich einen dieser 3 drücke ein jeweils anderes Programm abläuft. Meine Idee ist, dass ich den Taster abfrage ist er 1 oder 0 dann eine UND-Verknüpfung mit einem Merker(mit dem Wert 1) mache, also wenn der Taster gedrückt ist wird 1 ansonsten 0 gespeichert und danach einfach decfsz um weiter zu machen Aber wie frage ich die Taster nach ihrem Wert?? Danke
Hi, eine Frage, welche Programmiersprache? In ASM würde ich per "BTFSC" Befehl den entsprechenden Portpin abfragen. Danach kannst du deinen Merker setzen. MfG
ja ASM muss ich dann einfach: BTFSC Taster1,1 dann überspringt er den nächsten und das programm läuft weiter??
Anstelle eines Merkers könntest du auch eine Funktion/Prozedur aufrufen. :)
Wieso eigentlich ne UND Verknüpfung? Nach einem BTFSC Befehl gleich n Sprung ins Programm und gut ist... Und dann die Taster pollen. Knut
1 | BTFSS Taster1, 1 |
macht wahrscheinlich nicht was du möchtest. "btfss Register, Bit" prüft ob ein Bit gesetzt ist und überspringt den folgenden Befehl wenn das der Fall sein sollte. Sind deine Taster Active-High oder Active-Low? Und an welchen Ports hängen sie?
Hallo Michael, ... na da hast du dir ja was vorgenommen. Active low/high bedeutet, das der entsprechende Taster bei Betätigung auf low (Masse, 0Volt) oder high (meistens +5V, bei neueren PICs auch bei 3,3V) liegt. Das Prob: wenn du bereits beim Abfragen eines Tasters Hilfe brauchst, sieht das für dein Projekt nicht gut aus... du weißt was ich meine. Das Microchip Forum ist eine gute Quelle für Hilfe aller Art (besser als hier), jedoch sollte man ein vernünftiges Englisch können um an dieser Stelle weiter zu kommen. Die PICs sind tolle Controller aber gerade bei Anfängern können sie viel Kopfkratzen hervorrufen. Mein Tip: wenn du noch Zeit und etwas Taschengeld für dein Schulprojekt übrig hast, dann zieh die Notbremse und steig auf ein anderes Pferd. Die AVRs (google nach Arduino) sind nicht ganz so kryptisch in der Programmierung, der Support hier ist groß (viel(!) größer als für PICs) und wenn du fleißig bist kriegste das anhand von den kubikmeterweise Codebeispielen die man hier finden kann eventuell alles selber hin. Ich hoffe, ich habe dir jetzt keine Angst gemacht. Aber Microcontroller-Programmierung und Standard-PC-Programmierung unterscheiden sich nun mal: Während man PC-Programmierung mit dem Steuern eines großen Ausflugsschiffes vergleichen kann (oberstes Ziel: die Leute sollen nicht seekrank werden sondern Spaß haben) ähnelt das programmieren von 8bit-Controllern eher Wildwasser-Rafting mit vielen scharfen Steinen, engen Kurven und viel kaltem Wasser... Wünsche dir viel Glück Joachim
ja also passt schon ich hatte den rest (weitaus schwierigere sachen) schon programmiert wegen den tastern hatte ich einen falschen tipp bekommen und bin dadurch von denkfehler zu denkfehler da konnte das nichts mehr werden ich musste 2 befehle ausbessern und alles hat funktioniert trotzdem dankeschön für den ratschlag
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.