Einsteiger träumt :D

Gast #3763298
Lesenswert?

Guten Abend,
erstmal hoffe ich das ich hier richtig bin, wenn nicht bitte 
verschieben. Danke schon mal im voraus :)

Also ich bin neu in (Atmel?) AVR und würde mich mit dem Thema gerne 
auseinandersetzte :). Ich kann C und C++ und ein bissel ASM und denke 
das ich es mit dem programmieren schaffen kann :D

Was ich machen will:
Ich will mir mehrere AVRs in parallel betrieben um mehr Leistung 
zukriegen, weil ein AVR hat ja durchschnittlich nur 16 MHz (oder?). 
Außerdem möchte ich non was einfügen wie Grafik aber kein HD oder 4K :O, 
sondern ehr Textmodus... Aber natürlich eine Möglichkeit um Daten an den 
PC zusenden (LAN, USB, FireWire?) bzw. mit ihm in Kontakt zubleiben, 
also das sozusagen  24 Stunden Daten übertragen werden können und nicht 
irgendwann die Verbindung abbricht. Und ein micro-SD, mini-SD, SDHX, SD 
Slot währe 1A.

Wie löst man so was am schlausten?
Welche Hardware soll ich nehmen?
C, C++ oder ASM?
usw...

LG
Gast #3763308
Lesenswert?

> Ich kann C und C++ und ein bissel ASM und denke
> das ich es mit dem programmieren schaffen kann

Ich nehme an, Du hast C und C++ auf dem PC praktiziert. Darf ich fragen 
in welchem Umfang? Was war Dein letztes Projekt?

Vorausgesetzt, es war nichts allzu Triviales, hast Du eine der 
Voraussetzungen erfüllt.

uC Programmierung ist ein großer Teil Elektronik, ein großer Teil 
Bitfummelei und ein großer Teil Peripherie-Setup.

Ich rate Dir, die Tutorials hier: 
http://www.mikrocontroller.net/articles/AVR-Tutorial durchzuarbeiten. 
Ein Teil Deiner Träume ist damit abgedeckt. Und zu dem Rest schaffst Du 
damit die Grundlagen.
Gast #3763320
Lesenswert?

Karl Heinz schrieb:
> Einen Rasberry Pi.
> Bei deien VOrstellungen bist du schon weit über dem, was mit einem AVR
> noch sinnvoll machbar ist.

OK oder vielleicht noch was stärkeres auf ARM Basis?

Bitflüsterer schrieb:
> Ich nehme an, Du hast C und C++ auf dem PC praktiziert. Darf ich fragen
> in welchem Umfang? Was war Dein letztes Projekt?

Genau auf dem PC.
Mein letztes Projekt waht Monopoly mit QT und ein kleines Betriebssystem
#3763334
Lesenswert?

@ Tim (Gast)

>Ich will mir mehrere AVRs in parallel betrieben um mehr Leistung
>zukriegen, weil ein AVR hat ja durchschnittlich nur 16 MHz (oder?).

Unsinn. Wenn du mehr Leistung braucht, nimm einen leistungsfähigeren 
Prozessor? ARM ist im Moment hipp, STM32 einer der hart beworbenen 
Vertreter dieser Relegion ;-)

>Außerdem möchte ich non was einfügen wie Grafik aber kein HD oder 4K :O,
>sondern ehr Textmodus...

Das kann jeder 0815 uC.

http://www.mikrocontroller.net/articles/HD44780


> Aber natürlich eine Möglichkeit um Daten an den
>PC zusenden (LAN, USB, FireWire?) bzw. mit ihm in Kontakt zubleiben,

Dazu reich im einfachsten Fall ein virtueller UART per USB.

>also das sozusagen  24 Stunden Daten übertragen werden können und nicht
>irgendwann die Verbindung abbricht. Und ein micro-SD, mini-SD, SDHX, SD
>Slot währe 1A.

Kann auch ein kleiner uC, wenn gleich der nicht mehrere MB/s dort 
draufschreiben kann.

>Wie löst man so was am schlausten?

Schlau.

>Welche Hardware soll ich nehmen?

Deine Anforderungen sind zu allgemein. Kann man nicht sagen.

>C, C++ oder ASM?

C oder C++, vergiss ASM. Das ist nur für einen sehr kleinen Teil von 
Problemen sinnvoll. Einige Hardcore-Neandertaler werden natürlich 
lautstark das Gegenteil behaupten ;-)
Gast #3763380
Lesenswert?

"AVRs" sind z.B. µC (Mikrocontroller).

D.h. programmierbare CPUs mit integriertem Flash für Deinen Code, etwas 
RAM für Deine Daten und allerlei Peripherie/Schnittstellen (Timer, UART, 
GPIOs, I2C, SPI, A/D Wandler, ...), untergebracht in mehr (DIP) oder 
weniger (TSOP) bis gar nicht (QFN) bastlerfreundlichen Chipgehäusen.

Ob Du damit jetzt "nur" Daten übertragen willst oder Fertigungsstraßen 
steuern möchtest hängt von Dir ab. :D

Lies den Grundlagenartikel der weiter oben verlinkt wurde, bitte.
Gast #3763430
Lesenswert?

Falk Brunner schrieb:
> Einige Hardcore-Neandertaler werden natürlich
> lautstark das Gegenteil behaupten ;-)

Nö. Das behaupten auch ganz normale Bastler. Der AVR ist mit dem 
beschriebenen Einsatzfall i.d.R. immer noch weit von seiner Auslastung 
entfernt. Und in Asm eigentlich immer ;-)
Ich empfehle aber die modernen 32 Mhz Xmegas, z.B. Xmega128A4U. Fast 
ganz ohne externe Beschaltung sind die für jeden Einsatz gerüstet...
Gast #3763457
Lesenswert?

Kommt halt drauf an, ob du Spaß an der Bitfummelei hast, oder ob du 
lieber mit C++ und Libraries arbeitest.

Sicher kann man das in Assembler auf mehrere kleine AVRs verteilen. 
Dauert halt 2 Jahre, bis man die ganzen Detailprobleme im Griff hat. Und 
die Hardware wird auch nicht billiger ein STM-Discovery oder eine Linux 
Platine.
Gast #3763525
Lesenswert?

Lothar Miller schrieb:

> Oder mit einem Tablet surfen. Oder mit dem Handy unterwegs sind.

Also mit meinem (einige Jahre alten) Handy kann ich ein µ schreiben, das 
kostet nur drei Tastendrücke mehr als ein u.
Und wenn ich die Sprachen beherrschen würde, könnte ich sogar Thai oder 
chinesisch darauf schreiben. Die Zeichensätze sind jedenfalls vorhanden 
und auch die Eingabemöglichkeiten dafür.

Ich kann mir kaum vorstellen, daß das mit heutigen Smartphones oder 
Tablets nicht mehr gehen sollte. Wahrscheinlicher ist wohl, daß sich die 
durchschnittliche Kompetenz der Nutzer umgekehrt proportional zur 
Leistungsfähigkeit der Geräte entwickelt hat...

> Und das u statt des µ ist schon seit dem letzten Jahrtausend akzeptiert.
> Ich erinnere da nur an den uA741 oder den uA723...

Ja, man kam lange Zeit mit 7Bit-ASCII aus. Trotzdem wurden irgendwann 
die unseligen Codepages erfunden und später sogar Unicode. Das war 
allerdings beides schon im letzten Jahrtausend...
Gast #3763526
Lesenswert?

Lothar Miller schrieb:
> Und das u statt des µ ist schon seit dem letzten Jahrtausend akzeptiert.

Und in manchen Gegenden wird ein y an Stelle eines µ verwendet, weil die 
Unterlänge so "schön" ist ;-(

Da streuben sich einem die Nackenhaare, spätestens wenn des "µC" nicht 
für Mikro Controller, sondern für Mikro Coulomb steht.
Gast #3763527
Lesenswert?

c-hater schrieb:
> durchschnittliche Kompetenz der Nutzer umgekehrt proportional zur
> Leistungsfähigkeit der Geräte entwickelt hat...

Kann sie ja auch, wenn die Benutzung derer Gott sei Dank wenigstens an 
der Oberfläche zunehmend vereinfacht wird. Denn es gibt wichtigeres als 
Kommandozeilen, Bedienalgorithmen und 'Wie und wo zum Teufel mache ich 
jetzt dieses und jenes' zu pauken.
Gast #3763594
Lesenswert?

Warum willst du da was parallel schalten? Taktfrequenz ist nicht alles, 
und wenn man sich überlegt, was ein PC mit gescheiter Programmierung 
kann, dann reicht mir auch ein 1000tel der Leistung für Steueraufgaben.
Hauptsache du fängst an zu programmieren. Ich empfehle dir AVR, weil ich 
auch damit angefangen habe. Da ich keinen Bock auf Bitmanipulation in 
C/C++ hatte, hab ich einfach Assembler genommen und bin immer noch 
dabei. Aber mach endlich mal was...
Gast #3763616
Lesenswert?

Tim schrieb:
> Ich will mir mehrere AVRs in parallel betrieben um mehr Leistung
> zukriegen, weil ein AVR hat ja durchschnittlich nur 16 MHz (oder?).
> Außerdem möchte ich non was einfügen wie Grafik aber kein HD oder 4K :O,
> sondern ehr Textmodus...

> übertragen werden können und nicht
> irgendwann die Verbindung abbricht. Und ein micro-SD, mini-SD, SDHX, SD
> Slot währe 1A.
>
> Welche Hardware soll ich nehmen?

FPGA als AVR Coprozessor oder einen Embedded Prozessor der Grafik; 
Multiprozessorsupport (SMP?) und andere Schnittstellen bereits 
mitbringt.

MfG,
Moderator (Firma: Titel) Persönliche Seite #3764030
Lesenswert?

c-hater schrieb:
> Ich kann mir kaum vorstellen, daß das mit heutigen Smartphones oder
> Tablets nicht mehr gehen sollte.
Deine Vorstellungskraft ist offenbar nicht ausreichend für die heutige 
Zeit...
Bittschön, hier mal der komplette Zeichsatz der Softtastatur meines 
Handys:
qwertzuioplkjhgfdsayxcvbnm123èéêëęě4řŕ5ţť6źżž7ùúûüůű8ìíîïı9òóôõöœøő0!àáâ 
ãäåæą@ßśşš#ď$€£¥¢%‰ğ&+*?/\łĺľ:;-~—ñńň)>]}(<[{'çćč"_ýÿ"';,-:=.℉℃°¤⊙ω®©»«§ 
|><}{¿¡][^\~¢£¥€
Die ganzen Buchstaben gibt's mit all ihren Abwandlungen dann auch noch 
in groß (z.B. ÒÓÔÕÖŒØŐ).
Und, siehst du ein mü?

> Wahrscheinlicher ist wohl, daß sich die
> durchschnittliche Kompetenz der Nutzer umgekehrt proportional zur
> Leistungsfähigkeit der Geräte entwickelt hat...
Wahrscheinlich hast du Recht. Aber wahrscheinlicher ist, dass du von 
etwas sprichst womit du keine Erfahrung hast.
#3764232
Lesenswert?

Wenn man eh Bits in den Registern Konfigurieren muß ist der Unterschied 
zu Assembler auch nicht mehr groß. Aber dafür gib es auch Bibliotheken. 
Für komplexere Aufgaben die nicht unbedingt hardwarenah auf die Register 
zugreifen müssen haben Hochsprachen natürlich Vorteile. Dafür wurden sie 
gemacht.

Es hängt halt davon ab was man machen will und welche Sprachen man schon 
kennt bzw sich noch aneignen will. Bei komplexen Aufgaben sattelt man 
selten von ASM auf C/C++ um und wer größtenteils nur Register 
konfiguriert und kompakte Funktionen implementiert, auch wenn sie 
zahlreich sein mögen, für den wird es sich kaum lohnen für einen 
Einzelfall auf C/C++ oder andere Sprachen umzusteigen.

Der Nachteil bei Assembler ist aber ganz klar. Bei jeder Architektur ist 
der Befehlssatz anders. Es gibt nicht den Assembler.

Im Idealfall kann man natürlich beides oder alles. ;-)
#3764272
Lesenswert?

@ Moby (Gast)

>> Also ich möchte keine 128kB in Assembler schreiben müssen

>Brauchst Du auch nicht, Peter. Denn in Asm ist die Aufgabe meist viel
>kürzer gelöst. Der Rest des Flash ist dann ein super Datenspeicher.

Geh wieder in deine Höhle und hämmere mit deinem Fauskeil auf dem 
Mammutschädel rum. Viel Spass.
Gast #3764342
Lesenswert?

Ach schade, daß derlei wunderbare Poesie sowas abwertendes hat ;-) Dabei 
erreicht man mit Asm so vieles so einfach so schnell und auf kürzestem 
Wege... Das hat leider nur einen Haken: Es stellt das umfangreiche 
Fachwissen kryptischer, komplexer, bücherfüllender Hochsprachen so 
mancher Experten hier furchtbar  abscheulich infrage ;-(
Tut mir aufrichtig leid!
#3764424
Lesenswert?

Das sehe ich auch so. Nur viele haben zuerst programmieren gelernt und 
dann Mikrocontroller hinzugenommen. Da sattelt an nur ei Bedarf oder 
interesse auf ASM. Da sind halt verschiedene Fraktionen.

Umsatteln oder eine weitere Sprache zu lernen ist auch etwas Aufwand und 
beherbergt potentiell mehr Anfängerfehler. Ob sich das lohnt um die 
Sprache zu nutzen die für die jeweils aktuelle Aufgabe am Besten 
geeignet wäre?

Ohne nennenswerten Zwang gilt, was Karl Heinz schon sagte:

Karl Heinz schrieb:
>> C, C++ oder ASM?
>
> was du kannst. Entscheidend ist nicht die Sprache, sondern dass man sie
> beherrscht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren