www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Layout für ein MEGA128 Board prüfen


Autor: Thomas S. (thomass)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe ein Layout für ein Board entworfen welches zum aufstecken 
gedacht ist.
Es soll einfach steckbar sein und auch so flexible, das es allen 
Ausgangsbeschaltungen angepasst werden kann.
Ich habe bei meinem Layout Schutzwiderstände an alle Ausgänge in Reihe 
geschaltet, wir der PIN als Eingang beschaltet wir ein 0 Ohm Widerstand 
bestückt als Ausgang ein 470 Ohm Widerstand.
Desweiteren habe ich an allen Portpins Pullups vorgesehen da ich nicht 
sicher bin ob ich diese brauche, sie sollten einfach nur zur Sicherheit 
vorhanden sein.
Das Wichtigste ist aber die Grundbeschaltung der 128er 
Vcc,GND,Kondensatoren, JTAG Anschluß,ISP etc. ob dies alles stimmt oder 
ob ich etwas vergessen habe
Da ich ein Anfänger bin und dies mein erstes Controllerboard ist möchte 
ich die Profi's bitten mal einen Blick auf mein Layout zu werfen und mir 
Eure Meinungen oder Anregungen zu schreiben.

Bin für alles offen.


Thomas

Autor: Ulrich P. (uprinz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi, ich leg einfach mal los!

470R ist zu viel, nimm 10..22R, dann wirds besser, die PullUps vom AVR 
sind eh oft viel zu schwach ( >22k).

Für den AREF einen SOT-23 Sockel für eine Referenzspannung vorsehen und 
ebenso einen Widerstand nach VCC um eine beliebige Referenzspannung zu 
erzeugen.
AVCC über einen 0R führen, den man ggf. auch gegen eine 10..100µH 
Induktivität oder eine Perle tauschen kann.

Es fehlt ein C (100nF) an VCC am Controller ("parallel" zu C8). Jeder 
VCC Eingang muss seinen eigenen Block-Kondensator haben.

Anstelle von C3 / C4 nur einen 4..22pF Trimmer vorsehen, um die 32kHz 
korrekt zu ziehen. Oder alternative Bestückung DrehCo / Fest-C vorsehen.

Anstelle des MAX232 einen ST3232 nehmen:
Vorteile sind 3..5V Betrieb und kleinere Kondensatoren ( 100nF) und 
billiger.

Bitte vergleiche mal die Pinouts von den neuen CPUs, also Serie mega324, 
mega644 und mega128x. Da gibt es einige pinkompatible Bausteine. Das 
Würde das Modul flexibler machen und erfordert nicht 11€ für einen 
128xer, wenn man nur zwei Relais steuern möchte, da tun es dann auch 5€ 
für einen kleineren Proz bei identischem Layout.

Siehe auch einen kleinen Stecker für +5, GND, SDA und SCL vor, damit man 
I2C direkt nutzen kann.

Gruß, Ulrich

Autor: Thomas S. (thomass)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@ Ulrich,

zuerst einmal Danke für Deine Antwort.
Ich habe nun das Layout nochmals überarbeitet.
- Widerstandwerte geändert 470R auf 22R
- AREF Anschluss habe ich auch etwas überarbeitet.
Zu den Blockkondensatoren hast Du geschieben

> Es fehlt ein C (100nF) an VCC am Controller ("parallel" zu C8). Jeder
> VCC Eingang muss seinen eigenen Block-Kondensator haben.

Ich habe aber 3 Stck eingebaut 2x Vcc und GND und 1x Avcc und AGND

> Anstelle von C3 / C4 nur einen 4..22pF Trimmer vorsehen, um die 32kHz
> korrekt zu ziehen. Oder alternative Bestückung DrehCo / Fest-C vorsehen.

Meinst Du 2 Trimmkondensatoren anstatt C3/C4 um den Takt exakt 
einzustellen

Ich habe hier einige MAX 232 herumliegen daher werde ich diese verwenden 
aber danke für den Tipp.

Einen Stecker für TWi habe ich auch noch vorgesehen ist eine gute Idee.

Das mit den Multilayout für mehrere Prozessoren werde ich mir noch 
überlegen.

Ich schicke hier nochmals die überarbeitete Version.

Thomas

Autor: Thomas S. (thomass)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@ Ulrich,

zuerst einmal Danke für Deine Antwort.
Ich habe nun das Layout nochmals überarbeitet.
- Widerstandwerte geändert 470R auf 22R
- AREF Anschluss habe ich auch etwas überarbeitet.
Zu den Blockkondensatoren hast Du geschieben

> Es fehlt ein C (100nF) an VCC am Controller ("parallel" zu C8). Jeder
> VCC Eingang muss seinen eigenen Block-Kondensator haben.

Ich habe aber 3 Stck eingebaut 2x Vcc und GND und 1x Avcc und AGND

> Anstelle von C3 / C4 nur einen 4..22pF Trimmer vorsehen, um die 32kHz
> korrekt zu ziehen. Oder alternative Bestückung DrehCo / Fest-C vorsehen.

Meinst Du 2 Trimmkondensatoren anstatt C3/C4 um den Takt exakt 
einzustellen

Ich habe hier einige MAX 232 herumliegen daher werde ich diese verwenden 
aber danke für den Tipp.

Einen Stecker für TWi habe ich auch noch vorgesehen ist eine gute Idee.

Das mit den Multilayout für mehrere Prozessoren werde ich mir noch 
überlegen.

Ich schicke hier nochmals die überarbeitete Version.

Thomas

Autor: Ulrich P. (uprinz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Schaue mir die Details morgen an, ist ein harter Tag gewesen. Aber nein, 
am 32kHz Quarz reicht ein Trimmer oder zwei Kondensatoren. Ich meine, 
der Trimmer muss an den Eingang, kann mich aber auch irren und er muss 
an den Ausgang. Ich muss da noch mal nachsehen. Auf keinen Fall zwei 
Trimmer :)

Achso, die verschiedenen (3)232 sind oft pin kompatibel, also ist das 
kein Problem, man kann es wahlweise bestücken und auf die SMD Pads für 
ein EUA oder EUB 1µF Kondensator kann man auch leicht einen 080x 
Kondensator mit 100nF löten.

Gruß, Ulrich

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas, Du sprichst von einem Layout, ich sehe nur einen Schaltplan...?

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Mal ehrlich, was soll dieses Widerstandsgrab. 22R sind zu klein um 
idiotensicher zu sein. Viel grösser kannst du sie auch nicht machen, da 
du dann manche Sachen unter Umständen nicht mehr ansteuern kannst. 
Pull-Ups kannst du auch auf der Platine vorsehen, wo sie hingehören. 
Noch was: AVRs sind robuster als du denkst.

MfG Spess

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm joa das mit den Widerstaenden ist schon sehr exzessiv und die 
externen Pullups sind mal komplett ueberfluessig.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was hast Du denn mit diesem riesen Monsterboard vor?

Ich würd mir lieber ne Handvoll ATmega8 kaufen (CSD: 0,99€), damit bist 
Du wesentlich flexibler.
Und bei 0,99€ brauchste auch keine extra Schutzwiderstände, wenner put 
is, nimmste den nächsten.

Es macht auch mehr Spaß, wenn man die Aufgaben einfach und übersichtlich 
hält und auf mehrere MCs verteilt. Und der Layoutaufwand sinkt auch 
rapide.


Gerade als Anfänger sollte man nicht mit den größten Chips anfangen.

Ich vermute mal, daß 99% aller Entwickler mit ATmega128 dessen Flash nur 
zu unter 10% ausnutzen.


Peter

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Dannegger wrote:
> Gerade als Anfänger sollte man nicht mit den größten Chips anfangen.
>
> Ich vermute mal, daß 99% aller Entwickler mit ATmega128 dessen Flash nur
> zu unter 10% ausnutzen.

Joa. Ich mach jetzt auch schon ne gute Zeit mit AVRs rum aber bisher 
hatte ich kein reelles Projekt wo ich einen Mega128 auch nur annaehernd 
gebraucht haette. Ich hoff ich komm noch soweit ;)

Autor: Dipl. Ing. (depr.) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja,

ich liebe die ATMega 256x. Flash nutze ich nicht aus, aber den RAM kann 
man schon brauchen. Von den IO-Pins und den Timern ganz zu schweigen.

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@all,

ich möcht zwar die Diskussion nicht stören aber sie schweift etwas vom 
Thema ab.
Ich habe den Mega128 gewählt da ich insgesammt 32 I/O benötige plus 2 
UART's.
DA ich eine Menusteuerung noch integriert habe sind jetzt schon 52% des 
des Flash Speichers belegt und 32% des EEPROM auch.
Also denke ich nicht das er überdim. ist zuden kostete einer  6 EUro und 
das ist OK.

@Ulrich,

das mit dem Kondensator am 32Khz Quarz habe ich bereits abgeändert.

_____________________________________

Mein Layout ist noch mit Luftlinien überzogen daher habe ich nur den 
Schaltplan gepostet.
Ich will ja schliesslich kein Layout erstellen um danach nochmal alles 
ändern
zu müssen weis einiges nicht ganz stimmt.
Es ist eben mein fast erstes.

Thomas

Autor: Christian Erker (DL3CE) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie zum Teufel verbräts du 64 KB mit einem Menü???

Gruß,
Christian

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist halt ein 4x40 Display mit einer sehr umfangreichen Menustruktur 
damit ich alle  Werte die im Betrieb wichtig sind ändern kann.
Zusätzlich noch einige Infotexte etc.
Ich kann nur das wiedergeben was AVR Studio mir anzeigt und das ist eben 
58% belegt.

Thomas

Autor: Thomas S. (thomass)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

ich habe nun meine Adapterplatine soweit fertig zumindest denke ich das 
jetzt noch :-).
Da es wie gesagt mein erstes Layout ist will ich Euch um eure Meinung 
bitten.
Es geht mir eigentlich nicht warum ich einen 128er verwende sondern um 
allgemeine Dinge wie z.B. sind die Quarze richtig plaziert, sind alle 
Vcc und GND korrekt beschaltet oder habe ich etwas vergessen etc.
Am 6poligem ISP ist noch eine ungeroutete Leiterbahn diese habe ich 
nicht vergessen diese kann ich weglassen da Eagle nur meine beiden 
Versorgungsstecken verbinden will.

Danke schonmal für eure Meinungen.

Thomas

Autor: Pete K. (pete77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du schon einmal den DRC laufen lassen ? Einige Bauteile und 
Leiterbahnen sind sehr eng beieinader.

Auch der ERC sollte ohne Fehler durchlaufen.

Und immer alle airwires routen. Es hat seinen Grund, dass diese 
Verbindungen benötigt werden.

Und lass diese Widerstände weg ...

Der Schalter sieht aus, als ob ein Widerstand auf dem gleichen Layer 
liegt. Das geht nicht.

Der Max3232 braucht keine Elkos, man kann 100nF Kerkos SMD benutzen.

Versuche, das Layout einseitig hinzubekommen. Teilweise sind da komische 
Layerwechsel drin.

Ist der ISP richtig beschaltet ? Kenne den 128 nicht gut.

C10 ist überflüssig.

Das Board sollte aufsteckbar sein ? So ist es das nicht.

Autor: Thomas S. (thomass)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Pete

DRC und ERC laufen ohne Fehler ausser einer airwire die ich definitive 
nicht brauche ist GND und das ist auf 2 Steckern und Eagle will diese 
einfach verbinden ich aber nicht.

Die Widerstände möchte ich nicht herunternehmen, wenn ich diese nicht 
benötige kann ich immer noch einen 0Ohm bestücken.

Der Schalter ist auf dem Toplayer und der Kondensator auf Bottom.

Max232SMD braucht keine Elkos ?!? Kelko 1206 reichen!!? Werde mal sehen 
ob ich noch welche finde ansonsten bleibe ich bei Elkos.

ISP sollte eigentlich passen ist hier etwas anders als normal.

C10 habe ich hier im Forum gelesen, das dieser bestückt werden soll wenn 
der ADU nicht verwendet wird.

Einseitiges Layout funktioniert nicht denke ich zumindest da unter jedem 
Widerstand noch ein zweiter sitzt als Pullup.

Das Board ist schon steckbar da alle Stecker auf dem Toplayer sind 
ausser die MicroMatch diese sind von der Bottom Seite bestückt.

Die Dim soll auch so bleiben daher ist einseitig nicht machbar denke 
ich.

Sonstige Meinungen

Thomas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.