Forum: Mikrocontroller und Digitale Elektronik anforderungen an controller aufstellen


von Fredrik H. (fred0815)


Lesenswert?

hallo,

ich hab mal ne frage an jeden.
wie stellt ihr eure anforderungen an den zu verwendeten µcontroller auf?
das ganze interessiert mich aber nicht in der hinsicht, hat der 
controller genügend i/o pins, genügend timer, speziellen bus usw., 
sondern krieg ich meine software auf dem controller unter??

folgenden grund hat die frage:
ich bastel in meiner freizeit n bisschen rum (wer hätts nicht 
gedacht...). hab grad n etwas größeres projekt mit einiger peripherie.
an dem controller hängt:
- mp3-decoder (vs1011)
- sd-karte
- 8 ad-wandlungen (potis, sensoren)
- high brightness LED
- display
- uhrenbaustein
- ettliche I/O pins (steuerung von sonstigen ICs, LEDs)
- porterweiterung
- 3 dot-matrixanzeigen (jeweis 8x8 LEDs)

damit das alles auch ordentlich miteinander läuft, benötigt der 
controller:
- bus (spi und i2c)
- einige timer auch mit pwm-ausgang
- einige adc
- unzählige I/o pins
- massig speicher :)

also. im klaren bin ich mir darüber, was er alles können muss 
hinsichtlich den funktionen.
aus eigener erfahreung (wenn ich das überhaupt schon sagen kann...) hab 
ich den atmega32 ausgeschlossen. also n amtega64 genommen.
an dieser stelle hatte ich aber etwas bammel, dass der 64 die recht 
umfangreiche (noch nicht geschriebene 8D) software mit ein paar 
zeitkritischen funktionen (zb mp3-decoder, dot-matrixanzeigen) nicht 
verarbeiten kann.
da allein die elektronik mich ~300euro kostet war mir das zu heikel. 
prompt hab ich nen 2. atmega64 spendiert (über bus miteinander 
verbunden) um mir die softwarebedenken vom hals zu schaffen. lieber geb 
ich 10euro mehr für n 2. controller aus als dass ich 300 in sand setz...

mich interessierts also wie ihr den umfang der (noch nicht bestehenden) 
software abschätzt um anschließend die wahl eines controllers zu 
treffen?
(welcher atmega? oder doch ein 8051? vielleicht schon ein 32-bitter?)

hoffe auf viele antworten (sofern ich mich verständlich ausgedrückt hab 
;))

grüße
fred0815

von akw (Gast)


Lesenswert?

Mh, also von den Pins her könnte ein Mega32 z.B. schon reichen.
So viele sinds ja garnicht:

- mp3-decoder (vs1011) -> SPI
- sd-karte -> SPI
- 8 ad-wandlungen (potis, sensoren) -> ADC Kanäle (1 Port)
- display -> 10 I/O Pins
- uhrenbaustein -> Was meinst du genau? DCF? -> 1 I/O Pin

Bleibt noch ca. 1 Port über, dann eben den Rest soweit wie es eben geht 
direkt an die Pins und dann eben Schieberegister (SPI) benutzen:

- ettliche I/O pins (steuerung von sonstigen ICs, LEDs)
- porterweiterung
- 3 dot-matrixanzeigen (jeweis 8x8 LEDs)
- high brightness LED

Also die Pin Sache lässt sich wohl lösen, fraglich ist eher ob der 
Controller mit der Last (Von Karte lesen, auf Dekoder schreiben, AD 
Wandeln, Display ansteueren, Dot-Matrix multiplexen usw) zurechtkommt. 
Kann ich im moment net genau einschätzen, aber Meinung nach 
(unverbindlich) wird das schon eher nichts mehr.

Vllt ist da ein ARM7 oder etwas in die Richtung die besser Wahl? Aber 
wart lieber was die anderen noch so sagen!

gruß

von Fredrik H. (fred0815)


Angehängte Dateien:

Lesenswert?

ich bin eigentlich schon von der elektronik her fertig (siehe anhang - 
eine von insgesamt 3 platinen).
hab wie gesagt 2 atmega64 genommen, weil ich auf der sicheren seite sein 
wollte.
dass die das packen bin ich mir sicher. hatte mal n projekt mit 3 
anderen zusammen: mp3-player mit gps.
da hat ein atmega64 das alles geschafft:
- mp3 decoder mit daten füttern
- gps-daten empfangen
- gps daten auswerten (berechnungen wie geschwindigkeit etc)
- sd-karte lesen (mp3 dateien)
- sd-karte schreiben (gps koordinaten)
- auswerten von 5 tastern mit tasterkombinationen
- ansteuern von nem grafikdisplay
- batteriemanagement von nem lipoly-akku

und das alles zeitgleich. hat zwar noch kleinere bugs, aber im 
wesentlichen funktioniert alles miteinander. (der atmega läuft mit 8mhz)

da war ich schon erstaunt, was n atmega alles kann ^^ süßes kleines 
ding!

aber es hätte genausogut nicht funktionieren können. wir hatten eben 
glück dass er alles geschafft hat auch wenn er jetzt ganz schön 
ausgelastet ist.

mich interessiert es, wie man im vorfeld schon abschätzen kann, wie groß 
die software wird und welcher controller dafür verwendet werden muss?
beispielsweise wenn man mehrere 32-bit berechnungen macht, ists ja egal 
wieviel i/o pins der controller hat. da will ich wissen: schafft der 
controller es die software vollständig und fehlerlos zu bearbeiten?

grüße
fred0815

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.