stm32 HSE initialisierung

Gast #1928919
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]
#1929069
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
}
Gast #1929358
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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren