Outils pour utilisateurs

Outils du site


tns_nucleo

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
tns_nucleo [2018/03/28 15:03]
bvandepo
tns_nucleo [2019/03/28 14:22]
bvandepo
Ligne 1: Ligne 1:
 +
 +{{http://homepages.laas.fr/bvandepo/files/iut/tp_pic/warning.jpeg}}
 +<color red>
 +A FAIRE A LA FIN DE CHAQUE SEANCE POUR COPIER VOS FICHIERS SUR UN DISQUE PARTAGE (ET PERMETTRE LA RECUPERATION DES FICHIERS SI UN MEMBRE DU BINOME EST ABSENT)
 +
 +copier coller dans une console:
 +</color>
 +  rsync -av --delete ~/workspace_ac6 /mnt/etu/s4
 +
 +<color red>
 +et completer la ligne en appuyant 3 fois sur la touche Tabulation, puis entrée.
 +
 +
 +</color>
 +
 +
 +
 ====== Mise en place du projet architecture pour le TNS sur plateforme Nucléo ====== ====== Mise en place du projet architecture pour le TNS sur plateforme Nucléo ======
  
Ligne 63: Ligne 80:
   Help -> Updater Settings ...   Help -> Updater Settings ...
      
-et modifier le chemin intitulé "Repository Folder" en "/opt/STM32/STM32Cube/Repository"+et modifier le chemin intitulé "Repository Folder" en "/opt/STM32/STM32Cube/Repository" (en copiant collant du caractère / au caractère y inclus)
  
 {{ ::modify_respository.png?600 |}} {{ ::modify_respository.png?600 |}}
Ligne 137: Ligne 154:
 Dans ce panneau, l'utilisateur a accès aux différents périphériques listés dans les catégories : Connectivity, Analog, System, Control. Dans ce panneau, l'utilisateur a accès aux différents périphériques listés dans les catégories : Connectivity, Analog, System, Control.
  
-Dans notre cas, il est nécessaire de : +Dans notre cas, il est nécessaire de configurer
-  * Configurer l'ADC pour la conversion sur la canal 1 avec un déclenchement en logiciel +  * l'ADC pour la conversion sur la canal 1 avec un déclenchement en logiciel 
-  * Configurer le timer pour la génération d'une interruption toutes les N µs +  * le timer pour la génération d'une interruption toutes les N µs 
-  * Configuration du NVIC (Nested Vectored Interrupt controller) pour la prise en charge de l'interruption timer +  * le NVIC (Nested Vectored Interrupt controller) pour la prise en charge de l'interruption timer 
-  * Configuration du DAC  +  * le DAC  
-  * Configuration de la liaison série en 115200bauds+  * la liaison série en 115200bauds
  
  
Ligne 155: Ligne 172:
  
 ==== Configuration du Timer 1 ==== ==== Configuration du Timer 1 ====
 +Cliquer sur l'onglet Clock Configuration pour visualiser les différentes horloges disponibles. Repérer l'horloge utilisée pour cadencer le TIMER1.
  
  
Ligne 170: Ligne 188:
 {{ ::timer_base_config.png?600 |}} {{ ::timer_base_config.png?600 |}}
 <color red> auto-reload preload ? up ? </color> <color red> auto-reload preload ? up ? </color>
-Dans notre cas, nous voulons générer des évènements à la fréquence de 24kHz.+Dans notre cas, nous voulons générer des évènements à la fréquence de 48kHz.
  
  
Ligne 194: Ligne 212:
            ARR = 16/32-bit Autoreload register            ARR = 16/32-bit Autoreload register
            RCR = 16-bit repetition counter            RCR = 16-bit repetition counter
 +exemple de la doc:
   TIM_CLK = 72 MHz   TIM_CLK = 72 MHz
   Prescaler = 1   Prescaler = 1
Ligne 205: Ligne 223:
 En fait l'horloge d'entrée qui cadence TIM1 est à 64Mhz  (voir l'onglet Clock Configuration dans l'appli) En fait l'horloge d'entrée qui cadence TIM1 est à 64Mhz  (voir l'onglet Clock Configuration dans l'appli)
 Pour les 48Khz demandés sur le sujet: Pour les 48Khz demandés sur le sujet:
-il faut un facteur de division de 64.10^6 / 24.10^3 = 1333.3333+il faut un facteur de division de 64.10^6 / 48.10^3 = 1333.3333
  
 je peux régler  je peux régler 
   Prescaler = 0   Prescaler = 0
   Counter mode = Down   Counter mode = Down
-  Counter Period = 1333+  Counter Period = round(1333.3333)-1 = 1332
   Internal Clock Division = No Division   Internal Clock Division = No Division
   Repetition Counter RCR = 0   Repetition Counter RCR = 0
Ligne 256: Ligne 274:
  
  
-A la première génération de code, il vous compléter les attributs de génération de code (chemin, outils de développement ...). +A la première génération de code, il vous faut compléter les attributs de génération de code (chemin, outils de développement ...). 
 <color red> <color red>
 Dans le cadre de ce TP il vous utiliser le dossier : Dans le cadre de ce TP il vous utiliser le dossier :
 </color> </color>
    /home/IUT/<identifiant étudiant>/workspace_ac6    /home/IUT/<identifiant étudiant>/workspace_ac6
-   + 
 +Par exemple, si votre login est abc123b, vous devez régler: 
 +  Project Name: nucleo_tns 
 +  Project Location: /home/IUT/abc123b/workspace_ac6 
 +  Toolchain/IDE: SW4STM32
        
 {{ ::config_gen_code.png?600 |}} {{ ::config_gen_code.png?600 |}}
Ligne 271: Ligne 293:
  
  
-Afin de lancer l'IDE SystemWorkbench, il vous faut taper dans une console :+Afin de lancer l'IDE SystemWorkbench, il vous faut lancer dans une console :
  
   /opt/STM32/SystemWorkbench/eclipse   /opt/STM32/SystemWorkbench/eclipse
Ligne 376: Ligne 398:
  
  
- 
-=====Projet C++===== 
- 
-Fermer les outils eclipse et STM32CubeMX. 
- 
-===Récupération du projet de base et Initialisation du système de gestion de version en local=== 
-Copier/coller dans une console: 
-  echo commence 
-  mv ~/workspace_ac6 ~/workspace_ac6_etu 
-  cd ~/ 
-  mkdir -p ~/workspace_ac6 
-  cd ~/workspace_ac6  
-  wget http://homepages.laas.fr/bvandepo/files/iut/tp_tns/nucleo_tns_etu2018.zip 
-  echo fini 
-   
-   
-lancer eclipse: 
-  /opt/STM32/SystemWorkbench/eclipse   
- 
-cliquer à gauche sur l'icone C/C++ 
- 
-click droit dans project Explorer->Import, General->Existing Projects into Workspace 
- 
-Next 
- 
-Select archive file,  Browse 
- 
-choisir /home/.../workspace_ac6/nucleo_tns_etu2018.zip 
- 
- 
-Finish 
- 
- 
-===initialisation système de gestion de version=== 
-#unzip nucleo_tns_etu2018.zip 
-  #rm  nucleo_tns_etu2018.zip 
-  cd ~/workspace_ac6/nucleo_tns/ 
-  git init 
-  git add * 
-  git commit -m'initial version' 
-  gitk  
-   
      
  
tns_nucleo.txt · Dernière modification: 2019/03/28 14:22 de bvandepo