PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tasten am Rn-Control wie abfragen



FHarry
30.12.2004, 07:48
Hallo zusammen,

bin absoluter Neueinsteiger und hab deshalb ne richtige Anfängerfrage. Habe ein RN-Control aufgebaut. Die Tastenabfrage über StartADC, GetADC usw. kapiere ich soweit und die funktioniert auch. Aber nun zu meiner Aufgabenstellung:

Ich hab einen Schrittmotor angeschlossen (bipolar ohne RN-Motor) und dieser läuft auch einwandfrei. NUR: die Tastenabfrage über GetADC dauert einfach zu lange. Ich möchte auf eine Taste drücken und den Motor laufen lassen, bis die Taste wieder losgelassen wird. Dadurch, daß die Implementierung über GetADC gemacht wird, dauert es einfach zu lange bis ich wieder in die Routine komme um den Schrittmotor einen Schritt weiter zu bringen. Ergo -> es kommt kein Seidenweicher Lauf zusammen. Das liegt definitiv nicht an der Ansteuerung des Motors selbst. Denn wenn ich den in einer Loop ohne die Tastenabfrage drehen lasse, schnurrt er wie ein "Kätzchen".

Ich muß also die Tastenabfrage irgendwie anders implementieren. Nur wie? Wahrscheinlich Interrupt-gesteuert, oder?

Danke schon mal,

Harry


PS: Ich wollte meinen Scrhittmotorcode als Beispiel uploaden, ging aber nicht. Es haben nämlich bereits einige hier nach einem Beispiel diesbezüglich gefragt. Hab das ganze dem Frank geschickt. Der stellt das hoffentlich rein. Wenn nicht, mich anmailen.

Frank
30.12.2004, 10:17
Upload hat schon geklappt. Dauert nur etwas bis ich es sehe und freigeschaltet hab.
Du findest es nun hier:
https://www.roboternetz.de/phpBB2/dload.php?action=category&cat_id=30

Um Deine Aufgabe zu erfüllen muss man mit Timer arbeiten. Eine Timerroutine muss in gewissen Abständen (zum Beispiel 10 mal pro Sekunde) aufgerufen werden. In dieser Routine wird dann ein Schritt gemacht wenn eine bestimmte Variable (nennen wir sie MotorOn) 1 enthält.

Im Hauptprogramm musst du wie üblich Taste abfragen und nur diese Variable "MotorOn" auf 0 oder 1 setzen, dann klappts.
Beschäftige dich mal ein wenig mit dem Timer-Interrupt. Schau dir auch mal das PC-Programm an https://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=169
Das generiert dir ein Demo das schon fast alles enthält was du brauchst.


Gruß Frank