STM32F334 USART2

OP #4192638
Lesenswert?
• ▲
▼
Hallo,

Über die USART2 vom NucleoF334 will ich debug Meldungen mit printf an 
den PC ausgeben. Dies funktioniert solange ich SYSCLK vom HSI über die 
PLL erzeuge, nicht jedoch wenn ich den HSE wähle, dann kommen am 
Terminal keine vernünftigen Zeichen an.
1
void SystemClock_Config(void)
2
{
3
    RCC_OscInitTypeDef RCC_OscInitStruct;
4
    RCC_ClkInitTypeDef RCC_ClkInitStruct;
5
    RCC_PeriphCLKInitTypeDef PeriphClkInit;
6

7
    RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
8
    RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS;
9
    RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1;
10
    RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
11
    RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
12
    RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL8;
13
    HAL_RCC_OscConfig(&RCC_OscInitStruct);
14

15
    RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
16
                                |RCC_CLOCKTYPE_PCLK1;
17
    RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
18
    RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV2;
19
    RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
20
    RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
21
    HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1);
22

23
    PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_HRTIM1|RCC_PERIPHCLK_USART2;
24
    PeriphClkInit.Usart2ClockSelection = RCC_USART2CLKSOURCE_PCLK1;
25
    PeriphClkInit.Hrtim1ClockSelection = RCC_HRTIM1CLK_PLLCLK;
26
    HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit);
27

28
    HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);
29

30
    HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);
31

32
    __SYSCFG_CLK_ENABLE();
33

34
}

Wechsle ich allerdings auf den HSI (rest gleich wie oben):
1
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
2
RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL16;
funktioniert die Kommunikation.

Woran kann das liegen?
OP #4193580
Lesenswert?
• ▲
▼
Kann ich im Moment leider nicht. Das Programm läuft ja und wenn ich 
alles außer der USART2 von HSE speise  und USART2 alleine vom HSI (und 
HSI ist aktiviert) bekomme ich auch nur Müll. Muss mir morgen ein Scope 
ausleihen um zu sehen wo das Übel liegt...

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.