Timer Interrupt Service Routine

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo liebe Pi Community,

    am besten komm ich gleich zur Sache.

    Um zwei Step-Motoren anzusteuern, benötige ich eine Möglichkeit die Timer Funktionen des PIs zu verwenden. Die Befüllung der Register soll in diesem Sinne nicht das Problem darstellen. Jedoch frage ich mich, wie ich die ISR aufrufe, bzw. der ISR sage, welche Funktionen bei einem auftretenden Timer-Interrupt aufgerufen werden sollen?

    Das BCM2835 Datenblatt gibt hierbei wenig Aufschluss und google habe ich die ganze letzte Woche damit genervt.

    Aktueller Stand ist, dass ich die Step-Motoren mit einem eigens erzeugten Signal via Schleife ansteuer, indem ich den globalen Timer-Wert des Pis nutze. Jedoch soll eine bessere Lösung via Timer Interrupt her.


    Ich hoffe mir kann jemand helfen,

    mfG Thomas

  • Hallo Thomas,


    ...
    ... Jedoch soll eine bessere Lösung via Timer Interrupt her.
    ...


    das mit einer Timer-ISR zu lösen ist imho eher suboptimal ...
    Ich würde Dir da die pigpio empfehlen ... meiner Erfahrung nach stabil und zuverlässig für solche Aufgaben. Ausserdem benötigst Du keine zusätzliche Hardware - das wäre dann eine Alternative, wenn Du feststellst, dass Dir Soft-PWM nicht ausreicht (was ich aber nicht glaube).
    cheers,
    -ds-

  • Danke erstmal an euch beide ;=),

    mein Betreuer sagt ich soll es als Timer ISR machen, also versuch ich das mal als Timer ISR. Die Bibliotheken haben nur die GPIO-Input ISR implementiert oder seh ich das falsch?

    Liebe Grüße,
    Thomas


  • mein Betreuer sagt ich soll es als Timer ISR machen, also versuch ich das mal als Timer ISR. Die Bibliotheken haben nur die GPIO-Input ISR implementiert oder seh ich das falsch?

    Das verstehe ich net ganz, was meinst Du mit GPIO-Input?.
    Wenn ein GPIO auf Input geschaltet wird und eine Leveländerung an diesem Eingang stattfindet, wird ein Interrupt ausgelöst ... wenn vorher scharf gemacht.

    Wenns denn unbedingt ein Timer sein soll:
    Doch kein Problem mit der pigpio:
    Dann halt als Timer-ISR, das hat dann mit GPIO-Input nichts mehr zu tun.

    gruß root

    Einmal editiert, zuletzt von root (14. Oktober 2014 um 19:22)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!