Forum: Mikrocontroller und Digitale Elektronik Raspberry Pi + Elektronik


von Peter (Gast)


Lesenswert?

Hallo,

ich will in den Rasperry Pi einsteigen und brauche etwas Unterstützung 
für den Anfang.

Was ich machen will:
- Möglichst mit den original Tools arbeiten
- Hauptsächlich die GPIOs nutzen (Sensoren abfragen ADC)
- Realtime OS nutzen (oder ist das zwangsläufig so [Linux])
- Einfache Programmierung, einfache Debug-Möglichkeit

Im Grunde will ich das Teil ansteuern wie einen ATmega8 - nur mit mehr 
Power.

Was brauche ich dazu? Welches kostenlose Tutorial ist zu empfehlen? 
Welche Toolchain?

Gruß Peter

von Philippe B. (philippe27)


Lesenswert?

Hallo Peter

Ich hab mit Raspbmc begonnen (für Multimedia) und danach mit Raspbian 
(auf Debian basierend).

Raspbian ist super beschrieben, hat viele Beispiele und auch viele 
Helfer im Forum.

http://www.raspbian.org/

I/O Beispiele sowie I2C sind gut dokumentiert.

Gruss Philippe

von icke (Gast)


Lesenswert?

Ich glaube ein Raspberry ist nicht das richtige System für Dich!

1. Der hat keinen ADC. Du musst also moch einen externen ADC 
anschließen.
2. Was verstehst du unter "Echtzeit"? Also welche Anforderungen hast du?
3. Wieviel "Power" brauchst du denn? Wie wäre es mit einem STM32 mit 
mehreren MHz?

von Conny G. (conny_g)


Lesenswert?

Ein Raspberry ist etwas ganz anderes als ein Atmega.
Atmega ist etwas recht simples, was man mit Bare Metal Programmierung 
auf niedrigster Ebene programmiert. Dafür bekommt man sehr gute 
Performance bei den Tasks die man dort erledigt, exaktes Timing mit 
voller Kontrolle, Millisekunden Bootzeit und Stromverbrauch von ein paar 
Milliampere.
Ein Raspberry Pi ist ein vollwertiger Rechner mit aller Peripherie 
(Ethernet, USB, HDMI, Sound) und man arbeitet auf einem vollständigen 
Betriebssystem, das einen von der Hardware wegabstrahiert. Mit Timer, 
Interrupt etc hat man hier nichts zu tun, dafür programmiert man in 
abstrakten Hoch- oder Scriptsprachen.
Dafür hat man das Timing überhaupt nicht unter Kontrolle, man weiß nie 
wann man dran ist und was das OS sonst so im Hintergrund macht.
Mehr als ein paar Millisekunden genau wird man hier nie werden, während 
man beim Atmega auf ns genau arbeiten kann.

Man setzt beide Platformen für ganz andere Aufgaben ein, müsstest also 
erstmal sagen bzw wissen, was Du machen möchtest.

von Peter (Gast)


Lesenswert?

Philippe B. schrieb:
> Raspbian ist super beschrieben, hat viele Beispiele und auch viele
> Helfer im Forum.

Danke! Das schau ich mir mal an.

icke schrieb:
> Also welche Anforderungen hast du?

Ich will Werte per ADC auslesen und dann darauf basierend eine 
Neuronales Netz implementiern. Dabei werden einige e-Funktionen 
berechnet.
Das Ganze soll im 100 ms Takt ablaufen.

icke schrieb:
> Wie wäre es mit einem STM32 mit
> mehreren MHz?

Genau das will ich nicht. Ich hasse Eclipse und habe kein Geld um mir 
den Keil-Compiler zu kaufen.

Conny G. schrieb:
> Atmega ist etwas recht simples, was man mit Bare Metal Programmierung
> auf niedrigster Ebene programmiert. Dafür bekommt man sehr gute
> Performance bei den Tasks die man dort erledigt, exaktes Timing mit
> voller Kontrolle, Millisekunden Bootzeit und Stromverbrauch von ein paar
> Milliampere.

Aber e-Funktionen berechnen ist dann doch zu viel.

Gruß Peter

von bgf (Gast)


Lesenswert?

Gibt auch RTEMS und FreeRTOS für den RasPi.

von Conny G. (conny_g)


Lesenswert?

Zum Thema Raspberry Pi und neuronales Netz:
http://blog.davidsingleton.org/nnrccar/

von PittyJ (Gast)


Lesenswert?

Es gibt das Gertboard für den Raspi, da sind dann auch AD-Wandler drauf.

Alternative kann man über USB auch einen Arduino anschliessen. Der kann 
dann die AD-Werte lesen (Echtzeit, genaues Raster), und im Raspi wird 
dann berechnet (ohne Echtzeit-Anspruch).
Die SW ist in jedem Fall kostenlos.

von W.S. (Gast)


Lesenswert?

Conny G. schrieb:
> Ein Raspberry Pi ist ein vollwertiger Rechner...

O je.


Ich hab selber so ein Teil und weiß, daß es eben kein vollwertiger 
Rechner ist. Es ist vielmehr eine Art Mini-PC-Karrikarur, um es mal 
schnöde zu sagen. Dieses Teil könnte besser sein, jaja. Ebenso könnte 
das Raspian-Betriebssystem deutlich besser sein, ist es aber nicht.

Peter schrieb:
> Im Grunde will ich das Teil ansteuern wie einen ATmega8 - nur mit mehr
> Power.

Vergiß das lieber. Wenn du mit AVR's sonst umgehst, dann bleib dabei 
oder steige auf nen Cortex um, aber verschleiße dich nicht damit, dieses 
Raspberry für richtige elektronische Zwecke gebrauchen zu wollen. Eine 
Leiterplatte mit nem Arm mit LCD und nem SDRAM dürfte für dich 
wesentlich nützlicher sein.

W.S.

von Jürgen (Gast)


Lesenswert?

Hallo Peter,

Falls auf deinem Standardsystem Windows und auf dem Raspberry Raspbian 
(Debian) läuft, kann ich dir folgende "Entwicklungsumgebung" empfehlen:

Installiere Samba auf deinem Raspberry und konfiguriere einen Ordner mit 
deinen Quellcodedateien auf dem du von Windows dirket zugreifen kannst.
Installiere putty auf deinem Windowssystem und richte (über 
Ethernet/WLAN) eine sichere Verbindung zum Raspberry ein, somit kannst 
du von Windows auf den Terminal zugreifen.
So kannst du mit deinem gewohnten Standardeditor den Quellcode 
bearbeiten und diesen dann per putty am raspberry kompilieren und 
ausführen.

-> tolles debuggen mit Editor (Haltepunkten...) nicht möglich,
jedoch sehr konfortabel wenn man viel unterwegs ist und lieber auf 
seinem Standadsystem entwickelt, Internet recherchiert...
keine Ein-und Ausgabegeräte am Raspberry nötig.
Funktioniert sicher ähnlich auf Linux oder Mac System.

Lass dich nicht abschrecken! Es ist durchaus ein vollwertiger Rechner 
und in Zeiten von embedded systems und Ethernet Verbindungen sicher 
keine verschwendete Zeit.
Bei C/C++ bleiben

lg Jürgen

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
Noch kein Account? Hier anmelden.