-
Thread
Mikrocontrollerauswahl gut?
nach Entwicklung eines Prototypen immer noch schauen ob ein kleinerer Controller reicht. Weil du I2C brauchst ist es aber nicht verkehrt einen der neueren STM32 (F3, F7, ...) zu nehmen; die alten haben so eine umständliche I2C Peripherie. Möchtest du die SD Karte im SD bus Modus betreiben? Das ist
dein allgemeine Bastelkompetenz hast du ja schon mehrfach unter Beweis gestellt. >Ich habe den STM32F722RE gewählt. Dieser hat 216Mhz, 512kb Flash, 256k >Ram. Der reißt es bestimmt raus. Dickes Rohr an der Karre. >- Programmierung des MCU via Serial Wire >- I2C Oled Display ansteuerung
-
Thread
SSD1309 STM32
funktioniert. Es gibt auch die Option STM32-Boards in Kombi mit der Arduino IDE benutzen zu können. Z.B. kann man die SSD1309-Bib. unter der Verwendung der Arduino IDE mit dem STM32-Nucleo 64 Modell STM32F401RE verwenden. Das funktioniert! Bei der Verwendung des Mikrocontroller-Board STM32L432KC (Nucleo-32) und bei dem STM32F303K8 (Nucleo-32) funktioniert die SSD1309-Bib. leider nicht. D.h. man kann diese Modell unter der Verwendung der Arduino IDE auswählen auch mit der SSD1309-Bib
-
Thread
DIP Breakout für LQFP-48
Muß es genau ein "STM32F072CBT6" oder geht auch eins der Nucleo 32 Boards oder eine Blue Pill?
Wie wäre es damit: https://github.com/electroniceel/stm32....c-breakout Diese Breakout-Boards habe ich exakt für solche Fälle entwickelt. Ich habe es in mehreren Projekten mit STM32F072CBT6 erfolgreich im Einsatz.
-
Thread
STM32 Nucleo welches Board am besten?
Guten Morgen, ich würde mich gerne zukünftig in die Welt der STM32 einarbeiten. Ich habe bisher gute AVR Kenntnisse aber STM32 sind ganz neu für mich. Nun schwebt mir schon ein Projekt vor und ich suche daher nach einem NucleoBoard, dass eine Can und Ethernet
https://www.carminenoviello.com/2015/08/28/adding-ethernet-connectivity-stm32-nucleo/
-
Thread
STM32G030J6 CubeMX SPI OpenDrain output
ist etwas ekelig, leider gibt es auch keinen Generator für den Clock-Config Code mehr wie für den STM32F0. Das wird jetzt alles über HAL Calls gemacht... Gruß Markus
Familien hin-und her switche geht es noch. Versuche jeweils eine Familie für einfache Sachen (war STM32F0xx ist jetzt STM32G0xx) und größere Sachen (STM32F4xx) zu verwenden und dazwischen eher nichts. Hier noch der Clock Initcode, kann man natürlich noch mit Konstanten aufhübschen: [c] //
-
Thread
STM32F407G-DISC1 no STM32 target found!
21:19:38 : STM32CubeProgrammer API v2.5.0 21:20:26 : Read File: C:\Projekte\myprog.bin 21:20:26 : Number of segments: 1 21:20:26 : segment[0]: address= 0x0, size= 0x8070 21:20:38 : ST-LINK SN : 0670FF303931594E43055327
~/STM32Cube/Repository/STM32Cube_FW_F4_V1.25.0/Projects/STM32F4-Discovery/Demonstrations Müsste die sein. Falls nicht, auf jeden Fall in der Repsitory.
-
Thread
Allgemeine Fragen über STM32
https://www.st.com/en/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html
DAC-Kanal ist ganz einfach ein DAC, der > irgendwie (abhängig von gewünschter Bandbreite z.B.) an den µC > angeflanscht ist. Den findest du natürlich nicht in der Spezifikation > des µC. Bei gefährlichem Halbwissen besser den Mund halten. STM32 haben externe Kanäle für die internen DACs die nach außen
-
Thread
STM32 Startprobleme
irgendwelchen Speicherstellen, die ich nicht beeinflussen kann. Wo ist der Fehler? Die main.c sieht wie folgt aus : [c] #include "stm32f10x_lib.h" // STM32F10x Library Definitions #include <stdio.h> #include "STM32_Init.h" // STM32 Initialization
in den Controller schreiben: halt reset stm32x mass_erase 0 flash write_bank 0 C:/STM32/Examples/Olimex/stm_p103_blink_flash/main.bin 0 Nach dem Drücken des Reset-Tasters blinkt die LED an PC12. Habt ihr vielleicht schon ein paar Sachen
-
Thread
Geeigneter Controller der AVR-Familie gesucht
: [[ARM-ASM-Tutorial]]. Wobei ich auch keinen Grund sehe warum man Timer nicht in C oder C++ ansteuern soll. Die Timer der STM32 sind schon sehr gut geeignet so etwas in sehr präzise zu messen.
C++ ansteuern soll. Die Timer der STM32 sind schon sehr > gut geeignet so etwas in sehr präzise zu messen. AVR war wie gesagt nur mein erster Gedanke - vielen Dank für die Verlinkung, auch hier werde
-
Thread
Kann man ein Tablet als Display benutzen?
günstiger als ein vergleichbares Grafikdisplay und will einfach z. B. Messwerte aus einem Arduino, ESP32, STM32 seriell oder über I2C auf dem Display/Tablet darstellen.
> Messwerte aus einem Arduino, ESP32, STM32 seriell > oder über I2C auf dem Display/Tablet darstellen. Man kann schon wenn man kann. Aber man muss auch Koennen koennen! :-D Aber die Android-Geraete, egal ob Tablett oder Handy haben
-
Thread
Anfänger braucht Entscheidungshilfe
(für 8bit AVR) http://stefanfrings.de/mikrocontroller_buch2/index.html und http://stefanfrings.de/stm32/index.html (für 32bit ARM) Eventuell ist für dich der ESP8266 interessant, ein 32bit Mikrocontroller mit WLAN: http://stefanfrings.de/esp8266/index.html
Atmel Studio funktionieren. Leider sind die Debugger für AVR verhältnismäßig teuer. Debugger für STM32 (ST-Link) bekommt man viel billiger und man hat dort auch mehr Auswahlmöglichkeiten, was die IDE angeht. An die Einfachheit des AVR Studio kommen die IDE's für STM32 aber alle nicht heran*. *)
-
Thread
Stromsenke Opamp virtuelle Masse Verwirrung
das 2,2V Signal lag wunderbar in der Mitte. Das Problem ist nun, wenn ich wirklich den DAC vom STM32 verwende hat der ja seine Massepunkt bei der echten Masse der 3.3V Versorgung. Ich kann die Masse vom STM32 ja nicht einfach an VGROUND legen, so wie ich dass mit meinem Funktionsgenerator gemacht
gekommen mal ein paar zu bestellen. Ladungspumpe wollte ich eigentlich nicht in der nähe meines STM32 haben wegen ADC Störeintrag und weil ich nur 1 Layer Platinen ätze... Übrigends habe ich den IRFZ44N mal getestet und für 1A brauche ich mindestens 4,6V :)
-
Thread
AVRISP MKII nicht mehr lieferbar - Alternativprodukt?
> nicht abgenommen haben. Bei epay (R) gibt es den voll funktionsfähigen, zu ST-Link-V2 (den STM32 Debugger) kompatiblen Programmer *und* Debugger für unter 10 Euro. Ich habe da gerne STM32 "gelernt" und bin begeistert.
Überläufer schrieb im Beitrag #5061502: > Ich habe da gerne STM32 "gelernt" und bin begeistert. Und wie hilft das dem TO bei seiner Frage nach dem AVRISP MKII?
-
Thread
Arduino: max. Strom duch interne Schutzdioden
. Vor allem verträgt kein STM32-Pin 5 Volt, wenn VDD = 0V ist. Ja, es ist so kompliziert, nur das richtige Datenblatt für genau den fraglichen Pin gilt! Aber kochen können sie, die Franzosen und Italiener ;)
im Detail - bei STM32 noch viel mehr als bei den klassischen AVR.
-
Thread
ISP Bootloader über USART bei STM32 funktioniert nicht
handelt, wie ich mir aus China bestellt habe, aber bei mir funktioniert folgender Trick. Ich rufe stm32flash mit diesem loop auf while true; do stm32flash -b9600 -[anderes Kommando] /dev/ttyUSB0; sleep 2; done Erst dann (wenn der loop läuft) schließe ich das Board an die USB Schnitstelle an. BOOT0 ist natürlich in dem Moment des anschaltens überbrückt. Ich benutze dafür meistens einen Schraubendreher. Mein Board ist auch mit einem stm32F103 (stm32F103RBT6) Chip. Es handelt sich auch um den
-
Thread
Probleme mit USART von STM32VL
Habe das Programm nun mal ein bisschen abgeändert. [c] #include "stm32f10x.h" #include "Configure.h" int main(void) { SystemInit(); UART_INIT(2); GPIO_INIT(9,'C', 0); int i,data; while(1) { while (USART_GetFlagStatus
Archiv der Standard Periphal Library: http://www.st.com/web/en/catalog/tools/PF257890 Im Pfad STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples
-
Thread
STM32F4 Discovery Audio CS43L22 I2C Problem
bis 5122 in stm32f4xx_hal_i2c.c eingrenzen: [c] static HAL_StatusTypeDef I2C_WaitOnMasterAddressFlagUntilTimeout(I2C_HandleTypeDef *hi2c, uint32_t Flag, uint32_t Timeout, uint32_t Tickstart) { while(__HAL_I2C_GET_FLAG
auseinanderzusetzen. Was aber schon zu bemerken ist, falls es noch jemanden gibt der sucht: ich musste in system_stm32f4xx.c dieses noch reinschreiben [c]const uint8_t APBPrescTable[8] = {0, 0, 0, 0, 1, 2, 3, 4};[/c] Sonst hat das ganze sich nicht kompiliert (ich hoffe, das sagt mann so auf Deutsch, es ist
-
Thread
OpenOCD-USB ARM Debugger aus dem Shop in Betrieb nehmen
1000 kHz jtag_nsrst_delay: 100 jtag_ntrst_delay: 100 Info : clock speed 1000 kHz Info : JTAG tap: stm32.cpu tap/device found: 0x3ba00477 (mfg: 0x23b, part: 0xba0 0, ver: 0x3) Info : JTAG tap: stm32.bs tap/device found: 0x16410041 (mfg: 0x020, part: 0x6410 , ver: 0x1) Info : stm32.cpu: hardware has
scheitere ich an den Flash-Adressen, kann man die irgendwo umstellen (finde nichts dazu)? [pre] C:\Users\Kjartan\Desktop>openocd -d0 -f interface/openocd-usb.cfg -f target/stm32.cfg -c init -c targets -c "halt" -c "flash write_image erase test.elf" -c "verify_image test.elf" -c "reset run" -c shutdown
-
Thread
[v]erkaufe diverse Evalboards
Kurzer Zwischenstand: - STM32F3-Discovery -> Reserviert Atmel STK-500 Rev. c-2 -> Reserviert Terasic DE0-Nano-SoC Kit G -> Reserviert Olimex STM32F103-STK -> Reserviert Digilent Xilinx Coolrunner
Update: STM32F3-Discovery -> reserviert Atmel STK-500 Rev. c-2 -> weg Terasic DE0-Nano-SoC Kit G -> weg Digilent Xilinx Coolrunner II -> reserviert Digilent Xininx Spartan 3 -> weg
-
Thread
STM32F7 Disco und das Display-->hard fault error
[c] #define SDRAM_DEVICE_ADDR ((uint32_t)0xC0000000) [/c] [c] /* Initialize the LCD */ lcd_status = BSP_LCD_Init(); ASSERT(lcd_status != LCD_OK); /* Initialize the LCD Layers */
oder OpenSTM32-Workbench? www.openstm32.org (siehe bei Uwe: http://mikrocontroller.bplaced.net/wordpress/?page_id=5241)
-
Thread
[STM32] Compiler optimiert Funktion zu stark
wahrscheinlich einfach lösbares Problem. Ich versuche aktuell einen W5500 (Ethernet Controller) mit einem STM32F405 via SPI anzusteuern. Im Debug funktioniert auch alles, im Release optimiert der Compiler ein bisschen zu viel. Programmiersprache ist C++, genutzt wird GCC 7.2.0, GDB 8.0.1 mit VisualGDB in
Dr. Sommer schrieb im Beitrag #5347244: > Warum benutzt du denn nicht den im STM32 integrierten Ethernet > Controller?! Was an: > mr. mo schrieb: >> Ich versuche aktuell einen W5500 (Ethernet Controller) mit einem >> STM32F405 via SPI anzusteuern. hast Du nicht verstanden
-
Thread
[S] Start-Paket für ST ARM M0/M0+/M3 Controller
die STM32F100 oder STM32G03, später evtl, auch "dickere" M3. Wenn jemand ein entsprechendes Start-Paket mit Programmer und einer brauchbaren Toolchain abgeben kann, wäre ich sehr an einem Kauf interessiert
STM32 sind dieses Jahr fast gar nicht zu bekommen. Vergiss es. Mein Vorschlag: https://www.ti.com/tool/EK-TM4C123GXL https://www.amazon.de/dp/B01HPH24NQ Das ist TI TIVA. Auf dem Board ist bereits
-
Thread
Anfängerfrage STM32
gerade wieder Anfänger geworden und mache (seit gestern abend) meine ersten Gehversuche mit einem STM32F4discovery, CooCoxIDE und ARM-GCC. Es interessant, wie kitzlig so ein Cortex im Vergleich zum AVR ist. Dabei hangele ich mich am folgenden Tutorial entlang: http://mystm32.de/doku.php?id=arm_interrupts_in_c
zeitliche Abweichungen, als würden Interrupts vergessen. Daran ändert sich auch nichts, wenn ich bei [c] NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x0F; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F; [/c] auf Null setze. Wo liegt mein Fehler? Viele Grüße W.T.
-
Thread
Schneller Mikrocontroller mit Ethernet gesucht
Platinenentwicklung braucht alleine schon mindestens 3 Monate. Eine Liste von Demo-Board (Links) gibt es hier: [[STM32]] (Die Hersteller bieten nicht nur für STM32.)
mit diesem Board gearbeitet, aber es scheint die Anforderungen zu erfüllen: http://elmicro.com/de/stm32proto.html Ganz unten: STM32-P107 Bei Olimex gibt es auch ein Beispiel für Ethernet, die Qualität kann ich nicht beurteilen: http://www.olimex.com/dev/soft/arm/ST/STM-P107/STM32-P107_ethernet_demo
-
Thread
STM8 und ADC
unteren 2 Bit adcvalue += ADC_DRL; // die oberen 8 Bit return adcvalue; } [/c] Woran liegt der Fehler und / oder ist es sinnvoller, mein Steckbrettvoltmeter dann doch eher mit einem STM32F030 zu realisieren?
Oh sorry, hat er gar nicht, das war der STM32F070.
-
Thread
Maskieren modern?
nur sind typsichere C++ Registerdefinitionen nicht Standard bei den Hersteller SDK, für einen STM32H7 möchte ich das nicht selber schreiben. STM hat ja schon ewig gebraucht den 'register' storage specifier zu entfernen.
Oder man nimmt Bitmuster, wenn man Bitmuster verwenden will! Ja. Super praktisch. Besonders für 32-Bit-Maschinen! [c] REG |= 0b00000000000010000000000000000000; [/c] Gibt kaum was Lesbareres! Man sieht sofort auf einen Blick, welches Bit gesetzt wird!
-
Thread
STM32F4 Touch Display Interrupt
erzeugen wenn der Touch betätigt wurde dieser Pin muss dann nur noch mit einem Exti-Pin vom SMT32F4 verbunden werden im STM32F4 brauchst du dann eine Interrupt-Funktion die auf EXTI Triggert für CooCox und den STM32F4 hab ich Librarys für EXTI0 bis EXTI15 hier online gestellt http://mikrocontroller.bplaced.de
habe jetzt eine fertige Funktion gefunden (vom Hersteller). http://www.longlandclan.yi.org/~stuartl/stm32f10x_stdperiph_lib_um/group__STM3210C__EVAL__IOE__Exported__Functions.html#ga9bf9fd420d13830391880257bbee7fcf die Funktion rufe ich wie folgt auf: if( IOE_ITConfig(IOE_ITSRC_TSC)==IOE_OK) ...
-
Thread
STM32 CAN Problem Remap Problem
Hallo STM32 Freunde, ich habe folgendes Problem: Ich benutze das STM3210B_EVAL Board von ST. Der CAN Transceiver ist mit den Pins PD0 (RX) und PD1 (TX) verbunden. Da ich ein Projekt auf einem kleinerem Evalboard (Olimex STM32-H103) umsetzen möchte, bei dem die Pins PD1 und PD0 nicht nutzbar sind, wollte ich die Remap Funktionalität des STM32 nutzen. Man muss dazu sagen, dass ohne Remap die Pins PA12 und PA11 verwendet
-
Thread
STM32F4 Störungen bei Programmierung über SWD
Woche meine erste eigene Platine (Layout kann ich später noch anhängen falls es nötig ist) mit einem STM32F429 in Betrieb. Ich verwende ein STM32F4 Discovery Board um meine Platine über SWD zu programmieren. Leider sind die SWD Leitungen auf der Platine vom Pinheader bis zum µC etwas lang (~10cm) geraten
Die beiden Jumper auf dem Discovery Board sind getrennt wenn ich den externen µC Programmieren möchte. Den internen kann ich auch ohne Probleme programmieren wenn die Jumper wieder drin sind. Ich habe aber das STM32F4 Discovery und nicht das STM32F429I Discovery. Der externe µC ist
-
Thread
STM32F4 Timer interrupt
Bist du sicher, das der ClockTree des STM32 schon konfiguriert ist? Ohne alles sollte der STM32, wimre, mit dem internen RC Oszillator laufen (8MHz)?
zitierten Stelle im Reference Manual (RM0383, S.91) gefunden: >The timer clock frequencies for STM32F411xC/E are automatically set by hardware. >There are two cases: > 1. If the APB prescaler is 1, the timer clock frequencies are set to the same > frequency as that of the APB domain to which
-
Thread
stm32F103 (fake) on chip debug
Ich habe Probleme on-chip-debugging auf einem Blue-Pill Board mit einem Fake STM32F103C8T6 zum Laufen zu kriegen. Ich entwickle unter - Windows 7 - STM32CubeIDE (V1.11.2) - mit einem ST-Link V2, Firmware V2J40S7 - Treiber für ST-Link: STMicroelectronics V 2.2.0.0 Mit
der nicht funktionierenden ist die Schrift nur aufgedruckt, nicht tief eingelasert: STM32 F103C8T6 9901KA 93 MYS 806 Der STM32CubeProgrammer listet unter Target Information: Device: STM32F101/F103 High-density Device ID: 0x414 Revision ID: Rev Z Flash size: 256 KB > Und wenn
-
Thread
Error Codes (Embedded Programming)
eurer Meinung nach Best Practice für die Wertigkeit der Error Codes? Sollte ERROR_CODE_FAILURE = 0 sein oder sollte ERROR_CODE_SUCCESS = 0 sein? Der Enum ErrorStatus in stm32f10x.h definiert ERROR = 0 und SUCCESS = !ERROR. Wenn man jedoch folgenden Enum verwendet... [c] typedef enum {
Leo schrieb im Beitrag #5124293: > Der Enum ErrorStatus in stm32f10x.h definiert ERROR = 0 und SUCCESS = > !ERROR. Und es sollte (meiner Meinung nach) gerade umgekehrt sein, also SUCCESS = 0 und ERROR = !SUCCESS. Warum ? Weil jeder Fehler normalerweise
-
Thread
STM32 Timer: Interrupt bei jedem Inkrement/Dekrement
STM32 kann Drehencoder direkt auswerten. Warum Klimmzuege?
Heyho, ich hab derzeit ein ähnliches Anliegen, dass ich aus einem STM32-µC bei jeder Timer-CNT-Änderung einen IR haben möchte. Hintergrund: Ich habe mir eine Uhr gebaut die ich Manuell per DiskEncoder stellen können möchte. Da ich allerdings mal mit Sleep-Modes rumspielen
-
Thread
Ripple in Versorgungsspannung
/part/STM32F103 Das PDF-File hat die Figures am Ende. (Seite 44) So kam ich drauf. ciao gustav
http://www.st.com/content/ccc/resource/technical/document/application_note/group0/3f/4c/a4/82/bd/63/4e/92/CD00211314/files/CD00211314.pdf/jcr:content/translations/en.CD00211314.pdf#page22 Das sagt STM dazu. Und ein LC Filter könnte sicher ebenso aussehen wie für einen Atmel.
-
Thread
MPLAP Snap halb im Nirvana
: Atmel Kits - 7.0.132 Atmel Kits Version: 7.0.132 Package GUID: 6F4B8FE4-C464-4916-8B43-AC92431C1CDF Company: Atmel Installed Packages: AtmelToolchainProvider - 7.0.911 AtmelToolchainProvider Version: 7.0.911
: 0x03 (String Descriptor) Language 0x0409 : "MPLAB Snap ICD CMSIS-DAP" Data (HexDump) : 32 03 4D 00 50 00 4C 00 41 00 42 00 20 00 53 00 2.M.P.L.A.B. .S.
-
Thread
STM32: Seriell senden via DMA funktioniert zwar, aber wo wird´s gestartet?
--------------------------------------------------------*/ #include "stm32f10x.h" #include "platform_config.h" #include "stm32f10x_dma.h" #include "stm32f10x_rcc.h" #include "misc.h" #include "stm32f10x_usart.h" #include "stm32f10x_tim.h" #include "stm32f10x_it.h"
DMA_Cmd(USARTz_Tx_DMA_Channel,SET); [/c] Vielleicht finde ich ja ein "begreifbares" Tutorial über STM32+DMA, wenn ich nicht über das Forum auf "´ne schnelle Lösung" komme. MfG FunRice
-
Thread
STM32 Minimalbeschaltung in Ordnung?
Aber der STM32F303RE hat nur 4x VDD/VSS? AN VDDA habe ich Spule + 100nF, laut 6.1.6 sollen da noch 1uF dran. Aref+ habe ich direkt mit VDDA verbunden, ist das ok? Tatsache der Widerstand auf OSCOUT ist auch im
dem internen geht? Für USB zB braucht man zwingend einen richtigen Quarzoszillator (oder einen STM32 mit HSI48 und usb-clock-recovery). Aber USB ist wohl nicht mehr Minimalbeschaltung.
-
Thread
ARM &Co: EmBitz 2.0 IDE, was wird denn nun draus?
Die Middleware für das STM32CubeU5 Firmware Package V1.0.0 sieht übrigens so aus: 20.10.2021 21:14 <DIR> cmsis_rtos_threadx 20.10.2021 21:14 <DIR> filex 20.10.2021 21:14 <DIR> levelx
netxduo 20.10.2021 21:14 <DIR> OpenBootloader 20.10.2021 21:14 <DIR> STM32_Network_Library 20.10.2021 21:14 <DIR> STM32_TouchSensing_Library 20.10.2021 21:14 <DIR> STM32_USBPD_Library 20.10.2021 21:14 <DIR> threadx 20.10.2021 21
-
Thread
LCD Controller / Graphics processoren
https://www.glynshop.com/erp/owweb/Daten/DSS/KOE/Products/Specifications/Active%20Displays/TX18D35VM0AAA-3%20-%20GLYN.pdf Wie realistisch wäre es, diesen direkt an STM32 anzuschließen, damit der uC noch was anderes nebenbei machen kann? Gruß
direkt an STM32 anzuschließen, damit der > uC noch was anderes nebenbei machen kann? Ich kenne den STM32F4 nicht. Aber typischerweise erfolgt die Displayansteuerung komplett im Hintergrund. Man widmet einfach
-
Thread
ADC + DMA Anwendung, Zeit fehlerhaft
Hallo, danke für die Antworten! Ich habe in der system_stm32f4xx.c nachgesehen und folgendes für meinen uC(STM32F429l) gefunden. [c] #if defined (STM32F427_437xx) || defined (STM32F429_439xx) uint32_t SystemCoreClock = 180000000; #endif /* STM32F427
uint8_t AHBPrescTable[16] = {0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 6, 7, 8, 9}; [/c] Am Anfang des files steht noch im Kommentar: [c] * Supported STM32F42xxx/43xxx devices *-----------------------
-
Thread
STM32 HSE bypass mode
. Hat jemand eine Idee, woran das liegen könnte? Anbei der Code der Clock Initialisierung [c] void Rcc_Init(void) { uint32 xStartUpCnt_u32 = 0; uint32 xStateHse_u32 = 0; uint32 xStatePll_u32 = 0; uint32 xSrcSysClk_u32 = 0; LL_RCC_HSE_EnableBypass(); /* Enable HSE */
} else { xStateHse_u32 = (uint32_t)0x00; } if (xStateHse_u32 == (uint32_t)0x01) { /* Select regulator voltage output Scale 1 mode, System frequency up to 32 MHz */ LL_APB1_GRP1_EnableClock(RCC_APB1ENR_PWREN
-
Thread
printf ersetzen
<stdint.h> typedef uint32_t u32 ; typedef u32 superformat_t ; int main() { superformat_t d =23; printf("Hello World"); printf ("%d",d); return 0; } [/c] Hello World23 ...Program finished with
Gabelstapler1000 schrieb im Beitrag #6911968: > ne habe keinen STM32 Rück doch erstmal damit raus, was für einen µC Du verwendest. Dann wissen wir, ob es sich um ein 8-Bit oder 32-Bit-System handelt. Offenbar verwendest Du einen Source, der wg. 8 vs. 32 Bit mit
-
Thread
neues Maerklin Protokoll
Hallo Eisenbahnfreak, hätte Interesse am MM2-Code, bin gerade dabei, eine Implementierung auf STM32 Hardware zu machen. Grüße Roland
Hallo Bernd, mit Assembler kann ich nix anfangen. Den STM32 programmiere ich mit C, bei dem Board war eine kleine CD mit Beispielen dabei. Diese modifiziere ich und "spiele" ein wenig herum. Dann werde ich mich mal durch die "Königlichen Seiten" durcharbeiten
-
Thread
FreeRTOS IDLE-Task
> SysTick_Handler Wenn ich das mache bekomme ich undefined reference Fehler wie: [code]./startup_stm32f4xx.o:(.isr_vector+0x2c): undefined reference to `vPortSVCHandler'[/code] Mir ist soweit klar dass ihm die Handler an dieser Stelle nicht bekannt sind, aber folgendes funktioniert bei mir nicht:
xPortSysTickHandler(void); Wenn ich das mache bekomme ich ein "bad instruction": [code]../startup_stm32f4xx.S:134: Error: bad instruction `void WEAK vPortSVCHandler(void)'[/code] Allerdings sieht meine startup_stm32f4xx.S auch prinzipiell anders aus wie Moritz startup_stm32f4xx.c. Ich habe sie mal
-
Thread
[C] Eigene Register Definition schreiben
[/c] Was ich bis jetzt hinbekommen habe ist dieses: [c] #define IC (uint32_t)(0x00000000) #define IC_WRITE (uint32_t)(1<<31) #define IC_CONFIG (uint32_t)(1<<24) #define DATA
{ uint32_t x, y, z } bla = { .x = 0x01, .y = 0x02, .z = 0x04, }; // ... uint32_t reg = bla.x | bla.y | bla.z; [/c] Die Definition des struct-Typs musst du schon von der Initialisierung der
-
Thread
C Programmierung Wie abfrage ob eine Adresse gerade ist
'char *' and 'int')" meine Q&D Lösung sieht jetzt erst mal so aus: [c] void myFunktion(char * sendBuf) { if ((((uint32_t)sendBuf) % 2) != 0) { //Abbruch, Fehlerbehandlung } } [/c] allerdings gefällt mir der Cast auf 32bit nicht. was ist wenn
Nachtrag: der Bug ist auch bei ST beschrieben: https://community.st.com/s/question/0D50X00009Xkdsn/bug-stm32f0xx-hal-spi-transmit wäre ja nett wenn sie das wenigstens in den Header der Funktionen schreiben würden.
-
Thread
STM32 Quadrature Encoder Z Index Reset
ein Beispiel für Reset Mode gefunden: https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=https%3a%2f%2fmy%2est%2ecom%2fpublic%2fSTe2ecommunities%2fmcu%2fLists%2fcortex_mx_stm32%2fTimer%20slave%20mode%20%20Reset%20mode&FolderCTID=0x01200200770978C69A1141439FE559EB459D7580009C4E14902C3CDE46A77F0FFD06506F5B
das nicht logisch. Nach 8 Umdrehungen hast Du doch das Ruecksetzen automatisch, jedenfalls bei den STM32 16-bit Zaehlern. Und die absolute Position innerhalb einer Umdrehung hast Du auch ohne das Zuruecksetzen wenn Du mit 0x3fff verundest.
-
Thread
Buch zu STM32, HAL, Atolic true Studio und Cube MX?
gut, daß Doku und Code auf dem gleichen Stand sind. Einfach das Firmware-Repository für deinen STM32 auspacken und den Browser auf STM32Cube_FW.../Drivers/CMSIS/Documentation/General/html/index.html richten.
Hallo Das kompletteste Werk zu diesen Themen ist nach meinem Wissen Mastering STM32 von Carmine Noviello: https://leanpub.com/mastering-stm32 nur als e-book verfügbar. viel spass damit
-
Thread
STM32F429-Discovery Recycling: 90 MHz Frequenzzähler mit TFT
Als Entwicklungsboard für die STM32F429 µCs gedacht, ist das 429-Discovery-Board neben dem schnellen µC auch noch mit einem SDRAM, div. ICs und einem 2,4" TFT-Display bestückt: http://www.st.com/web/catalog/tools/FM116/CL1620/SC959/
veröffentlichst die Quellen nicht? > > Auf deiner Seite (http://mino-elektronik.de/FM_407/fmeter_407.htm#c1 und > http://mino-elektronik.de/fmeter/neue_versionen.htm#c2) finde ich "nur" > ein paar Schnipsel: http://mino-elektronik.de/progs/STM32F4xx/f_mess.c > und > http://mino-elektronik.de/TFT-direct-drive
-
Thread
Idee gesucht um Jitter zu beseitigen
Torsten C. schrieb im Beitrag #4334344: > Welche Libs? > > [X] Die gute alte Standard Peripheral Library? > [ ] Die neue HAL-API mit STM32CubeF4? > [ ] Sonstiges (mbed.com, …)? Ich habe bis jetzt nur
hast. Entweder du benutzt die Makros für die Register, oder halt ganz von Hand [code]*(volatile uint32_t*) 0x1234ABCD = 0[/code]