- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 20

Thema: 250µs-Timer für Arduino Due

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    weiß evtl jemand, wie es auf dem Beaglebone Black gemacht wird?

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Hallo,

    völlig unleserliche und unverständliche AVR-Codes kannst du für den Due vergessen. Da brauchst du unleserliche und unverständliche SAM3 Codes.

    Die ARM Cortex liefern zwar das Grundgerüst, aber Timer sind bei ARM Controllern dann wieder herstellerspezifisch ausgeführt. Da hilft nur ein Blick in dieses schöne 1800 seitige Datenblatt vom Prozessor ...

    Das ist ein Grund, warum mein Due meist unbenutzt rumliegt. Einfache Timergeschichten gehen mit mbed-fähigen ARM Controllern viel einfacher.
    http://developer.mbed.org/handbook/Ticker
    http://developer.mbed.org/handbook/RTOS#rtos-timer
    Wenn das nicht reicht, wird es aber auch wieder herstellerspezifisch ...

    Der Beaglebone läuft ja normalerweise unter Linux, da werden die Timer des ARM vom Betriebssystem verwendet. Es gibt allerdings auch Timereingänge z.B. zur Frequenzmessung. Für zeitkritische Hardware Sachen hat der Beaglebone die PRUs, das sind zwei eigene Kerne (kein ARM, kein Linux) auf dem Chip.

    Quadraturencoder lesen ist bei solchen Prozessoren wie dem TI Sitara aber auch als Hardware verfügbar:
    http://www.adafruit.com/blog/2014/07...eagleboardorg/

  3. #3
    HaWe
    Gast
    haha, "Da brauchst du unleserliche und unverständliche SAM3 Codes."
    und der ist auch gut: "dieses schöne 1800 seitige Datenblatt vom Prozessor ..."

    na wunderbar :-/

    rtos sieht zwar auf den ersten Blick gar nicht sooo schwierig aus -
    (edit - ok - auf den zweiten allerdings schon... )
    ich hatte mir aber auch schon überlegt, die Scheduler-Lib zu benutzen, wenn das nicht geht.

    z.B per
    void loop1() { // neue Endlosschleife //
    // Encoderstellungen auslesen //
    // dann irgendwie berechnen //
    // dann ein Yield() fürs koop. Multitasking //
    // dann vllt ein paar µs warten //
    }

    Hast du Erfahrung mit der Scheduler-Lib?

    Zeitscheibenverhalten (Echtzeit ist es sicher nicht) ist dann aber nur die eine Sache,
    aber die andere ist dann Encoder auslesen und berechnen - das muss dann ja auch wieder von Grund auf neu programmiert werden

    Fangen wir beim 1. Problem mal an:
    Was hältst du / haltet ihr von der Scheduler-Lib ?

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Na dann antworte ich mal für mich.

    Der Due ist ganz nützlich, wenn ich mal einen Controller mit vielen IOs und vielen UARTs brauche. Ansonsten halte ich vom Due und der zugehörigen Arduino Software nicht viel. Der Due ist nur eine Durchgangsstation, die echten Fans ignorieren ihn. Wer sich darauf einlässt, erkennt schnell, dass es bessere Alternativen gibt.

    Arduino ist primär 8-Bit. Ob der Arduino Zero daran etwas ändern wird, bleibt abzuwarten.

  5. #5
    HaWe
    Gast
    ja, ich brauchte ihn, weil ich
    - mindestens annähernd so viele I/Os brauche wie beim Mega für meine 6-8 Encodermotore mit pwm (5 digit. pins pro Motor)
    - multitaskingfähig
    - 2 unabhängige Hardware-i2c-Ports, beide als Slave benutzbar
    - mehr Speicher für anspruchsvollere Programme (mindestens ~100k RAM, am liebsten noch mehr)
    - und mehr Rechenpower, mindestens 10x so schnell wie die AVRs (Mega), was der Due ja kann.
    - eine einfache IDE wie Sketch war auch Vorraussetzung, Eclipse oder VS sind für mich der Horror.

    nu hab ich ihn als Hardware - und hoffte eigentlich, die Arduino-Entwickler haben auch an den Soft-Teil gedacht, um ihn auch nutzen zu können...

    aber zurück zum 1. Fragenkomplex -

    kennst du die Scheduler-Lib, und falls ja:
    - was hälst du davon
    - und denkst du, man kann extra-loops für Encoder Reading verwenden ?

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    04.09.2011
    Ort
    Hessen
    Beiträge
    707
    Nachtrag:

    Die mbed-Beispiele für Encoder verwenden alle Interrupts:
    http://developer.mbed.org/cookbook/QEI
    http://developer.mbed.org/teams/OpenMoCo/code/QEIx4/

    Das sollte man mit dem Due und Standard-Arduino Code eigentlich nachbauen können.
    The Arduino Due board has powerful interrupt capabilities that allows you to attach an interrupt function on all available pins. You can directly specify the pin number in attachInterrupt().
    - - - Aktualisiert - - -

    Zitat Zitat von HaWe Beitrag anzeigen
    kennst du die Scheduler-Lib, und falls ja:
    Nur mal kurz angesehen, nie in einem Projekt benutzt. Ich verwende mbed-RTOS.

    Für Encoder würde ich eher zu Interrupts tendieren. S.o.

  7. #7
    HaWe
    Gast
    zu den Links:
    http://developer.mbed.org/cookbook/QEI
    http://developer.mbed.org/teams/OpenMoCo/code/QEIx4/

    ...was man da jetzt für die Encoder als libs (Ordner) in den Arduino-Sketch-Ordner kopieren muss, und wie das dann im Sketch-Programm später aussieht, erkenne ich da ehrlich gesagt nicht so recht...

    mbed-RTOS ist mir zu schwierig, denke ich.

Ähnliche Themen

  1. G-Code Interpreter Arduino Due, CNC-Fräse
    Von stevie3354 im Forum PC-, Pocket PC, Tablet PC, Smartphone oder Notebook
    Antworten: 9
    Letzter Beitrag: 26.12.2014, 15:36
  2. [ERLEDIGT] I2C Problem mit dem Arduino DUE
    Von jok3r im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 2
    Letzter Beitrag: 22.03.2014, 12:21
  3. Arduino Due + Treiber + Schrittmotor PROBLEM
    Von stevie3354 im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 30.01.2014, 23:11
  4. Arduino Due HSMCI - SD/SDIO/MMC
    Von Superhirn im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 0
    Letzter Beitrag: 25.01.2013, 10:57
  5. Arduino Due erschienen
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 24.10.2012, 22:20

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests