PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : STM32 + blinkende LED



Mountainking
06.10.2009, 22:38
EDIT: So meine Schaltung ist fast fertig. Vielleicht findet ja jemand Zeit mal über das Board zu schauen.

Bauteile die verwendet wurden sind u.a.:

Button (TASTER 9312)
Quarz (16,0000-HC49-SMD)
Mini-USB-Connector (USB BWM SMD)
Spannungregler (LF 33 CV)
Kondensator 100nF (X7R-G0805 100N)
Kondensator 1µF (X7R-G0805 1,0/16)
Kondensator 4,7µF (X7R-G0805 4,7/16)
Kondensator 10nF (X7R-G0805 10N)
Kondensator 2,2µF (VF 2,2/50 C-B)
Kondensator 22pF (NPO-G0805 22P)
SMD-LED 0805 rot (180102 - 62)
SMD-LED 0805 grün (180104 - 62)
SMD-LED 0805 gelb (180107 - 62)
SMD-LED 0805 blau (180107 - 62)
STIFTLEISTE 2X20 RM 2,54 (741239 - 62)
Widerstand 47kOhm (428280 - 62)
Widerstand 10kOhm (428124 - 62)
Widerstand 160Ohm (427691 - 62)
MAX3232ID
STM32F103VBT6

Parameter zur Herstellung der Platine:
Vorlage: Overheadfolie
Belichtungszeit: 4min (UV-Belichtungsgerät 2)
Entwicklungszeit: 30s (NaOH mit 10g/Liter bei Zimmertemperatur)
Ätzdauer: ca. 5-10min (Natriumpersulfat mit 200g/Liter bei 40-50°C)

Gruß Mountainking

theborg
07.10.2009, 07:07
3.) Brauche ich für eine solche Schaltung eigentlich schon einen ext. Quarz?

Nein

4.) Die Stromversorgung soll über ein externes Netzteil kommen (3V). Reichen diese 3V für die unten genannten Bauteile aus? Eigentlich sollten es ja 3,3V sein, aber die Bauteile sind wohl ein wenig tolerant was die Spannung angeht (auch nach unten hin).

ja 3V gehen laut DB ist 2,9V des minimale.

7.) Orientieren werde ich mich an der folgenden Schaltung:
www.mikrocontroller.net/articles/Cortex_M3_OCM3U
Was ich nicht verstehe. Warum sind hier die meisten Kondensatoren nicht beidseitig angeschlossen? Z.B. die bei den Quarzen?

Sind sie die liegen auf einen Massepad

7.1) Täusche ich mich oder ist in dieser Schaltung keine Masse-Verbindung vorhanden? Zumindest Pin 5 der Sub-D-Buchse ist nicht belegt und auch der Minus Pol der Batterie wird nicht verwendet.

Siehe frage 6.)

7.2) In der Schaltung wird ein Jumper am Boot0-Pin des µC verwendet. Wozu dient dieser?

Damit kanste auswählen ob der Bootloder starten soll oder das Programm dazu gibt es dann noch boot1 in den wiki Beitrag ganz unten sind auch alle DBs verlinkt.

8.) Den Kondensator (0,1µF) am MAX3233 kann man ja weglassen? Zumindest habe ich das so gelesen.

ja der hat interne.

9.) Wie ist das im Datasheet vom STM32F103VBT6 in Figure 12 bzgl. VDD und VSS gemeint (http://www.st.com/stonline/books/pdf/docs/13587.pdf)? Da soll ja am VDD3 ein 4,7µF Kondensator verwendet werden. Wird der zum 100nF Kondensator in Reihe geschaltet oder wie ist das zu verstehen?

nein des sind Pufferkondensatoren die gehen immer nach gnd.

10.) Eine Frage zum Löten selber. Mein Lötkolben wird 450°C heiß. Ist dieser überhaupt noch zum Löten von so einem µC geeignet? Oder ist diese Temperatur normal? Damals als ich mir diesen gekauft habe war ich noch der Meinung viel hilft viel :).

wenn du schnell lötest geht es.


Quarz (18,4320-HC49-SMD) <<--- Umbedinkt nochmal des DB lesen ich glaub 16mhz wahren des Maximum.

Ich hab auch noch platinen von der OCM3U liegen

oZe
07.10.2009, 11:47
Hi!

1) Ja das geht mit dem eingebauten Autorouter. Die Dinger funktionieren aber ehr schlecht als recht und die ergebnisse lassen zu wünschen übrig. Also lieber selber routen.

2) Nein ohne Schaltplan kein Layout. Macht auch wenig Sinn direkt auf dem Board anzufangen weil dann jedes Gehäus einzeln ausgewählt werden müsste und dann geroutet werden müsste. Ohne Luftlinien (die logischerweise nur mit Schaltplan zu sehen sind) verliert man da den Überblick.

5) Die 1200mA sind der Wert den das Netzteil maximal liefern kann. Ob deine Schaltung nun 1000mA oder 5mA zieht ist vollkommen egal. Die Schaltung nimmt sich das was sie braucht und mehr Strom fließt nicht.


So wie ich das sehe fehlen dir Grundlagen in Sachen Elektronik. Es wär sinnvoller wenn du erstmal kleiner Anfängst und dich ein bischen durchs RN Wissen ließt bevor du mit so nem "großen" Projekt anfängst.

Mountainking
07.10.2009, 11:58
Hi, danke schonmal für die Antworten. Was ich noch nicht so recht verstehe sind die Massepads. Wie setzt man die in Eagle. Kann man einfach einen Anschluss frei lassen? Dann müssten doch aber alle anderen Pads auch an der Masse sein.

Zur Frage 8. Dass der interne Kondensatoren hat ist klar, aber auch im Datenblatt von Maxim (http://datasheets.maxim-ic.com/en/ds/MAX3233E-MAX3235E.pdf) auf der letzten Seite ist dieser zusätzliche 0,1µF Kondensator eingezeichnet.

Und nochmal wegen Frage 9. Also werden die VDD1/2/3/4/5 über die 100nF Kondensatoren gegrounded und die VSS1/2/3/4/5 direkt gegrounded. Und zusätzlich wird VDD3 nochmal über einen 4,7µF Kondesator gegrounded. Also habe ich am VDD3 praktisch zwei Kondesatoren, die gegrounded sind anzuschließen?

Und stimmt der Quarz darf maximal 16Mhz haben.

Hellmut
08.10.2009, 01:57
Mountainking, ich möchte mich oze anschliessen. Es wäre das erste mal das ich es erlebe das man vom Stand aus so ein Projekt meistert. Deine Fragen zum Thema Massepads und deine Aussagen zum Lötkolben sind die Ursache für diese von mir hier nochmals ausgesprochene Empfehlung. Es wäre doch schade wenn dein Enthusiasmus wegen eines zum Starten ungeeigneten Projektes in Frustration und Aufgabe flössen. Den Prozessor mit Pins im 0,5 mm Abstand mit so einem Lötkolben zu löten halte ich für Wahnsinn! Ich war vorletzte Woche bei der Firma Martin-SMT, eine Technologieschmiede zum Thema Lötpastenauftrag, Löten und Reworking. Die Geräte platzieren die Lötpaste auf, ich brauchte aber eine starke Lupe um es überhaupt zu sehen!

Mountainking
08.10.2009, 12:04
Für mich ist ein Massepad eine Massefläche auf der Platine. Hier müssen dann alle Leiterbahnen gegenüber dieser isoliert werden. Nur sehe ich bei dem Eagle Board eben keine Isolierungen. Das Massepad ist wohl das Wire/Polygon auf der Bottom-Ebene. Das würde auch die Durchkontaktierungen, die scheinbar ohne Sinn auf dem Board verteilt wurden, erklären. Aber wenn ich dieses Board so Ausdrucke wird das nie im Leben funktionieren. Darum kam eben meine Frage wie das mit den Massepads in Eagle (siehe Kondensatoren) funktioniert.

Und Sorgen machen ich mir wegen der Umsetzung auch keine. Ich setze mir immer große Ziele und habe die bis jetzt auch immer erreicht. Und wenn das mit dem STM32 auflöten nicht klappt muss ich dies halt auch von einer Firma machen lassen. Aber der Rest sollte doch machbar sein.

theborg
08.10.2009, 16:35
hi wen die net angezeigt werden irgentwo gibs ne option lusftlinien berechenen danach solten sie wieder da sein

Mountainking
08.10.2009, 18:33
Ich habe es jetzt mit der Massefläche hinbekommen. Was mich noch interessieren würde. Hast du die Leiterbahnen per Hand verlegt oder berechnen lassen? Nicht dass ich jetzt die Schaltung per Hand mache und es geht auch viel einfacher. Ich habe auch mal probeweise aus deinem Schaltplan ein Board erzeugen lassen. Allerdings ergab das ein einziges Knäul aus Signallinien und das zu entflechten macht meiner Meinung nach keinen Sinn. Da ist es sicherlich schneller das Layout per Hand zu machen. Oder gibt es da einen Trick den ich mal wieder übersehen habe? Auch das Autorouting mit maximalen Eintellungen kam bei mir nach einer Hand voll Leiterbahnen nicht mehr weiter. Zumindest wurde der größte Teil der Signallinien nicht in Leiterbahnen umgewandelt.

kounst
09.10.2009, 10:55
hi,
du wirst vermutlich um das layouten per hand nicht herumkommen. Der Autorouter kann wenn überhaupt erst ein brauchbares Layout zustandebringen wenn die Bauteile optimal angeordnet sind. Nur die Anordnung ergibt sich oft erst beim layouten per hand ;-)

Übrigens VSS ist die Masse. (Ich mag mich täuschen aber ich hatte den Einduck das dir das nicht klar ist)

Ich befürchte beim löten des stm32 wirst du scheitern. Und weil du sonst wohl eh erstmal nicht viel hardware brauchst würd ich dir sowas hier empfehlen:
http://www.futurlec.com/ET-STM32_Stamp.shtml

Da müsstest du nur noch ne stromversorgung dran anschließen und deine LED.
Wenn du ein konkretes Projekt hast kannst dus immernoch in ein layout "gießen".

Mountainking
09.10.2009, 12:57
@all
Ich habe jetzt mein Board im ersten Post angehängt. Wer will kann ja mal nach Fehlern suchen.

@kounst
Das Board wäre sicherlich nicht schlecht, aber mir geht es ja darum die Platinen selber du bauen.

@theborg
Würdest du mir bitte nochmal sagen, wie man einzelne Pins an der D-Sub-Buchse bzw. Batteriehalterung grounden kann.

kounst
09.10.2009, 13:08
sobald du den betreffenden pin im schaltplan mit gnd verbindest wird im layout ein "gummiband" nach gnd angezeigt. wenn du an der stelle ne gnd fläche hast ist der pin sofort verbunden.

Sehr zu empfehlen:
ftp://ftp.cadsoft.de/eagle/program/4.16r2/manual-eng.pdf

Mountainking
09.10.2009, 15:38
Das Manual gibt es übrigens auch auf deutsch ;). Das Problem ist, ich habe (noch) keinen Schaltplan. Ich dachte es würde auch so gehen, da ich in dem oben genannten Schaltplan von theborg keine D-Sub-Buchse gesehen habe. Allerdings habe ich gerade nochmal genauer nachgeschaut und er hat diese doch, allerdings war diese nicht gleich als solche erkennbar (F09HPS). Hat sich dann also auch erledigt.

Noch ein paar Fragen zum Board:

- Die Ausgangsspannung der I/Os des STM32 betragen 1.3V, wenn ich das richtig sehe? Die typische Betriebsspannung der LEDs ist aber 2,2V. Wird das funktionieren?

- Geht das so einfach mit dem Spannungswandler? Eigentlich braucht der ja am Pin1 -Vin. Geht das auch mit GND? Oder muss ich hier die +5V invertiert reingeben?

- Zu den Kondensatoren an den Quarzen. Die Formel ist ja CL=CL1*CL2/(CL1+CL2) +Cstray. CL=20pF, CL1 und CL2 sollen idealerweise gleich groß sein. D.h. wenn ich für Cstray=2pF annehme, dann muss ich auf ca. 18pF für CL kommen. Das erreiche ich für CL1=CL2=40pF. Allerdings sollen laut Datenblatt CL1 und CL2 nicht größer als 15pF sein. Kann ich trotzdem die 40pF nehmen?

kounst
09.10.2009, 16:04
wie auch schon weiter oben im thread steht solltest du wirklich mit dem schaltplan anfangen!

Die Ausgangsspannungne des STM32 betragen sicher nicht 1.3v sondern Vdd oder Vss (push-pull versteht sich)
wenn dir die Spannung nicht reichen sollte kannst du ja nen 5v tolleranten pin nehmen und ihn open-drain konfigurieren.
Du musst bei den LEds vor allem auf den Strom achten. Vorwiderstand!!
Der Micro kann maximal 20mA sourcen oder sinken

solange -Vin kleiner als deine zu wandelnde spannung ist passt des. also gnd ist ok.

Mountainking
09.10.2009, 21:10
Das Problem ist halt dass ich z.B. keine Bibliothek für den MAX3233E habe. Darum habe ich mir gedacht, ich lasse den Schaltplan gleich bleiben, wenn mir sowieso Teile fehlen. Ich habe jetzt mal im Nachhinein den Schaltplan soweit wie möglich erstellt und natürlich jede Menge Konsistenzfehler. Mir war nicht klar, dass die Routen wirklich mit den Bauteilen "angedockt" werden müssen. Ich dachte der erkennt das automatisch, wenn ich eine Leiterbahn per Hand mit einem Pad verbinde. Naja, von der nächsten Platine wird dann zuerst der Schaltplan erstellt.

@all
Klappt das eigentlich mit dem MAX3233E? Ich habe ja den FORCEON bzw. -OFF und den IVALID Anschluss noch nicht verbunden.

kounst
09.10.2009, 22:13
Das du für irgendein Bauteil keine lib hast wird dir noch öfter passieren.
Kann man sich aber recht leicht selber erstellen.
http://www.rn-wissen.de/index.php/Bauteil_selber_erstellen

Wieso nimmst du nicht den max2323 - der ist auch in der lib.

Bei der Beschaltung vom max schau mal im Datenblatt auf die letzte seite.
invalid kannst du offen lassen das isn ausgang.
http://pdf1.alldatasheet.com/datasheet-pdf/view/73144/MAXIM/MAX3233E/+43Q4WupNuhLaxDaNNvzL+/datasheet.pdf

Man findet übrigens in den meisten datasheets Applications Beispiele!

theborg
10.10.2009, 08:54
Hi soweit ich weiss ist der max3233E Pinkompatibel zum 3232 oder 232 kannst also die libs davon nehmen, alerdinks die mit den internen kondensatoren haben teielweise probs. mitschnelleren Bautraten deswegen würde ich externe noch mit einplanen muste ja nicht umbedinkt bestücken.

zur I/O Spannung die ist Betribsspannung, und sind nicht 5V tollerant !!!

kounst
10.10.2009, 09:50
Hi,
ich hab mich wohl missverständlich ausgedrückt.

Ich meinte natürlich nicht das ein pin 5v liefern kann.
Sondern das man die led mit Vorwiderstand zwischen eine 5v versorgung und den (open-drain konfigurierten) Pin hängen kann. Darf man natürlich nur mit einem 5V toleranten i/o machen!

so- jetzt sind hoffentlich alle Klarheiten ausgeräumt;-)

Mountainking
10.10.2009, 22:16
@theborg
Warum hast du denn den BOOT0-Eingang über einen Widerstand gegrounded? Der sollte doch 3,3V vertragen?
Und warum hast du den 4,7µF Kondensator bei VDD3 weggelassen?

theborg
10.10.2009, 23:06
hi, der wiederstand dient als pulldown für einen einwandfreihen pegel.

bei low am boot0 startet der bootloder bei high das user Programm
der 4,7 den hatte ich damals vergessen macht aber nicht wirklich was sinvoller ist aber mit

Mountainking
12.10.2009, 00:15
Nicht gerade umgekehrt? Also starten des Bootloaders bei high?.
Und wie bist du auf die 22pF von den Quarzen gekommen? Die Formel ist doch CL=CL1*CL2/(CL1+CL2) +Cstray.

Und der Spannungswandler den ich verwenden wollte ist mir zu teuer. Ich möchte jetzt entweder einen LM2937-3.3 oder LF33CV Festspannungsregler nehmen. Hat schonmal jemand mit diesen gearbeitet und kann mir Werte für die Kondensatoren empfehlen. Ich habe mal ein wenig gegoogelt und festgestellt, dass hier jeder andere Werte nimmt. Ist hierbei eigentlich auch eine Z-Diode am GND sinnvoll? Wenn ja mit welchen Parametern?

theborg
12.10.2009, 07:56
Nicht gerade umgekehrt? Also starten des Bootloaders bei high?.
Und wie bist du auf die 22pF von den Quarzen gekommen? Die Formel ist doch CL=CL1*CL2/(CL1+CL2) +Cstray.


Hm ja kann auch sein ist schon etwas her :-)

Bei den quartz ich hab mit 22p gutte erfahrungen gemacht deswegen nehme ich fast immer 22p



Und der Spannungswandler den ich verwenden wollte ist mir zu teuer. Ich möchte jetzt entweder einen LM2937-3.3 oder LF33CV Festspannungsregler nehmen. Hat schonmal jemand mit diesen gearbeitet und kann mir Werte für die Kondensatoren empfehlen. Ich habe mal ein wenig gegoogelt und festgestellt, dass hier jeder andere Werte nimmt. Ist hierbei eigentlich auch eine Z-Diode am GND sinnvoll? Wenn ja mit welchen Parametern?

Ich kann nen 1117tlv33 enfehlen ist nen LDO alerdinks brauchste dafür dan low esr elkos sonst zickt der

ansonsten beim LF33CV brauchste am eingang 470µ und 100n und am ausgang 100n und 10µ

Mountainking
12.10.2009, 12:47
Der 0,1µF und 2,2µF (low ESR Elko) wie es im Datenblatt steht gehen doch auch?

Und noch eine letzte Frage. Wo hast du den STM32 und den MAX gekauft? Ich wollte meine eigentlich bei digikey holen, habe aber im letzten Moment noch gesehen, dass noch Einfuhrsteuer und Zoll und was was ich noch dazu kommt. Das ist mir für so ein bisschen "Elektroschrott" dann doch zu teuer.

kounst
12.10.2009, 14:14
Mit der Beschaltung aus dem Datenblatt klappts auf jeden Fall.
Wirklich unverzichtbar ist sowieso nur der Elko am Ausgang.
Je nachdem was von deine Spannungsversorgung noch alles versorgt wird (z.B Motoren!) Kann ein großer Elko am Eingang vom Spannungsregler nicht schaden.

Den stm32 bekommst du z.b. bei www.sander-elektronic.de
Beim 3.3V MAX hab ich keinen shop gefunden. Ich hab deshalb einen normalen max232 verwendet den mit 5V versorgt und den RX ausgang über einen Śpannungteiler an den TX eingang des stm32 angeschlossen.
In die andere Richtung geht das direkt weil dem max 3.3V als high pegel reichen.

Zahlst du bei digikey nicht auch an die 20$ versandt?

Mountainking
12.10.2009, 15:56
Die Versandkosten fallen zum Glück ab 65€ Bestellwert weg.

Bei Sander-elektronic bestelle ich erst wenn die ihre Homegage endlich wieder hinbekommen. Außerdem haben die keine MAX-ICs. Sofern mir niemand einen guten anderen online-shop nennen kann werde ich bei farnell bestellen (obwohl ich es dort auch eine Frechheit finde nicht darauf hinzuweisen, dass die Preise ohne 19% Mehrwertsteuer sind). Wenigstens haben die aber alles (bis auf den MAX3233E). Allerdings bin ich hier noch am überlegen welchen MAX ich nehme bzw. im Moment tendiere ich stark zu einer alternativen Firma.

Auf den ersten Blick finde ich den MAX3232ID (http://de.farnell.com/texas-instruments/max3232id/transceiver-16-soic/dp/1652282) und MAX3232IDW (http://de.farnell.com/texas-instruments/max3232idw/transceiver-16-soic/dp/1652283) von TI ganz passabel. Was mich hier noch verwundert sind die Bezeichnungen auf der Homepage. Mal heißen die Dinger LINE DRIVER/RECEIVER RS-232, dann nur TRANCEIVER und machmal auch RS232 LINE DVR/RECEIVER. Ich hoffe mal das soll alles das gleiche sein. Den MAX3233E kann man wohl hier in Deutschland abhaken, wenn man nicht bereit ist hohe Einfuhrgebühren zu zahlen. Zudem sind die MAXIM-Bauteile im Vergleich oft 50% teurer. Werde ich in Zukunft dann nicht mehr verwenden.

Die MAX3232 bei reichelt und conrad haben leider nur den Temperaturbereich von 0-70°C und sind auch nur 120kBit/s schnell und kommen damit auch nicht in Frage.

021aet04
12.10.2009, 16:50
Ich bestelle die Sachen hauptsächlich bei www.distrelec.at (gibt auch de)

Mountainking
15.10.2009, 23:17
So, habe das Board nochmal komplett neu gemacht (Download erster Post). Diesmal auch mit Schaltplan. Wer Fehler findet bitte melden.

EDIT:
Habe heute die ersten Test-Platinen geätzt. Mal von der ersten abgesehen, sind die eigentlich auch schon ganz gut geworden. Allerdings gab es auch einige Probleme. Vor allem das Löten ist wie zu erwarten problematisch (dabei sieht das in den Videos auf Youtube so einfach aus). Naja, waren ja nur kostenlose Samples die ich zum Testen verlötet habe. Der Löthonig ist leider nicht so klar wie ich dachte. Damit kann man die ICs dann auch nur schwierig ausrichten. Zudem bekomme ich mit der Lötlitze (0,35mm) die Lotbrücken nicht wirklich weg und die Entlötpumpe funktioniert irgendwie bei so geringen Mengen überhaupt nicht.

Und dann ist mir der 0,6mm Stahlbohrer auch gleich beim ersten Kontakt mit der Platine abgebrochen (zu meiner Entschuldigung: der war aber auch nicht ganz gerade ;)). Leider direkt am Schaft, so dass ich das Ding nicht mehr gebrauchen kann. Sollte man bei so dünnen Bohrern eigentlich eher hohe oder niedrige Drehzahlen verwenden?

Hat sich eigentlich mal jemand die Mühe gemacht die Bungard Nieten zu zählen? Ich mag mich täuschen, aber das sind nie im Leben 1000Stk. Ich würde sagen nicht mal 500.

Da das SMD löten per Hand wohl auf Dauer keine Lösung ist habe ich mir mal eine Heißlüftlötstation bestellt. Mal sehen welche Ergebnisse sich damit erzielen lassen.

Und ich habe noch eine Frage zu dem Reset-Button. In der Schaltung von theborg ist dieser doch dauerhaft über einen Kondensator gegrounded. Wird der Button jetzt gedrückt wird die Leitung direkt gegrounded. Wo ist da der Sinn?

theborg
18.10.2009, 10:36
hi also grade wen man ungeübt ist und auch wegen entlöten mit lötlitze entfehlt sich viel flussmittel zu verwenden das macht die sache wesentlich einfacher

kounst
18.10.2009, 11:00
In den youtube videos funktioniert des deshalb so gut weil das normalerweise professionell mit lötstopp hergestellte Platinen sind.
Da ist es fast schwer ne Brücke zu bekommen;-)

je kleiner der Bohrer desto höher die Drehzahl.

Der Reset pin am MC ist low-active d.h. ein reset wird ausgelöst wenn er auf Masse Potential gezogen wird. Im normalen Betrieb ist der Kondensator geladen und damit sieht der MC einen high Pegel.
Wenn der Taster gedrückt wird wir er Pin auf Masse Potential gezogen. ->Reset

kounst
18.10.2009, 11:17
Normalerweise hat man am Reset pin noch nen Pull-up - schließlich muss der Kondensator ja auch geladen werden.
Aber weils bei theborg auch funktioniert hab ich mal ins Datenblatt geschaut:

der hat einen internen pull-up 40k

Mountainking
18.10.2009, 11:32
Danke für die Antwoten habt mir sehr weitergeholfen.

Zur Platinenherstellung:

Das Problem ist, dass meine Vorlage (Overheadfolie) zu lichtdurchlässig ist. Darum habe ich jezt mal Transparentpapier getestet. Leider auch nicht zu gebrauchen, da die Tinte nicht haftet. Dann habe ich einfach mal normales Druckpapier genommen und das Ergebnis ist erstaunlich gut. Allerdings saugt das Papier die Tinte auf und es lassen sich so sehr dünne Leiterbahnen nicht mehr richtig darstellen. Daher wird mein letzter Test diesbezüglich sein, mal etwas besseres Druckpapier zu verwenden, in der Hoffnung, dass dieses die Tinte nicht aufsaugt. Sollte das auch nicht klappen, werde ich mir einen Reprofilm anfertigen lassen.

Man kann sich ja auch wie ich leider erst jetzt gesehen habe auch recht günstig eine Platine komplett herstellen lassen. Damit hätte ich mir den teuren Belichter, Bohrmaschine und das ganze Zubehör zum Platinen herstellen auch sparen können.

Mountainking
23.10.2009, 17:14
EDIT:
Oh mann, ich habe die Fehler für das schlechte Ätzergebnis gefunden. Ich habe viel zu wenig Natriumpersulfat verwendet, auch war die Temperatur wohl ein wenig zu hoch. Zudem habe ich die Menge des Natriumpersulfat bzw. Natriumhydroxid immer nur für sehr geringe Mengen Wasser abgeschätzt, was sehr fehlerbehaftet war, da die Briefwage nur in 5g schritten messen kann. Jetzt habe ich mich mal exakt an die Mengen die auf den Verpackungen stehen gehalten und jeweils auch gleich einen ganzen Liter der Flüssigkeiten angemischt und siehe da das Ergebnis ist ein Traum. Gerade alle 100 Pins auf der Platine nach Kurzschlüssen durchgemessen und keinen einzigen gefunden. Achso, außerdem habe ich mal den Wert der Isolierungen der Masseflächen deutlich erhöht, was sicher auch zu dem guten Ergebnis mit beigetragen hat.

Das Herstellen der Platine ist jetzt wohl kein Problem mehr. Trotzdem freue ich mich nicht zu früh. Als nächstes müssen die Löcher gebohrt und dann kommt ja auch noch das Löten, was auch noch mal eine Herausforderung wird.

Mountainking
24.10.2009, 20:57
Hier noch ein Geheimtipp von mir:

Ich hatte mir ja die Bungard Durchkontaktierungsnieten (0,6mm) gekauft, wusste aber noch nicht wie ich diese auf die Platine bringe. Das teure Werkzeug wollte ich mir jedenfalls nicht kaufen.
Letztens habe ich mich noch tierisch darüber aufgeregt, dass mir der 0,6mm Bohrer (Conrad: 814500 - 62) abgebrochen war. Jetzt habe ich den Stumpf der 3mm dick ist und spitz auf die 0,6mm zuläuft dafür genommen die Nieten mit einem Hammer umzuwelzen. Danach noch einmal mit dem Hammer direkt auf die Nieten hauen. Ein so gutes Ergebnis hätte ich selber nicht erwartet.

Und noch ein Hinweis von mir. Die Bohrer die es bei Conrad gibt taugen absolut nichts. Die 0,6mm brechen schnell ab und der 0,8mm Speerbohrer franst die Löcher aus. War jetzt beim Baumarkt wo es deutlich bessere Bohrer zu einem deutlich besseren Preis gibt.

theborg
26.10.2009, 17:52
Hi naja gutte bohrer berechen immer schnel bei ebay gibs aus den usa so boxen mit 50 bohrern wiederangescherfte aus Carbit für 19$ + Porto(glaub 10$).
Die kann ich echt entfehlen alerdinks brauch man dafür ne standbohrmaschine oder nen gutten bohrständer + nen rugis händchen die dinger brechen schneller als glasfaser dafür halten die ewig

Hellmut
27.10.2009, 01:19
Hallo Mountainking,
ich muss mich wohl korrigieren! Toll wie du dich durch das Projekt boxt und wie du voran kommst! Respekt!

Mountainking
27.10.2009, 19:19
@theborg
Richtig, mit bloßer Hand würde ich auch nicht Bohren. Dann wären mir wohl noch mehr abgebrochen. Mit den neuen Bohrern habe ich jetzt aber keine Probleme mehr. Sag mal hast du deine Platinen eigentlich auch selber gemacht oder anfertigen lassen?

@Hellmut
Ich habe ja gesagt ich bin hartnäckig. Allerdings war ich schon mehrfach kurz davor alles hinzuschmeißen. Mit jeder neuen Platine entdeckt man einen neuen Fehler/Problem. So schaffe ich es im Moment nicht die SMD-ELKOs anzulöten, trotz guter Tipps aus dem Internet. Weder mit Lötkolben noch mit der REWORK Station. Die Hitze geht sofort in das Bauteil bzw. Platine über und die Lötpaste darunter schmilzt nicht. Zu allem Überfluss hat sich dann noch das Pad von der Platine gelöst. Darum habe ich das Layout mal wieder umdesignt und verwende jetzt einen NICHT-SMD Elko.
Bin ich froh, wenn ich die erste Platine fertig habe, die auch funktioniert. Dann kann ich mich mit der Programmierung rumschlagen.

theborg
27.10.2009, 19:26
Normalerweise mache ich die selber aber da hatte es sich grade ergeben das noch platz auf nem multinutzen von nem kolegen frei war.

wiegesagt hab noch 10stk davon rumligen wen du welche brauchst

Mountainking
03.11.2009, 16:58
So, habe jetzt mal eine Platine mit ersten Bauteilen bestückt. Es funktioniert immerhin schonmal die Spannungsversorgung, so dass die Power-LED leuchtet.
Und auch den MAX3232 habe ich samt Kondensatoren aufgelötet. Jetzt würde mich interessieren, ob mein PC, wenn ich diese Platine an den RS232 anschließe diese schon als Gerät erkennt (also ohne den STM32)?
Und gleich ein weiteres Problem. Habt ihr einen Tipp wie ich die D-SUB Buchse auf die Platine löten kann? Die Buchse verdeckt ja die Lötstellen. Hätte ich hieran früher gedacht, hätte ich die Buchse beim Platinenlayout auf die Rückseite gelegt, so dass auf der Oberseite nur die Pins rausschauen.

Hellmut
03.11.2009, 22:49
Es gibt Sub-D-Stecker-Versionen wo man sehr gut an die Anschlüsse kommt, sie sind extra für die Platinen-Montage gemacht! Stell mal Bilder ein von deinem Projekt damit man es verfolgen kann.

Ich glaube übrigens jetzt eine ganz pasable Lösung gefunden zu haben, damit ich als "alter Mann" das Gehäuse so auf die Pads legen kann, das die zuvor mühsam mit der Kartusche mit Feinpitch 6 Lötpaste, bei Martin-SMT.de gekauft, sowie 0,2mm Düsen auflegen kann, ohne es beim Versuch korrekt ausgerichtet auf die Pads zu legen, die Lötpaste zu verschmieren.
Ich habe von Martin-SMT mir eine der Bestückpipetten geholt, sowie eine Membranpumpe und einen Kraftstoffschlauch aus dem Modellbaugeschäft geholt. Die Pipette kann man vorzüglich in das Bohrfutter einer Bohrmaschinen spannen. Durch das Drehen des Bohrfutters und das verschieben der auf dem Koordinatentische abgelegten Platine, kann man beliebig genau das Gehäuse ausrichten und ganz nah über die Pads bringen. Strom zur Membranpumpe unterbrechen und schon sitzt das Bauelement perfekt auf den Pads, auch bei einem LQFP100 kein Problem!
Das Ganze in den Pizzaofen, Temperaturprofil fahren und schon ist das Bauteil perfekt gelötet.

Mountainking
06.11.2009, 22:13
Ich habe jetzt die Leiterbahnen auf die Rückseite gelegt, alles andere hat nicht funktioniert. Bilder werde ich mal welche machen, sobald das Board dann funktioniert.
An das Löten des STM32 habe ich mich noch nicht getraut bzw. ihn jetzt erstmal nur mit zwei Pins angelötet. So kann man den uC im Notfall, wenn er nicht richtig sitzt wieder an einer Seite lösen und die Position korrigieren.
Morgen werde ich den uC dann mal komplett festlöten.

Mountainking
08.11.2009, 15:31
So, habe den STM32 jetzt festgelötet. Das war zwar problematischer als erwartet, da ich zu viel Lötpaste aufgetragen habe. Aber das konnte ich durch Einsatz von Flussmittel wieder gut korrigieren.

Allerdings funktioniert das Board natürlich nicht, sprich es wird vom Programm "STM Flash Loader Demonstrator" Version 2.0.0 nicht erkannt. Es kommt immer die Fehlermeldung:

"No response from the target, the Boot loader can not be started. Please verify the boot mode configuration and the flash protection status,
Reset your device and try again...".

Der BOOT0 Jumper ist auf "high level" und der BOOT1 Jumper auf "low level". Alle anderen Möglichkeiten habe ich auch ausprobiert.

Den COM1-Port habe ich auf folgende Werte gesetzt:
Bits pro Sekunde: 115200
Datenbits: 8
Parität: Gerade/Even
Stoppbits: 1

Die Parameter habe ich natürlich auch in der "STM Flash Loader Demonstrator" Applikation ausgewählt.

Da ich kein Strom-/Spannungsmessgerät habe, habe ich mal mit einer LED die Spannungen an verschiedenen Pins am board überprüft.

Am MAX3232 von TI habe ich folgendes festgestellt:
DOUT1: keine Spannung
DOUT2: keine Spannung
ROUT1: OK
ROUT2: OK
DIN1: keine Spannung
DIN2: keine Spannung

Das serielle Kabel gibt alle Signale 1:1 weiter also kein Crossover.

Sämtliche Spannungen am STM32 liegen an.
Sehe ich es also richtig, dass sowohl der STM als auch der MAX (teilweise) funktionieren, da das RTS und CTS Signal gesendet werden?

Dann bin ich im Moment etwas vom seriellen Kabel verwundert. Schließe ich dieses am PC an und teste mit einer LED die Spannungen auf den einzelnen Pins, dann leuchtet die LED nie, wenn ich die LED-Kathode an Pin5 (GND) und die Anode an den anderen Pins halte. Schließe ich dagegen die Anode der LED an Pin5 und die Kathode an die Pins 3, 4 und 7 so leuchtet diese. Ist das normal?

Noch jemand eine Idee was nicht funktionieren könnte bzw. was ich noch testen könnte?

Mountainking
08.11.2009, 17:52
Fehler gefunden, es funktioniert jetzt. Ich hatte den Reset-Button noch nicht angelötet, weil ich dachte, dass dieser nicht systemrelevant wäre. Allerdings muss man diesen drücken damit das Programm auf den uC zugreifen kann.

Mountainking
11.11.2009, 14:48
So, ich habe jetzt mal mit der Programmierung begonnen. Als IDE verwende ich Eclipse und als Compiler den von Codesourcery. Das Programmieren mit dem Sourcecode von theborg funktioniert auch. Allerdings habe ich jetzt ein eigenes C++ Projekt begonnen mit dem RCC Example aus der aktuellen FWLib von ST. Auch hier läuft das Programmieren ohne Fehlermeldungen durch, allerdings hat die Main.bin Datei eine größe von 0Kb, ist also leer. Das Makefile und die Linkerskripte habe ich auch von Lanchon übernommen.
Was kann die Ursache hierfür sein?