Forum: Mikrocontroller und Digitale Elektronik stm32 HSE initialisierung


von Robert, H. (Gast)


Lesenswert?

Ich versuche nun schon seit geraumer Zeit an einem stm32f107
einen externen Quarz zum laufen zu bringen.

Angeschlossen habe ich einen 16mHz Oszillator an
den beiden Anschlüssen OSC_IN und OSC_OUT,
verbunden mit zwei 22pF Kondensatoren gegen Masse.

Als IDE kommt uvision4 zum Einsatz, mit einem J-Link EDU jtag.

Gearbeitet wird mit der standard stm32 C Bibliothek.
Das Problem tritt auf wenn ich versuche den HSE einzuschalten.
Sprich das von RCC_WaitForHSEStartUp() ausgelesene Flag
meldet mir keinen "Success".

Wäre für jede Hilfestellung dankbar.

Code:

[code]
ErrorStatus hse_state;

  /* RCC system reset(for debug purpose) */
  RCC_DeInit();

  /* Enable HSE */
  RCC_HSEConfig(RCC_HSE_ON);

  /* Wait till HSE is ready */
  hse_state = RCC_WaitForHSEStartUp();

  if (hse_state == SUCCESS)
{
.
.
.
}
/code]

von Mehmet K. (mkmk)


Lesenswert?

Ich benutze dazu die Funktion SystemInit() aus  der system_stm32f10x.c 
Datei.

von Andre R. (ryan87)


Lesenswert?

Bei mir sieht das für einen 12Mhz Quarz so aus:
1
void RCC_Configuration()
2
{
3
  RCC_DeInit();
4
5
  RCC_HSEConfig(RCC_HSE_ON);
6
  while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET);
7
8
  FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
9
  FLASH_SetLatency(FLASH_Latency_2);
10
11
  RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_6);
12
  RCC_PLLCmd(ENABLE);
13
14
  RCC_HCLKConfig(RCC_SYSCLK_Div1);  // set AHB speed
15
  RCC_PCLK2Config(RCC_HCLK_Div1);    // set high speed APB1 (72Mhz)
16
  RCC_PCLK1Config(RCC_HCLK_Div2);    // set low speed APB2 (36Mhz)
17
18
  RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
19
  while(RCC_GetSYSCLKSource() != 0x08);
20
21
  SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
22
}

von Ingo B. (Gast)


Lesenswert?

Nehme mal an, Du hast einen Quarz zwischen OSC_IN und OSC_OUT 
geschaltet. Deine beschriebenen Probleme kenne ich, wenn Quarze mit 
falscher Lastkapzität bestückt werden und dann nicht anschwingen.

Hast Du hiernach 
http://www.st.com/stonline/products/literature/an/15287.pdf die 
Schaltung ausgelegt?

HTH

von Robert, H. (Gast)


Lesenswert?

Die Schaltung folgt eigentlich schon den Beschriebenen Anforderungen in 
der pdf.

Könnte es ein Problem sein das der Controller auf einer Adapterplatine 
sitzt, welche mit einem Steckbrett verbunden ist auf welchem sich der 
Quarz befindet.

von Ralf (Gast)


Lesenswert?

Wenn die Strecke zwischen MCu und Quarz zu lange ist, ja.

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
Noch kein Account? Hier anmelden.