<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adeletan</id>
	<title>Wiki de bureau d&#039;études PeiP - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://peip-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Adeletan"/>
	<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Adeletan"/>
	<updated>2026-11-12T12:55:52Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15746</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15746"/>
		<updated>2021-05-11T07:50:02Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Test du code==&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous avons pris comme mot de passe &amp;quot;1234&amp;quot;. Nous avons fait 2 vidéos, une pour montrer ce que fait la carte lorsqu&amp;#039;on rentre un mauvais mot de passe, et une deuxième vidéo dans laquelle on rentre le mot de passe &amp;quot;1234&amp;quot;, à l&amp;#039;aide du bouton second (voir schema ci-dessous).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:schema_bouton.jpg|100px|left]]&lt;br /&gt;
[[Fichier:motdepassesuccess.mp4|300px|right]]&lt;br /&gt;
[[Fichier:motdepassefail.mp4|300px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
Ainsi s&amp;#039;achève ce BE au cours duquel nous aurons appris de nombreuses choses. Malheureusement, par manque de temps nous n&amp;#039;avons pas pu aller au bout du projet qui était de concevoir de A à Z une clé USB. Néanmoins, nous avons quand même pu terminer ce projet avec une clé soudée et sur laquelle les programmes de tests fonctionnent comme on peut le voir ci-dessous.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]] &lt;br /&gt;
[[Fichier:Test Mémoirevid.mp4|350px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussi.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15745</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15745"/>
		<updated>2021-05-11T07:49:27Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Test du code==&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous avons pris comme mot de passe &amp;quot;1234&amp;quot;. Nous avons fait 2 vidéos, une pour montrer ce que fait la carte lorsqu&amp;#039;on rentre un mauvais mot de passe, et une deuxième vidéo dans laquelle on rentre le mot de passe &amp;quot;1234&amp;quot;, à l&amp;#039;aide du bouton second (voir schema ci-dessous).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:schema_bouton.jpg|100px|left]]&lt;br /&gt;
[[Fichier:motdepassesuccess.mp4|300px|right]]&lt;br /&gt;
[[Fichier:motdepassefail.mp4|300px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Conclusion &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
Ainsi s&amp;#039;achève ce BE au cours duquel nous aurons appris de nombreuses choses. Malheureusement, par manque de temps nous n&amp;#039;avons pas pu aller au bout du projet qui était de concevoir de A à Z une clé USB. Néanmoins, nous avons quand même pu terminer ce projet avec une clé soudée et sur laquelle les programmes de tests fonctionnent comme on peut le voir ci-dessous.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]] &lt;br /&gt;
[[Fichier:Test Mémoirevid.mp4|350px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussi.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15744</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15744"/>
		<updated>2021-05-11T07:48:45Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée-Test Mémoire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Test du code==&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous avons pris comme mot de passe &amp;quot;1234&amp;quot;. Nous avons fait 2 vidéos, une pour montrer ce que fait la carte lorsqu&amp;#039;on rentre un mauvais mot de passe, et une deuxième vidéo dans laquelle on rentre le mot de passe &amp;quot;1234&amp;quot;, à l&amp;#039;aide du bouton second (voir schema ci-dessous).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:schema_bouton.jpg|100px|left]]&lt;br /&gt;
[[Fichier:motdepassesuccess.mp4|300px|right]]&lt;br /&gt;
[[Fichier:motdepassefail.mp4|300px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
Ainsi s&amp;#039;achève ce BE au cours duquel nous aurons appris de nombreuses choses. Malheureusement, par manque de temps nous n&amp;#039;avons pas pu aller au bout du projet qui était de concevoir de A à Z une clé USB. Néanmoins, nous avons quand même pu terminer ce projet avec une clé soudée et sur laquelle les programmes de tests fonctionnent comme on peut le voir ci-dessous.&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]] &lt;br /&gt;
[[Fichier:Test Mémoirevid.mp4|350px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussi.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15743</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15743"/>
		<updated>2021-05-11T07:44:45Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée-Test Mémoire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Test du code==&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous avons pris comme mot de passe &amp;quot;1234&amp;quot;. Nous avons fait 2 vidéos, une pour montrer ce que fait la carte lorsqu&amp;#039;on rentre un mauvais mot de passe, et une deuxième vidéo dans laquelle on rentre le mot de passe &amp;quot;1234&amp;quot;, à l&amp;#039;aide du bouton second (voir schema ci-dessous).&lt;br /&gt;
&lt;br /&gt;
[[Fichier:schema_bouton.jpg|100px|left]]&lt;br /&gt;
[[Fichier:motdepassesuccess.mp4|300px|right]]&lt;br /&gt;
[[Fichier:motdepassefail.mp4|300px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]] &lt;br /&gt;
[[Fichier:Test Mémoirevid.mp4|350px|right]]&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussi.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15555</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15555"/>
		<updated>2021-05-07T18:27:03Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Chronologie  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussi.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15408</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15408"/>
		<updated>2021-05-02T11:17:41Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15407</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15407"/>
		<updated>2021-05-02T11:17:17Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15406</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15406"/>
		<updated>2021-05-02T11:16:56Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15405</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15405"/>
		<updated>2021-05-02T11:16:34Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée-Test Mémoire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]] &lt;br /&gt;
&lt;br /&gt;
Une fois notre clé soudée, nous avons constaté qu&amp;#039;elle était bien détectée par le système Linux.&lt;br /&gt;
&lt;br /&gt;
Ainsi, nous avons pu réaliser le test de mémoire suivant : [[Media:ClefUSBTestMemRW2.zip]] comme on peut le voir un peu plus bas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ce test s&amp;#039;est avéré être un succès. C&amp;#039;est à dire qu&amp;#039;on avait bien les 10 flashs rapides, suivis des nombreux flashs, puisqu&amp;#039;un flash est effectué tous les 256 blocs en écriture comme en lecture, et enfin 5 flashs qui indique le succès du programme.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15404</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15404"/>
		<updated>2021-05-02T10:55:20Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée-Test Mémoire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15403</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15403"/>
		<updated>2021-05-02T10:54:57Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée-Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15402</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15402"/>
		<updated>2021-05-02T10:48:31Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15401</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15401"/>
		<updated>2021-05-02T10:47:14Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vide */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Nous avions au préalable récupérer notre liste de composants via Fritzing afin que les professeurs puissent nous donner les composants avant d&amp;#039;aller souder.&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. &lt;br /&gt;
Nous n&amp;#039;avions  donc plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...).&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15400</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15400"/>
		<updated>2021-05-02T10:43:41Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vue circuit imprimé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur. &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. Nous n&amp;#039;avions plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...)&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15399</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15399"/>
		<updated>2021-05-02T10:43:13Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. Nous n&amp;#039;avions plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...)&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15398</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15398"/>
		<updated>2021-05-02T10:41:28Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vide */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]] Une fois notre clé reçue, nous sommes retournés en atelier soudure. &lt;br /&gt;
Afin de tester notre clé, Rex avait déjà soudé les principaux composants tels que le micro-contrôleur et 3 LED rouge, verte, orange permettant de tester la clé. Nous n&amp;#039;avions plus qu&amp;#039;à souder les composants restants (boutons, nos 2 LED et résistances...)&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15397</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15397"/>
		<updated>2021-05-02T09:23:16Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15396</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15396"/>
		<updated>2021-05-02T09:22:55Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15395</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15395"/>
		<updated>2021-05-02T09:22:32Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15394</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15394"/>
		<updated>2021-05-02T09:21:57Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vue circuit imprimé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur &lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15393</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15393"/>
		<updated>2021-05-02T09:19:56Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vue circuit imprimé */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
De même que pour notre projet intermédiaire, nous avons donc branché les composants entre eux tout en évitant les entrecroisements.&lt;br /&gt;
&lt;br /&gt;
Cependant, une différence majeure avec la carte du projet intermédiaire, est l&amp;#039;espace disponible quant au placement des composants.&lt;br /&gt;
&lt;br /&gt;
Ainsi, cet espace étant un peu trop petit, nous avons utilisé le logiciel Inkscape afin de redéfinir cette base.&lt;br /&gt;
&lt;br /&gt;
Il fallait donc partir du fichier svg sur fritzing que nous exportions sur Inkscape pour réaliser les modifications.&lt;br /&gt;
&lt;br /&gt;
Une fois cela fait, nous n&amp;#039;avions plus qu&amp;#039;à brancher les éléments entre eux.&lt;br /&gt;
&lt;br /&gt;
Ce ne fut pas simple car nous n&amp;#039;arrivions pas à trouver l&amp;#039;espace nécessaire pour relier les boutons au micro-contrôleur au vu de la quantité de fils autour.&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est finalement Rex qui a réussi à nous terminé la conception du PCB pour que l&amp;#039;on puisse passer à la prochaine étape.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15392</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15392"/>
		<updated>2021-05-02T09:08:11Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15391</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15391"/>
		<updated>2021-05-02T09:07:52Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15390</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15390"/>
		<updated>2021-05-02T09:07:36Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vue schématique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
Après avoir correctement relié les quelques composants entre eux, nous allions devoir nous occuper des branchements.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15389</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15389"/>
		<updated>2021-05-02T09:06:14Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15388</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15388"/>
		<updated>2021-05-02T09:05:19Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15387</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15387"/>
		<updated>2021-05-02T09:05:03Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15386</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15386"/>
		<updated>2021-05-02T09:04:36Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale  : Vue schématique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, on s&amp;#039;occupe de la réalisation du PCB de notre clé sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
Pour celui-ci, nous sommes partis d&amp;#039;un des fichiers fritzing sur la page d&amp;#039;accueil du BE.&lt;br /&gt;
&lt;br /&gt;
En effet en partant d&amp;#039;un de ces fichiers nous avions directement presque tous les composants nécessaires hormis ceux que l&amp;#039;on rajoute.&lt;br /&gt;
&lt;br /&gt;
Ainsi, le micro-contrôleur, la mémoire, la partie USB, alimentation étaient présent sur le fichier. &lt;br /&gt;
&lt;br /&gt;
De même que pour le projet intermédiaire, nous avons donc ajouté nos 6 boutons ainsi que nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15385</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15385"/>
		<updated>2021-05-02T08:54:52Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* PCB  : Vue schématique */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP dans le but de simplifier les futures branchements. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15332</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15332"/>
		<updated>2021-04-22T15:39:48Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15330</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15330"/>
		<updated>2021-04-22T15:39:25Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Test Mémoire ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15328</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15328"/>
		<updated>2021-04-22T15:35:51Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15327</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15327"/>
		<updated>2021-04-22T15:34:50Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15326</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15326"/>
		<updated>2021-04-22T15:34:32Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15325</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15325"/>
		<updated>2021-04-22T15:34:24Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15324</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15324"/>
		<updated>2021-04-22T15:34:07Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15323</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15323"/>
		<updated>2021-04-22T15:33:46Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15314</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15314"/>
		<updated>2021-04-22T15:19:45Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.jpg|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15313</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15313"/>
		<updated>2021-04-22T15:18:17Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Clé finale soudée */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.png|thumb|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_M%C3%A9moire.png&amp;diff=15312</id>
		<title>Fichier:Test Mémoire.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_M%C3%A9moire.png&amp;diff=15312"/>
		<updated>2021-04-22T15:16:08Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : Adeletan a téléversé une nouvelle version de Fichier:Test Mémoire.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_M%C3%A9moire.png&amp;diff=15311</id>
		<title>Fichier:Test Mémoire.png</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Fichier:Test_M%C3%A9moire.png&amp;diff=15311"/>
		<updated>2021-04-22T15:15:43Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15310</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15310"/>
		<updated>2021-04-22T15:15:27Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Test Mémoire.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15309</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15309"/>
		<updated>2021-04-22T13:36:21Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
[[File:ClefUSBAntoineTelian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15308</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15308"/>
		<updated>2021-04-22T13:36:01Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*De même que pour le projet intermédiaire, notre PCB est disponible ci-dessous :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15307</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15307"/>
		<updated>2021-04-22T13:35:18Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
*Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
*Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
*Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15306</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15306"/>
		<updated>2021-04-22T13:35:06Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Projet Final : Clef à déverrouillage par code  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
Après avoir terminé le projet intermédiaire, nous pouvons nous concentrer sur la clé finale.&lt;br /&gt;
&lt;br /&gt;
Ainsi, en plus de souder nos boutons et LED, le micro-contrôleur, il faut aussi tous les composants restants de la clé tels que la mémoire.&lt;br /&gt;
&lt;br /&gt;
Comme pour le projet intermédiaire, nous réaliserons d&amp;#039;abord le PCB sur Fritzing puis, une fois la clé reçu, nous souderons les composants.&lt;br /&gt;
&lt;br /&gt;
Enfin, nous programmerons notre fonctionnalité supplémentaire (boutons, LED) ainsi que la mémoire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15299</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15299"/>
		<updated>2021-04-22T10:33:26Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /*  Chronologie  */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
&lt;br /&gt;
Commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Travail sur le l&amp;#039;amélioration du code.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15272</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15272"/>
		<updated>2021-04-21T14:01:20Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Code test projet intermédiaire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
Et commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15271</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15271"/>
		<updated>2021-04-21T14:00:09Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Code test projet intermédiaire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
Et commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
	<entry>
		<id>https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15270</id>
		<title>Binome2020-2</title>
		<link rel="alternate" type="text/html" href="https://peip-ima.plil.fr/mediawiki/index.php?title=Binome2020-2&amp;diff=15270"/>
		<updated>2021-04-21T13:59:53Z</updated>

		<summary type="html">&lt;p&gt;Adeletan : /* Code test projet intermédiaire */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Introduction &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;objectif de ce bureau d&amp;#039;étude est de concevoir entièrement une clé USB personnalisée.&lt;br /&gt;
&lt;br /&gt;
Pour cela, nous passerons par plusieurs étapes :&lt;br /&gt;
&lt;br /&gt;
* Réalisation du circuit électronique à l&amp;#039;aide du logiciel Fritzing.&lt;br /&gt;
&lt;br /&gt;
* Soudage des différents composants sur notre clé.&lt;br /&gt;
&lt;br /&gt;
* Programmation du microcontrôleur de la clé en Arduino.&lt;br /&gt;
&lt;br /&gt;
* Conception de d&amp;#039;un boitier pour notre clé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour personnaliser notre clé USB, l&amp;#039;idée retenue est de concevoir une clé USB déverrouillable par code.&lt;br /&gt;
&lt;br /&gt;
Nous utiliserons des LED rouge et verte pour déterminer si le code rentré est respectivement mauvais ou bon.&lt;br /&gt;
&lt;br /&gt;
De plus, il sera possible de redéfinir le code à l&amp;#039;aide d&amp;#039;un bouton de réinitialisation du code sur la clé.&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Matériel/Composant &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Altmega16u2.png|vignette|left|100px|Micro-contrôleur ATMega16u2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Tout d&amp;#039;abord, pour la conception de notre clé usb, nous aurons besoin d&amp;#039;un micro-contrôleur AVR. Plus précisément, nous choisirons l&amp;#039;ATMega16u2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Adesto64Mb.jpg|vignette|alt=schema|left||100px|carte mémoire Adesto64Mb]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, pour notre clé USB, nous utiliserons une mémoire AT45DB641E (64Mb) car celle-ci est adaptée à notre mciro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Fichier:ledcms.png|vignette|left||100px|LED CMS]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nous aurons aussi besoin de 2 LED cms ( une rouge et une verte )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Boutons-poussoir-touche.png|vignette|alt=schema|left||100px|Bouton]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6 boutons&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Intermédiaire &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
*Avant de concevoir notre clé usb, on réalise d&amp;#039;abord un projet intermédiaire sur une carte et avec un micro-contrôleur (ATTiny84) plus facile à souder que celui que l&amp;#039;on utilisera pour la clé (ATMega16u2). &lt;br /&gt;
&lt;br /&gt;
*Ce projet à pour but de nous faire travailler seulement dans un premier temps sur la fonctionnalité supplémentaire de notre clé usb. &lt;br /&gt;
&lt;br /&gt;
*Dans notre cas, il s&amp;#039;agira de travailler sur nos 6 boutons et nos 2 LED rouge et verte.&lt;br /&gt;
&lt;br /&gt;
*5 boutons serviront à rentrer un chiffre par couple [(0,1), (2,3)...,(8,9)] tandis que le dernier fera office de bouton &amp;quot;2nde&amp;quot; pour rentrer le deuxième chiffre de la paire.&lt;br /&gt;
&lt;br /&gt;
*Il est possible de retrouver ci-dessous le PCB de notre projet intermédiaire :&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Projet_intermediaire.zip]]&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_schema_fritzing.png|400px|left]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
C&amp;#039;est tout d&amp;#039;abord sur la partie schématique que nous avons commencé la réalisation de notre PCB. &lt;br /&gt;
&lt;br /&gt;
Après avoir intégré le micro-contrôleur, nous avons ajouté les différents composants dont nous avions besoin pour notre carte.&lt;br /&gt;
&lt;br /&gt;
Nous avons donc ajouté nos 6 boutons, ainsi que nos 2 LED rouge et verte chacune reliée à une résistance de 220Ω. Le tout étant à la fois relié à la masse ainsi qu&amp;#039;au micro-contrôleur.&lt;br /&gt;
&lt;br /&gt;
De plus, nous avons rajouté une alimentation et un ICSP. &lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vue circuit-imprimé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprimé_fritzing.png|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Après avoir tout ajouté et relié sur la partie schématique,  il a fallu placer et relier concrètement les différents composants sur la carte dans la partie &amp;quot;circuit-imprimé&amp;quot; de Fritzing.&lt;br /&gt;
&lt;br /&gt;
Ainsi, après avoir disposé tous les composants sur la carte, nous avons dû les relier pour certains entre eux et tous au micro-contrôleur. &lt;br /&gt;
&lt;br /&gt;
Nous avons donc optimiser le placement des composants, le tout en prenant soin de ne provoquer aucun entrecroisement et en évitant de faire des angles droits.&lt;br /&gt;
&lt;br /&gt;
Pour pouvoir faire les branchements plus facilement, il a été possible de créer des via qui nous ont permis de faire certains branchements (représentés en orange) sur l&amp;#039;arrière de la carte. &lt;br /&gt;
&lt;br /&gt;
Enfin, pour une question d&amp;#039;esthétisme et de simplicité nous avons plongé le circuit dans la masse puis nous avons envoyé notre carte à l&amp;#039;impression. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB  : Vide == &lt;br /&gt;
&lt;br /&gt;
[[Fichier:Circuit_imprime_vide.png|350px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Une fois la carte imprimée, nous sommes allés en atelier soudure.&lt;br /&gt;
Nous avons tout pris connaissance du matériel que l&amp;#039;on allait utiliser pour souder. &lt;br /&gt;
On a appris qu&amp;#039;il fallait gommer la carte pour enlever l&amp;#039;oxydation et pouvoir souder plus proprement.&lt;br /&gt;
Pour souder, nous avions à disposition du fil d&amp;#039;étain que nous faisions fondre, à l&amp;#039;aide d&amp;#039;un fer à environ 340°C, sur le cuivre et sur la patte du composant afin que celui-ci soit fixé sur la carte.&lt;br /&gt;
Dans le cas où nous mettions trop d&amp;#039;étain nous avions une tresse à souder pour enlever facilement ce surplus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PCB Soudé ==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Pcb_complet.png|200px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notre carte est maintenant complétement soudée. De ce fait, il nous reste plus qu&amp;#039;à la programmer pour que celle-ci soit fonctionnelle.&lt;br /&gt;
Notre but est donc de faire une sorte de mot de passe, qui quand celui-ci est validé, allume la 2eme LED rouge. Pour cela, nous avons essayé de créer sur arduino notre propre système de mot de passe, mais ce fut un échec ...&lt;br /&gt;
De ce fait, en nous renseignant sur internet, nous avons trouvé une bibliothèque arduino nommé &amp;quot;Password Library&amp;quot;, et qui nous sera bien utile dans notre cas. Pour pouvoir l&amp;#039;utiliser, on a d&amp;#039;abord défini l&amp;#039;utilité de nos boutons. Nous avons d&amp;#039;abord essayé de définir les 5 boutons (roses) en tant que chiffre (2 chiffre par bouton, avec une double impulsion pour avoir le second chiffre) et un bouton validé (marron). Avec cette méthode là, nous n&amp;#039;avions pas de limite de caractère pour le mot de passe, mais le programme était un peu plus dur à réaliser.&lt;br /&gt;
Nous avons donc opter pour la deuxième solution qui consiste à utiliser le bouton validé comme un boutont Control/Second, qui permet donc d&amp;#039;atteindre les seconds chiffres plus facilement, le seul &amp;quot;problème&amp;quot; est qu&amp;#039;on a du instaurer une limite de caractère, on a donc laissé 4 chiffres, comme un code PIN.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Code test projet intermédiaire  ==&lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;Password.h&amp;gt;&lt;br /&gt;
 int l=0;&lt;br /&gt;
 int second=0;&lt;br /&gt;
 int clign =0;&lt;br /&gt;
 const int ledred = 8;&lt;br /&gt;
 const int ledgreen = 7;&lt;br /&gt;
 Password password = Password(&amp;quot;1234&amp;quot;);&lt;br /&gt;
 void setup() {&lt;br /&gt;
   for( int i= 0; i&amp;lt;6; i++){&lt;br /&gt;
     pinMode(i,INPUT_PULLUP);}&lt;br /&gt;
   pinMode(ledred,OUTPUT);&lt;br /&gt;
   pinMode(ledgreen,OUTPUT);&lt;br /&gt;
 }&lt;br /&gt;
 void loop() { &lt;br /&gt;
&lt;br /&gt;
   while(!( password.evaluate())){&lt;br /&gt;
&lt;br /&gt;
   if (l==4){&lt;br /&gt;
   password.reset();&lt;br /&gt;
   l=0;&lt;br /&gt;
   while (clign&amp;lt;4){&lt;br /&gt;
     digitalWrite(ledred,LOW);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     digitalWrite(ledred,HIGH);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     clign++;&lt;br /&gt;
     };&lt;br /&gt;
     clign=0;}&lt;br /&gt;
&lt;br /&gt;
   digitalWrite(ledred, HIGH);&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(5)==LOW &amp;amp;&amp;amp; second==0){&lt;br /&gt;
   second=1;&lt;br /&gt;
   delay(50);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(1)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;0&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;1&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(0)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;2&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;3&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(2)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;4&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;5&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(3)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;6&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;7&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}&lt;br /&gt;
&lt;br /&gt;
   if (digitalRead(4)==LOW)&lt;br /&gt;
   {if (second==0){&lt;br /&gt;
     password.append(&amp;#039;8&amp;#039;);&lt;br /&gt;
     delay(50);}&lt;br /&gt;
     else {&lt;br /&gt;
     password.append(&amp;#039;9&amp;#039;);&lt;br /&gt;
     delay(50);&lt;br /&gt;
     second=0;&lt;br /&gt;
     }&lt;br /&gt;
     l++;}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   digitalWrite(ledred, LOW);&lt;br /&gt;
   digitalWrite(ledgreen,HIGH);&lt;br /&gt;
&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Projet Final : Clef à déverrouillage par code &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue schématique ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_schema_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vue circuit imprimé ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_cicuit_fritzing.jpg|400px|left]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale  : Vide ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_vide_avant.jpg|300px|left|Clé face avant]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Cléarrière.jpg|300px|right|Clé face arrière]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Clé finale soudée ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Clef_soudée_avant.jpg|350px|left]]&lt;br /&gt;
[[Fichier:Clef_soudée_arrière.jpg|350px|right]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier: Cle_USB_Groupe2_Antoine-Telian.zip]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=&amp;lt;div class=&amp;quot;mcwiki-header&amp;quot; style=&amp;quot;border-radius: 40px; padding: 15px; font-weight: bold; color: #FFFFFF; text-align: center; font-size: 80%; background: #964BFF; vertical-align: top; width: 98%;&amp;quot;&amp;gt; Chronologie &amp;lt;/div&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/01/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Présentation du bureau d&amp;#039;étude et choix de la fonctionnalité supplémentaire à ajouter sur notre clé USB.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 21/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;idée retenue est de réaliser une clé USB dévérouillable par un code pin à l&amp;#039;aide de boutons sur la clé.&lt;br /&gt;
&lt;br /&gt;
On y placera aussi deux leds : une rouge pour indiquer si le code n&amp;#039;est pas rentré ou s&amp;#039;il est faut et une led verte qui indiquera si le code est bon.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 25/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On réalise d&amp;#039;abord notre Projet intermédiaire. Celui-ci consiste à concevoir une première carte dont le micro-contrôleur est l&amp;#039;ATTiny84. Nous concevons cette première carte avec notre fonctionnalité supplémentaire. &lt;br /&gt;
&lt;br /&gt;
Initiation au logiciel Fritzing pour la réalisation de circuit imprimé.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 28/01/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On continue la réalisation de notre circuit imprimé sur Fritzing en plaçant correctement nos différents composants. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 01/02/2021 &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Commencement du programme pour notre Projet intermédiaire sur Arduino.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 04/02/2021&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
Fin de la conception de notre circuit imprimé sur Fritzing après avoir ajouté la batterie et l&amp;#039;ICSP.&lt;br /&gt;
&lt;br /&gt;
Nous avons continué notre programme arduino pour notre Projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 08/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Impression de la carte.&lt;br /&gt;
&lt;br /&gt;
Fin de notre programme arduino pour notre projet intermédiaire.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 11/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Début de la soudure des composants (micro-contrôleur, boutons)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 15/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Soudage des composants (résistances, LED)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;- 18/02/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure (câbles)&lt;br /&gt;
&lt;br /&gt;
Test du programme arduino avec succès&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-8/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Factorisation du code avec des boucles suite aux conseils de Rex.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-11/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Conception du PCB de la clef sur inkscape.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-18/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Exportation du fichier d&amp;#039;inkscape sur fritzing et ajout des composants nécessaires.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-22/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Branchements des composants sur le Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-25/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin élaboration du pcb sur Fritzing.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-29/03/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Rectification du PCB par Rex.&lt;br /&gt;
Et commande réalisée.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-01/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
En attente de la réception de la clé.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-08/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-12/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Liste des composants établie.&lt;br /&gt;
&lt;br /&gt;
Sur les conseils de Rex, nous avons regardé le programme réalisé pour le binôme 10 pouvant nous être utile également.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-15/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Clé réceptionnée.&lt;br /&gt;
&lt;br /&gt;
Démarrage de la soudure.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;-19/04/2021&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Fin de la soudure.&lt;br /&gt;
&lt;br /&gt;
Test des mémoires sur la clé réussis.&lt;br /&gt;
&lt;br /&gt;
== Carte commandée ==&lt;br /&gt;
&lt;br /&gt;
La carte est commandée, le dessin SVG de la carte a du être refait, il n&amp;#039;était pas correct. Des modifications ont été effectuées au niveau du routage. En particulier descendre les distances pour la DRC à 0.15 millièmes d&amp;#039;inch n&amp;#039;était pas très malin. Les fichiers ci-dessous :&lt;br /&gt;
&lt;br /&gt;
Fichiers SVG : [[File:ClefUSBAntoineTelianSVG.zip]].&lt;br /&gt;
&lt;br /&gt;
Fichier Fritzing source : [[File:ClefUSBAntoineTelian.zip]].&lt;/div&gt;</summary>
		<author><name>Adeletan</name></author>
	</entry>
</feed>