- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 15

Thema: Projekt: FreeRTos auf RP6

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von RolfD
    Registriert seit
    07.02.2011
    Beiträge
    414
    Hallöle
    ich hab für mich mal sowas wie ne "Entwicklungsumgebung" für FreeRTos auf dem RP6 aufgesetzt.
    In dem Zip befindet sich die RP6Lib für Base und M32 sowie FreeRTos 7.1.1 Port für Mega323 (und Mega32) und 3 Demo Projekte.
    Das ganze liegt bei mir unter d:\RP6\freeRTOSRP6\ , falls ihr mal irgendwie mit Pfaden Schwierigkeiten habt.
    Example_02_UART_01 aus den RP6-Demos kompiliert als "normals" Programm ohne RTOS.
    Example_RTOS_pur ist das Teil was ich oben gepostet habe.
    Example_05_Move_01 ist ebenfalls aus den RP6-Demos, dies möchte ich als nächstes unter RTOS umsetzen.
    Es bindet RTOS noch nicht ein.

    Um das jedoch zu vereinfachen, habe ich quasi eine leere "Schatten-Lib" aufgebaut, die von den RP6 Libs includiert wird.
    Mein Gedanke dazu ist, die einzelenen Funktionen in der RP6 Lib Stück für Stück aus der alten Lib zu entfernen
    und in die neuen Libs zu konvertieren. Also z.b. RP6RobotBaseLib.c -> FreeRTOSRP6RobotBaseLib.c
    Vieles ließe sich übernehmen, vieles muss aber auch einfach neu gemacht werden.
    UART und TWI Treiber z.B. mit Semaphoren und Queues versehen, die ganze Timerstruktur anpassen usw.
    Später nach der Migration müsste man dann die leeren RP6 Libs abtrennen können.
    Ein "Mischbetrieb" müsste dann zwischendrin auch möglich sein so lange sich ISRs z.B. nicht in die Quere kommen.

    Bei RTOS gibts zu bedenken, das dies normal auf Timer 1 sitzt - dort ist aber bei dem RP6 Base normal das PWM für die Motoren.
    Folglich habe ich das RTOS so umgebaut das man es in der FreeRTOSConfig.h einstellen kann. Aktuell steht es auf TIMER2 was
    aber die ACS blockiert. Zumindest ist aber damit Bewegung möglich, daher auch mein nächster Versuch Example_05_Move_01
    So...es gäbe bei der kompletten Umsetzung der RP6lib massig code umzuschreiben, was ich wohl nicht allein schaffen werde.
    Zum anfangen und rumprobieren geht das aber schon mal. Ich hab gesehen, das doch recht viele Leute den ersten Beitrag gelesen
    haben, aber keiner mal das Hex file ausprobiert hat. Wer mit der M32 rumprobieren möchte, ist recht ungebunden was Timer usw.
    angeht, so lange er auf die RP6Control.c verzichten kann. Aber auch die müsste man dann umbauen...

    Vielleicht hat ja jemand Lust auch daran zu arbeiten... daher stell ich es mal zur Verfügung

    Zur Info, es gibt auf Sourceforge noch ein recht interessantes Projekt. http://sourceforge.net/projects/avrfreertos/
    Dort geht es leider um größere Prozessoren, aber die Libraries dürften kompatibel sein.
    Zumindest gibts dann da schon lib_spi, lib_i2c, lib_serial, lib_servo usw. usw... was auch als Modell für Treiber auf dem RP6
    dienen kann.

    Das RTOS wird im Prinzip über den Timer sowie über vTaskStartScheduler() eingebunden (siehe Beispiel Example_RTOS_pur)
    Ich habe dort die Hardwareinit so ein bischen nachgebaut und entsprechend dann io Funktionen angepasst (partest.c)
    Die blinden ISRs am Ende von main dienen nur dazu, kein "false Interrupt" zu bekommen da diese ggf. den Prozessor resetten.
    Längerfristig müsste sowas natürlich durch echte ISRs behandelt werden.

    Ja.. mal sehen ob jemand spass dran hat, Feedback ist willkommen.
    Gruß Rolf

    Hm ok... dann gibts die eben nich im Anhang....

    • freeRTOSRP6.zip - Die Datei, die du anhängen möchtest, ist zu groß. Die maximale Dateigröße für diesen Dateityp beträgt 488,3 KB. Deine Datei ist 966,1 KB groß.


    Ihr könnt mich ja hier unter Angabe eurer Mailaddy bei Interesse anschreiben .. ich schick sie dann per email
    Geändert von RolfD (15.08.2012 um 01:40 Uhr)
    Sind Sie auch ambivalent?

Ähnliche Themen

  1. FreeRTos auf RP6?
    Von RolfD im Forum Robby RP6
    Antworten: 11
    Letzter Beitrag: 29.07.2012, 22:58
  2. Xmega Eval board Projekt (Foren Projekt)
    Von Rasieel im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 65
    Letzter Beitrag: 26.01.2010, 12:49
  3. Das Projekt II
    Von PhilippW im Forum Staubsaugerroboter / Reinigungs- und Rasenmähroboter
    Antworten: 93
    Letzter Beitrag: 26.07.2007, 11:50
  4. freeRTOS.org
    Von Superhirn im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 24.11.2006, 19:07
  5. Projekt
    Von Terfagter im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 25.11.2004, 20:47

Berechtigungen

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

LiFePO4 Speicher Test