BitBastelei

  Переглядів 7,674

BitBastelei

BitBastelei

День тому

In Folge 561 hatte ich einen USB-Kabeltester gezeigt und angemerkt, dass ich mit der Funktionsweise nicht wirklich zufrieden bin. Nunja, ich hatte noch etwas Platz auf einem Board, also schnell an einem Abend einen Prototyp zusammengeklöppelt. Heute geht es um den ersten Teil: Den Prozessor. Ein STM32 soll als Basis dienen, also werfen wir mal auf die Grundbeschaltung und ob wir nativ per USB mit dem Chip reden können.
Inhalt:
00:00 Vorgeschichte/Einleitung
00:57 CPU-Auswahl
03:24 Grundbeschaltung
06:24 Basis-Perepherie
10:18 Stromversorgung
12:42 USB-Beschaltung
18:30 Prototyplörung
19:57 Erster Test
25:50 Verbinden mit STLink
27:38 Programmierung mit Arduino
31:53 USB-Test & Fehlersuche
33:53 DFU-Programmierung (USB)
35:29 Fazit
Links zum Thema:
01:06 STM32F302 Produktseite: www.st.com/en/microcontroller...
05:39 AN2867 (Oscillator design guide): www.st.com/resource/en/applic...
16:03 AN4879 (USB hardware and PCB guidelines): www.st.com/resource/en/applic...
28:07 Arduino core STM32: github.com/stm32duino/Arduino...
Transparenz:
Alle Bauteile wurden selbst gekauft und bezahlt, das Design wurde selbst zusammengeklickt. Falls nach Fertigstellung des Prototyps kein Rauch raus kommt oder grobe Fehler auffallen, werden die Quelldateien unter freier Lizenz veröffentlicht.

КОМЕНТАРІ: 40
@sunny198828
@sunny198828 4 місяці тому
Zu der USB Buchse kleiner Tipp. Beim design der Platine auf der anderen Seite der Platine keine Bauteile Platzieren und die Groundplane weg lassen. Die Pins auf der Platine vor verzinnen(wie du ja auch gemacht hast). AUßREICHEND Flux nehmen !! und dann von unten die Platine mit Heißluft erwärmen. So läufst du nicht gefahr die Buchse zu beschädigen da die ja nicht mit der Heißluft in berührung kommt. Die Tempertur musst du selbst durch Testen ermitteln ich nutze volle Pulle (480 °C bei ca 35% Airflow). Ich schaue seit ewigkeiten deine Videos und finde das immer sehr interesant! Bin selbst leidenschaftlicher Bastler und habe mir auch schon einige Inspirtion bei dir geholt!
@adlerweb
@adlerweb 4 місяці тому
One Micropaul ;)
@Amperekaefer
@Amperekaefer 4 місяці тому
Gut gemacht und dazugelernt (ich). Danke für das Video und LG
@drakonrex
@drakonrex 4 місяці тому
Diese USB Stecker lassen sich am besten mit einem Preheater und Lötpaste anbringen. Dann ist die Wahrscheinlichkeit von nicht verlöteten Pins auch deutlich geringer
@p-196
@p-196 4 місяці тому
es gibt auch USB C Breakout Boards, wo einfach eine Platine mit vorbestücktem USB C Anschluss geliefert wird, bei der die einzelnen Pins des USB C Ports auf Lötpads der Platine geleitet werden. damit kann man als Bastler auch einfach mit einem Lötkolben einen USB C Port verbauen.
@Lightrunner.
@Lightrunner. 4 місяці тому
Frohes Fest ich und allen anderen lieben Mitmenschen wünsche. 23:20 Computer sagt nein 🤣 Schönes und interessantes Projekt👍👍👍
@mwattinger
@mwattinger 4 місяці тому
Super Video Ich verwende ein treedix USB Cable Checker, damit lässt sich mal ne gute übersicht über das USB Kabel auslesen
@meinsda5983
@meinsda5983 4 місяці тому
Frohes Fest - Bin gespannt wie dein Kabeltester wird! Bin auf der Suche nach einem aber bis jetzt habe ich nur Schrott gefunden. So gute alte Tester gibts ja fast kaum nimmer
@dercncmicha5582
@dercncmicha5582 4 місяці тому
Echt interessantes Projekt, bin gespannt, wie es weitergeht. Nur für den Programmierport mit FTDI Adapter bei meinem ESPs, habe ich mir schon vor einiger Zeit eine Buchsenleiste mit 6 Pins hat der (glaube ich) so kann ich den Adapter gleich drauf stecken ohne Kabelsalat. Und in meinem „Lager“ hab ich mir entsprechende Buchsenleisten in einer gewissen Menge auf Vorrat gelegt.
@mattikra
@mattikra 4 місяці тому
Der LM1117 ist, wie du sagtest, ein ziemlich bescheuerter LDO. Er braucht viel mehr Kapazität am Ausgang (mindestens 10µF, besser noch wesentlich mehr). Er ist zumindest nach Datenblatt sehr wählerisch, was den ESR der Kondensatoren angeht (viele MLCCs liegen unter dem minimal geforderten ESR). Er braucht bis zu 1,3V Dropout-Spannung, das ließe sich mit einer Schottky-Diode (oder einem FET) als Verpolungsschutz hinbekommen. Und er will eine Minimallast sehen, die der STM32 im Schlaf gut unterschreiten kann. Das kann man bestimmt alles hinbekommen, aber vielleicht wäre es einfacher, den mit einem pinkompatiblen und weniger blöden LDO zu ersetzen?
@Vollerpl
@Vollerpl 4 місяці тому
Frohes Fest zusammen, @adlerweb was ist das für ein Programm, was du für das Layout genommen hast???
@adlerweb
@adlerweb 4 місяці тому
Für die Platine? Das war KiCAD.
@Pippo.Langstrumpf
@Pippo.Langstrumpf 4 місяці тому
Die Platine hat wohl 2 Layer. Bottom-Layer = GND, nehme ich an. Aber was sind die Flächen auf dem Top-Layer, 3V3?
@adlerweb
@adlerweb 4 місяці тому
Sind sogar 4 Layer - fanout von den USB-Ports wäre sonst etwas nervig gewesen. Das meiste ist GND.
@Pippo.Langstrumpf
@Pippo.Langstrumpf 4 місяці тому
@@adlerweb Danke für die schnelle Antwort. Ich versuche immer alles auf 2 Layer zu klatschen was bei Deinem USB-C Anschluss nervig wäre.
@adlerweb
@adlerweb 4 місяці тому
Es gibt auch USB-C-Buchsen mit USB2, die lassen sich recht "klassisch" Löten. Das hier ist nur eine USB3-fähige Buchse, da ich die für den Kabeltester nutze und nicht 2 unterschiedliche Typen verwenden wollte.
@Pippo.Langstrumpf
@Pippo.Langstrumpf 4 місяці тому
Kann man den STM32 also auch von Beginn an nur über USB programmieren, oder muss man zuerst einen Bootloader über SWD flashen?
@adlerweb
@adlerweb 4 місяці тому
Kann man direkt per USB programmieren, man muss nur den Boot-Pin passend ziehen.
@Pippo.Langstrumpf
@Pippo.Langstrumpf 4 місяці тому
@@adlerweb super
@m-electronics5977
@m-electronics5977 2 місяці тому
27:41 willst du dann später das Ding mit reinem C proggen?
@m-electronics5977
@m-electronics5977 2 місяці тому
21:02 😂😂😂 UniCaT 😂😂
@m-electronics5977
@m-electronics5977 2 місяці тому
19:30 das Problem habe ich auch, wenn man mit heißluft Dinge lötet die aus Plastik sind klappt das meistens nicht so toll
@m-electronics5977
@m-electronics5977 2 місяці тому
Also für die Bluepills braucht man keinen STM32Cube
@markussagichnicht5494
@markussagichnicht5494 4 місяці тому
USB Kabeltester is doch langweilig :D Mach doch mal nen LAN-Kabeltester, der aber aber eher Richtung Veryfier oder gar Certifier geht. Solche Teile kosten nämlich gern mal 4- , wenn nicht sogar 5-stellige Euro-Beträge, und sind doch bestimmt auch "nur mit Wasser gekocht" ;-)
@adlerweb
@adlerweb 4 місяці тому
Ich hab für LAN Zugriff auf so einen gewissen Tester in Gelb - das ist im Inneren schon teils premium-Tafelwasser mit dunkler Magie ;).
@markussagichnicht5494
@markussagichnicht5494 4 місяці тому
@@adlerweb für wirklich hochwertiges, bei Neumond gezapftes Tafelwasser in gelben Flaschen bin ich gern bereit, den ein oder anderen hunderter auf den Tisch zu legen ;-)
@RZ-zv3jr
@RZ-zv3jr 2 місяці тому
Ach. Man braucht nur einen Impulsgeber mit einem sehr guten du/dt (60V, Kondensator und Diac, da gibt hier eine hübsche). Und einen Pulsbreiten Messer. Einen Mux der die Leitungen durch klickert. Damit kann man schon mal den Wellenwiderstand validieren, kaputte Päarchen erwischen. ...das ganze ist viel "HF-Klempnerei" :-)
@heikoindenbirken819
@heikoindenbirken819 4 місяці тому
Button per Mausclick. Hm, normalerweise sollte es auch einen Parameter für automatische Installation geben. Aber Ok, nicht jedes Programm hat ein Kommandozeileninterface. Wozu auch bei einem GUI Programm? Unter Windows auch kein Problem, da sendet man dem Fenster einfach die passende Message. Unter Linux geht das sicher viel besser, oder? ;-)
@adlerweb
@adlerweb 4 місяці тому
Naja, ein Setup ohne Möglichkeiten eine unattended install anzustoßen empfinde ich schon irgendwie als Bankrotterklärung. Zumal grade der STM32CubeProgrammer ja durchaus nicht nur GUI, sondern auch CLI mitbringt. Theoretisch kann man - analog zu Windows - bei GUI-Anwendungen auch gezielter senden. Ich hab mir das nicht genauer angesehen, vermutlich dürfte es in dem Fall recht schwierig sein, da es keine "richtige" GUI ist, sondern durch Java nochmal alles wegabstrahiert ist.
@heikoindenbirken819
@heikoindenbirken819 4 місяці тому
@@adlerweb Ja, ein fehlendes unattended install ist nervig. Aber ich habe beruflich viel mit solchen Systemen zu tun die eben keine Schnittstellen haben. Nicht mal COM. Das ist in Windows viel leichter zu realisieren da die meisten GUI-Programme eben die Funktionen des BS nutzen und nicht die einer aufgesetzten frei wählbaren GUI. Wobei es da aber auch zu Problemen kommen kann wenn Programme daran vorbei ihr eigenes Süppchen kochen. Der wesentliche Vorteil ist eben die Standardisierung. Wobei Apple zeigt das man das auch übertreiben kann.
@adlerweb
@adlerweb 4 місяці тому
Nuja, ob das jetzt GTK, Qt oder TK unter klassischem Linux heißt, oder man mit WPF, Windows Forms oder WinUI unter Windows spielen muss - so viel macht das IMO auch nicht aus. Schwieriger dürfte es bei moderneren Systemen werde, die aktiv eine Manipulation durch Drittprogramme verhindern.
@heikoindenbirken819
@heikoindenbirken819 4 місяці тому
@@adlerweb Ob WPF, Windows Forms oder WinUI ist letztlich kein großer Unterschied da sie letztlich alle auf der uralten Windows 3 Message Loop basieren. Dazu noch gern, wie hier wohl auch, Standarddialoge des BS aufrufen. Eine Manipulation durch Drittprogramme aktiv verhindern, das kann zu einem echten Problem werden. Ist aber auf der Ebene dann auch nicht immer so einfach. Vor allem wenn man nützliche Dinge wie Copy&Paste zulassen will. Im Extremfall nimmt man eben ein Arduino HID-Keyboard und gibt dem per Serial an welche Tastenbetätigungen es senden soll. Gibt da ja auch das schöne Beispielprogramm um Daten vom Arduino in Excel einzugeben. Bei Linux würde sich dann ein X-Sever anbieten, der hat ja auch alle Möglichkeiten. Bei der STM Installation finde ich den Mausclick aber schon merkwürdig. Da hätte es sicher auch eine Möglichkeit über TAB und RETURN gegeben. Evtl. war das einfach eine Wiederverwendung von altem Code oder der erste gefundene Google Eintrag.
@simonvogt4325
@simonvogt4325 4 місяці тому
@Bitbatelei: Zu dem Spruch Programmierer brauchen keine GUI: Wie wilst du dann mit einer IDE entwickeln, wenn die keine GUI hat? Willst du dein Code in der Consolo schreiben und debuggen?😂😅
@adlerweb
@adlerweb 3 місяці тому
Nunja, Texteditoren für die Konsole gibt es ja viele und die Debugger nutzen am Ende auch meist CLI-Tools wie gdb.
@alexpr0gressive
@alexpr0gressive 4 місяці тому
Ich habe in einem Kommentar gefragt ob du später per stlink cli flashen willst mit einer url. Der Kommentar wurde scheinbar automatisch gelöscht 🤔 Der artful bytes channel hat jedenfalls einen workflow mit cmake zum flashen eine ti msp430.
@adlerweb
@adlerweb 4 місяці тому
Joa, UKposts ist leider teils sehr voreilig mit seiner Automoderation :(. Bisher habe ich für die Software noch nicht viel geplant.
@jigga88L
@jigga88L 4 місяці тому
meiner ist auch weg@@adlerweb
@jigga88L
@jigga88L 4 місяці тому
2 x jetzt schon bei diesem Video :/ Dann gebe ich es auf! Bei LCSC gibt es auch lötbare Varianten für USB2.0 und USB-C! Guck mal nach C5117884!
@adlerweb
@adlerweb 4 місяці тому
Tauchen leider auch nicht im SPAM auf. Ich kann nur vermuten, dass auch bei YT die Personaldecke aktuell dünn ist und man daher die automatischen Filter stärker eingestellt hat :( Ja, die Varianten kenne ich, aber da ich zumindest beim Kabeltest auch die USB3-Leitungen testen möchte brauchte ich die größeren Varianten ohnehin, daher hatte ich die dann auch für den µC genutzt um das gleich zu halten.
@alexpr0gressive
@alexpr0gressive 4 місяці тому
@@adlerweb kommt bei anderen Kanälen auch vor, kein Problem. Es wäre super wenn du zeigen könntest wie man eine toolchain ohne Arduino erstellt, falls du das eh vor hast. Ich suche nach einer Möglichkeit mit cmake, Conan package manager, vim-dab und den jeweiligen cli Programmen wie stlink, avrdude eine toolchain im Terminal zusammen zustellen.
BitBastelei #322 - STM8: Wenn's mal günstiger sein soll
17:34
BitBastelei
Переглядів 43 тис.
BitBastelei #582 - Zigbee-Sicherung - Ampere per App
36:25
BitBastelei
Переглядів 7 тис.
Level 1 to 100 Mystery Buttons
00:46
A4
Переглядів 7 млн
Mist USB-C-Kabel erkennen (CC2tv Folge 362)
27:00
Computer:Club2
Переглядів 62 тис.
BitBastelei #575 - Industrial RS232-LAN-Server
19:28
BitBastelei
Переглядів 9 тис.
BitBastelei #533 - Sicherheit von 433MHz Funk-Steckdosen
22:00
BitBastelei
Переглядів 10 тис.
BASIC programmieren wie früher (CC2tv Folge 363)
25:14
Computer:Club2
Переглядів 39 тис.
Programmieren für Dummies? (CC2tv Folge 349)
43:06
Computer:Club2
Переглядів 109 тис.
Я Создал Новый Айфон!
0:59
FLV
Переглядів 2 млн
''Бесплатные умные'' домофоны для глупых людей. За чей счет банкет?
12:48
Вадим Шегалов.Оккультные игры элиты
Переглядів 32 тис.