Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Dernière révision Les deux révisions suivantes | ||
logiciels:printf_stm32:accueil [2016/10/11 14:52] jonathan [Tuto] |
logiciels:printf_stm32:accueil [2017/08/29 11:20] jonathan [Tuto] |
||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
===== Tuto ===== | ===== Tuto ===== | ||
- | - Mapper les pins de USART à l'aide de " | + | 1. Mapper les pins de USART à l'aide de " |
* Repérer dans la documentation de votre carte les pins qui font le lien entre le microcontrôleur et le ST-Link. Pour vous aidez utiliser la fonction de recherche " | * Repérer dans la documentation de votre carte les pins qui font le lien entre le microcontrôleur et le ST-Link. Pour vous aidez utiliser la fonction de recherche " | ||
* Ouvrir " | * Ouvrir " | ||
Ligne 14: | Ligne 14: | ||
* //Parity// : **None** | * //Parity// : **None** | ||
* // | * // | ||
- | * Finir par générer le projet. | + | * Finir par générer le projet.\\ |
+ | |||
+ | 2. Ajouter le fichier source " | ||
+ | * Le fichier " | ||
+ | * Vous pouvez le trouvé grâce au fonctions de recherche de votre OS. | ||
+ | * Le copier et le placer dans le dossier src de votre projet. | ||
+ | * Editer le et commenté la ligne #define FreeRTOS. | ||
+ | * Déplacer vous dans le dossier ou ce trouve vos linker script | ||
+ | * Créer un fichier " | ||
+ | |||
+ | * Placeholder to list other libraries required by the application. | ||
+ | |||
+ | GROUP( | ||
+ | ) | ||
+ | |||
+ | */ | ||
+ | |||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ) | ||
+ | |||
+ | 3. Modifier le fichier de configuration de UART (USART.c): | ||
+ | * Ouvrir le fichier et placer ceci entre **/* USER CODE BEGIN 0 */** et **/* USER CODE END 0 */** : | ||
+ | #ifdef __GNUC__ | ||
+ | /* With GCC/ | ||
+ | set to ' | ||
+ | #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 */** :\\ | ||
+ | <code c+> | ||
+ | /** | ||
+ | * @brief | ||
+ | * @param | ||
+ | * @retval None | ||
+ | */ | ||
+ | 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(& | ||
+ | |||
+ | return ch; | ||
+ | }</code c+> | ||
+ | |||
+ | Vérifier qu'il n'y est pas d' | ||
+ | Si erreur il y a il faut récupérer la variable en haut du fichier nomé UART_HandleTypeDef **huart2**; | ||
+ | |||
+ | Finir en ajoutant #include < | ||
+ | |||
+ | 4. Activer les options de compilation et linker: | ||
+ | * Faire " | ||
+ | * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> Miscellaneous. Cocher les options suivantes : | ||
+ | * Use newlib-nano (--specs=nano.specs) | ||
+ | * Use float with nano printf (-u_printf_float) | ||
+ | * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> General. | ||
+ | * Ajouter le chemin vers le fichier " | ||
+ | |||
+ | 5. Test. | ||
+ | * Placer un text dans le main.c | ||
+ | exemple : printf(" | ||
+ | HAL_Delay(1000); | ||
+ | Le retour chariot et important!!! |