Forum: Mikrocontroller und Digitale Elektronik Auswahl Mikrocontroller (von Anfänger)


von Rubencz (Gast)


Angehängte Dateien:

Lesenswert?

Hallo miteinander,

ich habe schon einiges hier im Forum gelesen, kann mir diese Frage aber 
selbst nicht sicher beantworten, da ich auf dem Gebiet "Mikrocontroller" 
kompletter Neuling bin. Deshalb frage ich hier nun einfach mal nach.

Geplant ist die Umsetzung der angehängten Schaltung (ja es ist eine 
einfache Skizze, da ich nicht aus der Elektrotechnik-Branche komme und 
mit komplexen Schaltungen nicht sonderlich vertraut bin ;-) ).

Meine Erklärung:
Der Prozessor soll ein Signal "AN" bekommen in Form eines fließenden 
Stroms und sich daraufhin anschalten. Nun erfassen die beiden Sensoren 
ihre Daten. Diese liegen in der Form vor, dass Strom fließt (1) oder 
nicht (0). Zu Beginn fließt bei beiden Sensoren kein Strom (0,0). Der 
Prozessor soll sich nun merken welcher der beiden Sensoren zuerst einen 
Strom leitet (also 1,0 oder 0,1) und diese Zustände speichern (nennen 
wir sie Zustand A = 1,0 und Zustand B = 0,1).
Nach einer Zeit von X Sekunden soll das System aus Energiespargründen 
abgeschaltet werden und erst bei einem erneuten Signal "AN" oder beim 
Druck des Tasters angehen.
Wird der Taster betätigt so soll er den gespeicherten Zustand A oder B 
auswerten und entsprechend an eine rote oder grüne LED senden. Diese 
soll dann leuchten.

Ich hoffe die Erklärung ist präzise genug :-)

Meine Anforderungen sind:
Das ganze sollte möglichst klein sein (SMD-Bauweise) und zudem sollte 
der Prozessor nicht viel mehr können als das oben beschriebene 
(günstig). Eine Energiesparende Version ist ebenfalls wünschenswert, da 
der Betrieb mit Batterie geplant ist.

Meine Fragen:
Welcher Controller eignet sich für die beschriebenen Zwecke? Gerne auch 
mit Links.
Was brauche ich noch alles um ihn in Betrieb nehmen zu können?
Sonstige Tipps und Tricks die ich beachten sollte?

Ich habe bereits Erfahrungen im Programmieren in C und C++, Assembler 
könnte notfalls angelernt werden.


Vielen Dank schonmal für Eure Hilfe.

Grüße
Ruben

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ich Empfehle Dir einen PIC18 µC von Microchip. Der hat alles drin.
Siehe Artikel: PIC
Es gibt auch die "Nanowatt" Varianten die sehr wenig Strom benötigen.

Auf der Microchip Homepage gibt es viel Demo-Code und der Compiler/IDE 
MPLAB ist kostenlos.

: Bearbeitet durch User
von Falk B. (falk)


Lesenswert?

@Rubencz (Gast)

>Welcher Controller eignet sich für die beschriebenen Zwecke? Gerne auch
>mit Links.

Jeder halbwegs aktuelle. AVR, PIC, MSP430, 8051 etc.

>Was brauche ich noch alles um ihn in Betrieb nehmen zu können?

Einen Programieradapter, siehe AVR ISP.

>Sonstige Tipps und Tricks die ich beachten sollte?

Sleep Mode.

>Ich habe bereits Erfahrungen im Programmieren in C und C++, Assembler
>könnte notfalls angelernt werden.

Naja, diese Seite hier ist halt sehr AVR-haltig, darum würde ich einen 
AVR empfehlen. Aber alle anderen können das genauso gut.

von ralf (Gast)


Lesenswert?

Was sind das für  Sensoren ?

von Fabian F. (fabian_f55)


Lesenswert?

Rubencz schrieb:
> Meine Erklärung:
> Der Prozessor soll ein Signal "AN" bekommen in Form eines fließenden
> Stroms und sich daraufhin anschalten.
Heißt das "AN" ist die Versorgungsspannung?
> Nun erfassen die beiden Sensoren
> ihre Daten. Diese liegen in der Form vor, dass Strom fließt (1) oder
> nicht (0). Zu Beginn fließt bei beiden Sensoren kein Strom (0,0). Der
> Prozessor soll sich nun merken welcher der beiden Sensoren zuerst einen
> Strom leitet (also 1,0 oder 0,1) und diese Zustände speichern (nennen
> wir sie Zustand A = 1,0 und Zustand B = 0,1).
Strom oder Spannung? Stromsignal kann kein einfacher µC. Müsste man erst 
in ein Spannungssignal umwandeln

> Nach einer Zeit von X Sekunden soll das System aus Energiespargründen
> abgeschaltet werden und erst bei einem erneuten Signal "AN" oder beim
> Druck des Tasters angehen.
Wenn die Messung eher selten ist, kann man die Schaltung komplett 
abschalten. Ansonsten Sleep mode. Was für Sensoren sind das? Die 
brauchen meistens mehr Strom als der µC. Sollte man vielleicht auch 
schaltbar machen.
> Wird der Taster betätigt so soll er den gespeicherten Zustand A oder B
> auswerten und entsprechend an eine rote oder grüne LED senden. Diese
> soll dann leuchten.
Soll sich der µC mehrere Zustände merken, oder nur den letzten. Wenns 
nur wenige Werte sind, kann man die im EEPROM speichern und den µC 
danach komplett abschalten.

> Meine Anforderungen sind:
> Das ganze sollte möglichst klein sein (SMD-Bauweise) und zudem sollte
> der Prozessor nicht viel mehr können als das oben beschriebene
> (günstig). Eine Energiesparende Version ist ebenfalls wünschenswert, da
> der Betrieb mit Batterie geplant ist.
Ich arbeite sowohl mit Pic als auch mit AVR. Letzere sind für Anfänger 
einfacher. Insbesondere das neueste Atmel Studio macht das Programmieren 
relativ einfach dank Syntaxvervollständigung.
 ATmel Attiny25. 5x6mm groß. Aktivbetrieb 300µA im  Sleep modus 10µA. 
Mit 3 AA-Akkus läuft das rund 4 Jahre lang. Der µC kostet je nach 
Stückzahl 0,50€-2€


> Sonstige Tipps und Tricks die ich beachten sollte?

Keine 3.Anbieter programmiertools kaufen!

von Klaus K. (leo9)


Lesenswert?

.. wie sollen wir uns "in Form eines fließenden Stroms" für den 
AN-Eingang vorstellen und was/wie/wo tun die Sensoren?

Grüße leo

PS.: Ansonsten würde ich mit einem beliebigen µP mit wenigstens 6 IOs, 
einem Steckbrett, Minimodul, zur Not auch ard... anfangen und erst im 
zweiten Schritt auf Kleinstheit optimieren.

von Rubencz (Gast)


Lesenswert?

Erstmal vielen Dank für die ganzen Antworten in der kurzen Zeit. Echt 
super :-)

Die verwendeten Sensoren sind bisher noch einfache quecksilberfreie 
Neigungswinkelschalter. Sie dienen letztendlich dazu eine Drehrichtung 
zu bestimmen (links oder rechts herum). Falls Ihr bessere (vor allem 
kompaktere) Sensoren parat habt, ich bin gerne für Vorschläge offen. Ich 
hatte mich nur für diese Sensoren entschieden, da sie ein einfaches 
Wirkprinzip haben. Sie liefern quasi nur das Signal "Strom" oder "kein 
Strom". Dies erschien mir relativ einfach für eine spätere Auswertung.

Das "AN" ersetzt mir quasi einen mechanischen "An/Aus" Schalter. 
Realisiert werden soll das ganze mittels Reed-Schalter.

Danke nochmals für die schnellen Antworten. Echt top. :-)

Zu den angesprochenen Controllern werde ich mich mal einlesen. So habe 
ich immerhin schon eine richtige Richtung…wie gesagt, bin noch blutiger 
Anfänger.

Grüße
Ruben

von Jan B. (berge)


Lesenswert?

Wenn du in C fit bist, guck dir mal die STM32 Discovery Boards an. Haben 
einen Programmieradapter drauf und lassen sich mit den Bibliotheken von 
ST recht einfach bedienen, insb. mit der Entwicklungsumgebung Coocox und 
den Beispielen von 
http://mikrocontroller.bplaced.net/wordpress/?page_id=744

Liebe Grüße Jan

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Als Neigungssensor würde ich eher ein LIS302 oder so etwas nehmen. Suche 
mal nach "3D Acceleration Sensor".

http://www.st.com/web/catalog/sense_power/FM89/SC444/PF152913?sc=internet/analog/product/152913.jsp

: Bearbeitet durch User
von Nik (Gast)


Lesenswert?

Jan Berg schrieb:
> STM32 Discovery Boards
Warum nicht gleiche einen i7 mit 8 Kernen?

Ich würde das ganze mit einem kleinen 8bit PIC lösen. MPLAB X IDE und 
den XC8 Compiler kann man sich gratis bei Microchip downlaoden. Als 
Programmer würde ich das PICkit3 empfehlen, mit diesem kannst du so gut 
wie jeden PIC programmieren und auch debuggen.

von Jan B. (berge)


Lesenswert?

Bitte nicht schon wieder Flamewar.
Das PicKit kostet z.B. Faktor drei und der ST ist einfacher zu 
Programmieren mit den Libraries als ein Pic ohne. STM32L0 sind auch sehr 
energiesparend und klein zu kriegen.

von Nik (Gast)


Lesenswert?

Jan Berg schrieb:
> Das PicKit kostet z.B. Faktor drei
Dafür hat er dann einen tollen Programmer/Debugger.
> ST ist einfacher zu Programmieren mit den Libraries als ein Pic ohne.
Für PICs gibt es auch Libraries... Sind z.B. beim XC8 dabei.

von Gerald G. (gerald_g)


Lesenswert?

Ich würde sagen das kommt auf den Arbeitsaufwand an den du betreiben 
möchtest.
Mehr Aufwand wäre es mit dem stm32f429 discovery board.
Hat für 27€ alles drauf was man brauch ( rote und grüne led, Taster, 
neigungssensor/gyro, wenn einem langweilig ist auch ein touchdisplay)
Einarbeitungszeit ist allerdings größer, da auch komplizierter. Doch für 
die meisten Bauteile gibt es fertige libs wie bei 
Mikrocontroller.bplaced.net

Einfacher geht es mit "kleinen" Mikrocontrollern wie den attiny. 
Zumindest wenn man von 0 anfängt. (Da diese weniger 
Konfigurationsmöglichkeiten haben)

von kopfkratzer (Gast)


Lesenswert?

kopfkratz
Tja nun da gibt es 8bitter, 16bitter, 32bitter und sogar 64bitter als 
µCs.
Wenn es wie genannt nur darum geht festzustellen ob ein Zustand erreicht 
worden ist reicht jeder 8bitter aus.
Nur wenn man sich dann ansieht das man z.B. einen 32bitter der keinen 
Programmer braucht für 6 Euro bekommt relativiert sich das schnell.
Denn Programmer plus 8bitter µC kosten idR auch 6 Euro, 5 für Programmer 
und 1 für den µC.
Geht es um Stückzahlen ist natürlich die Variante mit kleinem µC 
vorzuziehen.
Aber hier denke ich das es keinen Unterschied macht ob 8bit AVR/PIC oder 
32bit ARM ...

von Ralph (Gast)


Lesenswert?

Also für das Bildchen da am Anfang und wenn die Sensoren einfache 
Schalter sind reicht hierfür auch eine diskrete Schaltung.

Ein paar Logikgatter, Schmitttrigger und Ausgangstreiber.

Ein µC ( auch der kleinste 8 Bitter)  an der Stelle ist total 
übertrieben.

von Stefan F. (Gast)


Lesenswert?

> Ein paar Logikgatter, Schmitttrigger

Also mehr als ein Chip. Mit Mikrocontroller hat man nur einen Chip. Wer 
die Schaltung kompakt haben will, mag daher den µC bevorzugen.

von Fabian F. (fabian_f55)


Lesenswert?

Ein Attiny kostet nicht mal 1€. Der zusätzliche Platz auf der Platine 
für die Analogbausteine kostet ja mehr...

von Rubencz (Gast)


Lesenswert?

Danke für eure zahlreichen Antworten. So wie es aussieht tendiere ich zu 
einem µC mit 8Bit. Wahrscheinlich ein PIC samt PICkit3. Erscheint mir so 
als Anfängervariante ganz i.O. und in Summe komme ich da nicht über 
40€-50€. Das ist ok :)

Falls ich weitere Fragen habe werde ich mich melden. Ihr habt mir 
jedenfalls schonmal deutlich weitergeholfen.

Vielen Dank

Grüße
Ruben

von Chefentwickler (Gast)


Lesenswert?

Du willst einen Arduino.

von El Patron B. (bastihh)


Lesenswert?

Rubencz schrieb:
> Danke für eure zahlreichen Antworten. So wie es aussieht tendiere ich zu
> einem µC mit 8Bit. Wahrscheinlich ein PIC samt PICkit3. Erscheint mir so
> als Anfängervariante ganz i.O. und in Summe komme ich da nicht über
> 40€-50€. Das ist ok :)
>
> Falls ich weitere Fragen habe werde ich mich melden. Ihr habt mir
> jedenfalls schonmal deutlich weitergeholfen.
>
> Vielen Dank
>
> Grüße
> Ruben

Beim AVR komme ich auf ca. 6€ "Einstiegskosten".
2,50€ AVR ISP bei Ebay
1,50€ Mini Steckbrett bei eBay
1,00€ AVR ATTiny
1,00€ Kleinkrams

von Cyblord -. (cyblord)


Lesenswert?

El Jefe schrieb:

> Beim AVR komme ich auf ca. 6€ "Einstiegskosten".
> 2,50€ AVR ISP bei Ebay
> 1,50€ Mini Steckbrett bei eBay
> 1,00€ AVR ATTiny
> 1,00€ Kleinkrams

Hirn einschalten, Lernen, ausprobieren: Unbezahlbar.

Nur das will niemand. Bei den meisten reichts dann grade zu einem 
Arduino und selbst dafür sind se noch zu doof.

von Nik (Gast)


Lesenswert?

El Jefe schrieb:
> AVR ISP
Ein Debugger scheint mir für den Anfang ganz nützlich, und wenn wir 
schon nachgebaute Tools kaufen, kann man auch einen PICkit3 Nachbau für 
<15€ kaufen.

von Cyblord -. (cyblord)


Lesenswert?

Nik schrieb:
> El Jefe schrieb:
>> AVR ISP
> Ein Debugger scheint mir für den Anfang ganz nützlich, und wenn wir
> schon nachgebaute Tools kaufen, kann man auch einen PICkit3 Nachbau für
> <15€ kaufen.

Trugschluss. Ein Anfänger braucht erstmal keinen Debugger. Und auch 
keinen Simulator. Die machen da mehr Probleme als sie lösen. Das sind 
beides Tools für Fortgeschrittene die wissen was sie tun.

von Christian (Gast)


Lesenswert?

Oder ein Launchpad von Ti. Da bekommt man gleich 2 MSP430, hat 
Programmer und Debugger.

Kosten: 10 Euro.

von Nik (Gast)


Lesenswert?

cyblord ---- schrieb:
> Trugschluss. Ein Anfänger braucht erstmal keinen Debugger. Und auch
> keinen Simulator. Die machen da mehr Probleme als sie lösen.
Da habe ich als ich angefangen habe andere Erfahrungen gemacht und 
sollte es so sein wie du geschrieben hast: Man muss den Debugger ja 
nicht nutze.

> Das sind beides Tools für Fortgeschrittene die wissen was sie tun.
Auch gut, dann kann er mit dem Pk3 viel anfangen wenn er fortgeschritten 
ist.

von Botuser (Gast)


Lesenswert?

cyblord ---- schrieb:
> Ein Anfänger braucht erstmal keinen Debugger. Und auch
> keinen Simulator. Die machen da mehr Probleme als sie lösen.

Das verstehe ich jetzt nicht. Ich finde so einen Debugger wie den 
Pickit3 eigentlich auch für Anfänger recht praktisch.
Da kann man auch mal leicht Schritt für Schritt durchs Programm um z.B. 
fehlerhafte Abbruchbedinungen von Schleifen zu finden oder mal schauen 
ob das Ausgangsregister der Ports auch angesprochen wird oder der Fehler 
der nicht leuchtenden LED am falschen Tris Register liegt.

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.