ATmega328P mit mehr Pins

OP (Firma: Brainit GmbH) #5296679
Lesenswert?

Hallo Leute,

seit einigen Jahren setze ich in meinen Hobby-projekten sehr erfolgreich 
(ausschließlich) den ATmega328P ein, mit dem kenn ich mich mittlerweile 
einigermaßen aus, und habe dieses "Ökosystem" gut im Griff.

Jetzt brauch ich ausnahmsweise mal etwas mehr Pins; müsste also von der 
8-er Reihe auf die 4er gehen, richtig?

Im ersten Moment wollte ich zum ATmega324 greifen, aber da gibts ja noch 
"größere", zB ATmetga1284

Da es von den Kosten her ziemlich egal ist, spricht was dagegen, da 
gleich den größten zu nehmen (und gleich mal 10 Stück auf Halde zu 
legen). Oder gibts da irgendwelche Fallen, in die ich tappsen könnte?

(zB nicht unterstützte Chip-Id im avrdude, ich hatte sowas, als ich 
versehentlich mal ATmega328 (ohne P) bestellt hatte...)

Danke, Michi
(Firma: Draht_Igel) #5296692
Lesenswert?

Ich hatte mir für diesen Fall einige 2560 besorgt, und von China für ein 
paar Cents solche kleinen TQFP 44 - 100 Adapter-Platinen. Der 2560 hat 
genug Pins, Speicher, und läuft auch mit 20Mhz, selbst wenn er mit 16 
angegeben ist.
Ob AvrDude den unterstützt musst Du sehen, ich arbeite nicht mit 
AvrDude.
#5296759
Lesenswert?

Ein Kriterium wäre die Verfügbarkeit als Arduino-Board, da wäre der 2560 
im Arduino Mega zu nennen
https://store.arduino.cc/arduino-mega-2560-rev3

Ein anderes Kriterium ist die Möglichkeit, großes externes SRAM 
anzuschließen, das können nur wenige der AVR-Reihe.

http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=30047
leider listet diese Vergleichstablle diese Möglichkeit nicht.
OP (Firma: Brainit GmbH) #5296772
Lesenswert?

Danke euch!

2560 ist mir fast schon wieder zu groß.

Portexpander ist natürlich eine Option, guter Hinweis! Aber vielleicht 
mag ich sowieso mal was anderes löten...

Arduino-Board ist (für mich) kein Kriterium (nicht falsch verstehen, ich 
hab nix gegen Arduino, hat mir am Anfang sehr geholfen, aber ich bin 
schon 2 level aufgestiegen ;-)

externes SRAM? Hmmm.... hätte ich noch nie gebraucht.

Ich glaub ich werd mich einfach mal am 1284 versuchen...
Gast #5296806
Lesenswert?

Michael R. schrieb:
> Ich glaub ich werd mich einfach mal am 1284 versuchen...

Sicher eine gute Wahl.
Für einen Prototypen kann der ATmega1284 gut auf eine Lochrasterplatine 
oder eine Permaproto von Adafruit gelötet werden, da nicht viele externe 
Komponenten nötig sind.


Michael R. schrieb:
> Arduino-Board ist (für mich) kein Kriterium (nicht falsch verstehen, ich
> hab nix gegen Arduino, hat mir am Anfang sehr geholfen, aber ich bin
> schon 2 level aufgestiegen ;-)
Und was heisst für dich 2 Level aufgestiegen?
OP (Firma: Brainit GmbH) #5296832
Lesenswert?

Oliver S. schrieb:
> Was stört sich an „zu groß“?

Ich löte lieber 44 Pins statt 100 ;-) Die I/O Leitungen der 4er Reihe 
sind momentan mehr als ausreichend.

Thomas B. schrieb:
> Und was heisst für dich 2 Level aufgestiegen?

Erster Aufstieg:  Platinen selbst designen, ätzen und bestücken
Zweiter Aufstieg: Umstieg von THT auf SMD, also AVR in TQFP statt DIL

Da ich immer auch etwas Peripherie rundherum habe, mach ich mir lieber 
gleich eine "richtige" Platine, damit sind die ganzen Arduino-Boards 
(von denen ich immer noch einige rumliegen habe) nicht mehr wirklich 
nötig.
Gast #5296842
Lesenswert?

Michael R. schrieb:
> Ich löte lieber 44 Pins statt 100 ;-)
Der ATmega1284P-AU im TQFP-Gehäuse ist auch von Hand mit einer feinen 
Lötspitze noch gut lötbar.


Michael R. schrieb:
> Erster Aufstieg:  Platinen selbst designen, ätzen und bestücken
> Zweiter Aufstieg: Umstieg von THT auf SMD, also AVR in TQFP statt DIL

Alle klar :-)

Michael R. schrieb:
> ...mach ich mir lieber gleich eine "richtige" Platine
Auf jeden Fall ein guter Ansatz.
Wenn du alle Pins des 1284 auf Stiftleisten führst, hast du ein 
universelles Board für zukünftige Anwendungen.
Gast #5296853
Lesenswert?

Oliver S. schrieb:
> Dann kann man aber auch gleich einen Arduino Mega nehmen.

Arduino Mega verwendet etinen ATmega2560 mit 100 Pins.

Michael R. schrieb:
> Ich löte lieber 44 Pins statt 100 ;-) Die I/O Leitungen der 4er Reihe
> sind momentan mehr als ausreichend.

Michael lötet lieber 44 statt 100 Pins :-)


Michael R. schrieb:
> Da ich immer auch etwas Peripherie rundherum habe, mach ich mir lieber
> gleich eine "richtige" Platine

und ist damit auch flexibel bei der Form und Grösse der Leiterplatte.
Gast #5297187
Lesenswert?

In DIP:
* wie schon erwaehnt ATmega1284 als groesster Controller mit ADC (und 
AFAIK der einzige mit mehr als 4k RAM).
* ATmega162 ohne ADC, aber mit 3 zusaetzlichen I/Os (insgesamt 35). Wenn 
8k Flash und 512B RAM reichen, geht auch der ATmega8515 (die 
DIP-Versionen sind pinkompatibel).
Gast #5297224
Lesenswert?

Wenn du mit der Arduino IDE programmierst, fällt Dir warscheinlich ein 
Wechsel auf STM32F103 Boards leicht. Diese µC Serie ist sehr 
preisgünstig.

Der STM32F103C8T6 ist ein bisschen größer als der ATmega328:
https://de.aliexpress.com/item/Free-Shipping-STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-Forarduino/32502726562.html

Wenn das zu wenig ist, käme als nächstes der STM32F103RBT6 in Frage:
https://de.aliexpress.com/item/STM32F103RBT6-ARM-STM32-Minimum-System-Development-Board-Module-For-arduino-Minimum-System-Board-STM32F103C8T6-upgrade-version/32821993698.html

Oder noch größer, der STM32F103VET6:
https://de.aliexpress.com/item/STM32-development-board-STM32-STM32F103VET6-minimum-system-board-core-board-cortex-M3/32830281663.html

Es gibt noch weitere Größen von diesem Chip. Das schöne ist: Sie werden 
alle gleich programmiert.

Die Arduino Erweiterung dazu heisst "STM32Duino". Wiki: 
http://wiki.stm32duino.com/index.php?title=Main_Page

Falls du nicht mit Arduino programmierst, ist dieser Hinweis natürlich 
unpassend.
Gast #5297234
Lesenswert?

Die STM32F103 haben viele 5V tolerante Pins und viele 5V Chips 
akzeptieren auch 3,3V bereits als gültigen High Pegel. Die 
Spannungswandler auf den oben genannten Boards kann man mit 5V füttern.

Auf einige Nucleo Boards von STM kann sogar Arduino Shields direkt 
aufstecken.
Gast #5297253
Lesenswert?

Thomas B. schrieb:

> Auf jeden Fall ein guter Ansatz.
> Wenn du alle Pins des 1284 auf Stiftleisten führst, hast du ein
> universelles Board für zukünftige Anwendungen.

Hähä.

Da es den 1284P auch in DIL gibt, kann man ein Entwicklungsboard 
problemlos auf Streifenleiter selbst basteln. Ich entwickle seit 
etlichen Jahren nahezu alles für AVR8 auf eben so einem 
selbstgebastelten Board. Und nur dann, wenn spezielle Schnittstellen 
gebraucht werden, steckt da kein 1284P drauf, sondern eine 
Adapterplatine auf DIL40 mit einem (kleineren AVR8), der eben die gerade 
benötigten Schnittstellen hat.

Was diese Konstruktion über die Jahre schon an Entwicklungszeit und 
Prototypen-Kosten gespart hat, mag ich kaum zusammenrechnen...

Da dieses Board rein privat entstanden ist (obwohl mehrere Kopien davon 
seit langem auch in der Firma benutzt werden), kann ich, welch seltenes 
Glück, auch mal was davon zeigen. Siehe Anhänge.

Das angestöpselte Debugboard zeigt nur, wie man an das Evalboard Sachen 
ankoppelt. Aber ja, ich gebe es zu: Natürlich war die erste Anwendung, 
die damals darauf lief, ein Knightrider-Lauflicht. ;o)

Inzwischen dient das Debugboard aber wirklich nur noch als solches. Ich 
schwöre!
Angehängte Dateien:
#5297451
Lesenswert?

Thomas B. schrieb:
> Wenn du alle Pins des 1284 auf Stiftleisten führst, hast du ein
> universelles Board für zukünftige Anwendungen.

es gibt (gab) den m1284p als Arduino Nachbau etwas größer als nano

https://github.com/JChristensen/mini1284

die ersten 5 musste ich selber löten mit Platinen von OSH Park
Dann konnte man einige Fertigmodule aus USA über ebay kaufen

nun gibts leider keine mehr
#5297606
Lesenswert?

Michael R. schrieb:
> Da es von den Kosten her ziemlich egal ist, spricht was dagegen, da
> gleich den größten zu nehmen (und gleich mal 10 Stück auf Halde zu
> legen). Oder gibts da irgendwelche Fallen, in die ich tappsen könnte?

Welche "Fallen" sollte es denn da geben? Bei Microchip gibt es eine 
parametrische Suche, hier: 
https://www.microchip.com/paramChartSearch/chart.aspx?branchID=30047, da 
kannst du aussuchen, was du alles im Controller haben willst und 
bekommst nur die Controller angezeigt, die deinen Vorgaben entsprechen. 
Vielleicht hilft dir das. Spontan kam mir bei deiner Frage z.B. der 
Atmega644 in den Sinn, also der kleine Atmega1284 ;)

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