Hallo, ich habe mir die Frage gestelt ob es möglich ist den Raspberry PI (ich denke speziell an den RPI 2 Modell B) wie einen Mikrocontroller auf unterster Ebene zu programmieren? Da ja der Mikrocontroller genauso wie der PI ein "System on a Chip" oder "Single Board Computer" ist, sollte es doch wie für die Mikrocontroller genauso ein Datenblatt oder eine DOku für den PI geben oder täusche ich mich? Habe bisher nichts finden können. Ich hätte sozusagen gerne eine Art "Papier" in dem ich nachschlagen kann wie man den PI programiert (darf auch gerne in Assebler gehalten sein). Grüße Volker
Du kennst wiring.pi? Man könnte in die Sourcen von wiring.pi schauen, um zu sehen, wie der BCM2835 programmiert wird. Hier schon geschaut? --> https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2835/
:
Bearbeitet durch User
Pete K. schrieb: > Du kennst wiring.pi? > > Man könnte in die Sourcen von wiring.pi schauen, um zu sehen, wie der > BCM2835 programmiert wird. > > Hier schon geschaut? --> > https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2835/ Hallo Pete, danke das scheinen mir sehr gute Quellen zu sein.
Solange du immer noch in einem der dafür üblichen Betriebssystem bleiben willst ist das in gewissen Grenzen möglich. Grenzen ergeben sich für Programme auf Anwendungsebene in Form nicht präzise definierbarem Zeitverhalten und ziemlich anderem Umgang mit Interrupts. Es kann auch sein, dass man sich für die Aufgabe einen Device-Driver für das Betriebssystem schreiben muss. Wenn du hingegen den Pi komplett ohne Betriebssytem programmieren willst, dann wird es etwas komplizierter: Beitrag "Besser als Raspberry Pi Zero"
:
Bearbeitet durch User
Hallo, suche mal nach "Bare Metal Programming" Da gibt es eine ganze Menge Infos und Beispiele. Habe die Links jetzt gerade nicht zur Hand. Habe selbst mal daran gedacht, den PI so zu nutzen, aber die Fülle der Doku sowohl von ARM als auch vom BCM hat mich doch eher verschreckt...Vielleicht bist du da ja optimistischer. Ich wünsche dir jedenfalls viel Erfolg! Gruß Rainer
Dies ist zwar nur für den alten Pi, dafür aber sehr verständlich und lehrreich: http://www.valvers.com/open-software/raspberry-pi/step01-bare-metal-programming-in-cpt1/ Es gibt bisher fünf Teile des Artikels nach deren Durcharbeiten der Ducrchblick schon klarer ist. Danach kannst du dich auf den neuen stürzen...
oder das Forum https://www.raspberrypi.org/forums/viewforum.php?f=72&sid=1a259a10e688724397dbfc08d4ef73e2
Interessant ist dieser Beitrag: http://raspberrypi.stackexchange.com/questions/7122/level-of-hackability-of-raspberry-pi Besonders die Thematik zu dem VCOS-Blob ist hervorzuheben. Du wirst also niemals die ganze Kontrolle, wie z.B. bei einem AVR, haben koennen, da man offenbar immer diesen Binari-Blob benoetigt.
Kaj schrieb: > Besonders die Thematik zu dem VCOS-Blob ist hervorzuheben. Ja, das ist schon interessant. Das Ding ist eigentlich ein Videosystem, das es sich leistet, zusätzlich einen ARM-Prozessor mit drauf zu haben. Wobei ein Bare Metal Anwender den ARM dann wohl auch ignorieren und direkt auf dem Videosystem programmieren kann. Dann hat er die volle Kontrolle. Da bzw. in den Links steht dann noch etwas mehr zu dem Videocore: https://en.wikipedia.org/wiki/VideoCore#Linux_support
:
Bearbeitet durch User
Da hats hier auf mikrocontroller.net einen Artikel: http://www.mikrocontroller.net/articles/Hardwarenahe_Programmierung_am_Raspberry_Pi Schau mal die linkliste durch, vielleicht kannst du ja den Artikel weiterführen.
>Du wirst also niemals die ganze Kontrolle https://github.com/hermanhermitage/videocoreiv-qpu so ganz stimmt die Aussage nicht mehr.
Gegenfrage: Wie gut kennst du dich mit der Programmierung "normaler" Mikroprozessoren oder ARM Kernen aus? Ansonsten brauchst du nichts weiter als das BCM2835-ARM-Peripherals.pdf und einmal UBoot um die Images deines Programms auf den RasPI zu kopieren (am besten per LAN). Naja und nen GCC.
Ich hab hier nochmal ein interessantes GitHub-Repo zu dem Thema gefunden: https://github.com/dwelch67/raspberrypi Vielleicht hilft es ja noch mal wem :)
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.