Forum: Mikrocontroller und Digitale Elektronik Wie passenden Atmega finden?


von Christian S. (chris72160)


Lesenswert?

Hallo,

ich beschäftige mich seit gerumer Zeit mit Arduino, Atmega usw.

Da ich nicht jedesmal bei einem Projekt einen teuren Arduino verbauen 
möchte, suche ich nach einer Möglichkeit spezifizierter (je nach 
Anforderung) nach einem bestimmten Prozessor suchen zu können.

Ein Beispiel:

Ich möchte ein kleines Eingabegerät mit einem Taster und einem 
RS232-Anschluss bauen.

Wie finde ich heraus, welcher Prozessor am besten für dieses Vorhaben 
geeignet ist?

Gibt es hierfür Tabellen, oä.?

Gruß Chris

von Jan H. (jhnet)


Lesenswert?

http://www.atmel.com/products/selector_overview.aspx

Links auf Microcontroller klicken, gewünschte Daten auswählen.

von Eumel (Gast)


Lesenswert?

Schau mal beim Guloshop rein, da gibts die gängigsten Typen sehr 
günstig. Macht ja keinen Sinn sich einen Controller auszusuchen den man 
dann nirgends kaufen kann.

von Uwe (de0508)


Lesenswert?

Hallo Christian,

bedenke auch, dass die Atmel AVR i.A. keinen Bootloader installiert 
haben.

Außnahme ist z.B. ein atmega32u4, dort hat Atmel den Flip installiert.

Link: http://www.ehajo.de/themes/kategorie/detail.php?artikelid=152

von Stephan B. (matrixstorm)


Lesenswert?

Hallo

Was haelst du von: http://matrixstorm.com/avr/tinyusbboard/

MfG

von Stephan B. (matrixstorm)


Lesenswert?

Achso, auch fuer dich von Interesse koennte sein:

Beitrag "Parameter aller Atmel Mikrokontroller"

MfG

von Gerhard W. (gerhard86)


Lesenswert?

Ich hab mir eine Tüte Atmega48 und eine Tüte Atmega1284 bestellt, und 
nehme die ersteren für Kleinmist und die zweiteren wenn ich mehr 
Speicher oder Pins brauche. Das Zeug ist imho viel zu billig dass es 
sich für ein Einzelstück auszahlen würde lange zu überlegen ob man nun 
16 oder 32 oder 64 oder 128kB Flash benötigt. Braucht man speziellere 
Peripherie (wie CAN oder mehrphasige PWM mit Totzeit) muss man genauer 
schauen.

: Bearbeitet durch User
von Tim  . (cpldcpu)


Lesenswert?

Stephan B. schrieb:
>
> Was haelst du von: http://matrixstorm.com/avr/tinyusbboard/

Warum lässt Du dafür nicht eine professionelle Platine fertigen? Bei der 
Größe sollte das für unter 1EUR/board bei den üblichen Chinesen gehen...

von cppler (Gast)


Lesenswert?

Ganz einfach, du nimmst ein Blatt Papier und schreibst Deine minimalen 
Anforderungen auf, bei deinem Beispiel:

1. EIN digitaler Eingang
2. RS232 Schnittstelle

Damit weißt Du nun die Pinzahl, also 1x Taster und Rx/Tx für RS232 
(minimalistischst).
Drei I/O Pins reichen also aus, damit kommt jeder 8Pinner in Frage.

Zur Programmierung ISP nehmen, USBasp Clones gibt's ab 5,-.
Wenn statt RS232 USB sinnvoller ist kann man einen AVR mit interner PLL 
nehmen um auf die notwendige Taktfrequenz mit internem Oszillator zu 
kommen, also Tiny85 oder Tiny861, ansonsten externe 12MHz oder mehr 
einplanen.
Die Frage ist halt was Du bauen willst ?
Für eine ein Taster RS232 Fernstueerung braucht man weniger als für eine 
Quadkoptersteuerung ...
Werde Dir erstmal klar was Du wirklich an I/Os und Rechenleistung 
brauchst und dann nimm den nächst größeren µC dafür.

von Stephan B. (matrixstorm)


Lesenswert?

Tim .  schrieb:
> Warum lässt Du dafür nicht eine professionelle Platine fertigen? Bei der
> Größe sollte das für unter 1EUR/board bei den üblichen Chinesen gehen...

Hallo Tim.

Bisher war der Gedanke dahinter, das es sich von Einsteigern einfach 
loeten lassen soll.
Aber mittlerweile tendiere ich auch immer mehr zu der Meinung, dass eine 
SMD Variante (mit TQFP AVR) zumindest parallel eiegntlich eine tolle 
Sache waere.

Es sind hiermit alle eingeladen ein Layout zu erstellen. Ich werde mich 
(sobald mal etwas mehr Zeit) auch einmal damit befassen.

Hast du ggf. ein paar Links bgzg. Fertig oder meinst du die URL-Sammlung 
von mikrocontroller.de?


MfG

von Peter R. (Gast)


Lesenswert?

Wenn man Datenblätter der einzelnen Atiny und AVR-Typen durchliest, wird 
man feststellen, dass alle anscheinend von dem gleichen Datenblatt 
ausgehen. Unterschiede zu finden erfordert gründliches Suchen.

Man kann eigentlich mit der Vorstellung beginnen, dass in allen Atiny 
und AVR-Typen der gleiche Chip drin ist, nur wächst von Typ zu Typ die 
Ausstattung mit Ram, EEprom, Peripherie usw. und die Zahl der Pins.

Selbstverständlich gibt es bei atmel auch Aufstellungen, in denen die 
Ausstattung der Einzeltypen zu finden sind.

von Tim  . (cpldcpu)


Lesenswert?

Stephan B. schrieb:
> Hast du ggf. ein paar Links bgzg. Fertig oder meinst du die URL-Sammlung
> von mikrocontroller.de?

10 pcbs für 10$ aus China
http://www.elecrow.com/services-c-73/

3 Pcbs für 5$ pro Quadratzoll aus den USA:
http://oshpark.com/

Eine Platine lohnt sich m.M. auch ohne SMD. Und für Anfänger ist es mit 
Bestückungsdruck deutlich einfacher...

von Stephan B. (matrixstorm)


Lesenswert?

Danke dir, Tim.

MfG

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

cppler schrieb:
> 1. EIN digitaler Eingang
> 2. RS232 Schnittstelle
>
> Damit weißt Du nun die Pinzahl, also 1x Taster und Rx/Tx für RS232
> (minimalistischst).
> Drei I/O Pins reichen also aus, damit kommt jeder 8Pinner in Frage.

Richtig, z.B. ATtiny13A. Oder sogar ein 6-Pinner, z.B. ATtiny10.

Ansonsten gibts hier eine praktische Tabelle: AVR Typen

von Christian S. (chris72160)


Lesenswert?

Da waren definitiv für mich verwertbare Informationen dabei. :)

Ein herzliches Dankeschön an alle!

Nur Eines habe ich bisher nicht so ganz gecheckt:

Bei der Arduino-Plattform gibt es ja bestimmte Pins, die für eine 
RS232-Funktionalität vorgesehen sind (beim Mega2560 z.B. bis zu vier 
Verbindungen).

Nehme ich jetzt einen "Prozessor nackt von der Stange" (z.B. einen 
ATtiny10), habe ich ja keine Pins die explizit für eine 
RS232-Funktionalität vorgesehen sind.

Müsste ich dies (nach dem Brennen des Bootloaders usw.) dann über 
SoftwareSerial lösen?

http://arduino.cc/de/Reference/SoftwareSerial

Bitte um Aufklärung.

Gruß Chris

von Stephan B. (matrixstorm)


Lesenswert?

Christian Stielz schrieb:
> habe ich ja keine Pins die explizit für eine
> RS232-Funktionalität vorgesehen sind.

Doch! Bestimmten PINs sind hardwareseitig die Funktionen zugeordent.

Siehe Datenblatt!

MfG

von cppler (Gast)


Lesenswert?

Christian Stielz schrieb:
> Bei der Arduino-Plattform gibt es ja bestimmte Pins, die für eine
> RS232-Funktionalität vorgesehen sind (beim Mega2560 z.B. bis zu vier
> Verbindungen).
>
> Nehme ich jetzt einen "Prozessor nackt von der Stange" (z.B. einen
> ATtiny10), habe ich ja keine Pins die explizit für eine
> RS232-Funktionalität vorgesehen sind.
>
> Müsste ich dies (nach dem Brennen des Bootloaders usw.) dann über
> SoftwareSerial lösen?
>

Die meisten AVRs haben das USI Interface, die größeren wie Mega88 usw. 
haben eine USART die alles in Hardware macht.
Schaue Dir die genannten Übersichten durch und wähle den µC der Deinen 
Anforderungen gerecht wird.
Von RS232 würde ich allerdings heute abraten, USB ist da die Wahl.
Entweder also einen µC mit USB Schnittstelle aussuchen oder eine USB-Lib 
nehmen, auf den Speicher achten !

von spess53 (Gast)


Lesenswert?

Hi

>Die meisten AVRs haben das USI Interface,...

Du meinst wohl: ... die meisten ATTinys ... . Denn Die ATMegas, und das 
sind mehr Typen als bei den ATTinys, besitzen UART/USARTs. Allerding 
gibt es auch ATTinys mit echter UART. z.B. ATTiny2313 und ATTiny1634 
(sogar 2xUART).

MfG Spess

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Christian Stielz schrieb:
> Müsste ich dies (nach dem Brennen des Bootloaders usw.) dann über
> SoftwareSerial lösen?

Welche Geschwindigkeit für die serielle Datenübertragung brauchst du 
denn mindestens?

Soll nur gesendet oder nur empfangen werden? Oder ist beides notwendig?

von Christian S. (chris72160)


Lesenswert?

Markus Weber schrieb:
> Welche Geschwindigkeit für die serielle Datenübertragung brauchst du
> denn mindestens?
>
> Soll nur gesendet oder nur empfangen werden? Oder ist beides notwendig?

38400 Baud sollten es schon sein.

Es soll gesendet und empfangen werden (kurze und wenige Befehle).

Gruß Chris

: Bearbeitet durch User
von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Christian Stielz schrieb:
> 38400 Baud sollten es schon sein.
>
> Es soll gesendet und empfangen werden (kurze und wenige Befehle).

Ok... aber wenn es nur kurze und wenige Befehle sind, warum dann eine so 
hohe DÜ-Rate? Nur so aus Neugier. :-)

Und – wenn auch empfangen werden soll, was wird dann mit den empfangenen 
Information gemacht? Wenn ich es richtig verstanden habe, ist ja sonst 
nur ein Taster dran...

von avr (Gast)


Lesenswert?

Christian Stielz schrieb:
> Nehme ich jetzt einen "Prozessor nackt von der Stange" (z.B. einen
> ATtiny10), habe ich ja keine Pins die explizit für eine
> RS232-Funktionalität vorgesehen sind.
> Müsste ich dies (nach dem Brennen des Bootloaders usw.) dann über
> SoftwareSerial lösen?

Das muss man dann in Software lösen, dafür kostet der Tiny10 unter 
50cent. Aber auf den Attiny10 wirst du wahrscheinlich kein einziges 
Arduino-Programm drauf kriegen. Der Overhead ist bei so einem kleinen µC 
viel zu groß. Und selbst SoftwareSerial keine sinnvolle Klasse, da sie 
m.W. den µC blockiert. Software-Uart kann man mit einem Timer durchaus 
brauchbar lösen (Beitrag "Software UART").

von Christian S. (chris72160)


Lesenswert?

Markus Weber schrieb:
> Ok... aber wenn es nur kurze und wenige Befehle sind, warum dann eine so
> hohe DÜ-Rate?
>
> Und – wenn auch empfangen werden soll, was wird dann mit den empfangenen
> Information gemacht? Wenn ich es richtig verstanden habe, ist ja sonst
> nur ein Taster dran...

Sehr aufmerksam gelesen. ;)

1. Die Baudrate gibt mir das Gerät vor, welches ich mit dem Taster 
steuern/bedienen möchte.

2. Mit den eingehenden Informationen soll der Prozessor definieren 
können.welchen Befehl er bei einem Druck auf den Taster als nächstes 
ausgeben soll.

Gruß Chris

von Rudolph (Gast)


Lesenswert?

So riesig ist die Auswahl garnicht mehr, wenn man mal ältere Typen 
rausnimmt, weil Atmel da vor Jahren schon mehr System reingebracht hat.

Ich benutze im wesentlichen ATMega88PA (TQFP32) und ATMega164PA 
(TQFP44), welchen jeweils entscheidet sich mit den benötigten Pins.
Und zu beiden gibt es jeweils mehrere Pin- und Funktions- kompatible 
Typen die mehr Speicher haben.
Das Projekt passt nicht in den M88? -> M168!

Für CAN im wesentlichen den 90CAN32, eine Alternative dazu mit nur 32 
Pins wäre der 16M1.

Ganz klein dann vielleicht mal einen Tiny44 (14 Pins, 16-Bit Timer) oder 
Tiny45 (8-Pins), zu beiden gibt es ebenfalls Pin- und Funktions- 
kompatible Typen mit mehr/weniger Speicher.

von Christian S. (chris72160)


Lesenswert?

Der ATtiny13A braucht keinen ext. Quarz/Oszillator um zu funktionieren, 
sehe ich das richtig?

Gruß Chris

von Stefan F. (Gast)


Lesenswert?

Ja, siehst du richtig. Alle AVR Mikrocontroller haben einen internen R/C 
Oszillator, soweit ich weiß.

Aaaaber: Serielle Schnitttsellen erfordern einen präzisen Taktgeber. Der 
R/C Oszillator ist dazu schlecht geeignet. Man kann ihn zwar 
kalibrieren, aber die Frequenz hängt auch deutlich von der Temperatur 
ab.

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.