-
Thread
Peter Dannegger´s ( PeDa ) Entprellroutine in ein Arduino Sketch einbinden
Gegenrichtung funktionierte nicht, da hab ich einfach mal ... [c] void loop() { if( enc_delta == 4 | enc_delta == -4 ) { val += encode_read(4); // 4 Signaländerungen pro Rastung Serial.print ( "val = " ); Serial.println( val, DEC ); } LEDS = val; } // Ende void
Bernd S. schrieb im Beitrag #7500427: > if( enc_delta == 4 | enc_delta == -4 ) Müsste es nicht > if( enc_delta == 4 || enc_delta == -4 ) heißen? Denn ansonsten verodert man den Wert 4 mit enc_delta und fragt keine zwei Bedingungen ab.
-
Thread
Kommunikation zwischen MCU und MPU
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
Stellt sich die Frage, ob es nicht vielleicht ein fertiges Funkmodul mit SDIO-Interface gibt, was den STM32WB ersetzen kann. Für WiFi und Bluetooth gibt's das natürlich, für Zigbee & Co vermutlich auch? PPS: ESP32-C6 kann SDIO Slave (200 Mbps) und 2.4 GHz Wi-Fi 6 (802.11ax), Bluetooth® 5 (LE), Zigbee
-
Thread
I2C oder SPI fähiger RGB-LED Treiber, gibts das, wenn ja was nehmt ihr?
wert o. wie auch immer mitteilen kann. Eine erste Suche bei reichelt war leider erfolglos .. MfG, Georg
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
Wie kann man Mikrocontroller kaufen und programmieren
dir ein Evaluation Board mit einem Mikrocontroller. Wegen der 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
Development Environment), die kostenlos von der Arduino-Website heruntergeladen werden kann. - **ESP8266/ESP32:** 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
-
Thread
STM32 Flash Schaltung über UART
Für die STM32G0 ist ein Debug-Stecker ganz besonders zu empfehlen. Ich bin bei STM32L4xx immer ohne ausgekommen, aber bei einem G0 habe ich den dringend gebraucht. Neben SWDIO, SWCLK und GND gehört da auch NRST
/dm00625292-stm32g030x6x8-device-errata-stmicroelectronics.pdf
-
Thread
PIC16F1509/Sansmart LCD2004/I2C , benötige etwas Hilfe
mal gegoogelt. Möglicherweise hilft dir dieser Link weiter: https://controllerstech.com/lcd-20x4-using-i2c-with-stm32/ Aufgefallen ist mir auf den ersten Blick die dortige Initialisierungs-Sequenz, die I2C Adresse und auch der von dir abweichende Wert bei der Definition für den 4-Bit Mode. Nur
gegoogelt. > Möglicherweise hilft dir dieser Link weiter: > > https://controllerstech.com/lcd-20x4-using-i2c-with-stm32/ > > Aufgefallen ist mir auf den ersten Blick die dortige > Initialisierungs-Sequenz, die I2C Adresse und auch der von dir > abweichende Wert für den 4-Bit Mode. Nur (?) unter
-
Thread
Sinumerik 810T lässt sich nicht einschalten
Dinge nachmessen oder Tipps geben können :-) BTW: Hat vielleicht einer von Euch die Spline-Option (G06) auf der Maschine? Ab und zu hätte ich dich schon gebraucht. Ich habe hier "nur" die üblichen Zyklen (L93-L99, Einstechen, Abspanen, Gewinde, Bohren usw.). Ob ASM3 oder ASM4 weiss ich gar nicht genau
Chris D. schrieb im Beitrag #7742644: > BTW: Hat vielleicht einer von Euch die Spline-Option (G06) auf der > Maschine? Ab und zu hätte ich dich schon gebraucht. Ich habe hier "nur" > die üblichen Zyklen (L93-L99, Einstechen, Abspanen, Gewinde, Bohren > usw.). Ob ASM3 oder ASM4 weiss ich gar
-
Thread
for-Schleife - Bit verschieben
Anwendungsbereich ist 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. > Bei manchen µC steht sogar im Ref-Man., dass die nicht-relevanten nicht > verändert werden dürfen bzw
Anwendungsbereich ist 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
Wer kann mir schöne Fotos machen?
Ja Profis können das. Ich aber habe noch keinen STM32 in der Hand gehabt. Es gibt hier genug Profis, @hochsitzcola hat z.B. eine fertige firmware für den STM32 an der er seit Jahren bastelt. https://github.com/EBiCS/EBiCS_Firmware Mein Plan ist
Nirgends. Dazu benötigt man nur einen Angelschein. https://youtu.be/oiWUY4G-Z0s
-
Thread
EPROM Backup erstellen
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 habe ich zu genüge hier rum liegen und Erfahrung
Der STM32 hat "FT" Pins, diese sind 5V Tolerant, die sind dann meine Wahl für die Daten-Bits. Auch kann man den FT Pin als Open-Drain Output konfigurieren und einen PullUp auf 5V legen, dann passt es auch
-
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
Konfiguriere einfach dein SPI richtig, der G4 kann jede Anzahl an Bits von 4 bis 16.
-
Thread
Cortex-M4: atomares Load oder Store
Es geht um Cortex-M4+Fpu. Der g++ macht aus [c] volatile uint64_t x1; volatile uint64_t x3; int main(){ while(true) { x3 = x1; } } [/c] ein [c] main: ldr r0, .L4 @ tmp118,
Indikator für deine zweite Frage sein: [c] #include <atomic> static_assert(std::atomic<uint32_t>::is_always_lock_free); static_assert(std::atomic<uint64_t>::is_always_lock_free); // Fails on 32bit M4 [/c]
-
Thread
Tasterentprellen - nur für Nerds? Gesperrt
Programm-Teilen mach für PIC und MSP430 in Assembler; da soll im Wiki-Artikel stehen, was will. mfG fE
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?
G. 4. schrieb im Beitrag #7471205: >> Kann mir das jemand erklären? > > Die Multiplikation > >> 40 * 1000 > > läuft über weil Du einen zu kleinen Datentyp verwendet hast. > > HTH Die ist
Stolperfalle ... :( 1. Es geht um C++, weil das Programm mit einem C++ Compiler üversetzt wird (avr-g++). 2. Zeitgemäße Compiler warnen. Zum Beispiel avr-g++ v5.4 (Release 2015): [pre] <location> Warning: integer overflow in expression [-Woverflow] unsigned long a = 40 * 1000;
-
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
DMA-Controller einen IRQ aus, der dir sagt neue Daten sind da. Mit den Argumenten die du anbringst, den STM32H7 zu verwenden müsstest du eigentlich einen Quadcore mit mind. 1GHz Takt verwenden. RPi4 z.B. Wenn du einen "kleineren" Controller nimmst, der ausreichend Rechenleistung hat, ist es oft auch einfacher
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
-
Thread
Liste von ICs usw. fürs Breadboard
Da kann man dann auch gleich auf STM32 oder andere ARM Controller upgraden - sofern einem die 5V nicht wichtig sind.
Steve van de Grens schrieb im Beitrag #7469900: > Da kann man dann auch gleich auf STM32 oder andere ARM Controller > upgraden - sofern einem die 5V nicht wichtig sind. Die meisten IOs sind doch 5V tolerant. Und die G0xx sind doch die richtigen für Hobbyosten, auch im SOIC8. Wenn
-
Thread
I2C RTC+EEPROM mit ESP8266. Mal funktionierts mal nicht
das verstanden habe hat der ESP8266 ja auch kein richtiges I2C Interface in Hardware wie zB. der AVR/STM32, sondern das ganze sei in Software via Bit-Banging gelöst. PullUp Widerstände(2,2kOhm) sind direkt an den Datenleitungen am EEPROM dran nach 3,3V. Hatte vorher 4,7kOhm drin gehabt. Als Pins verwende
echten" I2C Interfaces also die als Hardware > Baustein im Controller vorhanden sind wie beim AVR/STM32 oder ESP32? > Machen die sowas automatisch während der Initialisierung? Ich meine wenn > ich jetzt ein Reset am AVR über den Resetpin auslöse und der AVR die > Uhrzeit gerade abfragt via I2C weiß
-
Thread
Systematik der STM32 internen Peripherie
Hallo zusammen, zu meinen favorisierten STM32 µC gehört hauptsächlich die G4 Serie. Die anderen Serien kenne ich nicht wirklich. Durch ein aktuelles Projekt kommt die G0 Serie ins Spiel. Nun frage ich mich nach der Systematik der internen Peripherie
Zur Systematik kann man sich auch die XML-Files in STM32CubeMX/db/mcu und Unterverzeichnissen ansehen. Die Rust-Leute haben offenbar auch einiges an "Systematik" zusammengetragen und hier https://github.com/stm32-rs/stm32-rs/tree/master/peripherals in yaml-files
-
Thread
Geeigneter µC für großes LED-Matrix-Projekt
unzureichenden) Wissen und einem Durchgangsprüfer erstellt habe: https://drive.google.com/file/d/1XQVmanVMPL2G8Dl2rx9IEmbrfSX4t7KR/view
Graustufen" realisieren. Ich hab das mal mit so einem HUB75-Display mit 64x64 Pixel RGB auf einem STM32F4xx über die FSMC-Schnittstelle realisiert. Damit liessen sich ca. 170 Frames/s darstellen. @Jonathan: wenn du an dem Code interessiert bist, schreib mir eine PN.
-
Thread
STM32 startet im HardFault
Mit dem STM32L562CEU6 habe ich nie etwas gemacht, aber andere STM32 kommen nicht weit, wenn sie keine passende Spannung auf VDDA sehen.
Heute wollte bei mir ein STM32L031 nicht loslaufen. Ursache war ein nicht richtig gelöteter SMD-Uhrenquarz bei in STM32CubeMX eingeschaltetem LSE-Oszillator. Der CPU-Takt kommt vom HSI-Oszillator.
-
Thread
FFT Verständnisfrage
Hi, ich verwende momentan einen STM32F4 um über einen externen DAC Audiosignale auszugeben. Das funktioniert problemlos und wie gewünscht. Nach dem ich diese Hard- und Firmware nun schon mal habe, wollte ich mit dem ganzen auch noch
Tiefen verändern). So wie ich das sehe, geht das mit einer FFT-Library wie z.B. der von https://stm32f4-discovery.net/2015/07/hal-library-14-fast-fourier-transform-for-stm32fxxx/ Diese Library erzeugt mir aus jeweils einem Teil des Audiosignals ein Array, welches die in dem Signal enthaltenen Frequenzen
-
Thread
Renesas M16C Ersatz
dem Schirm: STM32F4: Bei den grösseren Typen kann man einige Impulszähler realisieren, und sonst ist der auch ziemlich gut ausgestattet (hat viele "nice to have" Features) Renesas Rx6..: habe ich mir noch nicht
CubeMX ist nicht nur Configtool für STM32, es hat auch eine parametrische Suche und eine Ersatzliste für Controller anderer Hersteller. Ob Renesas da auch bei ist weiß ich gerade nicht. F4 sind auch schon Oldies, G4 oder L4 sollte man sich
-
Thread
STM32F107 Ethernet Interface
Ich habe ein Board erstellt um mit dem STM32F107 die Ethernet Schnittstelle zu benutzen. Dazu nutze ich den DP83826 als PHY im Basic mode mit RMII. Der DP83826 wird außerdem im Master mode benutzt. Der bekommt also vom STM32 seine 25MHz über
ist bisher überwiegend generierter Code der STM32 IDE.
-
Thread
Bootloader Mode STM32F303
Hallo, ich habe neulich einen STM32F303 Mikrokontroller gekauft und möchte jetzt den in Booadmode versetzten. Den Pin Boot0 habe ich auf High geschaltet und den uC neu gestartet. Leider erkennt CubeIDE Progrmmer den nicht über DFU
Application note nach, ob Dein exaktes Derivat überhaupt DFU kann. Die meisten F303 können es, aber "STM32F303x4(6/8)/334xx/328xx" können es nicht. In der Application note AN2606 von ST ist alles genau beschrieben: https://www.st.com/resource/en/application_note/an2606-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf
-
Thread
ATtiny Typenchaos bei Microchip Gesperrt
M. H. schrieb im Beitrag #7453745: > Das ist in der Tat tatsächlich eher unüblich. Bspw. Die STM32Fxxx Serien > haben immer den vollen RAM und FLASH Ausbau. Bei den AVRs geht das nicht, da kann man mit dem RJMP Befehl um +/-4kB springen und das wird auch ausgenutzt. Man kann damit also von
M. H. schrieb im Beitrag #7453745: > Das ist in der Tat tatsächlich eher unüblich. Bspw. Die STM32Fxxx Serien > haben immer den vollen RAM und FLASH Ausbau. Und den kann man auch > nutzen. Muss man teilweise auch, weil zumindest früher sämtliche Das war bei den Fxxx in der Tat der Fall. Bei
-
Thread
Pull-up/Pull-down beim STM32
Ist das jemand schon mal gelungen? unwahrscheinlich. Das ist Absicht, es steht bei den meisten STM32 ganz offiziell im Reference Manual. Außer bei den STM32G4xx, bei denen kann man immerhin den Pull-Down einschalten.
resistance is minimum (~10% order). [/code] Seite 136 von 240: https://www.st.com/resource/en/datasheet/stm32f429ii.pdf Das Datenblatt eines (ebenfalls zufällig gewählten) STM32G071 sagt auch was von einer "true resistance"... Aber unabhängig von der konkreten Implementierung der Pull-Ups / Pull-Downs
-
Thread
GCC Linker per Linker Script oder über Kommandozeile Parameter zum Setzen einer Konstante mitgeben
of the app */ . = ALIGN(4); } >FLASH [/c] [c] $ arm-none-eabi-objdump.exe -s -j .rodata const_var.elf const_var.elf: file format elf32-littlearm Contents of section .rodata: 8002bc0 00000000 00000000 01020304
zum Ablegen der Checksumme srec_cat benutzt. srec_cat in.hex -intel -crop 0x08000000 0x0803EFFC -STM32 0x0803EFFC -o out.hex -intel Allerdings wird hier ganze Page für 32bit Checksumme verbraucht. Und damit die Checksumme passt, sind -fill 0xFF und -unfill 0xFF Aufrufe notwendig. Viele Grüße
-
Artikel
Reichelt-Wishlist
| * ST ST7MC... (µC für Servosteuerungen, und vor allem Brushless-Motoren) | | | QFP Bausteine der STM32F4 Serie (Cortex-M4) ST STR7 Serie (ARM7TDMI) * TI MSP430F167, TI MSP430F168 * TI MSP430F2001/2/3 etc. im RSA-Gehäuse (=QFN) | * TI MSP430F2618 | TI MSP430FG4618 | TI MSP430G2553IN20 viele MSP430 Gs
Gehäuse * NCP3063: 1.5 A, BUCK _&_ BOOST Inverting Switching Regulator DIP8/SOIC8 (MC34063 upgrade) (0,32$) | RECOM R-523.3PA fertig Schaltregler 4V - 18V Eingang, variabler Ausgang (Nominalspannung 3.3 V) mit nur 2-4 externen Bauteilen bei > 90% Effizienz RECOM R-723.3P Schaltregler 4V - 28V Eingang, variabler
-
Thread
Arduino UNO R4 in Win10 nicht erkannt
Habe den neuen Arduino UNO R4 zu programmieren versucht und bin nur unter Linux erfolgeich. Obwohl die Arduino-IDE unter Win10(64) dieselbe Version von dfu-util verwendet (0.11-arduino4) wie unter Linux, wird das Board unter WIN10
größere Aussetzer geklappt (die einzige Ausnahme war eine race-condition in Dan Drowns/Roger Clarkes STM32-Installation). Könntest Du das etwas näher erläutern? Nach meinen bisherigen Erfahrungen werden die Treiber für ein Board in dem Moment eingerichtet, in dem die dazugehörigen Programme und Libraries
-
Thread
Fragen zum STM32F407ZET6 controller board. (steccy usw.)
nicht, um Minderwertigkeitskomplexe zu produzieren. Und das Board, zu kompliziert für mich oder was? Stm32F4xx ist auch keine C oder C++ MCU. Was soll das?
K. schrieb im Beitrag #7444262: > Stm32F4xx ist auch keine C oder C++ MCU. Was soll das? Wieder so ein Satz, der keinen Sinn ergibt, und nur zeigt, daß dir sämtliche Grundlagen -wirklich ALLE- für so ein Vorhaben fehlen.
-
Thread
STM32F411CEU + Thermoelement - Erster Versuch eines Datenauslesens -
Hallo, Software: STM32CubeIDE unter Linux. Hardware: Thermoelement, Typ K an PA12 von STM32. Aufgabe: Möchte über PA12 Signal von Thermoelement aufnehmen. Ausschnitt des Quellcodes der main.c: ...
/stm32/stm32f3.html#analog Timbo2023 schrieb im Beitrag #7440336: > und > den grundsätzlichen Kompetenzaufbau für meine Person? Wenn du seit zwei Tagen versuchst, ein Thermoelement an einem digitalen
-
Thread
STM32G4 PB8 (Boot0) als GPIO nutzen
Hallo, ich möchte den PB8 (Boot0 pin) des STM32G4 als GPIO Output nutzen. Gem. Datenblatt kann er dies sofern nSWBOOT0 = 0. Dieses sei angeblich factory default auf 0 ist aber bei mier aktuell gem Debuger auf 1. Ich nutze den Cube/HAL. Wie
Max schrieb im Beitrag #7440247: > Hallo, ich möchte den PB8 (Boot0 pin) des STM32G4 als GPIO Output > nutzen. Gibt es nur einen G4? Wenn nein, dann bitte angeben welchen.
-
Thread
Wanderkiste Widlar, Runde VI
sind wieder ein paar Beigaben von Jörg dabei. U.a. haben wir da jetzt - Eine ganze Menge MCO1610A 32,768 MHz Oszillatoren (https://www.richis-lab.de/osc_02.htm) - 2x Futaba 4-LT-46ZB3 VFD Display (z.B. für Uhren) - 4x Kyocery PWB 16129-CEM 16x1 mit Hintergrundbeleuchtung - 4x MC1001AW-TGR 10x1 -
einen USB Port hat. Ansonsten habe ich noch ein neues NUCLEO-C031C6, ein recht altes Olimex Board mit STM32F405 sowie ein nagelneues, unbenutztes Kendryte K210 Board dazu gelegt. Letzteres hatte ich Anfang des Jahres bei Mouser mitbestellt um den Versand zu sparen, bin aber nie wirklich dazu gekommen damit
-
Thread
STM32 EXTI zu langsam
Hallo Ich habe einen STM32F072RB auf einem Nucleo-Board und möchte damit einen I2C-Bus belauschen. Ich verwende die aktuelle Cube IDE. Da die I2C Hardware kein Sniffing kann, wollte ich die Funktion mit externen IRQs realisieren
@arg RCC_SYSCLKSource_HSI48: HSI48 selected as system clock source, applicable only for STM32F072 devices * @retval None */ [/c]
-
Thread
STM32G4: minimale Sequenz zum Einschalten des ADC1
Hallo zusammen, ich möchte den ADC1 eines Nucleo32G4-Boards mit dem G431 in Betrieb nehmen. Dazu habe ich folgendes Vorgehen bisher (ohne HAL): [c] RCC->AHB2ENR |= RCC_AHB2ENR_ADC12EN; MODIFY_REG(ADC1->CR
G4.