Catégories
Liens
Ceci est une ancienne révision du document !
Selon les environnements de développement les “printf” ne sont pas actif pour les STM32.
1. Mapper les pins de USART à l'aide de “CubeMX”
2. Ajouter le fichier source “syscalls.c” et des options de linkage.
* Placeholder to list other libraries required by the application.
GROUP( )
*/
GROUP(
libgcc.a libg.a libc.a libm.a libnosys.a
)
3. Modifier le fichier de configuration de UART (USART.c):
#ifdef GNUC /* With GCC/RAISONANCE, small printf (option LD Linker→Libraries→Small printf
set to 'Yes') calls __io_putchar() */
#define PUTCHAR_PROTOTYPE int io_putchar(int ch) #else #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #endif /* GNUC__ */
et coller ceci entre /* USER CODE BEGIN 1 */ et /* USER CODE END 1 */ : /**
PUTCHAR_PROTOTYPE {
/* Place your implementation of fputc here */ /* e.g. write a character to the USART2 and Loop until the end of transmission */ HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1, 0xFFFF);
return ch;
}
4. Activer les options de compilation et linker: