Hallo,
ich bin gerade dabei meine erste "richtige" Platine zu entwerfen.
Folgendes habe ich vor:
Die Platine soll eine Erweiterung meines Atmel STK500 Boards darstellen,
indem sie einen FTDI FT2232D Dual Port USB<->UART mit einem Kanal im
FIFO-Modus und einem im UART-Modus dem im STK500 befindlichen AVR zur
Verfügung stellt (jeder der auf meinem Board befindlichen 10-Pin-Header
wird mit einem Flachbandkabel an das STK500 angesteckt).
Habe das Design (als PNG-Bilder und Eagle-Dateien) gezippt angehängt und
weiters die Bilder auf einen Webspace geladen:
http://stud4.tuwien.ac.at/~e0426583/img/platine/schaltplan.pnghttp://stud4.tuwien.ac.at/~e0426583/img/platine/Top.pnghttp://stud4.tuwien.ac.at/~e0426583/img/platine/Bottom.png
Da ich bisher noch keine Erfahrung mit dem Entwerfen von Platinen
(ausser Lochraster mit jeder Menge kreuz und quer gelöteter Kabel...)
habe, würde ich mich freuen, wenn mir jemand
Verbesserungsvorschläge/Tips dazu geben könnte. Den DRC-Check des
geplanten Leiterplattenherstellers besteht das Design bereits, ich bin
mir aber nicht sicher, ob das überhaupt so funktionieren kann.
Zwei konkrete Fragen hätte ich auch dazu:
- Ich benutze die vom STK500 gelieferte Spannungsversorgung (jeder
Port-Header hat einen +5V und einen GND-Pin), ist es ratsam, alle drei
einzubinden?
- Ebenfalls bezüglich der Spannungsversorgung: Ich habe die
Entkopplungskondensatoren zwischen +5V und GND, die im Datenblatt des
FT2232D in Abbildung 9 zu sehen sind weggelassen, da ich vermute, dass
das STK500 bereits eine ausreichend stabilisierte/entstörte
Versorgungsspannung bereitstellt - ist das OK?
Danke im Vorraus!
MfG,
Martin
Die Kondensatoren solltest du keineswegs weglassen. Die "decoupling
capacitors" sollten so nahe wie möglich an deinem Chip sitzen. Am besten
liest du dir noch mal nach wofür die gut sind, dann verstehst du auch
warum man die dahin tun sollte.
C2 bildet zusammen mit R6 nen Tiefpass für AVCC den du nun über die
Platine verstreut hast. Die sollten am Besten beide in der Nähe des AVCC
Pins sein.
Sieht doch gar nicht schlecht aus für das erste Design.
Ich kann mich da nur Achim anschliessen. Entkopplungs-Cs nicht weglassen
und unbedingt nahe am IC platzieren. Schönes Ausrichten der Bauteile auf
der Leiterplatte ist sekundär! Ich würde sogar dem Eeprom noch 100nF
spendieren.
Nun zur EMV: Aus Sicht der EMV ist die grosse massefreie Fläche auf Top
ungünstig. Bitte mit Masse ausfüllen. Ebenso gibt es auf Bottom eine
Fläche zwischen Vcc und der einen Quarzleitung. Die sollte auch mit
Masse aufgefüllt werden. Die beiden Masseflächen von Top und Bottom an
den Rändern mit Vias verbinden.
Sollte sich deine Leiterplatte dann gegenüber EMV immer noch
störempfindlich zeigen melde dich bei mir.
Kein Kondensator für den Reset?
Die Leiterbahn zwischen den Pfostenleistenpin`s
(Uart B,Bottom Layer und Fifo_ctrl, toplayer)kann mittiger zwischen
den Pad`s verlegt werden.
Deine Clearence für den Leiterabstand zur Massefläche könnte ein
wenig größer sein(Verdoppeln).
Ein Text auf beiden Layern (LS(gespiegelt) + BS) vermeidet Verwechselung
oder Spiegelung bei der Herstellung.
Wenn du einen Prototypen selbst machst, paß auf den Quarz auf,
das der keinen Kurzschluß über das Gehäuse verursacht.
Warum haste denn doppelseitige Bestückung gemacht?
(ist doch genug Platz vorhanden)
Die Hole`s einiger Pad`s scheinen mir ein wenig groß.
Wie willst du die Platine eigentlich befestigen?
Die Via unterhalb R11 und links von R12 wirste nicht löten
können(Wärmeableitung über Massefläche), falls die absichtlich
dort plaziert wurden(dann noch Wärmefalle+ einbauen).
Leiterbahnen die über das Toplayer mit verdeckten Pads
(z.B.Pfostenleisten) verbunden sind kannste bei einer selbstgeätzten
Leiterplatte wegen der fehlenden Durchkontaktierung nicht löten.
Mehr ist mir nicht aufgefallen.
Sorry, aber ich bezweifle, dass der DRC-Ceck richtig ist!
Da laufen einige Leitungen (unnötig) knapp an Pins entlang. Das muss
deutlich weniger als 0.2mm sein und ich vermute, dass 0.2mm der kleinste
erlaubte Abstand sein wird.
Vielen Dank für das Feedback!
Habe das Layout ganz von Beginn an neu gemacht und versucht, Eure
Vorschläge einzubauen. Die "neue" Platine ist wieder im Anhang als PNG +
Eagle-Dateien sowie die Bilder im Web:
http://stud4.tuwien.ac.at/~e0426583/img/platine/schaltplan.pnghttp://stud4.tuwien.ac.at/~e0426583/img/platine/Top.pnghttp://stud4.tuwien.ac.at/~e0426583/img/platine/Bottom.pnghttp://stud4.tuwien.ac.at/~e0426583/img/platine/Top+Bottom.png
Bin auch diesmal für Tips und Verbesserungsvorschläge dankbar!
Bei dieser neuen Version habe ich den Autorouter nicht verwendet. Alle
Bauteile sind jetzt auf einer Seite. Decoupling Capacitors (C5 - C8)
sowie 10k Pullup beim Data-Out Pin des EEPROM (R8) habe ich hinzugefügt.
Weiters hat der USB-B-Stecker einem USB-Mini-Stecker Platz gemacht.
Langsam denke ich darüber nach, ob ich die Platine nicht gleich etwas
größer machen sollte und einen AVR direkt dazugeben sollte... Habe an
der Sache jetzt schon viel Freude gefunden, bisher nur AVR-Software
gemacht :)
Die Platine möchte ich fertigen lassen (inkl. Lötstopplack, ohne
Bestückungsdruck) - bezüglich der Vias mit Wärmeableitung über
Massefläche: In den Design-Rules des Platinenherstellers (PCB-POOL) ist
das offenbar so vorgesehen, es gäbe da ja die Option, solche Vias mit
Stegen zu versehen, die ist im Eagle-DRC-File deaktiviert - ich nehme
an, die diversen Platinenhersteller werden da Möglichkeiten haben, das
so zu fertigen?
@ AC/DC: Kondensator bei RESET ist im Datenblatt des FT2232D nicht
vorhanden, die Grundbeschaltung habe ich mehr oder weniger 1:1 aus
diesen Datenblättern entnommen, ist der dort so wichtig?
@ seppk: Wo müsste ich den Kondensator am EEPROM anschließen? Zwischen
Masse und VCC analog zu meinem C2 bei dem FT2232D?
Sieht schon mal besser aus, aber das mit den "decoupling capacitors" ist
noch immer nicht so toll. Du hast nun einfach C5-C8 in eine Reihe
gepackt, so können sie aber nicht so wirken wie sie sollen. Eigentlich
sollen die so nah wie möglich an den verschiedenen
Versorgungsspannungspins sein, also in deinem Fall einer auf jeder Seite
des ICs. Du solltest C5-C8 so ähnlich layouten wie C1 jetzt ist.
Ein zusätzlicher Kondensator im µF Bereich auf dem Board kann sicher
auch nicht schaden, wobei dessen Position nicht so kritisch ist.
Die Beschaltung von AVCC ist nicht korrekt (ist mir letztes mal gar
nicht aufgefallen). R6 und C2 sollen einen Tiefpass bilden, was sie so
aber nicht tun. C2 muss auf die andere Seite des Widerstands, also
zwischen AVCC und GND.
Die Resetbeschaltung sollte so OK sein.
Mit dem Kondensator am EEPROM zwischen VCC und GND hast du recht. Das
soll auch ein "decoupling capacitor" sein. Allerdings wär das eher
analog zu C5-C8 und nicht C2 (zumindest nachdem du die Beschaltung von
AVCC korrigierst hast).
Zum X1, der USB-Buchse. Wenn die beiden Bohrungen, gleich über den
SMD-Pads, für die Gehäusebefestigung gedacht sind, solltest Du diese mit
Masse verbinden. Ich hatte auch mal was mit einem ähnlichen FT232 Chip
gemacht, auch keine Masse angeschlossen, und es funzte nichts. Dann habe
ich das Buchsengehäuse mit Masse verbunden, und siehe da.....
Gruß Berny
>Die Platine möchte ich fertigen lassen (inkl. Lötstopplack, ohne>Bestückungsdruck) - bezüglich der Vias mit Wärmeableitung über>Massefläche: In den Design-Rules des Platinenherstellers (PCB-POOL) ist>das offenbar so vorgesehen, es gäbe da ja die Option, solche Vias mit>Stegen zu versehen, die ist im Eagle-DRC-File deaktiviert - ich nehme>an, die diversen Platinenhersteller werden da Möglichkeiten haben, das>so zu fertigen?
Klar können die das, trotzdem abklären.
Und wer bestückt? Wenn das auch ne Firma machen soll, solltest du
auch die um Rat fragen.
Ich hatte angenommen das du dir eine Platine selbst ätzt.
Wenn du die Leiterplatte fertigen lassen willst brauchste die vielen
Vias links vom Chip nicht. Geh mit den Leiterbahnen direkt auf der
Bestückungsseite an die Pfostenkontakte. Durch die Durchkontaktierung
wäre das problemlos von der Lötseite lötbar.
Koppelkondensatoren wie oben schon beschrieben sinnvoll platzieren.
Bei Vias an Masseflächen ist es bei näherer Überlegung egal ob Stege
eingebaut werden, weil Via`s ja eigentlich nicht handgelötet werden
müssen (wegen der Durchmetallisierung).
Da du Mischbestückung hast, mußte dir überlegen, welche Maschinenlöt-
methoden zur Anwendung kommt oder ob teilweise oder ganz handgelötet
wird.
>@ AC/DC: Kondensator bei RESET ist im Datenblatt des FT2232D nicht>vorhanden, die Grundbeschaltung habe ich mehr oder weniger 1:1 aus>diesen Datenblättern entnommen, ist der dort so wichtig?
Wenn die Schaltung gemäß Hersteller-Spezifikation aufgebaut ist,
kannste dir meinen Einwand mit dem Reset-Kondensator schenken,
solange ein ext. Reset gewährleistet ist.
Besteht eigentlich eine Verwechselungsgefahr bei den Pfostensteckern?
Wenn ja, würde ich die über Bindstopfen und einen entsprechend
abgeschnittenen Pfostenstift (sofern einer frei ist) codieren.
Ansonsten haste ne schöne Arbeit gemacht.
Und wieder danke für das Feedback.
Habe die Kondensatoren jetzt (hoffentlich) richtig verteilt, so dass
jeder VCC Pin der beiden ICs einen eigenen mit möglichst kurzer
Leiterbahn hat. Anbei wieder das ZIP-Archiv mit allen Daten, die Links
in meinen obigen Posts zeigen auch wieder auf die aktuelle Version - die
sollte so jetzt funktionieren - oder?
Bestücken werde ich die Platine selbst.
Eine Frage habe ich zu EAGLE selbst: Ich möchte mir (wie oben schon
angedeutet) noch eine zweite Platine erstellen, die im wesentlichen
einen ATmega1280 oder 2560, einen FT2232D wie auf dieser Platine hier,
evtl. ein externes SRAM + Address Latch, ein paar LEDS, 2 Taster und
Pfostenleisten für 1 oder 2 I/O-Ports sowie ISP-Programmierung
beinhaltet.
Da ich bei PCB-POOL eine Mindestbestellmenge von 1 dm^2 einhalten muss,
würde ich bei Bestellung nur dieser einen FT2232-Platine 6 erhalten, von
denen ich eigentlich nur 2-3 brauche.
Kann ich in EAGLE 2 Platinen aus 2 verschiedenen Projekten so
zusammenkopieren, dass sie wie eine größere aussehen, um so mit einem
Auftrag beim Platinenhersteller ca. 2-3 Platinen von beiden Typen zu
bekommen?
@ Berny: Die USB-Buchse hat eigentlich einen eigenen Anschluss für
Masse, das ist das ganz linke Pad von den 5 in der Mitte... Werde mir
das aber im Datenblatt noch anschauen, das EAGLE-Modell lässt mich an
den Pads aussen und an den Pins unterhalb nichts anschließen.
Ja, an meiner Buchse ist natürlich auch ein Masse-Pin, der dann mit der
Schaltungsmasse verbunden ist. Aber das Buchsengehäuse ist dadurch nicht
mit Masse verbunden. So war es jedenfalls bei mir. Ich hatte jetzt keine
SMD-Buchse, nur eine mit Lötpins. Aber könnte wohl das gleiche Problem
werden. Wenn Eagle das nicht unterstützt, einfach die nächste
GND-Leiterbahn auf das Pad routen, sodas Verbindung entsteht. Oder, da
es ja kein Massenprodukt werden soll, sondern nur eine Platine, kannst
du auch einfach, die nahegelegene Massefläche, mit viel Lötzinn, mit dem
Pads verbinden, falls erforderlich. Behalte es einfach mal im
Hinterstübchen: wenn die USB-Verbindung nicht zustande kommt, Buchse aus
Masse ziehen!
Gruß Berny
Ich habs nur mal kurz überflogen und es sieht langsam echt gut aus. Das
motiviert mich endlich auch mal ne Platine zu erstellen und fertigen zu
lassen.
Soll dein Quarz echt auf die Bottom-Seite, wo der Bestückungsdruck ist?
Wenn er auf die Top-Seite soll wirst du ein Problem bekommen, da er sich
mit den umliegenden Kondensatoren überlappt.
saublöde frage, von wo kommt VCC her? sehe keine klemme für die
spannungsversorgung der platine... (oder liegts daran das es schon 2-3
wiskey's gab heute abend :-) )
@ Achim: Ja, ich wollte den Quarz zuletzt auf die Bottom-Seite geben, da
sich das mit den Kondensatoren auf der Top-Seite so besser ausgeht.
Inzwischen denke ich aber eher darüber nach, einen SMD-Quarz zu
verwenden, mal sehen wie das mit dem Platz dann ist...