{"id":268,"date":"2013-12-28T20:43:56","date_gmt":"2013-12-28T19:43:56","guid":{"rendered":"http:\/\/wordpress.callac.online\/index.php\/presentation-de-la-bibliotheque-serialdlf\/"},"modified":"2022-01-05T22:41:57","modified_gmt":"2022-01-05T21:41:57","slug":"presentation-de-la-bibliotheque-serialdlf","status":"publish","type":"page","link":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/","title":{"rendered":"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF"},"content":{"rendered":"<h2>L&rsquo;objectif<\/h2>\n<p>A chaque fois que je devais lire des donn\u00e9es sur la liaison s\u00e9rie, cela \u00e9tait source d&rsquo;erreurs, de confusions. Bref, \u00e0 chaque fois, du temps perdu et des difficult\u00e9s pour bien traiter le message re\u00e7u.<\/p>\n<p>Comme je n&rsquo;ai pas trouv\u00e9 la biblioth\u00e8que que je voulais, je l&rsquo;ai donc cr\u00e9\u00e9.<\/p>\n<p>L&rsquo;objectif est de r\u00e9cup\u00e9rer et de traiter des messages comme les exemples suivantes :<br \/>\n&#8211; \u00ab\u00a0Help\u00a0\u00bb<br \/>\n&#8211; \u00ab\u00a0d\u00a0\u00bb<br \/>\n&#8211; \u00ab\u00a0Red 255\u00a0\u00bb<\/p>\n<p>La partie avant un \u00e9ventuel espace sera le mot cl\u00e9. La deuxi\u00e8me partie, si elle existe, sera converti en un entier.<\/p>\n<h2>La classe StringSerial<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\">\/\/-------------------------------------------------\n\/\/ Classe SerialString\n\/\/-------------------------------------------------        \nclass SerialString\n{\n    public:\n        SerialString();\n        void renew();\n        String get();\n        boolean empty();\n        boolean equals(String str);\n        boolean withParameter();\n        int parameter();\n        boolean isSensoduino();\n    private:\n        String _message; \/\/the whole message\n        String _keyword; \/\/ the first part (before ' ')\n};\n\n<\/pre>\n<p>La cha\u00eene _message contient tout le message entr\u00e9 en minuscules.<\/p>\n<p>La cha\u00eene _keyword contient le mot cl\u00e9, la premi\u00e8re partie du message, celle avant un \u00e9ventuel espace (en minuscules).<\/p>\n<h2>En d\u00e9but de programme<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\">\/\/------------------------------------------------------------\n\/\/ Librairies\n\/\/------------------------------------------------------------\n\n\/\/ pour le traitement du message recu sur la liaison serie\n#include &lt;SerialDLF.h&gt;\n\n\/\/------------------------------------------------------------\n\/\/ Constantes\n\/\/------------------------------------------------------------\n\n\/\/ Classe de SerialDLF\nSerialString messageRecu;\n<\/pre>\n<h2>La boucle principale<\/h2>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"cpp\">\/\/------------------------------------------------------------\n\/\/ Loop\n\/\/------------------------------------------------------------\n\nvoid loop()\n{ \n  messageRecu.renew();  \/\/ on lit un eventuel message.\n  if (messageRecu.empty()==false) \/\/ Si le message est non vide ...\n  {\n    Serial.println(messageRecu.get());\n    traitement();\n    Serial.flush();\n  }\n} \/\/fin loop<\/pre>\n<p><em><em><br \/>\n<\/em><br \/>\n<\/em><\/p>\n<h2>Les m\u00e9thodes<\/h2>\n<p>&#8211; <strong>renew()<\/strong> : met \u00e0 jour l&rsquo;instance en lisant les donn\u00e9es sur la liaison s\u00e9rie.<br \/>\n&#8211; <strong>get()<\/strong> : renvoiele mot cl\u00e9.<br \/>\n&#8211; <strong>empty()<\/strong> : teste si le message est vide.<br \/>\n&#8211; <strong>equals(String str)<\/strong> : teste si le mot cl\u00e9 est \u00e9gale \u00e0 la cha\u00eene str, sans tenir comte de la classe.<br \/>\n&#8211; <strong>withParameter()<\/strong> : teste si le message initial contient un param\u00e8tre.<br \/>\n&#8211; <strong>parameter()<\/strong> : renvoie le param\u00e8tre entier.<\/p>\n<h2>Des exemples complets d&rsquo;utilisation<\/h2>\n<p>&#8211; <a href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/mesure-de-temperature-avec-le-capteur-lm35\/\">Mesure de temp\u00e9rature avec le capteur LM35<\/a><br \/>\n&#8211; <a href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/mesure-de-temperature-pression-et-altitude-avec-le-capteur-bmp085\/\">Mesure de temp\u00e9rature, pression et altitude avec le capteur BMP085<\/a><br \/>\n&#8211; <a href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/controle-dune-led-rgb-avec-arduino\/\">Contr\u00f4le d\u2019une led RGB<\/a><\/p>\n<h2>T\u00e9l\u00e9chargement<\/h2>\n<p><a href=\"https:\/\/filedn.com\/lpKG7uY9hIHVel5exA5Ik80\/Wordpress\/Num%C3%A9rique\/Arduino\/SerialDLF.zip\">https:\/\/filedn.com\/lpKG7uY9hIHVel5exA5Ik80\/Wordpress\/Num%C3%A9rique\/Arduino\/SerialDLF.zip<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L&rsquo;objectif A chaque fois que je devais lire des donn\u00e9es sur la liaison s\u00e9rie, cela \u00e9tait source d&rsquo;erreurs, de confusions. Bref, \u00e0 chaque fois, du temps perdu et des difficult\u00e9s&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":2544,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-268","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"og:description\" content=\"L&rsquo;objectif A chaque fois que je devais lire des donn\u00e9es sur la liaison s\u00e9rie, cela \u00e9tait source d&rsquo;erreurs, de confusions. Bref, \u00e0 chaque fois, du temps perdu et des difficult\u00e9s&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/\" \/>\n<meta property=\"og:site_name\" content=\"Maths &amp; Num\u00e9rique\" \/>\n<meta property=\"article:modified_time\" content=\"2022-01-05T21:41:57+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/\",\"url\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/\",\"name\":\"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique\",\"isPartOf\":{\"@id\":\"https:\/\/wordpress.callac.online\/#website\"},\"datePublished\":\"2013-12-28T19:43:56+00:00\",\"dateModified\":\"2022-01-05T21:41:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/wordpress.callac.online\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Num\u00e9rique\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Arduino\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"La biblioth\u00e8que SerialDLF\",\"item\":\"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wordpress.callac.online\/#website\",\"url\":\"https:\/\/wordpress.callac.online\/\",\"name\":\"Maths & Num\u00e9rique\",\"description\":\"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique\",\"publisher\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wordpress.callac.online\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940\",\"name\":\"dlefur\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g\",\"caption\":\"dlefur\"},\"logo\":{\"@id\":\"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/\"},\"description\":\"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo\",\"sameAs\":[\"http:\/\/wordpress.callac.online\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/","og_locale":"fr_FR","og_type":"article","og_title":"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique","og_description":"L&rsquo;objectif A chaque fois que je devais lire des donn\u00e9es sur la liaison s\u00e9rie, cela \u00e9tait source d&rsquo;erreurs, de confusions. Bref, \u00e0 chaque fois, du temps perdu et des difficult\u00e9s&hellip;","og_url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/","og_site_name":"Maths &amp; Num\u00e9rique","article_modified_time":"2022-01-05T21:41:57+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/","url":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/","name":"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF - Maths &amp; Num\u00e9rique","isPartOf":{"@id":"https:\/\/wordpress.callac.online\/#website"},"datePublished":"2013-12-28T19:43:56+00:00","dateModified":"2022-01-05T21:41:57+00:00","breadcrumb":{"@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/presentation-de-la-bibliotheque-serialdlf\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/wordpress.callac.online\/"},{"@type":"ListItem","position":2,"name":"Num\u00e9rique","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/"},{"@type":"ListItem","position":3,"name":"Arduino","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/"},{"@type":"ListItem","position":4,"name":"La biblioth\u00e8que SerialDLF","item":"https:\/\/wordpress.callac.online\/index.php\/numerique\/arduino\/la-bibliotheque-serialdlf\/"},{"@type":"ListItem","position":5,"name":"Pr\u00e9sentation de la biblioth\u00e8que SerialDLF"}]},{"@type":"WebSite","@id":"https:\/\/wordpress.callac.online\/#website","url":"https:\/\/wordpress.callac.online\/","name":"Maths & Num\u00e9rique","description":"Des outils pour les enseignants de math\u00e9matiques et de num\u00e9rique","publisher":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wordpress.callac.online\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/04061f1ca2c2c42039142a704be95940","name":"dlefur","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4a9e17be136808c6597f28aa2b6c13126dab066fdc2198ff60090972c9b7fafc?s=96&d=mm&r=g","caption":"dlefur"},"logo":{"@id":"https:\/\/wordpress.callac.online\/#\/schema\/person\/image\/"},"description":"Enseignant de math\u00e9matiques Lyc\u00e9e Pasteur S\u00e3o Paulo","sameAs":["http:\/\/wordpress.callac.online"]}]}},"_links":{"self":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/comments?post=268"}],"version-history":[{"count":4,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/268\/revisions"}],"predecessor-version":[{"id":2844,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/268\/revisions\/2844"}],"up":[{"embeddable":true,"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/pages\/2544"}],"wp:attachment":[{"href":"https:\/\/wordpress.callac.online\/index.php\/wp-json\/wp\/v2\/media?parent=268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}