HAL Bibliothek Printf debugging nutzen

Gast #5909420
Hallo,

mal eine dumme Frage,

wie nutzt man innerhalb der STM32 HAL Bibliotheken die bereits 
eingebauten Debugfunktionen?

Da sind jede Menge Anweisungen vorhanden, aber die dort genutzten printf 
müssten ja auf meine Uart umgemünzt werden. Wie macht man so etwas?
Ich weiss nicht, ob Du das meinst:

Zuerst normal mit den HAL_ Kommandos eine UART/USART Schnittstelle 
initialiserien. Details dazu siehe HAL

Dann im main.c:
1
#ifdef GNUC 
2
/* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf set to ‘Yes’) calls __io_putchar() */ 
3
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch) 
4
#else 
5
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) 
6
#endif /* GNUC */
7

8
PUTCHAR_PROTOTYPE { 
9
  HAL_UART_Transmit (&huart3, (uint8_t *)&ch, 1, 0xFFFF); 
10
  return ch; 
11
}

Von da an schreibt ein normaler printf() auf die besagte Schnittstelle.

Daniel

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.