{"id":2777,"date":"2025-02-12T11:30:19","date_gmt":"2025-02-12T16:30:19","guid":{"rendered":"https:\/\/ve2cuy.com\/420-1c4\/?page_id=2777"},"modified":"2025-03-13T08:01:22","modified_gmt":"2025-03-13T13:01:22","slug":"2025-tp-01","status":"publish","type":"page","link":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/2025-tp-01\/","title":{"rendered":"LE SYST\u00c8ME DE SURVEILLANCE H25"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"355\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/file-20221209-20279-c0jq3z.jpeg.avif\" alt=\"\" class=\"wp-image-2841\" style=\"width:592px;height:auto\"\/><\/figure>\n<\/div>\n\n\n<h1 class=\"wp-block-heading has-text-align-center has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-fcfee6345edd019f1a98bbfb5ae259c6\">\u00c9nonc\u00e9 du TP01.2025 &#8211; Version 1<\/h1>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-a8cc5d4345364b83e4c3e0d3a63bb5a6\">Le travail pratique num\u00e9ro 1 sera r\u00e9alis\u00e9 en deux \u00e9tapes:<\/h2>\n\n\n\n<h2 class=\"wp-block-heading has-cyan-bluish-gray-color has-text-color has-link-color wp-elements-b646eac4885372ae824b33c972b04ef7\">Partie 01, 15%, \u00e0 remettre \u00e0 la semaine 6 &#8211; 28 f\u00e9vrier<br><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Partie 02, 15%, \u00e0 remettre \u00e0 la semaine 8 &#8211; 17 mars<\/mark><\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-5e11d13b3b31875b49c93fde7a04f8d5\">1. Partie 01 &#8211; Remise semaine 06 &#8211; 28 f\u00e9vrier, 16h00.<\/h2>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color wp-elements-667395b51a0acf40e217d7f68d75bc31\"><strong>En utilisant un Arduino UNO, avec les modules groves suivants:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LED1<\/strong> sur D2<\/li>\n\n\n\n<li><strong>LED2<\/strong> sur D3<\/li>\n\n\n\n<li><strong>Relai<\/strong> sur D4<\/li>\n\n\n\n<li><strong>Capteur<\/strong> de temp\u00e9rature (<strong>SHT31<\/strong>) sur I2C -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/grove-module-humidite-et-temperature\/\" data-type=\"page\" data-id=\"1349\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>RGB_LCD<\/strong> sur I2C -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/grove-module-lcd-rgb-i2c\/\" data-type=\"page\" data-id=\"1167\">notes de cours<\/a><\/li>\n\n\n\n<li>Le moniteur s\u00e9rie \u00e0 <strong>4800<\/strong> bauds<\/li>\n<\/ul>\n\n\n\n<p class=\"has-text-align-left has-vivid-purple-color has-text-color has-link-color wp-elements-bb29627e2372365967e882234807434d\"><strong>\u00c9crire une application pour <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Arduino UNO<\/mark>, en utilisant <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">VS Code<\/mark> et <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">PlatformIO<\/mark>, qui affiche l&rsquo;\u00e9cran suivant dans la <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">console s\u00e9rie<\/mark> (serial monitor):<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"573\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-22.02.09-1024x573.png\" alt=\"\" class=\"wp-image-2901\" style=\"width:684px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-22.02.09-1024x573.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-22.02.09-300x168.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-22.02.09-768x430.png 768w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-22.02.09.png 1366w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-vivid-purple-color has-text-color has-link-color wp-elements-695756b3c19426c543916b951cea6bf5\"><strong>Et l&rsquo;\u00e9cran suivant sur le LCD:<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"467\" height=\"180\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png\" alt=\"\" class=\"wp-image-2780\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png 467w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06-300x116.png 300w\" sizes=\"auto, (max-width: 467px) 100vw, 467px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"has-text-align-left\"><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>: Les options 1 \u00e0 3, affich\u00e9es sur la console, sont des actions qui peuvent \u00eatre lanc\u00e9es \u00e0 partir du clavier pour contr\u00f4ler certains modules du syst\u00e8me.<\/p>\n\n\n\n<p>Par exemple, pour allumer ou \u00e9teindre la LED sur D2 il suffira d&rsquo;appuyer sur la touche 1 du clavier. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"573\" height=\"25\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23.png\" alt=\"\" class=\"wp-image-2794\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23.png 573w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23-300x13.png 300w\" sizes=\"auto, (max-width: 573px) 100vw, 573px\" \/><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Astuce: Saisie d'une touche du clavier \u00e0 partir de la console s\u00e9rie\n\nif (Serial.available()) {      \/\/ Si un octet disponible sur le port Serial\n    commande = Serial.read();  \/\/ Lecture d'un octet (touche clavier)\n    \n    \/\/ Traitement de la commande ...\n    if (commande == '1') alors allumer\/\u00e9teindre DEL1;\n}<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9monstration de l&rsquo;application<\/h2>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"770\" style=\"aspect-ratio: 1374 \/ 770;\" width=\"1374\" autoplay loop src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/420-1c4.tp01-partie01.mov\" playsinline><\/video><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails et actions des options du menu (Items 1 \u00e0 3)<\/h2>\n\n\n\n<p>L&rsquo;application doit permettre la saisie de caract\u00e8res \u00e0 partir du terminal s\u00e9rie.  Cette saisie, permet l&rsquo;ex\u00e9cution de certaines fonctions de l&rsquo;application.  Les options sont identifi\u00e9es par des num\u00e9ros au d\u00e9but des lignes de l&rsquo;interface.  Par exemple,  le &lsquo;3 -&lsquo;  dans &lsquo;3 &#8211; RELAI&rsquo; indique qu&rsquo;il est possible de contr\u00f4ler le relai en appuyant sur la touche &lsquo;3&rsquo; du clavier.<\/p>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>:  Assurez-vous que le focus est dans la fen\u00eatre du terminal s\u00e9rie avant d&rsquo;appuyer sur une touche. <\/p>\n\n\n\n<p>Donc, \u00e9tant donn\u00e9 le menu suivant,<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1352\" height=\"166\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.03.05.png\" alt=\"\" class=\"wp-image-2856\" style=\"width:581px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.03.05.png 1352w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.03.05-300x37.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.03.05-1024x126.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.03.05-768x94.png 768w\" sizes=\"auto, (max-width: 1352px) 100vw, 1352px\" \/><\/figure>\n<\/div>\n\n\n<ol class=\"wp-block-list\">\n<li>LED1 sur D2 \n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre la DEL connect\u00e9e sur D2<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong>\n<ul class=\"wp-block-list\">\n<li><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">Sous forme de \u00ab\u00a0toggle\u00a0\u00bb, permutation de l&rsquo;\u00e9tat.<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>LED2 sur D3\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre la DEL connect\u00e9e sur D3<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>RELAI D4\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre le RELAI connect\u00e9 sur D4<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>: <strong>ON<\/strong> doit-\u00eatre affich\u00e9 en <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#25956c\" class=\"has-inline-color\">vert<\/mark><\/strong> et OFF en <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\"><strong>rouge<\/strong><\/mark>. <\/p>\n\n\n\n<p>\ud83d\udc49 <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">\u00c9L\u00c9MENTS PRESCRITS OBLIGATOIRES:<\/mark><\/strong><\/p>\n\n\n\n<p class=\"has-text-align-left\">Il faut programmer les fonctions suivantes pour l&rsquo;affichage des \u00e9tats ON\/OFF et de temp\u00e9rature\/Humidit\u00e9.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">void afficherOnOff(int posX, int posY, bool on = true);\nvoid afficherTemperatureEtHumidite(int posX, int posY);<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails des modules (appareils) de contr\u00f4le<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Capteur de temp\u00e9rature, connect\u00e9 sur le port I2C\n<ul class=\"wp-block-list\">\n<li>Lecture de la temp\u00e9rature et de l&rsquo;humidit\u00e9 pour affichage dans la deuxi\u00e8me partie de l&rsquo;\u00e9cran du moniteur s\u00e9rie.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>LCD, connect\u00e9 sur le port I2C\n<ul class=\"wp-block-list\">\n<li>Sert \u00e0 afficher le message &lsquo;Alarme: ON&rsquo; sur la premi\u00e8re ligne<\/li>\n\n\n\n<li>Le temps \u00e9coul\u00e9 depuis le d\u00e9marrage de l&rsquo;arduino en JOURS:HR:MM:SEC<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"467\" height=\"180\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png\" alt=\"\" class=\"wp-image-2780\" style=\"width:291px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png 467w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06-300x116.png 300w\" sizes=\"auto, (max-width: 467px) 100vw, 467px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails des \u00e9l\u00e9ments de la deuxi\u00e8me partie de l&rsquo;\u00e9cran<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1356\" height=\"380\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.05.41.png\" alt=\"\" class=\"wp-image-2857\" style=\"width:581px\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.05.41.png 1356w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.05.41-300x84.png 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.05.41-1024x287.png 1024w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-13-a-15.05.41-768x215.png 768w\" sizes=\"auto, (max-width: 1356px) 100vw, 1356px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Temp\u00e9rature<\/strong>: Il faut afficher la temp\u00e9rature retourn\u00e9e par le capteur, suivi de &lsquo; C&rsquo;<\/li>\n\n\n\n<li><strong>Humidit\u00e9<\/strong> : Il faut afficher l&rsquo;humidit\u00e9 retourn\u00e9e par le capteur, suivi de &lsquo; %&rsquo;<\/li>\n\n\n\n<li><strong>Temps \u00e9coul\u00e9<\/strong>: Il faut afficher le temps \u00e9coul\u00e9 en utilisant le format:  0 jours(s) 00:00:00\n<ul class=\"wp-block-list\">\n<li>\ud83d\udc49 <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">\u00c9L\u00c9MENT PRESCRIT OBLIGATOIRE<\/mark><\/strong>: Utiliser la fonction <strong><em>snprintf()<\/em><\/strong>.<\/li>\n\n\n\n<li><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>: Il y a un point boni pour la gestion du <strong>(s)<\/strong> \u00e0 jour. Voir la grille de correction.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Option<\/strong>:  Il faut afficher la touche saisie du clavier.<\/li>\n\n\n\n<li><strong>Projet r\u00e9alis\u00e9 par<\/strong>: Il faut inscrire votre Nom <\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-7a8e82c0bfe1e3e012c2155650e56692\">Remise<\/h2>\n\n\n\n<p>Remettre, via LEA, les fichiers suivants de votre projet:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Les codes source (fichiers .cpp)<\/li>\n\n\n\n<li>Les fichiers d&rsquo;ent\u00eate (fichiers .h &#8211; les votre)<\/li>\n\n\n\n<li>Le fichier platformio.ini<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-fb2fbc4ea60f576fa7fccd43b74853ac\">Grille de correction de la partie 01<\/h2>\n\n\n\n<h3 class=\"wp-block-heading has-luminous-vivid-orange-color has-text-color has-link-color wp-elements-9b53f7c496f67976a4d3697d5c6605da\">Crit\u00e8res de performance<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Les directives du devis doivent-\u00eatre respect\u00e9es. <\/li>\n\n\n\n<li>Le code source doit-\u00eatre bien document\u00e9. <\/li>\n\n\n\n<li>Le code source doit-\u00eatre optimis\u00e9. \n<ul class=\"wp-block-list\">\n<li>Par de r\u00e9p\u00e9titions inutiles: utilisez des fonctions. <\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Le projet doit-\u00eatre fonctionnel.<\/li>\n\n\n\n<li>Le projet doit-\u00eatre livr\u00e9 \u00e0 temps.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table><thead><tr><th>Item<\/th><th>Description <\/th><th>Pond\u00e9ration<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>Bloc commentaires d&rsquo;ent\u00eate, documentation du code, noms significatifs pour const, MACROs, variables, fonctions, &#8230;<\/td><td>1,75<\/td><\/tr><tr><td>2<\/td><td>Constantes, MACROs et inclusions dans le fichier projet.h.<\/td><td>1<\/td><\/tr><tr><td>3<\/td><td>Normalisation (pas de r\u00e9p\u00e9tition), utilisation de const et\/ou MACRO et optimisation du code.<\/td><td>1,5<\/td><\/tr><tr><td>4<\/td><td>Instructions de garde dans les fichiers d&rsquo;ent\u00eate<\/td><td>0,5<\/td><\/tr><tr><td>5<\/td><td>Programmation des fonctions afficherOnOff() et<br>afficherTemperatureEtHumidite().<\/td><td>1,5<\/td><\/tr><tr><td>6<\/td><td>Saisie des options du menu \u00e0 partir du clavier et affichage de la s\u00e9lection.<\/td><td>1<\/td><\/tr><tr><td>7<\/td><td>Utilisation correcte de la fonction snprintf().<\/td><td>1<\/td><\/tr><tr><td>8<\/td><td>Affichage des \u00e9l\u00e9ments; ON\/OFF, temps, C et %, couleurs, gestion du curseur.<\/td><td>2<\/td><\/tr><tr><td>9<\/td><td>Contr\u00f4le des modules LEDs, Relai et affichage sur le LCD: temps \u00e9coul\u00e9.<\/td><td>2<\/td><\/tr><tr><td>10<\/td><td>Vitesse du port s\u00e9rie (UART) \u00e0 4800.<\/td><td>0,25<\/td><\/tr><tr><td>11<\/td><td>Remise des fichiers du projet:<br>main.cpp, projet.h, platformIO.ini.<\/td><td>0,5<\/td><\/tr><tr><td>12<\/td><td>Fonctionnalit\u00e9 du projet et respect du devis.<\/td><td>2<\/td><\/tr><tr><td><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">POINT BONI<\/mark><\/strong><\/td><td>Utilisation de l&rsquo;op\u00e9rateur ternaire dans la fonction snprintf() pour afficher &lsquo;s&rsquo; \u00e0 jour seulement si nbJour &gt; 1. Par exemple, 1 jour 12:23:01, 2 jours 23:59:59<\/td><td>1<\/td><\/tr><\/tbody><tfoot><tr><td><\/td><td>Total<\/td><td>16 \/15<\/td><\/tr><\/tfoot><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-d1b2335bc7f146fca51e5601a97421b2\">Partie 02 &#8211; Remise S08 &#8211; 17 mars, 16h00<\/h1>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"650\" height=\"650\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/att-camera.webp\" alt=\"\" class=\"wp-image-2876\" style=\"width:418px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/att-camera.webp 650w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/att-camera-300x300.webp 300w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/att-camera-150x150.webp 150w\" sizes=\"auto, (max-width: 650px) 100vw, 650px\" \/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-vivid-red-color has-text-color has-link-color wp-elements-c0b7c9366b17f1835a0f6219271445e9\"><\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"has-vivid-purple-color has-text-color has-link-color wp-elements-51769ef1acfee633e76c43f22fca016d\"><strong>En utilisant un Arduino UNO, avec les modules groves suivants:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LED1<\/strong> sur D2<\/li>\n\n\n\n<li><strong>LED2<\/strong> sur D3<\/li>\n\n\n\n<li><strong>Relai<\/strong> sur D4<\/li>\n\n\n\n<li><strong>D\u00e9tecteur de mouvement <\/strong>sur D5 -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/detecteur-de-mouvements\/\" data-type=\"page\" data-id=\"1476\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>Pi\u00e9zo<\/strong> (buzzer) sur D6 -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/buzzer-et-rgb-led-stick\/\" data-type=\"page\" data-id=\"1393\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>Bouton<\/strong> sur D7 pour controller le d\u00e9tecteur de mouvement<\/li>\n\n\n\n<li><strong>Potentiom\u00e8tre<\/strong> sur <strong>A0<\/strong> -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/arduino-analogread\/\" data-type=\"page\" data-id=\"1141\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>Capteur<\/strong> de temp\u00e9rature (<strong>SHT31<\/strong>) sur I2C -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/grove-module-humidite-et-temperature\/\" data-type=\"page\" data-id=\"1349\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>RGB_LCD<\/strong> sur I2C -&gt; <a href=\"https:\/\/ve2cuy.com\/420-1c4\/index.php\/grove-module-lcd-rgb-i2c\/\" data-type=\"page\" data-id=\"1167\">notes de cours<\/a><\/li>\n\n\n\n<li><strong>Un module RTC<\/strong> pour la section &lsquo;<strong>Nous sommes ..<\/strong>.&rsquo;<\/li>\n<\/ul>\n\n\n\n<p class=\"has-vivid-purple-color has-text-color has-link-color wp-elements-eee4f5087354ef54fcbfc891fddbcee1\"><strong>\u00c9crire une application pour <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Arduino UNO<\/mark>, en utilisant <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">VS Code<\/mark> et <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">PlatformIO<\/mark>, qui affiche l&rsquo;\u00e9cran suivant dans la <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">console s\u00e9rie<\/mark> (serial monitor):<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"681\" height=\"430\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.02.08.png\" alt=\"\" class=\"wp-image-2906\" style=\"width:684px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.02.08.png 681w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.02.08-300x189.png 300w\" sizes=\"auto, (max-width: 681px) 100vw, 681px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"has-vivid-purple-color has-text-color has-link-color wp-elements-695756b3c19426c543916b951cea6bf5\"><strong>Et l&rsquo;\u00e9cran suivant sur le LCD:<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"467\" height=\"180\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png\" alt=\"\" class=\"wp-image-2780\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06.png 467w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-10.59.06-300x116.png 300w\" sizes=\"auto, (max-width: 467px) 100vw, 467px\" \/><\/figure>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>: Les options 1 \u00e0 6, affich\u00e9s sur la console, sont des actions qui peuvent \u00eatre lanc\u00e9es \u00e0 partir du clavier pour contr\u00f4ler certains modules du syst\u00e8me.<\/p>\n\n\n\n<p>Par exemple, pour allumer ou \u00e9teindre la LED sur D2 il suffira d&rsquo;appuyer sur la touche 1 du clavier. <\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"573\" height=\"25\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23.png\" alt=\"\" class=\"wp-image-2794\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23.png 573w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.19.23-300x13.png 300w\" sizes=\"auto, (max-width: 573px) 100vw, 573px\" \/><\/figure>\n<\/div>\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/ Astuce: Saisie d'une touche du clavier \u00e0 partir de la console s\u00e9rie\n\nif (Serial.available()) {      \/\/ Si un octet disponible sur le port Serial\n    commande = Serial.read();  \/\/ Lecture d'un octet (touche clavier)\n    \n    \/\/ Traitement de la commande ...\n    if (commande == '1') alors allumer\/\u00e9teindre DEL1;\n}<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9monstration <\/h2>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"430\" style=\"aspect-ratio: 682 \/ 430;\" width=\"682\" autoplay loop src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/420-1c4-tp01-partie02.mov\" playsinline><\/video><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails et actions des options du menu (Items 1 \u00e0 6)<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"732\" height=\"164\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.32.47.png\" alt=\"\" class=\"wp-image-2800\" style=\"width:581px;height:auto\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.32.47.png 732w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-12.32.47-300x67.png 300w\" sizes=\"auto, (max-width: 732px) 100vw, 732px\" \/><\/figure>\n<\/div>\n\n\n<ol class=\"wp-block-list\">\n<li>LED1 sur D2 \n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre la DEL connect\u00e9e sur D2<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>LED2 sur D3\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre la DEL connect\u00e9e sur D3<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>RELAI D4\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;allumer\/\u00c9teindre le RELAI connect\u00e9 sur D4<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Celcius\/Fahrenheit sur I2C\n<ul class=\"wp-block-list\">\n<li>Permet de pr\u00e9ciser l&rsquo;unit\u00e9 d&rsquo;affichage de la temp\u00e9rature entre F et C<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;unit\u00e9 d&rsquo;affichage de la temp\u00e9rature: <strong>C<\/strong> ou <strong>F<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>D\u00e9tecteur de mouvement sur D5\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;activer ou d\u00e9sactiver le traitement du d\u00e9tecteur de mouvement.<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher <strong>activ\u00e9<\/strong> ou <strong>d\u00e9sactiver<\/strong>.<\/li>\n\n\n\n<li>Sur la premi\u00e8re ligne du <strong>LCD<\/strong>, il faut afficher: <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Alarme: ON\/OFF<\/mark><\/strong> <\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>LCD R\u00e9tro-\u00e9clairage\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;activer ou d\u00e9sactiver le r\u00e9tro-\u00e9clairage du LCD<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher l&rsquo;\u00e9tat: <strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#22911f\" class=\"has-inline-color\">ON<\/mark><\/strong> ou <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">OFF<\/mark><\/strong><\/li>\n\n\n\n<li><strong>Astuce<\/strong>: l<em>cd.setRGB(255,255,255); lcd.setRGB(0,0,0);<\/em><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails des modules (appareils) de contr\u00f4le<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Bouton<\/strong> sur D7\n<ul class=\"wp-block-list\">\n<li>Permet d&rsquo;activer ou d\u00e9sactiver le traitement du d\u00e9tecteur de mouvement.<\/li>\n\n\n\n<li>Au bout de la ligne, il faut afficher: <strong>activ\u00e9<\/strong> ou <strong>d\u00e9sactiver<\/strong>.<\/li>\n\n\n\n<li><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">NOTE<\/mark><\/strong>: Ce bouton \u00e0 la m\u00eame fonction que l&rsquo;<strong>item 5<\/strong> du menu.  Il permet \u00e0 l&rsquo;utilisateur d&rsquo;activer ou de d\u00e9sactiver le d\u00e9tecteur de mouvement sans passer par la console. <\/li>\n\n\n\n<li>Sur la premi\u00e8re ligne du <strong>LCD<\/strong>, il faut afficher: <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\">Alarme: ON\/OFF<\/mark><\/strong> <\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"464\" height=\"171\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.00.42.png\" alt=\"\" class=\"wp-image-2781\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.00.42.png 464w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.00.42-300x111.png 300w\" sizes=\"auto, (max-width: 464px) 100vw, 464px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>D\u00e9tecteur de mouvement sur <strong>D5<\/strong>\n<ul class=\"wp-block-list\">\n<li>Si le traitement du d\u00e9tecteur de mouvement est activ\u00e9 et qu&rsquo;un mouvement est d\u00e9tect\u00e9, il faut changer la couleur de fond du LCD pour <strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">rouge<\/mark><\/strong> et afficher l&rsquo;\u00e9cran qui suit cette liste.\n<ul class=\"wp-block-list\">\n<li>Le syst\u00e8me d&rsquo;alarme doit sonner le <strong>Piezo<\/strong> (buzzer) sur <strong>D6<\/strong>.<\/li>\n\n\n\n<li>Le programme doit attendre que le d\u00e9tecteur de mouvement soit retourn\u00e9 \u00e0 l&rsquo;\u00e9tat <strong>OFF<\/strong> puis:\n<ul class=\"wp-block-list\">\n<li>Arr\u00eater le Piezo<\/li>\n\n\n\n<li>R\u00e9tablir l&rsquo;\u00e9cran du LCD<\/li>\n\n\n\n<li>Reprendre le programme<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"462\" height=\"173\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.06.07.png\" alt=\"\" class=\"wp-image-2782\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.06.07.png 462w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-12-a-11.06.07-300x112.png 300w\" sizes=\"auto, (max-width: 462px) 100vw, 462px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>Capteur de temp\u00e9rature\n<ul class=\"wp-block-list\">\n<li>Lecture de la temp\u00e9rature et de l&rsquo;humidit\u00e9 pour affichage dans la deuxi\u00e8me partie de l&rsquo;\u00e9cran du moniteur s\u00e9rie.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Potentiom\u00e8tre sur A0\n<ul class=\"wp-block-list\">\n<li>Sert \u00e0 renseigner le d\u00e9lai de la boucle principale : 0 \u00e0 1023 ms.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Piezo (buzzer)\n<ul class=\"wp-block-list\">\n<li>Sert \u00e0 stresser votre entourage \ud83d\ude09 lorsqu&rsquo;un mouvement est d\u00e9tect\u00e9.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9tails des \u00e9l\u00e9ments de la deuxi\u00e8me partie de l&rsquo;\u00e9cran<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"239\" src=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.05.41.png\" alt=\"\" class=\"wp-image-2908\" style=\"width:581px\" srcset=\"https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.05.41.png 680w, https:\/\/ve2cuy.com\/420-1c4\/wp-content\/uploads\/2025\/02\/Capture-decran-le-2025-02-14-a-15.05.41-300x105.png 300w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>D\u00e9tecteur de mouvement : Alarme sur D6 <\/li>\n\n\n\n<li>Temp\u00e9rature : <\/li>\n\n\n\n<li>Humidit\u00e9 : <\/li>\n\n\n\n<li>Potentiom\u00e8tre : D\u00e9lai d&rsquo;affichage <\/li>\n\n\n\n<li>Temps \u00e9coul\u00e9: 0 jours(s) 00:00:00  &#8212;&#8212; Option: 9<\/li>\n\n\n\n<li>Affichage du jour, mois, ann\u00e9e et de l&rsquo;heure courante.<\/li>\n\n\n\n<li>Projet r\u00e9alis\u00e9 par Votre Nom ici TP01 &#8212;&#8211; Partie 02<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Remise<\/h2>\n\n\n\n<p>Remettre, via L\u00c9A, le dossier complet de votre projet:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-8ea1d75225bd94b71f912a540435cbb0\">Grille de correction de la partie 02<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Item<\/th><th>Description<\/th><th>Pond\u00e9ration<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>Respect du devis<\/td><td>3<\/td><\/tr><tr><td>2<\/td><td>Fonctionnalit\u00e9<\/td><td>8<\/td><\/tr><tr><td>3<\/td><td>Normalisation<\/td><td>4<\/td><\/tr><\/tbody><tfoot><tr><td><\/td><td>Total<\/td><td>15\/15<\/td><\/tr><\/tfoot><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u00c9nonc\u00e9 du TP01.2025 &#8211; Version 1 Le travail pratique num\u00e9ro 1 sera r\u00e9alis\u00e9 en deux \u00e9tapes: Partie 01, 15%, \u00e0 remettre \u00e0 la semaine 6 &#8211; 28 f\u00e9vrierPartie 02, 15%, \u00e0 remettre \u00e0 la semaine 8 &#8211; 17 mars 1. Partie 01 &#8211; Remise semaine 06 &#8211; 28 f\u00e9vrier, 16h00. En utilisant un Arduino UNO, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":"","footnotes":""},"class_list":["post-2777","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\/2777","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\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/comments?post=2777"}],"version-history":[{"count":87,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/2777\/revisions"}],"predecessor-version":[{"id":3227,"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/pages\/2777\/revisions\/3227"}],"wp:attachment":[{"href":"https:\/\/ve2cuy.com\/420-1c4\/index.php\/wp-json\/wp\/v2\/media?parent=2777"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}