-
Thread
Problem mit RTC bei STM32F103
Ich versuche, an einem STM32F103 die RTC mit dem 32-kHz-Quarz in Betrieb zu nehmen. Ich habe mir aus Datenblatt sowie Beispielcode das hier als Initialisierung heraus gepuzzelt: [c] void init_RTC(void) { PWR->CR
Dafür hat der STM32F103 zwei andere Register mit denen man viel feiner abstimmen kann: http://stefanfrings.de/stm32/stm32f1.html#rtc_calibrate
-
Thread
Der perfekte USB-UART-Konverter
. [c] // For devices with 2x16 bits/word access schema // (e.g. STM32L0x2, STM32L0x3, STM32F04x, STM32F072, STM32F078, STM32F303xD and STM32F303xE) #define UMEM_SHIFT 0 #define UMEM_FAKEWIDTH uint16_t [/c] [c] // For devices with 1x16 bits/word access schema // (e.g. STM32F103, STM32F302, STM32F303xB, STM32F303xBxC) #define UMEM_SHIFT 1 #define UMEM_FAKEWIDTH uint32_t [/c] Wenn man die richtig
-
Thread
Interrupt verhalten bei STM32F103
Michael schrieb: ..Hattest Du nicht in Pascal programmiert? Ja und? In der Firma in C und zu Hause in Pascal. Die Umsetzung ist doch nur 1:1. Anzeige ist 1234,0389Hz, sporadisch aber 1249,7865Hz. Mit einem STM32F103C8. Wenn ich Zeit habe, baue ich das mit einem BlackPill ( STM32F413
schrieb im Beitrag #6809599: > Anzeige ist 1234,0389Hz, sporadisch aber 1249,7865Hz. > Mit einem STM32F103C8. Laß Dir mal die Zählerstände für Ereignisse und Zeit anzeigen. > Die Umsetzung ist doch nur 1:1. 1:1 kann nicht sein. Der STM32F103 hat doch garkeinen Timer9. Calon schrieb im Beitrag
-
Thread
Drehgeber an Arduino, external interrupt ISR wird doppelt ausgeführt
flag im programm zu setzen. wegen den Prellen schalte ich den externen interrupt anschließend aus. [c] void init_INT0() { EICRA|= 1<<ISC01; //ISC01 -> set int0 EIMSK|= 1<<INT0; //enable INT0 } ISR(INT0_vect) { int0_detected = 1; //set EIMSK=0; //disable INT0 } [/c
\n\n\n\n\n\n"); int0_detected = 0; PCIFR |= (1<<PCIF0); //clear interrupt flag EIMSK |= 1<<INT0; //enable INT0 } } [/c] Das Prooblem bleibt weiterhin bestehen und davon abgesehen stellen sich
-
Thread
STM32-SPI-Code Feedback
]); rx_count ++; } //Hier sollten die rx_byte[0...4] in rx_data zusammengefasst werden GPIOA->BSRR |= GPIO_BSRR_BS4; [/c] du verlässt dich voll darauf, dass die SPI mindestens 5 byte HW FIFO hat. Das mag so sein bei dem STM32, den du benutzt
// Write an integer using an integer transaction uint8_t tmc_spi_write_int(uint8_t address, uint32_t data) { // Set address write bit => write command return tmc_spi_transaction_int(address | 0x80, &data); }[/c] Register schreiben: [c]tmc_spi_write_int(0x0B, gScale); // GLOBALSCALER[/c]
-
Thread
STM32: Seltsames Verhalten
HAL_RTC_ALARM_ENABLE_IT(&hrtc, RTC_FLAG_ALRAF); HAL_PWR_EnterSTANDBYMode(); /* USER CODE END 2 */ [/c] Ich habe den Sketch auch mit Nucleo F411RE & G071RB getestet. Bei Beiden gibt es das Problem nicht. Die funktionieren bis auf 2V einwandfrei. Ein zweites Board mit STM32F401CC verhält sich gleich.
KT315 schrieb im Beitrag #6808094: > Das Board ist ein HW-848 mit einem STM32F401CC MCU aus > China > Nucleo F411RE & G071RB getestet. Bei Beiden > gibt es das Problem nicht. > Ein > zweites Board mit STM32F401CC verhält sich gleich. Ist das zweite F401-Board auch
-
Thread
Umstieg von Windows auf Linux?
Manfre schrieb im Beitrag #6806842: > Meine Anwendungen sind > ziemlich einfach: 8-Bit AVR- und STM32-Programmierung, Raspberry Pi > (Python, Lua, etc.), FireFox, Thunderbird, LibreOffice, etc. Zu AVR und STM32 kann ich nichts sagen, aber die anderen Sachen gibt's alles für Linux. > Welcher
zu der Software die du verwenden willst, wirst dich wundern wieviel da eine Linux version haben....STM32 erwaehnst du, STM32CubeIDE gibts fuer Linux.
-
Thread
230V messen die 1000te
bestellt.. Jetzt kann ich ja einfach mal ein paar Widerstände und caps verlöten, dann direkt auf den STM32 legen und mit StLink Proggen. :D
: > Jetzt kann ich ja einfach mal ein paar Widerstände und caps verlöten, > dann direkt auf den STM32 legen und mit StLink Proggen. :D Du bist dir aber schon bewusst was dann auf dem USB Kabel für Potentiale liegen können?
-
Thread
TOISWITCH - IoT I/O-Server für ESP8266
Die Daten stehen alle in dem Kommando : Flash 40mhz Xtal 26mhz Flashsize 4MB = 32Mbit Flashmode DIO (QIO sollte auch gehen je nach Board) 0xd000 ota_data_initial.bin 0x0 bootloader.bin 0x10000 Webserver.bin 0x8000 partitions_example.bin Habe mir das Nodemcu v3 mal angesehen
/build/toiswitch_1m.bin 0x8000 /home/tobias/Documents/Projekte/Elektronik/TOISWITCH/Software/esp8266/1M/Toiswitch/build/partitions_1m.bin (Oder halt mit dem Flashtool deiner Wahl). Anpassung in init.c [c] else if
-
Thread
LED an µC-Pin
-LED auf Ground und Vdd schalten (3V3) -LED an Vdd und Ground schalten. -egal Controller ist STM32G0xx. (Ausgang PushPull) Gibt es einen Grund, warum die eine oder andere Variante den "Innereien" besser tut? Grüße Runout
Thomas T. schrieb im Beitrag #6804891: > Controller ist STM32G0xx. > Was ist prinzipiell besser Die Lösung ist: > -egal Denn die Schaltleistung der Mosfets der Treiberstufe sind annähernd ausgewogen. Der P-Kanal-Mosfet ist dafür auf dem Die deutlich größer
-
Thread
STM32 USB CDC Funktion umplatzieren
kommuniziert - funktioniert einwandfrei. Nun stecke ich aber etwas fest, in der data "usbd_cdc_if.c" werden ja die Com-Daten empfangen [code] static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len) { /* USER CODE BEGIN 6 */ USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]); USBD_CDC_ReceivePacket
Noch eine Alternative: https://www.mikrocontroller.net/articles/USB-Tutorial_mit_STM32#Virtueller_COM-Port
-
Thread
RS232 Seriell Schnittstelle für WS2811 LED Stripes
rauslaufen. Viele Komponenten wären es nicht. Ein SNT von 24/12V auf 3,3V. Ein RS232 Treiber. Ein uC. Das wären die Grundvoraussetzungen. Ich würde z.B. einen STM32 nehmen. Bei geeignetem Programm könntest du dann sogar den Bootloader im STM aktivieren falls doch noch ein Problem im Feld Auftritt oder
https://cdn-reichelt.de/documents/datenblatt/C300/07500652_XXXXXXXX_0_DE.pdf S50
-
Thread
CCMRAM richtig einsetzen
Guten Abend, ich spiele mit einem STM32F334. Mir ist aufgefallen das dieser µC einen CCMRAM hat. Leider verstehe ich nicht was ich Sinnhaftes damit machen kann. Kann mir bitte jemand kurz erklären welchen Zweck dieses Ram erfühlt? Danke
mal eines für den F429ZI an, um zu zeigen wies gemacht wird. Im Code kannst dann sowas schreiben: [c] char CCRAM buf[32]; uint32_t CCRAM maxA, maxB ; [/c]
-
Thread
Mikrocontroller mit DAC?
Dieter H. schrieb im Beitrag #6801370: > Gibt es da AVRs oder PICs? STMs kriegt man ja gerade gar nicht. Mit dem Argument nimmt man doch auf jeden Fall einen externen DAC. Wenn man 2 oder mehr Kanäle braucht, spart I2C sogar Pins. Mit SPI sind auch 20MHz Abtastrate möglich. Und bei Reichelt gibt's jede Menge Auswahl ab 0.53€ https://www.reichelt.de/signalwandlung-c8710.html?&nbc=1
-
Thread
Zustandsdaten Lithium Batterie
eine extra Spannungsversorgung? Und was der Bin Pin anstellt, ist mir auch unklar. Ich will über I2C die Zustandsdaten ( SOC, Temp etc.) an den STM32 schicken und auslesen können. Es wäre super wenn mir jmd grob erklären könnte was das Bauteil alles benötigt, da ich noch vom Wissen relativ am Anfang
extra Spannungsversorgung? Und was der > Bin Pin anstellt, ist mir auch unklar. Ich will über I2C die > Zustandsdaten ( SOC, Temp etc.) an den STM32 schicken und auslesen > können. Es wäre super wenn mir jmd grob erklären könnte was das Bauteil > alles benötigt, da ich noch vom Wissen relativ
-
Thread
Quelltext: Lesestoff gesucht
# -- End function .ident "FreeBSD clang version 10.0.1 (git@github.com:llvm/llvm-project.git llvmorg-10.0.1-0-gef32c611aa2)" .section ".note.GNU-stack","",@progbits .addrsig [/avrasm] Der Test ist also drin. :( Bei GCC 9
"FreeBSD clang version 10.0.1 (git@github.com:llvm/llvm-project.git llvmorg-10.0.1-0-gef32c611aa2)" .section ".note.GNU-stack","",@progbits .addrsig [/avrasm] Wie du siehst, macht der Compiler genau
-
Thread
Z80 OUT (C) mit Register A belegen.
Muss man das Register A bitte immer neu belegen oder reicht es zum Anfang nur einmal ? PS : out (c),0 funktioniert nicht. Danke. ld a,0 out (c),a ld a,0 out (c),a ld a,0 out (c),a ld a,0 out (c),a
Peter B. schrieb im Beitrag #6800181: > out (c),0 funktioniert nicht. Ganz vergessen: Das ist die einzige Ausnahme, die es doch gibt. Der Opcode ist 0xed, 0x71.
-
Thread
Durchflusssensor auslesen mit µcontroller - Impulse/Frequenz/Durchfluss
einen Durchflusssensor (https://at.rs-online.com/web/p/durchflusssensoren/4468309/) den ich mit einem STM32F411RE Nucleo-64 Board auslesen möchte. Der Sensor hat folgende Eigenschaften: Flow Range = 1 - 15 L/min Pulses per Liter = 2200 Frequency Output = 37 - 550 Hz Nun frage ich mich, mit welcher
GPIO_PIN_ReadPin durchgängig lesen. Für sowas benutzt man den Input Capture des Timers. Google STM32 PWM Input.
-
Thread
Cortex M3 Port Pin wird nicht auf 0 gesetzt
man nicht gleichzeitig Bits > setzen und zurücksetzen kann. Doch, das geht durchaus - z.B. beim STM32F4 mit dem BSRR-Register.
, 0, 0, false); [/c]
-
Thread
STM32f429NIH6U FPU deaktivieren
Hallo, ich arbeite zurzeit mit einem STM32f429NIH6U, also einem Cortex M4 mit FPU. Allerdings möchte ich die FPU gerne deaktivieren. Ich arbeite mit der STM32Cube IDE und habe in den Project Propertiers auch die Möglichkeit gefunden um
Code zum Testen: [c] #include <stdio.h> #include <stdlib.h> #include "stm32f4xx.h" int main(void){ //Deaktivieren der Coprozessoren in C //FPU_CPACR->CPACR &= ~(1 << 22); //FPU_CPACR->CPACR &= ~(1 << 23);
-
Thread
Überspannung bei Attiny Input Pins
klaren Angaben, wie viel Strom im betrieb über die ESD Dioden fließen darf. Zum Beispiel die ganzen STM32 L0, F1 und F3 Reihen.
Buffer, ect. nehmen, um den uC vor der Außenwelt zu schützen.
-
Thread
CRC Einheit im STM32 -> CRC32 lässt sich nicht bestätigten
_t crc = init; uint32_t cnt; for (cnt=0; cnt < 32; cnt++) { crc = ((int32_t)(crc ^ data))<0 ? (crc << 1) ^ 0x04C11DB7 : crc << 1; data <<=1; } return crc; } uint32_t calculate_stm_crc(uint32_t *
mit deinem Testwert 0x1F7463AB gemacht. Ich komme mit meinem C Progrämmchen auf den Wert: 0x4bc4c523. Woher dien Wert kommt, kann ich nicht nachvollziehen. Mein Code funktioniert bei mir für einen STM32F407. Der sollte
-
Thread
Serial-to-Ethernet: Welche Daten für URL senden?
Anforderungs-String) habe ich dann im Quelltext kopiert und nacheinander auf dem UART gesendet: [c] char caHeader[] = { 0x00, 0x20, 0x4a, 0x97, 0x6a, 0xb0, 0x94, 0xc6, 0x91, 0x51, 0x98, 0xbd, 0x08, 0x00, 0x45, 0x00, 0x01, 0xf3, 0xbe, 0xe9, 0x40, 0x00, 0x80, 0x06, 0x00, 0x00, 0xc0, 0xa8, 0xb2,
,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\r\n"); strcat(caString, "Accept-Encoding: gzip, deflate\r\n"); strcat(caString, "Accept-Language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7\r\n"); [/c] Aber die
-
Thread
Meadow F7: Dateisystem, neue I2C / SPI-API, Refactorings für neue Zielplattformen
F7 einen kombinatorischen Prozessrechner, der einen für die Ausführung der .net-Payload zuständigen STM32-Kern und einen ESP32 als WLAN-und Bluetooth-Funkmodul einspannt. Das Produkt ist seit einiger Zeit am Markt (siehe Unboxing der ersten Variante unter https://www.youtube.com/watch?v=8uU0TFuvgis),
Ankündigung spricht man sogar davon, dass mehr als 200 000 Requests in einer Session verarbeitet wurden: [c] We’ve fixed nearly all of the leaks on web requests. We’ve successfully tested 200k+ requests without blowing mem. [/c] ### Stramlineing im Bereich der I2C-und SPI-API ist Das permanente Allozieren
-
Thread
Keil RTX5 auf STM32G070 lohnt sich überhaupt?
leider auf die alte superloop umschwenken. Der Keil erzeugt sehr gutes optimiertes code. Übrigens: Für STM32 F0,L0 und G0 ist Keil frei. Aus Erfahrung mit anderen uC mit viel Falsh und RAM ist die Programmierung mit RTX viel eleganter, robuster und struktierter als eine Superloop. Ich hab gehoft dass andere Entwickler ihre Erfahrungen mit RTOS auf kleinen uC mit wenig RAM und Flash bringen. Bei STMCubeMX in Repository ist ein Beispiel mit STM32G070 mit FreeRTOS und 2 Threads a 128 Stack-Size je Thread. Der RAM-Verbrauch hält sich in Grenzen. Nach der Kompilierung
-
Thread
Fritzbox 7490 - Gewitterschaden
geschützt. > > Wie kann mit einem defekten Chip DSL syncron werden? Ich habe ähnliches schon mit STM32 Controllern gesehen. Ansonsten bliebe die Frage: Warum sollte der DSL-Chip heiß werden, wenn er ansonsten funkioniert? Bliebe nur eine zu hohe Versorgungsspannung (das kann man ja prüfen) oder
Markus M. schrieb im Beitrag #6794939: > Ich habe ähnliches schon mit STM32 Controllern gesehen. Ansonsten bliebe > die Frage: Warum sollte der DSL-Chip heiß werden, wenn er ansonsten > funkioniert? > > Bliebe nur eine zu hohe Versorgungsspannung (das kann man ja prüfen
-
Thread
VCF für μC-Synthesizer
haben "fast" alle Chips die ich habe, nur Single 5V Speisung(Zumindest alle CV gesteuerten) die mit I²C gibt es auch in 3.3V Version. Wäre ja Unsinnig weil die CV Werte ja schon Standardisiert im 0V~ 5V Bereich liegen. Es gibt auch den 0V~10V Bereich ist aber weniger verbreitet und hat damals als ich
in die Sättingung, denn die oberen Bits tragen aufgrund von Genauigkeitsproblemen nicht exakt mit 0.50000000000 und 0.250000000000 zum analogen Endwert bei. Daher haben R2R-DACs sehr rasch ein Problem. Das erleben auch immer wieder DIY-Bastler, wenn sie 32-Bit R2R-DACs selber bauen. Da die "oberen"
-
Thread
BLE Modul für Batterieanwendung
um den µC zu wecken? Der µC würde dann 2min an bleiben und warten bis ich Daten anfrage oder einfach wieder in den Sleep gehen und das HM-10 ebenfalls schlafen schicken. Kennt die Dinger jemand und kann mir sagen ob da so mit dem Modul klappt oder ob es andere gibt die das können? µC ist ein STM32, wahrscheilich F103 VG Max
-
Thread
ST-Link Utility: Was kann beim lesen/schreiben schiefgehen?
zusammen, ich habe vor einiger Zeit einen binären Software-Stand aus einem selbst programmierten STM32F446RE "gesichert" (zu den Anführungszeichen später). Ich wollte sichergehen, dass ich die Firmware-Version, die seit Monaten zuverlässig läuft, jederzeit wieder zurückspielen können würde. Dazu
Solche Info gehört natürlich auf eine feste Adresse ganz am Anfang. Beim Cortex-M mit VTOR geht das ab 0x008, oder 0x010, falls man gleich beim Start einen Hard Fault erwartet ;) > Wie wird das mit der Prüfsumme gemacht? Einmal CRC32 über den ganzen > Flash-Adressbereich? Je nach persönlichem Sicherheitsbedürfnis
-
Thread
Freescale Freedom-Boards (FRDM-KL2xZ) veraltet? Alternativen?
Projekt mit dem Kram als Grundlage und ziehe eine Hardware-Abstraction dort ein, wo ein modernerer μC von NXP andere Hardware hat. Damit wäre es leichter, den Kram zu portieren. K. H. schrieb im Beitrag #6790616: > Mit STM32Fxxx habe ich schon ein paar Projekte bearbeitet Oder mach' gleich mit
das Zeug Ende letzten Jahren/Anfang dieses Jahres den open-source FAT-Treiber von Elm-Chan auf einem STM32F030 am SPI-Port zum laufen gebracht. :]
-
Thread
STM32F0 Stromverbrauch im Stop Mode
Hier der verwendete Code: [code] #include "stm32f0xx.h" #define WFI 1 #define WFE 2 #define LOW_POWER 1 #define NORMAL 2 void PWR_Enter_Stop_Mode(uint8_t mode, uint8_t Regulator_State); int main(void) { //Takt für GPIOs aktivieren
Die MODE-Register haben 32 Bit, je 2 Bit pro Pin. Wenn du wirklich /alle/ GPIO-Pins analog haben willst, musst du 0xFFFFFFFF schreiben. So schaltest du die Px0 bis Px3 auf analog und Px4 bis Px15 auf Input. Laut Schaltplan sind
-
Thread
Quarz Unterschiede 16pF und 18pF
Hallo zusammen, ich möchte ein STM32G070 mit einem externen Quarz betreiben. kann mir jemand kurz erklären was ist der Unterschied zwischen die 2 Qaurze: Quarze CRYSTAL 8.0000MHZ 18PF SMD und Quarze CRYSTAL 8.0000MHZ 16PF SMD. Liegt
Bereichs von etwa 200 ppm Breite langsamer oder schneller. Solange man mit dieser Abweichung von 0,02 % leben kann, ist der Last-C-Wert ganz egal. Man verwendet die Schaltung und Werte des Kontroller-Datenblatts und gut ists.
-
Thread
ILI9486 8-Bit Parallel Bus deutlich langsamer als SPI
nicht verfügbar sind, wäre ein > Nucleo/Discovery-Board eine günstige Lösung, an einen geeigneten µC zu > kommen Hmm, weiß nicht 20 Euro für ein Nucleo-64 F446RE blechen um an einen STM32F446RE und an den STM32F103C8T6(Der auf der ST-Link Platine oben sitzt) Controller zu kommen. Ist glaubig nicht
schrieb im Beitrag #6789295: > Hmm, weiß nicht 20 Euro für ein Nucleo-64 F446RE blechen um an einen > STM32F446RE und an den STM32F103C8T6(Der auf der ST-Link Platine oben > sitzt) Controller zu kommen. Ist glaubig nicht die beste Idee. Beim STM32F446RE wird es kaum schneller. Da muss man die Bus-Wartezeiten
-
Thread
Threadsichere Bitmanipulation mit Bitbanding
void warning_add(enum warning_e wrn) { WarnState_t *const State = &WarnState; #if defined( STM32F4XX ) /* Auf STM32 Bit threadsicher ueber Bitbanding-Region sichern Bitbanding: Abbildung des Speicherbereichs 0x20000000-0x200FFFFF auf den Bereich 0x22000000-0x23FFFFFF
ueber die Bitbanding-Region geschrieben. * Bitbanding: Abbildung des Speicherbereichs 0x20000000-0x200FFFFF auf den * Bereich 0x22000000-0x23FFFFFF. clz() ist auf den Cortex M3/M4 billig. */ static_inline void warning_setTo(enum warning_e wrn, bool to) { #if defined( STM32F4XX )
-
Thread
STM32H743ZI Nucleo SPI1 mit HAL funktioniert nicht
Ich probiere nun seit bestimmt 8h rum aber ich schaffe es nicht, SPI1 auf einem Nucleo-144 mit STM32H743ZI zum laufen zu bekommen. Das ist die wesentliche Konfiguration: [code] __HAL_RCC_SPI1_CLK_ENABLE(); __HAL_RCC_I2C1_CLK_DISABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE
Problem lösen. Das konkrete Problem ist, dass SCLK / CS zwar funktionieren aber MOSI immer auf 0 bleibt. So läuft die Übertragung ab: [code] uint8_t opcodes[2]; opcodes[0] = 0b00100000; opcodes[1] = 0b00000010; uint8_t reg_content; HAL_GPIO_WritePin(GPIOD, GPIO_PIN_14, GPIO_PIN_RESET
-
Thread
STM32 I2C EEPROM lässt sich lesen aber nicht beschreiben
Hallo Community, Ich versuche seit gestern vergeblich ein I2C EEPROM am STM32F103C8T6 (Blue Pill Board, es ist aber glaubig ein Fake-uC auf dem Board verbaut da man ihm mit ST-Link GDB Server nicht programmieren kann es geht nur mit OpenOCD, weiß nicht ob es evtl
Rmin gleich wie bei <=100KHz nur rmax = 300ns/Cbus Wenn ich das jetzt mal für 100KHz beim STM32 durchrechne: fscl=100KHz, Vcc=0,3V, I=3mA, Cbus=~8pF(Aus Datenblatt ST24C08WP) Rmin = 3,3 - 0,4V / 3mA = 966,667 Ohm -> 1kOhm Rmax = 1000ns/8pF = 125kOhm Allerdings muss ich sagen das
-
Thread
C Präprozessor: Zeichenketten vergleichen oder anderes enum-ähnliches Konstrukt?
SLOW_LOOP_IRQ_HANDLER TIM7_IRQHandler #define BUZZER_PWM buzzer_STM32F4XX_TIM4_PB7 #define ENCODER_HARD_AUX0 encoder_STM32F4XX_TIM5_PA0_PA1 #define ENCODER_HARD_AUX1 encoder_STM32F4XX_TIM2_PB8_PB9 #define ENCODER_HARD_AUX2 encoder_STM32F4XX_TIM3_PB4
SPI-Port (Hard-SPI mit DMA) */ //#define SPI_HARD_DMA spi_hard_none #define SPI_HARD_DMA spi_hard_STM32F4XX_SPI1_PA5_PA6_PA7 //#define SPI_HARD_DMA spi_hard_STM32F4XX_SPI2_PB13_PB14_PB15 //#define SPI_HARD_DMA spi_hard_STM32F4XX_SPI3_PC10_PC11_PC12 /* ... */ [/c] Wie man sieht, geht es bei den
-
Thread
STM32 atomare Operation
dir mal anschauen: https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html In Standard C gibt es zu atomaren Operationen folgendes: https://en.cppreference.com/w/c/atomic In Standard C++ gibt es noch folgendes: https://en.cppreference.com/w/cpp/atomic/atomic Inwieweit das für STM32
ändern, zurückschreiben). Die Operation wäre ok, wenn man i in ein Register zwingt (register uint32_t i __asm("r0");).
-
Thread
µC Board mit HDMI (notfalls VGA) Ausgang
Hallo zusammen, ich suche ein µC Board, welches einen HDMI Anschluss und GPIO hat. WLAN wäre gut, kann ja aber per GPIO ggf. angeschlossen werden. ESP32 ist leider zu schwach für HDMI und höhere VGA Farb-Photos. Raspberry Pi
Gib mal bei Google STM32 und HDMI ein.
-
Thread
Wie Daten per UART zwischen zwei µCs übertragen?
mit erheblichem Overhead (soviel wie die Nutzdaten), dafür sehr simpel zu managen: Spalte Deine 32-Bit-Zahl, z. B. 4F802BD1, in ihre acht Nibbles auf und übertrage die acht Bytes 04, 1F, 28, 30, 42, 5B, 6D, 71. Das erste Nibble gibt jeweils den Index an, das zweite das Datennibble. Index 0 markiert
9O2. 9 Bit + Parity. AVRs können das. Aber kein USB-UART Wandler kann das. Ich finde nicht mal einen STM32 der das kann. Gut die STM32 können wenigstens 9 Bit ohne Parity. Aber ich würde die 9 Bit nicht ohne Not machen. Ist zu viel Ärger.
-
Thread
RFM69CW RegFrb Frequenzangabe funktioniert nicht
after write 88 rfm69_set_register 0x07 readout before E4 new value D9 readout after write E4 rfm69_set_register 0x08 readout before C0 new value 33 readout after write C0 rfm69_set_register 0x09 readout before 00 new value 3A readout
Registern die sich dann nicht ändern lassen. Ja, es gibt fertige Libs, aber nicht alle nativ auf dem STM32 nutzbar (C) und man will auch was lernen. Den Arduino Aufsatz mag ich hier nicht so da ich mehr mit der direkten Hardware spielen will Einen BME280 (I2C) konnte ich auch schon Leben einhauchen, nur
-
Thread
Fragen zur Erstellung von 8xPWM mit einstellbarer Anzahl an Perioden beim STM3F103
/Motoren gestartet weg_s[1][0] weg_s[1][1] weg_s[1][2] weg_s[1][3] und weg_m[1][0] weg_m[1][1] weg_m[1][2] weg_m[1][3] [/c] Nach jeder Periode wird der HAL_TIM_PWM_PulseFinishedCallback aufgerufen, um die Anzahl der Periode zu
4s=0; volatile int counter_clock_4m=0; [/c] Leider besteht das Problem immer noch. Ich werde morgen mal die Frequenz runterschrauben. Ich hab mir mal den Debugger Serial Wire Viewer (Live Expression
-
Thread
zukunftsfähige GUI - Qt oder HTML5?
bürorechner laufen soll, vieleicht dann mit kleinem Display? dann währe die Frage ob es nicht auch ein µC (z.B.stm32F7xx) tut, darauf könnte man dann z.B. mit TouchGFX oder QT for uC oder oder oder etwas zusammenbauen. Oder wenn es etwas komplet fertiges (und u.a. arduino programmierbar) sein soll, vieleicht
weniger aufwändig ist lvgl, dafür läuft es auch auf µC. Es hat auch schöne Widgets und ist auf einem z.B. STM32F769 auch schnell (trotz 32 Bit Farbtiefe und 800 x 480 Pixel Display). Siehe Anhang mit einer lvgl Demo auf dem F769 Disco. Auf der lvgl Seite