{"id":1275,"date":"2021-10-05T14:47:14","date_gmt":"2021-10-05T19:47:14","guid":{"rendered":"http:\/\/ve2cuy.com\/420-1c4\/?page_id=1275"},"modified":"2025-02-13T06:59:02","modified_gmt":"2025-02-13T11:59:02","slug":"labo-note-01","status":"publish","type":"page","link":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/labo-note-01\/","title":{"rendered":"TP 01 &#8211; 30% de la note finale"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">R\u00e9sum\u00e9<\/h2>\n\n\n\n<p>\u00c9crire un programme qui permet d&rsquo;ajuster individuellement l&rsquo;intensit\u00e9 des couleurs <strong><span class=\"has-inline-color has-vivid-red-color\">rouge<\/span><\/strong>, <strong><span class=\"has-inline-color has-vivid-green-cyan-color\">vert<\/span><\/strong> et <strong><span class=\"has-inline-color has-vivid-cyan-blue-color\">bleu<\/span><\/strong> du LCD de Grove.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Date de remise: 24 octobre 2021, 23h55<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Contexte de r\u00e9alisation<\/h2>\n\n\n\n<p>\u00c0 partir <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>D&rsquo;un Arduino Uno,<\/li>\n\n\n\n<li>d&rsquo;un Hat Grove,<\/li>\n\n\n\n<li>d&rsquo;un bouton momentan\u00e9 sur D4,<\/li>\n\n\n\n<li>d&rsquo;un potentiom\u00e8tre sur A0,<\/li>\n\n\n\n<li>d&rsquo;un \u00e9cran rgb_lcd sur I2C,<\/li>\n\n\n\n<li>du langage C++,<\/li>\n\n\n\n<li>des librairies n\u00e9cessaires \u00e0 la r\u00e9alisation du projet,<\/li>\n\n\n\n<li>d&rsquo;une documentation ad\u00e9quate du code source,<\/li>\n<\/ul>\n\n\n\n<p><strong><span class=\"has-inline-color has-luminous-vivid-amber-color\">Programmer une application qui permet de varier les valeurs<\/span><span class=\"has-inline-color has-vivid-green-cyan-color\"> <\/span><span class=\"has-inline-color has-vivid-red-color\">R<\/span><span class=\"has-inline-color has-vivid-green-cyan-color\">G<\/span><span class=\"has-inline-color has-vivid-cyan-blue-color\">B<\/span><span class=\"has-inline-color has-vivid-green-cyan-color\"> <\/span><span class=\"has-inline-color has-luminous-vivid-amber-color\">du rgb_lcd.<\/span><\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">1.1 &#8211; Au d\u00e9marrage de l&rsquo;application, l&rsquo;\u00e9cran suivant est affich\u00e9 pendant <span class=\"has-inline-color has-vivid-red-color\">3 secondes<\/span>:<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"221\" src=\"http:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-1024x221.png\" alt=\"\" class=\"wp-image-1280\" style=\"width:451px;height:97px\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-1024x221.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-300x65.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-768x166.png 768w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-1536x332.png 1536w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.a-2048x442.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong><span class=\"has-inline-color has-vivid-red-color\">NOTE<\/span><\/strong>:  Il faut remplacer le texte &lsquo;Votre Matricule&rsquo; par votre <strong>num\u00e9ro de matricule<\/strong> et remplacer &lsquo;420-1C5&rsquo; par &lsquo;<strong>420-1C4<\/strong>&lsquo;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1.2 &#8211; Puis, le texte est pouss\u00e9 vers la gauche jusqu&rsquo;\u00e0 dispara\u00eetre de l&rsquo;\u00e9cran<\/h3>\n\n\n\n<p><strong>Indice<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>for (int positionCompteur = 0; positionCompteur &lt; n; positionCompteur++) {\n        lcd.scrollDisplayLeft();\n        delay(150);\n    }\nlcd.clear();<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2 &#8211; Apr\u00e8s, l&rsquo;\u00e9cran principal est affich\u00e9:<\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"682\" src=\"http:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-1024x682.png\" alt=\"\" class=\"wp-image-1291\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-1024x682.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-300x200.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-768x512.png 768w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-1536x1023.png 1536w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.b-2-2048x1364.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td>*<\/td><td>Description<\/td><td>Indice<\/td><\/tr><tr><td> *1&nbsp;&nbsp;&nbsp;<\/td><td>Afficher la valeur actuelle de:<br>1.1 Rouge<br>1.2 Vert<br>1.3 Bleu<br><br>en format hexad\u00e9cimal sur 2 car.<\/td><td>sprintf(\u00ab\u00a0%02X\u00a0\u00bb)<\/td><\/tr><tr><td>*2<\/td><td>Indique la couleur courante.<br><br>\u00c0 l&rsquo;utilisation du bouton, le texte doit passer de<br>Rouge \u00e0 Vert puis \u00e0 Bleu <br><br>ou bien,<br><br>de Bleu \u00e0 Rouge puis \u00e0 vert.  <br><br>Cela d\u00e9pendra de la m\u00e9thode utilis\u00e9e pour g\u00e9rer le bouton.<\/td><td>compteurBouton % 3<\/td><\/tr><tr><td>*3<\/td><td>La valeur courante du potentiom\u00e8tre en format d\u00e9cimal.<\/td><td><\/td><\/tr><tr><td>*4 <\/td><td>Le nombre de secondes et de minutes \u00e9coul\u00e9es<br>depuis le d\u00e9marrage du Arduino.<\/td><td>seconds = millis() \/ 1000<br>minutes = seconds \/ 60<br>hours = minutes \/ 60<br><br>Pour extraire les secondes et minutes:<br><br>% 60<br><br>sprintf() <br>pour la mise en forme mm:ss<br><\/td><\/tr><tr><td>*5<\/td><td><strong><span class=\"has-inline-color has-vivid-red-color\">CET ITEM EST EN OPTION<\/span><\/strong> <br><br>Il n&rsquo;est pas obligatoire de le faire pour obtenir 100%  <br><br>Si vous d\u00e9cidez de l&rsquo;inclure, vous serez alors corrig\u00e9 sur <strong><span class=\"has-inline-color has-vivid-red-color\">120%<\/span><\/strong>.<br><br>Le car. &lsquo;<strong>*<\/strong>&lsquo; \u00e0 la position (15,0) du LCD, indique que <br>l&rsquo;utilisation du pot n&rsquo;a pas d&rsquo;effet sur la couleur courante.<br><br>Lorsque abs(valeurPot &#8211; valeurCouleurS\u00e9lectionn\u00e9e) &lt; 5 <br>alors le &lsquo;*&rsquo; sera effac\u00e9 et la couleurS\u00e9lectionn\u00e9e <br>pourra \u00eatre modifi\u00e9e par la valeur du pot.<br><br>Ceci permet de ne pas appliquer la valeur actuelle du Pot<br>\u00e0 la nouvelle couleur lorsque le bouton est appuy\u00e9.<br><br>La modification sera permise seulement lorsque le Pot<br>aura une valeur proche (+-5) \u00e0 la valeur pr\u00e9c\u00e9dente de la couleur s\u00e9lectionn\u00e9e.<br><\/td><td><br><br>&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">2.1 &#8211; Exemple de fonctionnement<\/h2>\n\n\n\n<p>R=AE, G=35, B=2C. (Les valeurs sont affich\u00e9es en format HEX)<br>En fonction depuis 2 minutes et 18 secondes.<br>Option menu = Vert<br>Valeur du Pot = 53<br>Pot d\u00e9verrouill\u00e9.  Pas de car &lsquo;*&rsquo; \u00e0 la position (15,0)<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"321\" src=\"http:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-1024x321.png\" alt=\"\" class=\"wp-image-1325\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-1024x321.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-300x94.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-768x241.png 768w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-1536x481.png 1536w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2021\/10\/tp01.d-2048x642.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-green-cyan-color has-text-color\">3 &#8211; \u00c9l\u00e9ments prescrits<\/h2>\n\n\n\n<p>Il faut :<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3.1 &#8211; Documenter le code source:  bloc d&rsquo;ent\u00eate, fin de bloc, sections et lignes.  <\/h4>\n\n\n\n<p>Par exemple,<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/* \n   -----------------------------------------------------------------------\n   Projet:         TP01\n   Nom du fichier: \n   Auteur:         \n   Date:           \n   -----------------------------------------------------------------------\n   Description:    \n   -----------------------------------------------------------------------\n   M-A-J:          \n   -----------------------------------------------------------------------\n*\/\n\n\n\/\/ Inclusion des librairies requises\n...\n\n\/\/ D\u00e9finition des MACRO\n...\n\n\/\/ D\u00e9finition des constantes\n...\n\n\/\/ D\u00e9finition des variables globales\nunsigned long int ceciEstUneVariableLongueNonSignee;  \/\/ Une variable qui sert \u00e0 ...\nint i;                                                \/\/ Une variable avec un nom peu significatif \n\n\/\/ D\u00c9BUT du code --&gt;\n\n\/\/ fonction pour initialiser les param\u00e8tres du projet\nvoid setup() {\n\n  \/\/ Tester si la fin du monde est \u00e0 7h.\n  if (finDuMonde == 7) {\n    ...\n  }  \/\/ if a==b. (Commentaire de FIN de BLOC)\n\n\n} \/\/ Fin de la fonction setup()\n\n\n\/\/ Boucle principale de l'application\nvoid loop() {\n   ...\n} \/\/ loop()\n\n\n\/\/ ***** FIN DU CODE SOURCE\n<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">3.2 &#8211; Utiliser l&rsquo;instruction switch() pour tester les options du menu; 0, 1, 2.<\/h4>\n\n\n\n<h4 class=\"wp-block-heading\">3.3 &#8211; Utiliser des noms de variables significatifs.<\/h4>\n\n\n\n<h4 class=\"wp-block-heading\">3.4 &#8211; Utiliser l&rsquo;instruction &lsquo;Serial.print&rsquo;, conditionnel \u00e0 la pr\u00e9sence de la macro DEBUG.<\/h4>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading has-luminous-vivid-amber-color has-text-color\">4 &#8211; Grille de correction (pourrait changer)<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td class=\"has-text-align-left\" data-align=\"left\">Respect du devis (\u00c9l\u00e9ments \u00e0 l&rsquo;\u00e9cran)<\/td><td>10 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Documentation<\/td><td>20 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">\u00c9l\u00e9ments prescrits<\/td><td>10 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Fonctionnalit\u00e9 de l&rsquo;application<\/td><td>40 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Optimisation du code<\/td><td>10 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\">Affichage des minutes et secondes<\/td><td>10 %<\/td><\/tr><tr><td class=\"has-text-align-left\" data-align=\"left\"><span class=\"has-inline-color has-vivid-red-color\">Point *5 (Optionnel)<\/span><\/td><td><span class=\"has-inline-color has-vivid-red-color\">20 %<\/span><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-purple-color has-text-color\">5 &#8211; Remise<\/h2>\n\n\n\n<p><strong><span class=\"has-inline-color has-vivid-red-color\">Date<\/span><\/strong>: 20 octobre, 13h00. (<strong><span class=\"has-inline-color has-vivid-red-color\">\u00e0 confirmer<\/span><\/strong>)<\/p>\n\n\n\n<p><strong><span class=\"has-inline-color has-vivid-red-color\">M\u00e9thode de remise<\/span><\/strong>: LEA<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<h6 class=\"wp-block-heading has-text-align-right has-cyan-bluish-gray-color has-text-color\">Document r\u00e9dig\u00e9 par Alain Boudreault &#8211; version 2021.10.06.02<\/h6>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>R\u00e9sum\u00e9 \u00c9crire un programme qui permet d&rsquo;ajuster individuellement l&rsquo;intensit\u00e9 des couleurs rouge, vert et bleu du LCD de Grove. Date de remise: 24 octobre 2021, 23h55 Contexte de r\u00e9alisation \u00c0 partir Programmer une application qui permet de varier les valeurs RGB du rgb_lcd. 1.1 &#8211; Au d\u00e9marrage de l&rsquo;application, l&rsquo;\u00e9cran suivant est affich\u00e9 pendant 3 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":"","footnotes":""},"class_list":["post-1275","page","type-page","status-publish","hentry"],"featured_image_src":null,"_links":{"self":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/1275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/comments?post=1275"}],"version-history":[{"count":50,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/1275\/revisions"}],"predecessor-version":[{"id":2848,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/1275\/revisions\/2848"}],"wp:attachment":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/media?parent=1275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}