-
Thread
HDMI-Audio, wie funktioniert es?
Datenblatt: https://z3d9b7u8.stackpathcdn.com/pdf-down/E/P/9/EP9351-Explore.pdf Diesen Baustein findet man in HDMI-zu-Composite-Video-Adaptern wie diesem hier: https://www.amazon.de/dp/B01AG0MDY4 Der Baustein selbst erzeugt
ähnlichen, den ich hier herumliegen habe) ist zusätzlich noch folgendes verbaut: - Ein Microcontroller (STM8S005K6T6C) https://www.st.com/en/microcontrollers-microprocessors/stm8s005k6.html - Ein DAC (ES7144LV) https://datasheet.lcsc.com/lcsc/1912111437_Everest-semi-Everest-Semiconductor-ES7144LV_C365747
-
Thread
Kommunikation zwischen MCU und MPU
Kandidaten, nur Full-Speed mit 12 MBit/sec Brutto). Naja, das scheint eben das Problem mit dem STM32WB55: [code] 1x USB 2.0 FS device [/code] https://www.st.com/en/microcontrollers-microprocessors/stm32wb55rg.html Wenn das Teil gesetzt ist (evtl. wegen den Funk Geschichten) dann finde ich
Klassischerweise macht man das mit SDIO ("SDMMC"). Damit erreicht man bis 400 Mbps brutto (High Speed Mode, 8bit). Die STM32 haben das allerdings nicht als "Slave" Interface, manche ESP32 aber z.B. schon. Eventuell musst du also einen Controller suchen der das kann.
-
Thread
STM32F767: "HAL_UART_Receive_IT" bringt busy
Hallo, ich verwende bei meinem STM32F767 mehrere UARTS. Bei einem nutze ich den Callback für empfangene Daten (jeweils 1 Byte). Nach dem Auswerten des Bytes wird der Empfang des nächsten Bytes gleich wieder angestoßen. Ca. 1 Mal in
uhMask); huart->pRxBuffPtr +=2; } else { *huart->pRxBuffPtr++ = (uint8_t)(huart->Instance->RDR & (uint8_t)uhMask); } if(--huart->RxXferCount == 0) { /* Disable the UART Parity Error Interrupt and RXNE interrupt*/ CLEAR_BIT(huart->Instance-
-
Thread
I2C oder SPI fähiger RGB-LED Treiber, gibts das, wenn ja was nehmt ihr?
SK9822, RGB-LED mit quasi-SPI (ohne ~SS). Timing ist ziemlich frei, dafür zusätzliche Pins. Außer je 8 Bit RGB gibt es noch 5 Bit für Helligkeit. WS2812 u.Ä. sind oft unbequem, da während der Ausgabe ISR nicht kommen dürfen.
der Ausgabe ISR nicht kommen > dürfen. Auf einem AVR mag Deine Aussage richtig sein, auf einem STM32 mit DMA sind Interrupts während der Übertragung zur WS2812 überhaupt kein Problem.
-
Thread
BTS7960 IS Sensor mit abweichenden Werten.
mir zum Testen schon mal ein Modul gekauft. https://www.ebay.de/itm/265232153482?hash=item3dc1117b8a:g:mygAAOSwMJtg8RLZ Viele Grüße Martin
Halbbrücke, aber für 7A Nennstrom. Aber auch hier schwankt der kilis-Wert bei 20mA +/-50%. Dafür bei 2.8A nur mehr +/-8%. Der BTN ist eine Halbbrücke, kostet aber nur 2.4€ bei digikey. Dafür ist der Chip wesentlich komplexer. Ich hoffe ich konnte helfen :)
-
Thread
Linkerscript verstehen lernen - Wo fängt man an?
ihren Startup-Code und das Linkerscript selber. Z.B. https://vivonomicon.com/2018/04/02/bare-metal-stm32-programming-part-1-hello-arm/
und lokalen Skript. Das ist auch kein Thema, welches man mal eben an einem Nachmittag abhandelt. 8 Wochen Lern-Zeit solltest du dir schon lassen.
-
Thread
Was denkt ihr von meinem PWM DAC?
PWM-Frequenz für die gewünschte Dynamik an. Die rote Kurve ist die höchste PWM-Frequenz, die sich mit einem STM32F407 Timer gerade noch realisieren lässt mit der angegebenen Anzahl Bits. Aus diesem Graph kann man meiner Meinung nach entnehmen, dass man eine Dynamik von allerhöchstens 19 Bits bzw. 114 dB erzielen
Sinnvollerweise baut man einen GPSDO mit einem OCXO, der hat schon eine Grundstabilitaet von 10^-8, den kann man dann schoen mit einem 16bit DAC zwischen 1..3V ansteuern. Ich anerkenne den Versuch, das Ganze mit weniger Strom laufen zu lassen, also einen TCVCXO zu verwenden. Dort macht man die Temperaturkorrektur
-
Thread
Analogverstärker für Mikrocontroller Oszilloskop
Discovery Board STM32F407 3 separate 12bit ADCs à 2.4Msps triple interleaved 7.2Msps. Per DMA. (Läuft alles auch prima in µPython) Knapp 15 mal schneller und die sind auch nicht so grauenvoll krumm wie der RP2040
der Kurvenpunkte zu erhalten. Mit > 100 MHz Taktfrequenz ist der RP2040 in der Lage, beispielweise 8 Kurven nacheinander mit jeweils 625 ns Versatz in den Speicher zu schreiben und abschließend als eine einzige Kurve zu bewerten. Verwendet man nur 8 Bit des ADC, fallen seine Wandlungsdefizite nicht
-
Thread
Speicher handling mit W25Q128
Hallo Zusammen, ich stehe vor der Aufgabe, den W25Q128 Flash Chip mithilfe eines STM32 Mikrocontrollers anzusteuern. Ich habe bereits einige Grundlagen erarbeitet (Page lesen/schreiben, Sector löschen/lesen/schreiben, Block löschen/lesen/schreiben), stehe jedoch noch vor einigen offenen
übrigens nicht in Frage, da ich sehr grosse Datenmengen speichern möchte und nach meiner Berechnung mind. 8MB benötige. Falls es jemanden interessiert, die Anwendung ist eine Transport Studie bei der Beschleunigung in allen Achsen, GPS Position und Temperatur gemessen wird, in verschiedenen Intervallen und
-
Thread
Firmware entschlüsseln, Updateprogramm als Hilfe?
Beitrag #7487120: > Das ERSTE was wichtig ist: WELCHE CPU? Moment! Info kommt gleich. AT32F421C8T7 Bild anbei.
nicht). Der eigentliche Schutz ist die gesetzte Readout-Protection des AT32, die ist ähnlich wie beim STM32 (es ist ja ein STM32 Klon).
-
Thread
Kurzschlusswiderstand einer defekten TVS Diode
und er das Verhalten von Überspannungsschutzdioden nicht verstanden hat. Wenn seine TVS 1,5KE6,8CA endlich durchbricht, sind die angeschlossenen USB-Geräte schon längst gestorben.
probiere, ohne Zinos Link finde ich es nicht! Das war bei mir ein Zufallstreffer: Ich kaufte ein paar STM32-Boards und schaute, was WeAct sonst noch so anbietet. Dabei fand ich dieses Modul.
-
Thread
Wie kann man Mikrocontroller kaufen und programmieren
Videowiedergabe wird es wohl auf ein 32 Bit Modell hinaus laufen. Da würde ich für den Anfang ein STM32 Nucleo 64 Board versuchen: https://www.st.com/en/evaluation-tools/stm32-nucleo-boards.html Dazu brauchst du ein Display mit passender Schnittstelle und Anschlüssen, die du in Handarbeit löten bzw
Diese Mikrocontroller können mit der Arduino-IDE oder der PlatformIO-IDE programmiert werden. - **STM32:** Die STM32-Mikrocontroller können mit der STM32CubeIDE oder der PlatformIO-IDE programmiert werden. - **Raspberry Pi:** Hier verwenden Sie normalerweise eine Version des Linux-Betriebssystems (
-
Thread
BLDC-Motor: Überspannung beim Bremsen trotz Durchschaltung aller Low-Side-MOSFETs?
Das Kapitel: 8.3.5.3 MOSFET VDS Overcurrent Protection (VDS_OCP) ist sicher in diesem Fall auch Lesenswert viel Erfolg hauspapa Herzlichen Dank für die präzise Beschreibung samt verlinktem Datenblatt. Kommt
S. K. schrieb im Beitrag #7485786: > Das Kapitel: > 8.3.5.3 MOSFET VDS Overcurrent Protection (VDS_OCP) > ist sicher in diesem Fall auch Lesenswert > > viel Erfolg > hauspapa > > Herzlichen Dank für die präzise Beschreibung samt verlinktem Datenblatt
-
Thread
STM32 UART TMC2209 Bit-banging
uint8_t * datagram, uint8_t datagramLength) { int i, j; volatile uint8_t *crc = datagram + (datagramLength - 1); // CRC located in last byte of message uint8_t currentByte; *crc = 0; for (
datagramLength - 1]; } // <= CRC wrapper //10.10100000.10.01000000.10... void tmc2209_calcInt64(uint8_t address, int32_t value) { //static uint8_t data[8]; data64[0] = 0b00000101; //00000101 data64[1] = 0b00000010; //00000010 data64[2] = address | 0x80; /
-
Thread
STM32 Flash Schaltung über UART
übermüdet ;) ---- Datenblatt: https://datasheet.lcsc.com/lcsc/1912111437_STMicroelectronics-STM32G030K8T6_C431631.pdf LCSC Produktlink: https://www.lcsc.com/product-detail/Microcontroller-Units-MCUs-MPUs-SOCs_STMicroelectronics-STM32G030K8T6_C431631.html
/dm00625292-stm32g030x6x8-device-errata-stmicroelectronics.pdf
-
Thread
PIC16F1509/Sansmart LCD2004/I2C , benötige etwas Hilfe
select bit : Data #define Co 0b00000000 // Register select bit : command void expanderWrite(uint8_t data); void pulseEnable(uint8_t _data); void write4bits(uint8_t value) ; void send(uint8_t value, uint8_t mode) ; inline void command(uint8_t value); void writeChar(uint8_t value); void writeStr
* inline void command(uint8_t value) { send(value, Co); } */ //inline inline void writeChar(uint8_t value) { // send((uint8_t)value, Rs); uint8_t highnib=value&0xf0; uint8_t lownib=(value<<4)&0xf0; write4bits
-
Thread
Sinumerik 810T lässt sich nicht einschalten
jugendlichen Reparaturen war es oft der TDA1170. Zum Umbau auf TFT: Ich hatte mal überlegt, für einem STM32 mit 3x8-Bit RGB-Schnittstelle einen Konverter zu schreiben. Man würde dann ohne VGA direkt auf das passende Display schreiben. Das Einlesen des Bitstroms müsste man von der Geschwindigkeit her schaffen
-
Thread
Wer hat praktische Erfahrung mit dem Laden nackter Li-Ion Akkus?
schau dir mal das hier an: https://youtu.be/Yia8N5qutmQ sind übrigens 3 Teile... so um ein Gefühl dafür zu bekommen, womit du hier herumspielst. und wenn du es ganz genau wissen willst: https://www.stefansliposhop.de/Lit-Akku-Techn-Einfuehrung
> maximale Zeit überschritten wurde. Ja und? Sowohl der China-TP4056 als auch der STC4054 von STM schalten bei Stromunterschreitung ab. Wenn das nicht gefällt, schaut man auf BQ24012 und Kollegen, die müssten zusätzlich eine Zeitschranke haben.
-
Thread
for-Schleife - Bit verschieben
Datenaustausch mit der (int. / ext.) Peripherie. Bspw. ist bei einem STM32 das Datenregister eines der USARTs zwar 32Bit breit, aber davon sind nur 8Bit relevant. Bei manchen µC steht sogar im Ref-Man., dass die nicht-relevanten nicht verändert werden dürfen bzw. auf ihrem
der Datenaustausch mit der > (int. / ext.) Peripherie. Bspw. ist bei einem STM32 das Datenregister > eines der USARTs zwar 32Bit breit, aber davon sind nur 8Bit relevant. Wenn von Hunderten von 32-Bit-I/O-Registern einige wenige einen oder mehrere 8-Bit-Teilbereich haben,
-
Thread
STM32F4 SWO Ausgabe sporadisch falsch
mit einem ITM_SendChar() Aufruf instrumentiert (originale Funktion hier: https://github.com/sfyip/STM32F103_MSD_BOOTLOADER/blob/master/Src/ihex_parser.c): [c] bool ihex_parser(const uint8_t *steambuf, uint32_t size) { uint32_t i; uint8_t c, hc; for (i = 0; i<size; i++)
Danke für die Antwort! Ich benutze STU32CubeMX v6.8.1 mit der STM32Cube FW_F4 v1.27.1. Die ITM_SendChar Funktion scheint identisch: [c] __STATIC_INLINE uint32_t ITM_SendChar (uint32_t ch) { if (((ITM->TCR & ITM_TCR_ITMENA_Msk) != 0UL) &&
-
Thread
Wer kann mir schöne Fotos machen?
> mir würde es schon reichen wenn ich > weiß welche Pins am STM32 für die FETs sind. Na das sollte doch recht einfach zu machen sein. Die FET-Treiber findest Du, entweder die drei kleinen 8-Beiner oben oder der Tausendfüßler unten (glaube ich weniger, aber könnte
100 Ohm Widerstandes und Leiterzuges fiel noch auf das der C19 scheinbar fehlt. Beim nachschauen im STM32F103C8T6 Manual ist das Pin 38 (PA15). Hat irgendwer eine Idee was da hingehören könnte?
-
Thread
Wie Jitter und/oder Packet Loss von Signalkette ADC > Ethernet > PC quantifizieren?
Hallo zusammen! Ich habe hier einen STM32, welcher Signale über den internen ADC abtastet und via Ethernet und UDP an einen Rechner sendet. Funktioniert soweit schon fast... Ich möchte sichergehen, dass: a) der ADC gleichmäßig abtastet
IRQ-Entry-Zeiten etc. Besser macht man das mit Trigger Events. Schau mal im Ref. Man. von Deinem STM32-Modell nach "Conversion on external trigger". > b) möchte ich gerne verifizieren. Nur wie?: > > => Jedes Sample mit einem Timestamp versehen und checken, dass alle > ankommen? Kostet halt
-
Thread
[V] BluePill von WeAct und MapleMini
Moin, ich habe hier noch jeweils 3 BluePills von WeAct und 3 von Maple (MapleMini) besstückt mit STM32F103CBT6. Alle neu oder sagen wir NOS ;) Von jeder Sorte habe ich jeweils einen ausgepackt und mit dem Blinky-Testprogramm welches Fakes CPUs erkennen soll, getestet. Siehe auch hier: https:
längerer Zeit dort mal ein BluePill+ mit einem GD32F303 (aufgebohrter GD32F103 und nicht kompatibel zum STM32F303) gekauft.
-
Thread
Wetterstation - Low Power Design
dabei. Die braucht man zwar nicht unbedingt, aber damit könnte man noch mehr Strom sparen. Den 8MHz-Quarz könnte man ganz weg lassen. Die internen RC-Oszillatoren der STM32L4 können per Software und beim L431 auch per Hardware getrimmt werden. Als Referenz dienen die 32kHz oder ein 1Hz-Takt von
Feuchtesensor durch Kapazitätsmessung. Und kleine Cortex-M brauchen im Deep Sleep auch nur 0,x µA. Das 8 Bitter sparsamer sind ist wohl eine nicht totzukriegende Mär.
-
Thread
EPROM Backup erstellen
wäre einen Zähler-IC für die Adressgenerierung und den /CS und /RD Pin ansteuern und die Daten per 8-Bit parallel aus zu lesen und dazu ein keines STM32 Board zu verwenden der das dann per UART an den PC sendet. Das sollte mit relativ wenig Aufwand für diese einmalige Sache ausreichend sein. STM32
Die GAL16V8 dürften lesegeschützt sein...
-
Thread
10bit Resolver spuckt über SPI 16 bits aus!
ausgibt. Ich weiss nicht was ich falsch mache bzw. was das Problem sein könnte. Ich Nutze einen STM32G431 Nucleo Board um den Absolutwertgeber per SPI auszulesen. Im angehängten Bild ist zu sehen, dass auf der Datenleitung 16 bits ausgegeben werden, was für mich irgendwie nicht zum Datenblatt passt
Tja, SPI-Engines können oft nur Daten 8-Bit-weise übertragen. Wenns da keinerlei "Kompromissfähigkeit" gibt, bleibt nur Bit-Banging.... Gruß
-
Thread
Bourns EM14 5V an STM32 3.3V FT
Hallo, ich würde gerne einen Bourns EM14 Encoder an einem STM32F4x verwenden. Der EM14 läuft auf 5V, der STM32 auf 3.3V. Laut Datenblatt ist der STM32 aber FT auf allen GPIO. Nun gibt es aus meiner Sicht ein paar Optionen, die einfachsten wären Spannungsteiler
CrTVAl0CcnLShMqPEt46xw%3D%3D Der soll laut Datenblatt 2 Pullups und 2 C bekommen. >> Laut Datenblatt ist der STM32 aber FT auf allen GPIO. > FT? Nicht alle STM32 sind auf allen Pins 5V tolerant. FT habe ich bei STM öfters für Five-(Volt-)Tolerant gesehen, im Gegensatz zu Three-(Volt-)Tolerant TT. Schlimme
-
Thread
Modbus RTU over TCP Protokollkonverter gesucht
CONFIG_USBIP_CORE=m CONFIG_USBIP_VHCI_HCD=m CONFIG_USBIP_VHCI_HC_PORTS=15 CONFIG_USBIP_VHCI_NR_HCS=8 CONFIG_USBIP_HOST=m CONFIG_USBIP_VUDC=m # CONFIG_USBIP_DEBUG is not set[/pre] Aber vielleicht geht es mit Hardware doch einfacher: J. V. schrieb im Beitrag #7474063: > Ein Waveshare Teil aus
Modbus TCP baut. Die Hardware zeigt auch überraschend ordentliche Merkmale. Im Innern werkelt ein STM32. Die galvanische Trennung ist mit gefrästem Schlitz als Luftstrecke realisiert. Als Überspannungsschutz zur RS485 sieht man sogar eine Gasentladungsstrecke. Das PoE Board hat ebenfalls einen DC/DC
-
Thread
Modbus über USB-Seriell-Schnittstelle
Modbus_over_serial_line_V1_02.pdf steht auch: The format ( 11 bits ) for each byte in RTU mode is : Coding System: 8–bit binary Bits per Byte: - 1 start bit - 8 data bits, least significant bit sent first - 1 bit for parity completion - 1 stop bit *Even parity is _required_*, other modes ( odd parity, no parity
schrieb im Beitrag #7473868: > The format ( 11 bits ) for each byte in RTU mode is : > Coding System: 8–bit binary > Bits per Byte: > - 1 start bit > - 8 data bits, least significant bit sent first > - 1 bit for parity completion > - 1 stop bit > > *Even parity is _required_*, other modes ( odd
-
Thread
zwei Microkontroller verbinden
Ich würd sie in Reihe schalten dann läufts mit 8 V noch mal schneller.
Länge der Leitung und der Übertragung an ... vielleicht reicht SPI (mit Fifo im Empfänger ?). Ein STM32H7 (3,3V) hätte da keine Probleme. Der 3,3V MC braucht 5V tolerante Eingänge, der 5V MC muss mit den 3,3V am Eingang auskommen. Oder eben Pegelwandler ... Was die mA da zu suchen haben
-
Thread
ESP-32 SPI sendet falsche bits
const uint32_t BUFFER_SIZE = 4; /* Tx byte: bit 1: 1 == cmd bit 2: 1 == pin is high bit 3 - 8: pin_nr */ uint8_t* spi_master_tx_buf; /* Rx byte: bit 1: 1 == valid message bit 2: 1 == pin is high bit 3 - 8: pin_nr */ uint8_t* spi_master_rx_buf; void setup() { Serial.begin(115200
uint32_t BUFFER_SIZE = 4; /* Tx byte: bit 1: 1 == valid message bit 2: 1 == pin is high bit 3 - 8: pin_nr */ uint8_t* spi_slave_tx_buf; /* Rx byte: bit 1: cmd bit 2: 1 == pin is high bit 3 - 8: pin_nr */ uint8_t* spi_slave_rx_buf; #define LED 2 void setup() { Serial.begin(115200
-
Thread
SI4703 Probleme beim Channel auslesen
Volume, Seek Up/Down funktioniert tadellos. Hat einer eine Tip, woran es liegt?? Controller ist ein STM32F407 Gruß Sascha
jedoch, das Seek Volume einstellen geklappt hat. [c] char savesi4703_registers(void) { uint8_t outBuff[32]={0,}; uint8_t i = 0; for(uint8_t regSpot = 0x02 ; regSpot < 0x08 ; regSpot++) { outBuff[i++] = si4703_registers[regSpot] >> 8; outBuff[i++] = si4703_registers[regSpot]
-
Thread
Tasterentprellen - nur für Nerds? Gesperrt
nicht gekonnt. Und nebenbei: Als ich neu angefangen hatte und C- bzw. AVR Programmierung (ATMega 8 war da noch der typische Bastler µC und Arduino noch nicht verfügbar) anhand des Wikis hier lernen wollte, musste ich auch feststellen: Hardware bis in kleinste - fast schon lächerlich detailliert
Oft sieht so ein Projekt dann so aus: [c] int main() { using devs = Devices<SDR04, Mcu::Stm::Stm32G431>; using gfsm = GFSM<devs>; gfsm::init(); while(true) { gfsm::periodic(); devs::systemTimer::periodic([]{ gfsm::ratePeriodic(); });
-
Thread
Wertzuweisung Arduino - Kann mir das jemand erklären?
angeschaut? Auch nicht mehr viel anders als z.B. Phyton Gibt es so ein modernes Basic auch für 8 Bit Controller?
n-Bit Zahlen also 2^n) zu X, bis man einen Wert Y im Zielbereich erhält (zum Beispiel Y∈[0,256) für 8-Bit Unsigned oder Y∈[-128, 128) für 8-Bit Signed). 3) Das Ergebnis der Operation ist Y. Der einzige Unterschied zwischen Signed und Unsigned gleicher Breite ist dann nur der Zielbereich.
-
Thread
STM32 5V tolerant, welcher Pegel?
Kommunikationsschwierigkeiten auf den Grund zu gehen? Angenommen da sitzt ein Pegelwandler vor dem STM32 der die 5V wieder auf 3V3 runterteilt, kann es sein dass hier ein Pegel nicht erreicht wird? Bei dem STM32 handelt es sich um diesen Controller. https://www.mouser.de/datasheet/2/389/stm32f103c8
Pegelwandler dazwischen, > (unwahrscheinlich) oder ein anderer Controller bestückt. Es ist ein STM32, zumindest habe ich den Dump eines STM32F103C8T6 darauf geflasht. Die Bilder sind aber nicht von mir. Google Lens liefert noch weitere Bilder (auf einem wurde der HM8634 durch einen MC33079 ersetzt
-
Thread
PiPico Oszilloskop
Scheinbar sind Mikrocontroller basierte Oszilloskope gerade im Trend. Hier eines mit einem STM32G4. Diese Controller haben ein paar Vorteile für ein Oszi: - PGAs - schnelleres Sampling - Komparatoren für den Trigger - DACs für einen Signalgenerator https://hackaday.io/project/192234-stm32g4
Christoph M. schrieb im Beitrag #7473667: > Hier eines mit einem STM32G4 Und hier ein 2-Kanaler mit dem STM32F429 Disco Board: https://mikrocontroller.bplaced.net/wordpress/?page_id=752 Hat den Bildschirm bereits drin und wird mit Touch bedient. Wieder mal ein
-
Thread
STM32H7 - externe SPI Daten (ADC Werte) mittels DMA einlesen
bemerkbar. Wenn du alles auf einmal lesen willst musst du aber 32 Bit lesen . 24 Bit liest er 16 + 8 Bit in 2 Sequenzen.
oder dahinter)? Kleiner Tip: "Event" kommt lt. PDF-Suche auf den 3556 Seiten 3338-mal vor! (rm0399-stm32h745755-and-stm32h747757-advanced-armbased-32bit-mcus-stmicroelectronics) Rein vom Inhalt kann meine ursprüngliche Frage eigentlich keine Noob-Frage (á là "...wie schließe ich eine LED an meinen