Hallo, ich möchte hier gerne mein STM32/ESP8266 Dev-Board vorstellen. Zuerst nur der Schaltplan (an dem noch ein paar Erweiterungen vorgenommen werden), da das Layout noch nicht fertig ist. Ich möchte die erfahreneren STM32 Nutzer bitten, besonders auf die Beschaltung des Prozessors zu achten, da dies meine erste Eigene Platine mit STM32 Prozessor ist. Das Board beinhaltet einen Schaltregler für die 3,3V Versorgung des Prozessors und des ESP8266. Ein ULN für die Ausgänge, 2 Schalter und Zwei LEDs. Programmiert wird über SWD, möglich ist aber auch die Nutzung des UART Bootloaders. Es fehlt noch die Batterie für die RTC und Stecker um die 3,3V heraus zu führen. Das Board soll Steckbrett tauglich sein und möglichst Stromsparend, damit es in späteren IoT Anwendungen sinnvoll eingesetzt werden kann.
Wenn man es schon wagt von seinem geliebten AVR 8-Bit Controller wegzugehen, kann man auch von der AT-Commands-Krücke ESP8266 weggehen und gleich einen TI CC3200 nehmen, ein ARM Cortex-M4 Controller mit integriertem WiFi Controller. Da hat man dann mehr Flexibilität und volle Kontrolle über den ganzen Netzwerk Stack.
Mit TI Controllern habe ich bis jetzt garkeine erfahrung? wie sehen da die möglichkeiten des Programmierens/Debuggens aus? Wie sieht die Beschaffbarkeit aus? bis jetzt kann ich alle Bauteile (außnahme ist der ESP, der in der Bucht günstig zu bekommen ist) bei Tante A. bestellen. Nachtrag: Ich sehe den gibt es nur im QFN Gehäuse, grundsätzlich benutze ich gerne SMD-Bauteile, aber QFN mit über 60 pins zu Hause löten stelle ich mir Schwierig vor.
:
Bearbeitet durch User
Na gut, du hast es so gewollt ;) * ST empfiehlt direkt am NRST-Pin einen 100n, aber keinen externen Pullpup * der UART-Bootloader funktioniert nur mit USART1 (PA9, PA10). Flashen per WLAN wäre nett, aber der ESP muss wahrscheinlich initialisiert werden. USART3 für den ESP scheint mir günstiger. PA2,PA3 sind ziemlich universelle Pins mit USART2, ADC und Timer, deswegen wäre USART2 für den ESP Verschwendung. * BOOT0 wird doch nur für den UART-Bootloader gebraucht, gehört das Signal nicht eher auf einen Stecker mit USART1? * dann wäre auf X5 ein Pin frei für TRACESWO (PB3). Mit einem guten Debugger könnte das Signal nützlich sein, z.B. ITM-printf * wenn X4 auch GND und idealerweise die Eingangsspannung raus führen würde, brauchte man nur ein Kabel zu Relais- usw.-Platinen * wenn die Pins knapp werden: BOOT1 (PB2) kann als Ausgang benutzt werden, z.B. für eine LED * was bedeutet I2C_IO12 an PA8? Laut meinem Datenblatt ist das der MCO-Ausgang - sehr nützlich, wenn man an der Taktfrequenz zweifelt * Vor dem Schaltregler wäre ein wenig Eingangsfilter nett * Ich würde einen Schaltregler mit weniger Power vorziehen, in der Hoffnung, dass bei Kurzschlüssen nicht ganz soviel abbrennt. duckundweg
Vielen Dank für die ausführlichen Hinweise: Schaulus Tiger schrieb: > Na gut, du hast es so gewollt ;) > > * ST empfiehlt direkt am NRST-Pin einen 100n, aber keinen > externen Pullpup mein Fehler, habe ich korrigiert. > * der UART-Bootloader funktioniert nur mit USART1 (PA9, PA10). > Flashen per WLAN wäre nett, aber der ESP muss wahrscheinlich > initialisiert werden. USART3 für den ESP scheint mir günstiger. > PA2,PA3 sind ziemlich universelle Pins mit USART2, ADC und Timer, > deswegen wäre USART2 für den ESP Verschwendung. ESP auf USART3 Verlegt > * BOOT0 wird doch nur für den UART-Bootloader gebraucht, gehört > das Signal nicht eher auf einen Stecker mit USART1? Zusätzliche Stiftleiste mit USART1 und Boot0 eingeführt > * dann wäre auf X5 ein Pin frei für TRACESWO (PB3). Mit einem > guten Debugger könnte das Signal nützlich sein, z.B. ITM-printf Da ich nicht vor hatte mir einen vollwertigen Debugger zuzulegen, für mich uninteressant (wenn ich die Funktion richtig verstanden habe) > * wenn X4 auch GND und idealerweise die Eingangsspannung raus > führen würde, brauchte man nur ein Kabel zu Relais- usw.-Platinen Da die Platine Später "Huckepack" auf die z.b. Relaisplatine soll, nicht notwendig. > * wenn die Pins knapp werden: BOOT1 (PB2) kann als Ausgang benutzt > werden, z.B. für eine LED > * was bedeutet I2C_IO12 an PA8? Laut meinem Datenblatt ist das der > MCO-Ausgang - sehr nützlich, wenn man an der Taktfrequenz zweifelt IO12/IO22 sollten zusätzliche I/O Pins sein für mögliche I2C Erweiterungen, kann also bei Bedarf auch anderweitig genutzt werden > * Vor dem Schaltregler wäre ein wenig Eingangsfilter nett > > * Ich würde einen Schaltregler mit weniger Power vorziehen, in der > Hoffnung, dass bei Kurzschlüssen nicht ganz soviel abbrennt. Eingangsfilter kommt (muss ich noch ein bisschen was zur Dimensionierung lesen, da fehlt mir die Erfahrung für). Der Schaltregler wurde bewusst sehr großzügig dimensioniert, um ggf. neben dem ESP auch noch eine SD-Karte und ein Display betreiben zu können. Außerdem habe ich diesen Schaltregler schonmal benutzt. Wenn du einen bestimmten im Sinn hast, der von der Leistung besser passt und leicht beschaffbar ist (für Privat) wäre ich dir natürlich dankbar. Neuer Schaltplan wird nachgereicht ;-) Gruß M. Scheibenzuber
So, die Änderungen sind Teilweise umgesetzt. Der Eingangsfilter fehlt noch. Der ESP wurde doch auf USART1 belassen, da PB10/PB11 (USART3) für I2C benötigt werden. Der Boot0 Pin wurde auf den Stecker des ESP verlegt, so kann man bei Bedarf den ESP Stecker abziehen und über den Stecker Programmieren. Außerdem wurde noch ein SPI EEPROM hinzugefügt, auf dem dann Daten abgelegt werden, die öfter mal geändert werden. Da der Flash des STM32 immer nur Blockweise gelöscht/Beschrieben werden können, wollte ich den Prozessor nicht mit Daten belasten die sich häufig ändern. Der Stecker X4 hat nun doch Masse und die Betriebsspannung spendiert bekommen, man weiß ja nie wann man es doch mal braucht. Die Zusätzlichen Stecker vür 3,3V dienen hauptsächlich als mechanische Stütze der Platine, da sich beim Layout eine etwas ungleiche Verteilung der Stiftleisten ergeben hat. Außerdem wurde der Batteriehalter entfernt, da er viel Platz einnimmt. Der VBAT Pin wurde über Dioden zum einen mit 3,3V verbunden und zum anderen mit einer Stiftleiste um Extern eine Batterie anschließen zu können. Solange die Betriebsspannung vorhanden ist, wird so die Batterie nicht Belastet. Gruß M.Scheibenzuber
Marcel Scheibenzuber schrieb: > Der Schaltregler wurde bewusst sehr großzügig dimensioniert, > um ggf. neben dem ESP auch noch eine SD-Karte und ein Display > betreiben zu können. > Außerdem habe ich diesen Schaltregler schonmal benutzt. Argumente; da will ich nicht widersprechen. > Außerdem wurde noch ein SPI EEPROM hinzugefügt, auf dem dann Daten > abgelegt werden, die öfter mal geändert werden. > Da der Flash des STM32 immer nur Blockweise gelöscht/Beschrieben > werden können... und zum Löschen eine halbe Ewigkeit brauchen = Guter Plan! Inzwischen kommen ja FRAM in Mode, am SPI 2MByte/s schreiben hat was :) Anscheinend sind die vor allem im 0.15" breiten SO-8 lieferbar, aber den 25AA512 gibt's ja auch in dem Gehäuse ;) > Der Stecker X4 hat nun doch Masse und die Betriebsspannung spendiert > bekommen, man weiß ja nie wann man es doch mal braucht. doch, schon, sobald die Platine fertig ist weiß man was fehlt... > Außerdem wurde der Batteriehalter entfernt, da er viel Platz einnimmt. Es gibt stehende Knopfzellenhalter, z.B. Bürklin 28A166. Und liegende mit Pins haben manchmal 2.5mm Luft unten drunter. Und 15mm dicke Rundzellen mit angeschweißten Lötpins sind eigentlich auch nur 5mm breit, weil 3D-mässig rund. Na gut, ich hör schon auf.
Dr. Sommer schrieb: > AT-Commands-Krücke ESP8266 weggehen ESP8266 kennt keine "AT-Commands", nur weil die china-händler module mit AT-firmware eindrehen möchten muss man es nicht benutzen. > und gleich einen TI CC3200 nehmen, ein ARM Cortex-M4 Controller mit > integriertem WiFi Controller. Da hat man dann mehr Flexibilität und > volle Kontrolle über den ganzen Netzwerk Stack. auch wenn man es tatsächlich braucht, sind die 18EUR aufpreis viel
Zu den Knopfzellen: stehende Halter fallen raus, da sie zu hoch aufbauen, vielleicht neben dem Modul auf der Platine die das board trägt. fest eingelötete Knopfzellen mag ich persönlich nicht besonders, wegen der "erschwerten" auswechselbarkeit. Außerdem kann man so auch statt der Knopfzellen z.b. einen goldcap verbauen, der von den 3,3 V geladenen wird. zu Thomas R. : sehe ich genauso. fürs erste wollte ich die at-command firmware drauf lassen, bei bedarf ist der code ja im sdk enthalten und kann angepasst werden. Gruß M. Scheibenzuber
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.