Wiki

Reso-nance numérique | Arts et cultures libres

Outils du site


logiciels:printf_stm32:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
logiciels:printf_stm32:accueil [2016/10/11 15:43]
jonathan [Tuto]
logiciels:printf_stm32:accueil [2017/08/29 11:25]
jonathan [Tuto]
Ligne 23: Ligne 23:
     * Déplacer vous dans le dossier ou ce trouve vos linker script      * Déplacer vous dans le dossier ou ce trouve vos linker script 
     * Créer un fichier "**lib.ld**" et y placer ceci :      * Créer un fichier "**lib.ld**" et y placer ceci : 
- +<code c+> 
- //* Placeholder to list other libraries required by the application. + /* Placeholder to list other libraries required by the application. GROUP() */
-  +
-GROUP( +
-) +
- +
- */ +
- +
- +
  GROUP(  GROUP(
    libgcc.a    libgcc.a
Ligne 38: Ligne 31:
    libm.a    libm.a
    libnosys.a    libnosys.a
- )//+ )</code>
  
 3. Modifier le fichier de configuration de UART (USART.c): 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 */** :     * Ouvrir le fichier et placer ceci entre **/* USER CODE BEGIN 0 */** et **/* USER CODE END 0 */** :
-//#ifdef __GNUC__+<code c+> 
 +#ifdef __GNUC__
 /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf
    set to 'Yes') calls __io_putchar() */    set to 'Yes') calls __io_putchar() */
Ligne 48: Ligne 42:
 #else #else
 #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
-#endif /* __GNUC__ */ +#endif /* __GNUC__ */</code> 
-// + 
-et coller ceci entre **/* USER CODE BEGIN 1 */** et **/* USER CODE END 1 */** :  +et coller ceci entre **/* USER CODE BEGIN 1 */** et **/* USER CODE END 1 */** :\\  
-///**+<code c+> 
 +/**
   * @brief  Retargets the C library printf function to the USART.   * @brief  Retargets the C library printf function to the USART.
   * @param  None   * @param  None
Ligne 63: Ligne 58:
  
   return ch;   return ch;
-}//+}</code> 
 +     
 +Vérifier qu'il n'y est pas d'erreur au niveau de **HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1, 0xFFFF);**\\ 
 +Si erreur il y a il faut récupérer la variable en haut du fichier nomé UART_HandleTypeDef **huart2**;\\ 
 + 
 +Finir en ajoutant #include <stdio.h> dans le "main.c".
      
 4. Activer les options de compilation et linker:  4. Activer les options de compilation et linker: 
-    * Faire "Alt+Entrer" sur le nom du projet ou clic droit-> properties. +   * Faire "Alt+Entrer" sur le nom du projet ou clic droit-> properties. 
-    * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> Miscellaneous. Cocher les options suivantes :  +   * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> Miscellaneous. Cocher les options suivantes :  
-       * Use newlib-nano (--specs=nano.specs) +      * Use newlib-nano (--specs=nano.specs) 
-       * Use float with nano printf (-u_printf_float)+      * Use float with nano printf (-u_printf_float)
    * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> General.     * Dans C/C++ Build -> Settings -> Tool settings -> Cross ARM C Linker -> General. 
    * Ajouter le chemin vers le fichier "lib.ld"    * Ajouter le chemin vers le fichier "lib.ld"
 +
 +5. Test.
 +   * Placer un text dans le main.c
 +exemple : 
 +<code c+>
 +printf("salut \n");
 +      HAL_Delay(1000);
 +      </code>
 +      Le retour chariot et important!!!
/home/resonancg/www/wiki/data/pages/logiciels/printf_stm32/accueil.txt · Dernière modification: 2017/08/29 11:25 de jonathan