Hallo, ich habe gerade angefangen mit Keil+STM32F207. Nachdem ich die tollen Beispiel von Keil verstanden habe, wollte ich mehr ins Detail gehen und habe das Internet bemüht. So, und hier fängt es an. In diversen Beispielen wird u.a. die sogenannte 'RCC_APB2PeriphClockCmd' Funktion verwendet. Diese existiert in meinen Header-Files aber nicht. Warum? Ich kann natürlich ohne diese Funktion auch die GPIO-CLK initialisieren, aber es fehlen auch andere Funktionsaufrufe die ich widerum gerne nutzen würde ... z.B. die GPIO Alternate Funktion. Vielleicht kann mir jemand erklären warum ich diese Funktionen nicht besitze.. Gruß Krugman
Hey, hast du die Firmware von der ST-Seite runtergeladen? also die ganze Librarys und Beispiele (STM32CubeF2)? http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1743/LN1734/PF257898 mfg Anton
Ja das habe ich, und in keinem der Beispiel wird dort z.B.
GPIO_PinAFConfig(...);
oder
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI3, ENABLE);
verwendet. Wenn ich das probiere, dann gibt es diese Funktionen nicht.
Im Gegenteil es wird z.B. so gemacht:
--------------------
/*##-1- Configure the SPI peripheral */
/* Set the SPI parameters */
SpiHandle.Instance = SPIx;
SpiHandle.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_32;
SpiHandle.Init.Direction = SPI_DIRECTION_1LINE;
SpiHandle.Init.CLKPhase = SPI_PHASE_1EDGE;
SpiHandle.Init.CLKPolarity = SPI_POLARITY_HIGH;
SpiHandle.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLED;
SpiHandle.Init.CRCPolynomial = 7;
SpiHandle.Init.DataSize = SPI_DATASIZE_8BIT;
SpiHandle.Init.FirstBit = SPI_FIRSTBIT_MSB;
SpiHandle.Init.NSS = SPI_NSS_SOFT;
SpiHandle.Init.TIMode = SPI_TIMODE_DISABLED;
SpiHandle.Init.Mode = SPI_MODE_MASTER;
if(HAL_SPI_Init(&SpiHandle) != HAL_OK)
{
Error_Handler();
}
----------------
Was mach ich falsch ... bin echt am verzweifeln ...
Sind das etwa custom (IDE spezielle) Funktionen?
Gruß
Krugman
Hey, blöde Frage aber hast du die stm32f2xx_rcc.h includet? weil da sind alle RCC Funktionen definiert. könntest du evtl dein Programm posten? vllcht kann man dir dann besser helfen. (Ich bin nämlich auch ein STM32 Anfänger)
Hmm. Ich habe jetzt nochmal deinen Link überprüft. Scheinbar habe ich die falsche CUBE geladen. Es gibt da noch ein Pack mit HAL Bibliotheken. Ich probiere das jetzt nochmal von vorne ....
Denis Krug schrieb: > In diversen Beispielen wird u.a. die sogenannte 'RCC_APB2PeriphClockCmd' > Funktion verwendet. Diese existiert in meinen Header-Files aber nicht. Und hast du dir schon mal einen klitzekleinen Gedanken gemacht, was diese Funktion tun soll? oder wie man sich den betreffenden Teil der Peripherie SELBST einstellt? Hast du überhaupt schon ins Manual zu deiner Hardware geschaut und versucht, zu verstehen, was man tun muß, um den einen oder anderen Peripherie-Core anzuwerfen und zu benutzen? Und hast du schon mal versucht, den eigentlichen Compiler selbst, also direkt aufzurufen, inclusive Linker und FromElf? Frag dich das mal zu allererst. W.S.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.