PeiP enseignement spécialité SE 2021/2022 : Différence entre versions

De Wiki d'activités IMA
Ligne 170 : Ligne 170 :
 
Vous pouvez extraire les fichiers avec la commande <code>tar xvf</code> suivi du nom de l'archive.
 
Vous pouvez extraire les fichiers avec la commande <code>tar xvf</code> suivi du nom de l'archive.
  
Nous vous laissons enrichir la fonction <code>usbFunctionWriteOut</code> du fichier source <code>main.c</code> avec les commandes de votre choix.
+
Nous vous laissons enrichir la fonction <code>usbFunctionWriteOut</code> du fichier source <code>tiny85_peip/main.c</code> avec les commandes de votre choix.
 +
La compilation se fait via la commande <code>make</code> dans le répertoire <code>tiny85_peip/default</code>.
  
 
La programmation de la carte se fait obligatoirement via le connecteur ISP avec un programmateur Arduino. La commande pour télécharger le code sur la carte est :
 
La programmation de la carte se fait obligatoirement via le connecteur ISP avec un programmateur Arduino. La commande pour télécharger le code sur la carte est :
Ligne 180 : Ligne 181 :
 
== Cartes à base d'ATMega16u2 ==
 
== Cartes à base d'ATMega16u2 ==
  
Partez sur la base de l'archive [[File
+
Partez sur la base de l'archive [[File:lufa-LUFA-peip-eleves-210130.tgz]].
 +
 
 +
Vous pouvez extraire les fichiers avec la commande <code>tar xvf</code> suivi du nom de l'archive.
 +
 
 +
Nous vous laissons enrichir la fonction <code>CDC_Task</code> du fichier <code>PolytechLille/VirtualSerialPeiP/VirtualSerial.c</code> avec les commandes de votre choix.
 +
La compilation se fait via la commande <code>make</code> dans le répertoire <code>PolytechLille/VirtualSerialPeiP/</code>.
 +
 
 +
La programmation de la carte se fait par USB avec les commandes :
 +
 
 +
dfu-programmer atmega16u2 erase
 +
dfu-programmer atmega16u2 flash VirtualSerial.hex
 +
dfu-programmer atmega16u2 reset
 +
 
 +
Il est possible que l'ATMega16u2 ne soit pas configuré, d'usine, avec la bonne fréquence d'horloge. Dans ce cas il faut utiliser le connecteur ISP avec un programmateur Arduino. Il faut commencer par écraser le chargeur USB présent sur micro-contrôleur avec la session suivante :
 +
 
 +
avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -t
 +
avrdude> erase
 +
avrdude> quit
 +
 
 +
Ensuite il faut re-télécharger un [[File:at90usb162-bl-usb-1_0_5.hex chargeur USB]] (prévu pour une ancienne version du micro-contrôleur, la dernière version n'étant pas disponible sur Internet) et imposer la bonne fréquence :
 +
 
 +
avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -U flash:w:at90usb162-bl-usb-1_0_5.hex
 +
avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -U lfuse:w:0xFF:m
 +
 
 +
A partir de là vous pouvez programmer par USB (en changeant l'identification du micro-contrôleur) à la bonne fréquence :
 +
 
 +
dfu-programmer at90usb162 erase
 +
dfu-programmer at90usb162 flash VirtualSerial.hex
 +
dfu-programmer at90usb162 reset

Version du 9 décembre 2021 à 11:00

Répartition des binômes

Attention nous disposons d'un nombre limité de micro-contrôleurs de chaque type :

  • 12 ATTiny85 (paquetage SO) ;
  • 20 ATMega16u2 (paquetage TQFP).

Pour les horloges des ATMega16u2 nous avons :

  • 15 quartz FA238 ;
  • 10 quartz d'empreinte HC-49/S.

Vous devez donc vous répartir les types de cartes de façon à ce que tout le monde puisse avoir du matériel.

Cahier Elèves Type carte
Cahier n°0 Ne pas utiliser, exemple
Groupe 1 / Cahier n°1 Noel Alexis, Morchipont Charlène ATMega16u2_HC49S
Groupe 1 / Cahier n°2 CLOTTES Simon, CHEVALIER Juliette ATTiny85
Groupe 1 / Cahier n°3 CHAUVELIERE Martin, FONTAINE Matthieu ATMega16u2_HC49S
Groupe 1 / Cahier n°4 DUHR Romain, TAMRABET Tariq ATMega16u2_HC49S
Groupe 1 / Cahier n°5 SIMON Antoine, QUIQUE Paul ATTiny85
Groupe 1 / Cahier n°6 ROUSSEL Thomas, CHACHIGNOT Titouan ATMega16u2_HC49S
Groupe 1 / Cahier n°7 CZERYBA--DUEZ Louis, DAHMANI Jibril ATTiny85
Groupe 1 / Cahier n°8 DRICI Othman, Cruchet Simon ATTiny85
Groupe 1 / Cahier n°9 Floret Joseph ATTiny85
Groupe 1 / Cahier n°10 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 1 / Cahier n°11 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 1 / Cahier n°12 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 2 / Cahier n°1 DERYCKERE Louis, LAIGLE Margaux ATTiny85
Groupe 2 / Cahier n°2 DELAUNOY Tanguy, FERRAND Louis ATTiny85
Groupe 2 / Cahier n°3 MARTIN Amandine, MENUGE Clément ATTiny85
Groupe 2 / Cahier n°4 CROCHEMORE Arthur, BARON Romain ATTiny85
Groupe 2 / Cahier n°5 ELHAOUITTI Aya, DUTILLY Anthony ATMega16u2_HC49S
Groupe 2 / Cahier n°6 Joly Maxime, Guendouz Yastene ATTiny85
Groupe 2 / Cahier n°7 Akan Hanaa, Benaissa Djibril ATMega16u2_HC49S
Groupe 2 / Cahier n°8 DAMASE Tom, GEST Matthieu ATMega16u2_HC49S
Groupe 2 / Cahier n°9 Benard Simon, Pottier Eliot ATMega16u2_HC49S
Groupe 2 / Cahier n°10 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 2 / Cahier n°11 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 2 / Cahier n°12 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 3 / Cahier n°1 Verstrepen Mathis, Wielgosz Vincent ATMega16u2_FA238
Groupe 3 / Cahier n°2 Lefranc-Mouquet Armand ATTiny85
Groupe 3 / Cahier n°3 BUNIATYAN Galust, ZAIDI Alissia ATTiny85
Groupe 3 / Cahier n°4 Bonningre Louis, Baccar Skander ATMega16u2_FA238
Groupe 3 / Cahier n°5 Jenback Alexis, GERBER Titouan ATMega16u2_FA238
Groupe 3 / Cahier n°6 Gambart Louis, Fournier Adrien ATMega16u2_FA238
Groupe 3 / Cahier n°7 WARLOP--DEGRYSE Ambre, FORTIN Clément ATMega16u2_FA238
Groupe 3 / Cahier n°8 CASTELAIN Théophile, THOMAS-GUIROY Alexandre ATMega16u2_FA238
Groupe 3 / Cahier n°9 Poulet Anael, Leleu Romain ATMega16u2_FA238
Groupe 3 / Cahier n°10 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 3 / Cahier n°11 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S
Groupe 3 / Cahier n°12 Nom Prénom, Nom Prénom ATTiny84 / ATTiny85 / ATMega16u2_FA238 / ATMega16u2_HC49S

Logiciel des cartes

Cartes à base d'ATTiny85

Partez sur la base de l'archive Fichier:Cdc232 peip eleves.2011-06-24.tgz.

Vous pouvez extraire les fichiers avec la commande tar xvf suivi du nom de l'archive.

Nous vous laissons enrichir la fonction usbFunctionWriteOut du fichier source tiny85_peip/main.c avec les commandes de votre choix. La compilation se fait via la commande make dans le répertoire tiny85_peip/default.

La programmation de la carte se fait obligatoirement via le connecteur ISP avec un programmateur Arduino. La commande pour télécharger le code sur la carte est :

avrdude -c arduino -p attiny85 -P /dev/ttyUSB0 -b 19200 -U flash:w:cdctiny85.hex

Testez ensuite la carte en utilisant minicom -os, rentrez dans le troisième item du menu et sélectionnez /dev/ttyUSB0, sélectionnez 9600 bauds, supprimez le contrôle de flux matériel, sortez du sous-menu et enfin prenez le premier item "sortie".

Cartes à base d'ATMega16u2

Partez sur la base de l'archive Fichier:Lufa-LUFA-peip-eleves-210130.tgz.

Vous pouvez extraire les fichiers avec la commande tar xvf suivi du nom de l'archive.

Nous vous laissons enrichir la fonction CDC_Task du fichier PolytechLille/VirtualSerialPeiP/VirtualSerial.c avec les commandes de votre choix. La compilation se fait via la commande make dans le répertoire PolytechLille/VirtualSerialPeiP/.

La programmation de la carte se fait par USB avec les commandes :

dfu-programmer atmega16u2 erase
dfu-programmer atmega16u2 flash VirtualSerial.hex 
dfu-programmer atmega16u2 reset

Il est possible que l'ATMega16u2 ne soit pas configuré, d'usine, avec la bonne fréquence d'horloge. Dans ce cas il faut utiliser le connecteur ISP avec un programmateur Arduino. Il faut commencer par écraser le chargeur USB présent sur micro-contrôleur avec la session suivante :

avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -t
avrdude> erase
avrdude> quit

Ensuite il faut re-télécharger un Fichier:At90usb162-bl-usb-1 0 5.hex chargeur USB (prévu pour une ancienne version du micro-contrôleur, la dernière version n'étant pas disponible sur Internet) et imposer la bonne fréquence :

avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -U flash:w:at90usb162-bl-usb-1_0_5.hex
avrdude -c arduino -p atmega16u2 -P /dev/ttyUSB0 -b 19200 -U lfuse:w:0xFF:m

A partir de là vous pouvez programmer par USB (en changeant l'identification du micro-contrôleur) à la bonne fréquence :

dfu-programmer at90usb162 erase
dfu-programmer at90usb162 flash VirtualSerial.hex 
dfu-programmer at90usb162 reset