363 Vrais Commentaires sur : Babis | Booking.com\nAvis sur l'établissement Babis\nCommentaires sur l'établissement Babis 2 étoiles\nSkiathos, Ville de Skiathos, 37002, Grèce\n#3 sur 20 hôtels à : Ville de Skiathos\nLangues : Toutes les langues allemand anglais chinois (simplifié) danois espagnol finnois français grec hongrois hébreu italien japonais norvégien néerlandais russe serbe suédois turc\n눇Accueil très chaleureux, grande disponibilité, nous ont ramené à l'aéroport tôt le matin afin de récupérer nos bagages qui n'avaient pas été délivrés la veille. Service de navette aéroport et port excellent. Studio avec belle vue et correspondant à la description. Très bon rapport qualité/prix.\n« parfait pour 2 jours . »\n눇pension à proximité de l arrèt de bus, sur le port.bon accueil à la descente du bateau, babis a eu la gentillesse de me conduire à l'aéroport de bonne heure. bouilloire et frigo, pafait pour faire son petit déjeuner.\n« bonne escale de deux jours avant de rejoindre la France »\n눇le service de conduite à l'aéroport, la proximité du port mais à l'écart donc calme. Bonne plage accessible à pied. prix vraiment compétitif\n« Pension charmante et accueillante que je conseille vraiment! »\n눇Vue magnifique sur le port et la baie. Accueil chaleureux et accompagnement à l'aéroport pour le retour (pourtant très matinal). Chambre bien aménagée et très propre.\n« On s 'y sent bien et bien accueilli »\n눉Le panorama ca se mérite aussi l'hotel situé en haut de la ville fait que l'on grimpe beaucoup (route ou escalier) e\n눇la terrasse avec panorama et la décoration de l'établissement\n« Tres bien, un peu bruyant »\n눉on avait un problème de la climatisation. La machine faisait trop de bruit pendant la nuit. Ca empêche un peu de dormir.\n눇Location, la view sur le port, transfert gratuit depuis l'aéroport.\n« Adorable petit hôtel »\n눇Un accueil merveilleux, un personnel délicieux et serviable et une vue très belle sur le port. La Terrasse et la chambre\n« La propreté, la situation, l'accueil »\n눇La propreté, la situation, l'accueil\n« parfait pour une premiere nuit sur l'ile. »\n눇parfait pour une premiere nuit sur l'ile.\n눇très bonne situation géographique personnel très gentil, très arrangeant et serviable service de transport depuis le port ou l'aéroport gratuit\n« Le couple qui tient la pension est d'une grande... »\n눇Le couple qui tient la pension est d'une grande prévenance et d'une gentillesse exceptionnelle. La vue depuis la terrasse est superbe. Tout était parfait.\n« L'amabilité et la possibilité de transport vers... »\n눇L'amabilité et la possibilité de transport vers l'aéroport\n« Situation calme, mais proche du port et vue sur mer. »\n눇Situation calme, mais proche du port et vue sur mer. Personnel très aimable et serviable: transport bagages et navette aéroport.\nVoir les photos des voyageurs ayant séjourné à l'établissement Babis


Rien de plus compliqué que de Trouver le meilleur syndic. Le syndic de copropriété a un rôle central dans l’immeuble. Il représente le syndicat des copropriétaires, c’est-à-dire l’ensemble des copropriétaires d’un immeuble. Sa mission principale est de veiller à la bonne…\nDéshydratation de boues en conteneur mobile\nL’épaississement de la boue et le coût d’investissement d’hydratation jouent tous les deux un rôle décisif. Par exemple, le coût pour l’agrandissement local existant et la construction d’un bâtiment sont considérables dans les installations des déshydratations fixes. L’épaississement de la…\nDu matériel pour les professionnels de la peinture et autres\nPour garantir votre travail dans le domaine de la peinture, il faut utiliser des matériels pratiques et de bonne qualité. Par ailleurs, vous devez vous tourner vers un magasin fiable et de bonne réputation. Cela vous permettra d’obtenir des matériels de peinture adaptés à votre…\nAstuces pour entretenir ses réseaux d’assainissement\nL’entretien des réseaux d’assainissement n’est pas un simple travail facile à faire. C’est une tâche complexe et qui exige quelques savoir-faire plus avancés si vous voulez avoir de bons systèmes d’évacuation. Cependant, il y a des solutions pratiques qui pourraient…\nSe déplacer à Toulouse n’a jamais été aussi facile grâce aux trottinettes électriques\nLoin d’être de simples jouets, les trottinettes électriques sont actuellement un moyen de transport individuel à part entière. Dotées d’une technologie de plus en plus moderne et performante et réputées pour leur praticité hors pair, ces patinettes motorisées se sont…\nLocation d’unités mobiles de traitement des eaux usées : contacter une entreprise experte en ligne\nAujourd’hui, il y a des gens qui choisissent de louer de matériel en ligne pour le traitement des eaux usées. Louer des matériels de traitement des eaux usées, c’est une solution efficace et pratique spécialement pour ceux et celles qui veulent faire…


Zetterberg pourrait être contraint de rater toute la saison | LNH.com\nZetterberg pourrait être contraint de rater toute la saison\nLe vétéran joueur de centre des Red Wings n'a pas pu s'entraîner convenablement cet été en raison de maux de dos\nPLYMOUTH, Michigan - Le joueur de centre Henrik Zetterberg des Red Wings de Detroit pourrait être contraint de faire l'impasse sur la saison en raison de maux de dos.\n« Le message de Henrik m'a livré c'est que son dos n'a pas bien réagi aux traitements et que, conséquemment, il n'a pas pu s'entraîner convenablement », a indiqué l'entraîneur des Red Wings Jeff Blashill à l'issue de la confrontation Stars & Stripes à l'aréna USA Hockey, dimanche\n« L'incertitude règne parce que je me demande bien comment on peut disputer une saison de la LNH sans entraînement au préalable. J'estime que c'est presque impossible. Tout indique que ce sera très difficile pour Henrik d'obtenir le feu vert pour jouer. »\nLes vétérans des Red Wings doivent se soumettre aux examens médicaux le 13 septembre à Traverse City, au Michigan, mais ils ont la possibilité de passer les examens plus tôt. Le directeur général Ken Holland a dit qu'il n'a pas entendu parler que Zetterberg se soit prévalu du privilège.\nBlashill a ajouté qu'il ne miserait pas sur les services de Zetterberg cette saison s'il n'obtient pas le feu vert au camp d'entraînement.\nZetterberg, qui fêtera son 39e anniversaire de naissance le 9 octobre, vient au cinquième rang de l'histoire de l'équipe au chapitre des buts (337), des passes (623) et des points (960) et sixième pour ce qui est de matchs joués (1082). Il a remporté le trophée Conn Smythe à titre de joueur par excellence des séries éliminatoires quand les Red Wings ont gagné la Coupe Stanley en 2008 et il agit comme le capitaine de l'équipe depuis 2013.\nAprès avoir été opéré au dos le 21 février 2014, il a livré 77 rencontres en 2014-15 et 82 à chacune des trois saisons suivantes. Il a été le deuxième marqueur de l'équipe la saison dernière, avec une récolte de 56 points (11 filets, 45 aides) mais il a peiné physiquement.\n« Il s'est accroché pendant deux mois vers la fin et c'était quelque chose à voir, a souligné Blashill. C'est une chose de s'accrocher pendant deux mois. C'en est une autre d'être capable de jouer dans la LNH sans aucun entraînement. Ç'a été un été difficile pour lui et comme je l'ai déjà dit on entretient des doutes quant à sa capacité de pouvoir jouer. Il va se présenter au camp, se soumettre aux examens et nous verrons ce qui en est. »\nBlashill a expliqué que les Red Wings ont deux plans: un avec Zetterberg et l'autre sans lui. S'il ne peut pas jouer, l'équipe va utiliser Dylan Larkin, Frans Nielsen, Andreas Athanasiou et Luke Glendening à la position de centre. Athanasiou, âgé de 24 ans, a évolué à l'aile dans la LNH mais il est un centre naturel.\n« L'unique aspect qu'il doit améliorer à la position, ce sont les mises au jeu », a dit Blashill au sujet d'Athanasiou, qui montre un taux d'efficacité en carrière de 42 pour cent sur les mises au jeu. « Hormis ça, je suis à l'aise de l'utiliser au centre et je pense qu'il peut faire du bon travail. »\nMichael Rasmussen, âgé de 19 ans, neuvième espoir réclamé au repêchage 2017, est un joueur de centre mais on le voit patrouiller le flanc gauche à ses débuts dans la LNH.\n« C'est nettement plus facile de commencer dans la LNH comme ailier que comme centre, a soumis Blashill. C'est beaucoup de responsabilités au centre.\n« La chose dans son cas, c'est qu'un de ses meilleurs atouts c'est la présence qu'il exerce au filet. En jouant au centre, il ne pourra pas être autant devant le but que s'il est ailier. Il pourrait donc faire sa marque dans la LNH comme ailier gauche. »


juin, 2009 | Didier Lustig\nL'astrologie est-elle une science ?\nOui, l’astrologie est une science…\nEt même plus : « elle est à la fois un art, une science et une sagesse » écrivait le philosophe Raymond Abellio. Elle a été enseignée en tant que telle dans les principales universités françaises et européennes jusqu’au milieu du XVIIe siècle. On parlait alors d’astrologie « naturelle ».\nEn France, le dernier astrologue officiel se nommait Jean-Baptiste Morin, dit de Villefranche. Il était médecin du roi Louis XIII et professeur de mathématiques au Collège Royal (le Collège de France d’aujourd’hui). C’était un conseiller très écouté du Cardinal de Richelieu. Lorsqu’il céda son pouvoir à Mazarin, celui-ci dit à son successeur : « Je vous lègue Morin. »\nLorsque Galilée découvrit que c’est la terre qui tourne autour du soleil et non l’inverse, on passa d’une conception géocentrique à une conception héliocentrique de notre univers. L’astrologie fut alors rapidement délaissée car ses fondements ne correspondaient plus à la nouvelle réalité astronomique. Pourtant, le célèbre astronome Kepler faisait remarquer que pour tout observateur terrestre, le soleil et les autres astres continuaient à effectuer leurs révolutions autour du zodiaque et que la nouvelle découverte n’y changeait rien…\nAutrement dit, l’astronomie est la science du ciel tel qu’il est, et l’astrologie est la science du ciel tel que les hommes le voient. Et ce n’est pas parce que ces points de vue sont différents que l’un est vrai et l’autre faux.\nL’astrologie est une science parce qu’elle comporte une part d’observation – elle est alors une science exacte – et une part d’interprétation qui s’appuie sur des règles confirmées par une expérience deux fois millénaire – elle est alors une science expérimentale. Enfin, elle est une science conjecturale lorsqu’elle formule des prévisions : dans ce cas seulement, elle est susceptible d’erreur car une prévision est fondée sur une convergence de facteurs montrant une tendance plus ou moins marquée. Plus les facteurs sont nombreux et plus leur convergence est forte, plus il y a de probabilités pour que l’événement prévu se produise.\nNul ne s’étonne pourtant de ce qu’on procède de même en médecine : on se base sur l’observation du malade pour formuler un diagnostic et éventuellement un pronostic (pronoscere : connaître à l’avance).\nAbellio, astrologie, astronome, astronomie, Collège de France, Collège royal, géocentrique, géocentrisme, héliocentrique, héliocentrisme, Jean-Baptiste Morin, Johannes Kepler, Kepler, Louis XIII, Mazarin, Morin, Morin de Villefranche, pronostic, Raymond Abellio, Richelieu, science conjecturale, science expérimentale


Line Îles-Ouest Essequibo Demerara par rapport à WhatsChat Îles-Ouest Essequibo Demerara. Découvrez les grandes différences entre Line Îles-Ouest Essequibo Demerara et WhatsChat Îles-Ouest Essequibo Demerara.\nLine Îles-Ouest Essequibo Demerara\nLine Îles-Ouest Essequibo Demerara vs WhatsChat Îles-Ouest Essequibo Demerara\nLa grande différence Situés entre Line Îles-Ouest Essequibo Demerara et WhatsChat Îles-Ouest Essequibo Demerara, ce est que WhatsChat Îles-Ouest Essequibo Demerara vous permet de discuter avec des milliers d'inconnus à proximité de votre position actuelle tout en Line Îles-Ouest Essequibo Demerara vous permet de discuter avec vos contacts du téléphone.\nWhatsChat Îles-Ouest Essequibo Demerara dispose d'un système de géolocalisation qui vous relie rapidement avec l'étranger qui pourraient parfaitement être très près de chez vous.\nWhatsChat Îles-Ouest Essequibo Demerara vous permet de choisir entre le mode texte ou en mode webcam (via le site web). De cette façon, vous pourrez connaître toutes les caractéristiques spéciales de notre application.\nList of cities in Îles-Ouest Essequibo Demerara:


Arduino - Premiers Pas en Informatique Embarquee | Arduino | Électricité\nArduino uno premier pas\nEnregistrerEnregistrer Arduino - Premiers Pas en Informatique Embarquee pour plus tard\n974 vues454 pages\nRapport de fin d'etude ; etude conception d'un journal lumineux\nélectronique à la portée de tous.pdf\nDebuter Dans l Informatique Embarquee Avec Teensy\nPour s Initier a l Electronique\nElectronique Pratique 001 Jan 1978\nVous êtes sur la page 1sur 454\nContenu de cet ebook\nCe livre numérique vous propose de découvrir l'environnement de développement Arduino. Arduino est une plateforme de développement électronique et informatique embarqué. Elle doit son succès auprès des hobbyistes et amateurs d'électronique grâce à un faible coût, un gain de temps pour des phases de prototypage et une très grande communauté active autour de cette plateforme. Afin de faire profiter au plus grand nombre de la puissance de cette petite plateforme, ce tutoriel a vu le jour pour proposer une ressource qui soit accessible aux néophytes tout en restant rigoureuse et explorant de nombreux aspects. Après une longue écriture, nous sommes fiers de vous présenter cet ebook regroupant l'ensemble du tutoriel que vous pourrez dorénavant emmener partout avec vous, sans avoir besoin d'une connexion internet ! Ce livre est l'exacte copie de sa version en ligne. Les schémas sont les mêmes et les codes sources aussi. Seules peuvent différer quelques corrections de fautes ou d'imprécisions et éventuellement de nouvelles annexes qui ne seraient alors pas écrites. Pour cela, la date de publication est visible en première de couverture. Afin de vous tenir au courant des modifications, rendezvous sur la page de présentation du livre qui tiendra un compte rendu des modifications du document.\nÀ propos des auteurs et de la rédaction\nCet ouvrage a été réalisé par deux auteurs : Eskimon et olyte. Ils se sont rencontrés sur feu le Site du Zéro. olyte, l'initiateur du projet avait besoin d'un coup de main pour écrire et a alors proposé à Eskimon de le rejoindre pour travailler à deux sur le tutoriel.\nPlus de deux ans plus tard, après de nombreuses pages écrites, montages bricolés, schémas dessinés et vidéos réalisées, le tutoriel touche enfin à sa fin. 7 parties regroupant une trentaine de chapitres permettent alors de découvrir de manière très large et détaillée le framework Arduino.\nDepuis début 2014, le tutoriel est disponible dans une version à jour sur le blog d'Eskimon. En effet, le site du zéro ayant évolué et ne permettant plus de continuer l'écriture, des mesures ont du être prises pour pouvoir continuer à faire vivre et évoluer l'écriture au fil de nos idées.\nLe tutoriel est en licence Creative Common CC BYNCSA. Cela signifie que vous pouvez recopier le contenu du tuto si vous ne comptez pas faire d'utilisation commerciale (clause NC) de ce dernier et que vous n'oubliez pas de dire d'où il vient et par qui il a été écrit (clause BY) ;) . Vous devez aussi le redistribuer sous cette même licence (clause SA).\nDe nombreuses paires de mains et d'yeux se sont penchées sur ce document. Parmis elles, on retrouve des validateurs pour le côté technique de la rédaction et des relecteurs pour toute la partie orthographique.\nJe tiens sincèrement à remercier toutes ces personnes qui se sont relayées et ont eu la patience de relire, d'approuver, de corriger ou de reformuler certaines phrases et voyant\nleurs rétines souffrir sur nos fautes d'écritures nocturnes et trop rapides.\nMerci donc à Astalaseven, cshark, elyppire933, mewtow, Nathalya, PG06, Sandhose, zeqL et sûrement d'autres personnes qui se reconnaitront (excusez ma pauvre mémoire et mon étourderie). Merci aussi à vous, lecteurs, pour tous les encouragements, propositions et corrections que vous avez pu apporter au fil des années. L'écriture d'un tutoriel est un travail de longue haleine et n'aurait su être terminée si vous n'aviez pas été là pour nous supporter.\nJe vous souhaite maintenant une bonne lecture et j'espère que vous l'apprécierez.\n001. Partie I  Découverte de l'Arduino\n2. Quelques bases élémentaires\n5. Le langage Arduino (1/2)\n6. Le langage Arduino (2/2)\n010. Partie II  Gestion des entrées / sorties\n1. Notre premier programme !\n2. Introduire le temps\n3. [TP] Feux de signalisation routière\n4. Un simple bouton\n5. Afficheurs 7 segments\n6. [TP] Parking\n011. Partie III  La communication avec Arduino\n2. Envoyer/Recevoir des données\n3. [TP] Baignade interdite\n4. Votre ordinateur et sa liaison série\n100. Partie IV  Les grandeurs analogiques\n1. Les entrées analogiques de l'Arduino\n2. [TP] Vumètre à LED\n3. Et les sorties "analogiques", enfin\n4. [Exercice] Une animation "YouTube"\n101. Partie V  Les capteurs et l'environnement autour d'Arduino\n1. Généralités sur les capteurs\n2. Différents types de mesure\n3. Des capteurs plus évolués\n110. Partie VI  Le mouvement grâce aux moteurs\n1. Moteur à courant continu\n3. Moteur pas à pas\n111. Partie VII  L'affichage, une autre manière d'interagir\n1. Les écrans LCD\n2. Votre premier texte !\n3. [TP] Supervision\n[Arduino 1] Découverte de l’Arduino\nDans cette première partie, nous ferons nos premiers pas avec Arduino. Nous allons avant tout voir de quoi il s’agit exactement, essayer de comprendre comment cela fonctionne, puis installerons le matériel et le logiciel pour ensuite enchainer sur l’apprentissage du langage de programmation nécessaire au bon fonctionnement de la carte Arduino. Soyez donc attentif afin de bien comprendre tout ce que je vais vous expliquer. Sans les bases, vous n’irez pas bien loin…\n[Arduino 101] Présentation d’Arduino\nComment faire de l’électronique en utilisant un langage de programmation ? La réponse, c’est le projet Arduino qui l’apporte. Vous allez le voir, celuici a été conçu pour être accessible à tous par sa simplicité. Mais il peut également être d’usage professionnel, tant les possibilités d’applications sont nombreuses.\nQu’estce que c’est ?\nUne équipe de développeurs composée de Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis et Nicholas Zambetti a imaginé un projet répondant au doux nom de Arduino et mettant en œuvre une petite carte électronique programmable et un logiciel multiplateforme, qui puisse être accessible à tout un chacun dans le but de créer facilement des systèmes électroniques. Étant donné qu’il y a des débutants parmi nous, commençons par voir un peu le vocabulaire commun propre au domaine de l’électronique et de l’informatique.\nUne carte électronique est un support plan, flexible ou rigide, généralement composé d’epoxy ou de fibre de verre. Elle possède des pistes électriques disposées sur une, deux ou plusieurs couches (en surface et/ou en interne) qui permettent la mise en relation électrique des composants électroniques. Chaque piste relie tel composant à tel autre, de façon à créer un système électronique qui fonctionne et qui réalise les opérations demandées.\nExemples de cartes électroniques\nÉvidemment, tous les composants d’une carte électronique ne sont pas forcément reliés entre eux. Le câblage des composants suit un plan spécifique à chaque carte électronique, qui se nomme le schéma électronique.\nExemple de schéma électronique – carte Arduino Uno\nEnfin, avant de passer à la réalisation d’un carte électronique, il est nécessaire de transformer le schéma électronique en un schéma de câblage, appelé typon.\nExemple de typon – carte Arduino\nUne fois que l’on a une carte électronique, on fait quoi avec ?\nEh bien une fois que la carte électronique est faite, nous n’avons plus qu’à la tester et l’utiliser ! Dans notre cas, avec Arduino, nous n’aurons pas à fabriquer la carte et encore moins à la concevoir. Elle existe, elle est déjà prête à l’emploi et nous n’avons plus qu’à l’utiliser. Et pour cela, vous allez devoir apprendre comment l’utiliser, ce que je vais vous montrer dans ce tutoriel.\nJ’ai parlé de carte électronique programmable au début de ce chapitre. Mais savez vous ce que c’est exactement ? Non ? pas vraiment ? Alors voyons ensemble de quoi il s’agit. La carte Arduino est une carte électronique qui ne sait rien faire sans qu’on lui dise quoi faire. Pourquoi ? Eh bien c’est du au fait qu’elle est programmable. Cela signifie qu’elle a besoin d’un programme pour fonctionner.\nUn programme est une liste d’instructions qui est exécutée par un système. Par exemple votre navigateur internet, avec lequel vous lisez probablement ce cours, est un programme. On peut analogiquement faire référence à une liste de course :\nChaque élément de cette liste est une instruction qui vous dit : “Va chercher le lait” ou “Va chercher le pain”, etc. Dans un programme le fonctionnement est similaire :\nAttendre que l’utilisateur rentre un site internet à consulter\nRechercher sur internet la page demandée\nTel pourrait être le fonctionnement de votre navigateur internet. Il va attendre que vous lui demandiez quelque chose pour aller le chercher et ensuite vous le montrer. Eh bien, tout aussi simplement que ces deux cas, une carte électronique programmable suit une liste d’instructions pour effectuer les opérations demandées par le programme.\nEt on les trouve où ces programmes ? Comment on fait pour le mettre dans la carte ? o_O\nDes programmes, on peut en trouver de partout. Mais restons concentré sur Arduino. Le programme que nous allons mettre dans la carte Arduino, c’est nous qui allons le réaliser. Oui, vous avez bien lu. Nous allons programmer cette carte Arduino. Bien sûr,\nce ne sera pas aussi simple qu’une liste de course, mais rassurezvous cependant car nous allons réussir quand même ! Je vous montrerai comment y parvenir, puisque avant tout c’est un des objectifs de ce tutoriel. Voici un exemple de programme :\nVous le voyez comme moi, il s’agit de plusieurs lignes de texte, chacune étant une instruction. Ce langage ressemble à un véritable baragouin et ne semble vouloir à priori rien dire du tout… Et pourtant, c’est ce que nous saurons faire dans quelques temps ! Car nous apprendrons le langage informatique utilisé pour programmer la carte Arduino. Je ne m’attarde pas sur les détails, nous aurons amplement le temps de revenir sur le sujet plus tard. Pour répondre à la deuxième question, nous allons avoir besoin d’un logiciel…\nEt un logiciel ?\nBon, je ne vais pas vous faire le détail de ce qu’est un logiciel, vous savez sans aucun doute de quoi il s’agit. Ce n’est autre qu’un programme informatique exécuté sur un ordinateur. Oui, pour programmer la carte Arduino, nous allons utiliser un programme ! En fait, il va s’agir d’un compilateur. Alors qu’estce que c’est exactement ?\nEn informatique, ce terme désigne un logiciel qui est capable de traduire un langage informatique, ou plutôt un programme utilisant un langage informatique, vers un langage plus approprié afin que la machine qui va le lire puisse le comprendre. C’est un peu comme si le patron anglais d’une firme Chinoise donnait des instructions en anglais à l'un de ses ouvriers chinois. L’ouvrier ne pourrait comprendre ce qu’il doit faire. Pour cela, il a besoin que l’on traduise ce que lui dit son patron. C’est le rôle du\ntraducteur. Le compilateur va donc traduire les instructions du programme précédent, écrites en langage texte, vers un langage dit “machine”. Ce langage utilise uniquement des 0 et des 1. Nous verrons plus tard pourquoi. Cela pourrait être imagé de la façon suivante :\nDonc, pour traduire le langage texte vers le langage machine (avec des 0 et des 1), nous aurons besoin de ce fameux compilateur. Et pas n’importe lequel, il faut celui qui soit capable de traduire le langage texte Arduino vers le langage machine Arduino. Et oui, sinon rien ne va fonctionner. Si vous mettez un traducteur Français vers Allemand entre notre patron anglais et son ouvrier chinois, ça ne fonctionnera pas mieux que s’ils discutaient directement. Vous comprenez ?\nEt pourquoi on doit utiliser un traducteur, on peut pas simplement apprendre le langage machine directement ?\nComment dire… non ! Non parce que le langage machine est quasiment impossible à utiliser tel quel. Par exemple, comme il est composé de 0 et de 1, si je vous montre ça :\n“0001011100111010101000111″, vous serez incapable, tout comme moi, de dire ce que cela signifie ! Et même si je vous dis que la suite “01000001″ correspond à la lettre “A”, je vous donne bien du courage pour coder rien qu’une phrase ! Bref, oubliez cette idée. C’est quand même plus facile d’utiliser des mots anglais (car oui nous allons être obligé de faire un peu d’anglais pour programmer, mais rien de bien compliqué rassurezvous) que des suites de 0 et de 1. Vous ne croyez pas ?\nEnvoyer le programme dans la carte\nLà, je ne vais pas vous dire grand chose car c’est l’environnement de développement qui va gérer tout ça. Nous n’aurons qu’à apprendre comment utiliser ce dernier et il se débrouillera tout seul pour envoyer le programme dans la carte. Nah ! Nous n’aurons donc qu’à créer le programme sans nous soucier du reste.\nPourquoi choisir Arduino ?\nQue vaton faire avec ?\nAvec Arduino, nous allons commencer par apprendre à programmer puis à utiliser des composants électroniques. Au final, nous saurons créer des systèmes électroniques plus ou moins complexes. Mais ce n’est pas tout…\nD’abord, Arduino c’est…\n… une carte électronique programmable et un logiciel gratuit :\nUn prix dérisoire étant donné l’étendue des applications possibles. On comptera 20 euros pour la carte que l’on va utiliser dans le cours. Le logiciel est fournit gratuitement !\nUne compatibilité sous toutes les plateformes, à savoir : Windows, Linux et Mas OS.\nUne communauté ultra développée ! Des milliers de forums d’entreaide, de présentations de projets, de propositions de programmes et de bibliothèques, …\nUn site en anglais arduino.cc et un autre en français arduino.cc/fr où vous trouverez tout de la référence Arduino, le matériel, des exemples d’utilisations, de l’aide pour débuter, des explications sur le logiciel et le matériel, etc.\nUne liberté quasi absolue. Elle constitue en elle même deux choses :\nLe logiciel : gratuit et open source, développé en Java, dont la simplicité d’utilisation relève du savoir cliquer sur la souris\nLe matériel : cartes électroniques dont les schémas sont en libre circulation sur internet\nCette liberté a une condition : le nom « Arduino » ne doit être employé que pour les cartes « officielles ». En somme, vous ne pouvez pas fabriquer votre propre carte sur le modèle Arduino et lui assigner le nom « Arduino ».\nEt enfin, les applications possibles\nVoici une liste non exhaustive des applications possible réalisées grâce à Arduino :\ncontrôler des appareils domestiques\ndonner une “intelligence” à un robot\nréaliser des jeux de lumières\npermettre à un ordinateur de communiquer avec une carte électronique et différents capteurs\ntélécommander un appareil mobile (modélisme)\nIl y a tellement d’autres infinités d’utilisations, vous pouvez simplement chercher sur votre moteur de recherche préféré ou sur Youtube le mot “Arduino” pour découvrir les milliers de projets réalisés avec !\nArduino dans ce tutoriel\nJe vais quand même rappeler les principaux objectifs de ce cours. Nous allons avant tout découvrir Arduino dans son ensemble et apprendre à l’utiliser. Dans un premier temps, il s’agira de vous présenter ce qu’est Arduino, comment cela fonctionne\nglobalement, pour ensuite entrer un peu plus dans le détail. Nous allons alors apprendre à utiliser le langage Arduino pour pouvoir créer des programmes très simple pour débuter. Nous enchainerons ensuite avec les différentes fonctionnalités de la carte et ferons de petits TP qui vous permettront d’assimiler chaque notion abordée. Dès lors que vous serez plutôt à l’aise avec toutes les bases, nous nous rapprocherons de l’utilisation de composants électroniques plus ou moins complexes et finirons par un plus “gros” TP alliant la programmation et l’électronique. De quoi vous mettre de l’eau à la bouche !\nArduino à l’école ?\nPédagogiquement, Arduino a aussi pas mal d’atout. En effet, ses créateurs ont d’abord pensé ce projet pour qu’il soit facile d’accès. Il permet ainsi une très bonne approche de nombreux domaines et ainsi d’apprendre plein de choses assez simplement.\nVoici quelques exemples d’utilisation possible :\nSimuler le fonctionnement des portes logiques\nPermettre l’utilisation de différents capteurs\nMettre en œuvre et faciliter la compréhension d’un réseau informatique\nSe servir d’Arduino pour créer des maquettes animées montrant le fonctionnement des collisions entres les plaques de la croute terrestre, par exemple\nDonner un exemple concret d’utilisation des matrices avec un clavier alphanumérique 16 touches ou plus\nÊtre la base pour des élèves ayant un TPE à faire pour le BAC\nDe plus, énormément de ressources et tutoriels (mais souvent en anglais) se trouvent sur internet, ce qui offre un autonomie particulière à l’apprenant.\nDes outils existant !\nEnfin, pour terminer de vous convaincre d’utiliser Arduino pour découvrir le monde merveilleux de l’embarqué, il existe différents outils qui puissent être utilisé avec Arduino. Je vais en citer deux qui me semble être les principaux : Ardublock est un outil qui se greffe au logiciel Arduino et qui permet de programmer avec des blocs. Chaque bloc est une instruction. On peut aisément faire des programmes avec cet outil et mêmes des plutôt complexes. Cela permet par exemple de se concentrer sur ce que l’on doit faire avec Arduino et non se concentrer sur Arduino pour ensuite ce que l’on doit comprendre avec. Citons entre autre la simulation de porte logique : plutôt créer des programmes rapidement sans connaitre le langage pour comprendre plus facilement comment fonctionne une porte logique. Et ce n’est qu’un exemple. Car cela permet aussi de permettre à de jeunes enfants de commencer à programmer sans de trop grandes complications.\nExemple de programmes réalisés avec Ardublock\nProcessing est une autre plateforme en lien avec Arduino. Là il n’y a pas de matériel, uniquement un logiciel. Il permet entre autre de créer des interfaces graphiques avec un langage de programmation très similaire à celui d’Arduino. Par contre, cela demande un niveau un peu plus élevé pour pouvoir l’utiliser, même si cela reste simple dans l’ensemble.\nVoilà un exemple de ce que j’avais réalisé avec Processing pour faire communiquer mon ordinateur avec ma carte Arduino\nJ’espère avoir été assez convaincant afin que vous franchissiez le pas et ayez du plaisir à apprendre !\nLe matériel que j’ai choisi d’utiliser tout au long de ce cours n’a pas un prix excessif et, je l’ai dit, tourne aux alentours de 25 € TTC. Il existe plusieurs magasins en lignes et en boutiques qui vendent des cartes Arduino. Je vais vous en donner quelquesuns, mais avant, il va falloir différencier certaines choses.\nLe projet Arduino est libre et les schémas des cartes circulent librement sur internet. D’où la mise en garde que je vais faire : il se peut qu’un illustre inconnu fabrique lui même ses cartes Arduino. Cela n’a rien de mal en soi, s’il veut les commercialiser, il peut. Mais s’il est malhonnête, il peut vous vendre un produit défectueux. Bien sûr, tout le monde ne cherchera pas à vous arnaquer. Mais la prudence est de rigueur. Faites donc attention où vous achetez vos cartes.\nIl y a trois types de cartes :\nLesdites « officielles » qui sont fabriquées en Italie par le fabricant officiel : Smart Projects\nLesdits « compatibles » qui ne sont pas fabriqués par Smart Projects, mais qui sont totalement compatibles avec les Arduino officielles.\nLes « autres » fabriquées par diverse entreprise et commercialisées sous un nom différent (Freeduino, Seeduino, Femtoduino, …).\nDes cartes Arduino il en existe beaucoup ! Voyons celles qui nous intéressent… La carte Uno et Duemilanove Nous choisirons d’utiliser la carte portant le nom de « Uno » ou « Duemilanove ». Ces deux versions sont presque identiques.\nCarte Arduino “Duemilavove” et “Uno” avec laquelle nous allons travailler\nLa carte Mega La carte Arduino Mega est une autre carte qui offre toutes les fonctionnalités de la carte précédente, mais avec des fonctionnalités supplémentaires. On retrouve notamment un nombre d’entrées et de sorties plus important ainsi que plusieurs liaisons séries. Bien sûr, le prix est plus élevé : > 40 € !\nCarte Arduino “Mega”\nLes autres cartes Il existe encore beaucoup d’autres cartes, je vous laisse vous débrouiller pour trouver celle qui conviendra à vos projets. Cela dit, je vous conseil dans un premier temps d’utiliser la carte Arduino Uno ou Duemilanove d’une part car elle vous sera largement suffisante pour débuter et d’autre part car c’est avec celleci que nous présentons le cours.\nIl existe sur le net une multitude de magasins qui proposent des cartes Arduino. Pour consulter la liste de ces magasins, rien de plus simple, il suffit de vous rendre sur le forum dédié :\nLes meilleurs boutiques d’électronique Cliquezici\nJ’ai vu des cartes officielles “édition SMD/CMS”. Ca à l’air bien aussi, c’est quoi la\ndifférence ? Je peux m’en servir ?\nIl n’y a pas de différence ! enfin presque… “SMD” signifie Surface Mount Device, en français on appelle ça des “CMS” pour Composants Montés en Surface. Ces composants sont soudés directement sur le cuivre de la carte, il ne la traverse pas comme les autres. Pour les cartes Arduino, on retrouve le composant principal en édition SMD dans ces cartes. La carte est donc la même, aucune différence pour le tuto. Les composants sont les mêmes, seule l’allure “physique” est différente. Par exemple, cidessus la “Mega” est en SMD et la Uno est “classique”.\nTout au long du cours, nous allons utiliser du matériel en supplément de la carte. Rassurezvous le prix est bien moindre. Je vous donne cette liste, cela vous évitera d’acheter en plusieurs fois. Vous allez devoir me croire sur parole sur leur intérêt. Nous découvrirons comment chaque composant fonctionne et comment les utiliser tout au long du tutoriel.\nAttention, cette liste ne contient que les composants en quantités minimales strictes. Libre à vous de prendre plus de LED et de résistances par exemple (au cas où vous en perdriez ou détruisiez…). Pour ce qui est des prix, j’ai regardé sur différents sites grands publics (donc pas Farnell par exemple), ils peuvent donc paraître plus élevé que la normale dans la mesure où ces sites amortissent moins sur des ventes à des clients fidèles qui prennent tout en grande quantité…\nAvant que j’oublie, quatres éléments n’apparaitront pas dans la liste et sont indispensables :\nUne Arduino Uno ou Duemilanove\nUne BreadBoard (plaque d’essai)\nUn câble USB A mâle/B mâle\nUn lot de fils pour brancher le tout !\nVoici donc la liste du matériel nécessaire pour suivre le cours. Libre à vous de tout acheter ou non.\nListe incomplète, le tutoriel n’est pas terminé ! Mais elle suffit pour suivre les chapitres en ligne.\nLED jaune (ou orange)\nRésistance (entre 220 et 470 Ohm) Résistance (entre 2.2 et 4.7 kOhm) Résistance (10 kOhm)\nCe composant est une sorte de lampe un peu spécial. Nous nous en servirons principalement pour faire de la signalisation.\nLa résistance est un composant de base qui s’oppose au passage du courant. On s’en sert pour\nlimiter des courants maximums mais aussi pour d’autres choses.\nLe transistor sert à plein de chose. Il peut être 2 utilisé pour faire de l’amplification (de courant ou de tension) mais aussi comme un interrupteur commandé électriquement.\nUn afficheur 7 segments est un ensemble de LEDs\n(cf. cidessus) disposées géométriquement pour afficher des chiffres.\nÉcran LCD alphanumérique 1\npiloter des afficheurs 7 segments en limitant le nombre de fils de données (4 au lieu de 7).\nLe décodeur BCD (Binaire Codé Décimal) permet\nà plein de chose. On peut se le représenter comme un petit réservoir à électricité.\nLe condensateur est un composant de base. Il sert\nCeluici est un plus gros réservoir que le précédent\nLe potentiomètre est une résistance que l’on peut faire varier manuellement.\nUne LED RVB (Rouge Vert Bleu) est une LED permettant de mélanger les couleurs de bases pour en créer d’autres. L’écran LCD alphanumérique permet d’afficher des caractères tels que les chiffres et les lettres. Il va\napporter de l’interactivité à vos projets les plus fous\nJe vous ai déjà donné le lien, vous pourrez trouver ces composants chez les revendeurs listés dans ce sujet du forum :\nEnfin, il existe des kits tout prêts chez certains revendeurs. Nous n’en conseillerons aucun pour plusieurs raisons. Tout d’abord, pour ne pas faire trop de publicité et rester conforme avec la charte du site. Ensuite, car il est difficile de trouver un kit “complet”. Ils ont tous des avantages et des inconvénients mais aucun (au moment de la publication de ces lignes) ne propose absolument tous les composants que nous allons utiliser. Nous ne voulons donc pas que vous reveniez vous plaindre sur les forums car nous vous aurions fait dépenser votre argent inutilement !\nCela étant dit, merci de ne pas nous spammer de MP pour que l’on donne notre avis sur tel ou tel kit ! Usez des forums pour cela, il y a toujours quelqu’un qui sera là pour vous aider. Et puis nous n’avons pas les moyens de tous les acheter et tester leur qualité !\n[Arduino 102] Quelques bases élémentaires\nLa première partie de ce chapitre ne fait que reprendre quelques éléments du cours\nsur l’électronique, que vous pouvez consulter pour de plus amples explications.\nSur le schéma précédent, on a au point M une tension de 0V et au point P, une tension de 5V. Prenons notre Voltmètre et mesurons la tension aux bornes du générateur. La borne COM du Voltmètre doit être reliée au point M et la borne “+” au point P. Le\npotentiel au point P, soustrait par le potentiel au point M vaut :\n. On dit que la différence de potentiel entre ces deux points est de 5V. Cette mesure\n= 5–0 = 5V\nest reliée au point M et la borne COM au point P. La mesure que l’on prend est la différence de tension (= potentiel) entre le point M et le point P :\nCette démonstration un peu surprenante vient du fait que la\nmasse est arbitraire.\n= 0–5 = −5V\nJustement, parlonsen ! La masse est, en électronique, un point de référence.\nNotion de référentiel\nLa résistance et sa loi !\nEn électronique il existe plein de composants qui ont chacun une ou plusieurs fonctions. Nous allons voir quels sont ces composants dans le cours, mais pas tout de suite. Car, maintenant, on va aborder la résistance qui est LE composant de base en électronique.\nC’est le composant le plus utilisé en électronique. Sa principale fonction est de réduire l’intensité du courant (mais pas uniquement). Ce composant se présente sous la forme d’un petit boitier fait de divers matériaux et repéré par des anneaux de couleur indiquant la valeur de cette dernière. Photo de résistance :\nLe symbole de la résistance ressemble étrangement à la forme de son boitier :\nLe courant traversant une résistance est régi par une formule assez simple, qui se nomme la loi d’ohm :\nI : intensité qui traverse la résistance en Ampères, notée\n: tension aux bornes de la résistance en Volts, notée\n: valeur de la résistance en Ohms, notée\nEn général, on retient mieux la formule sous cette forme :\nU = R ∗I\nL’unité de la résistance est l’ohm. On le note avec le symbole grec oméga majuscule :\nLa résistance possède une suite d’anneaux de couleurs différentes sur son boitier. Ces couleurs servent à expliciter la valeur de la résistance sans avoir besoin d’écrire en chiffre dessus (car vous avez déjà essayé d’écrire sur un cylindre ?) Le premier anneau représente le chiffre des centaines, le second celui des dizaines et le troisième celui des unités. Enfin, après un petit espace vient celui du coefficient multiplicateur. Avec ses quatres anneaux et un peu d’entrainement vous pouvez alors deviné la valeur de la résistance en un clin d’oeil . Ce tableau vous permettra de lire ce code qui correspond à la valeur de la résistance :\nCouleur Chiffre Coefficient multiplicateur Puissance Tolérance\nNous avons déjà un peu abordé le sujet dans la présentation du cours. Je vous ai expliqué “brièvement” comment fonctionnait un programme et surtout ce que c’était ! Bon, dès à présent je vais rentrer un petit peu plus dans le détail en vous introduisant des notions basées sur le matériel étroitement lié à la programmation. Nous allons en effet aborder le microcontrôleur dans un niveau de complexité supérieur à ce que je vous avais introduit tout à l’heure. Ho, rien de bien insurmontable, soyez sans craintes.\nLa programmation en électronique\nAujourd’hui, l’électronique est de plus en plus composée de composants numériques programmables. Leur utilisation permet de simplifier les schémas électroniques et par conséquent réduire le coût de fabrication d’un produit. Il en résulte des systèmes plus complexes et performants pour un espace réduit.\nComment programmer de l’électronique ?\nPour faire de l’électronique programmée, il faut un ordinateur et un composant programmable. Il existe tout plein de variétés différentes de composants programmables, à noter : les microcontrôleurs, les circuits logiques programmables, … Nous, nous allons programmer des microcontrôleurs. Mais à ce propos, vous aije dit qu’est ce que c’était qu’un microcontrôleur ?\nJe l’ai dit à l’instant, le microcontrôleur est un composant électronique programmable. On le programme par le biais d’un ordinateur grâce à un langage informatique, souvent propre au type de microcontrôleur utilisé. Je n’entrerais pas dans l’utilisation poussée de ces derniers car le niveau est rudement élevé et la compréhension difficile. Voici une photo d’un microcontrôleur :\nPhoto de microcontrôleur\nC’est donc le microcontrôleur qui va être le cerveau de la carte Arduino, pour en revenir à nos moutons. C’est lui que nous allons programmer. On aura le temps d’en rediscuter. Pour l’instant je veux uniquement vous présenter les éléments principaux qui le composent.\nComposition des éléments internes d’un microcontrôleur\nUn microcontrôleur est constitué par un ensemble d’éléments qui ont chacun une fonction bien déterminée. Il est en fait constitué des mêmes éléments que sur la carte mère d’un ordinateur. Si l’on veut, c’est un ordinateur (sans écran, sans disque dur, sans lecteur de disque) dans un espace très restreint. Je vais vous présenter les différents éléments qui composent un microcontrôleur typique et uniquement ceux qui vont nous être utiles. La mémoire La mémoire du microcontrôleur sert à plusieurs choses. On peut aisément citer le stockage du programme et de données autres que le programme. Il en possède 5 types :\nLa mémoire Flash: C’est celle qui contiendra le programme à exécuter (celui que vous allez créer!). Cette mémoire est effaçable et réinscriptible (c’est la même qu’une clé USB par exemple)\nRAM : c’est la mémoire dite “vive”, elle va contenir les variables de votre programme. Elle est dite “volatile” car elle s’efface si on coupe l’alimentation du microcontrôleur (comme sur un ordinateur).\nEEPROM : C’est le “disque dur” du microcontrôleur. Vous pourrez y enregistrer des infos qui ont besoin de survivre dans le temps, même si la carte doit être arrêtée et coupée de son alimentation. Cette mémoire ne s’efface pas lorsque l’on éteint le microcontrôleur ou lorsqu’on le reprogramme.\nLes registres : c’est un type particulier de mémoire utilisé par le processeur. Nous n’en parlerons pas tout de suite.\nLa mémoire cache : c’est une mémoire qui fait la liaison entre les registres et la RAM. Nous n’en parlerons également pas tout de suite.\nPour plus de détails sur les mémoires utilisables dans vos programmes, une\nannexe en fin de tutoriel s’occupe de cela\nLe processeur C’est le composant principal du microcontrôleur. C’est lui qui va exécuter le programme que nous lui donnerons à traiter. On le nomme souvent le CPU. Diverses choses Nous verrons plus en détail l’intérieur d’un microcontrôleur, mais pas tout de suite, c’est bien trop compliqué. Je ne voudrais pas perdre la moitié des visiteurs en un instant !\nAvant tout, pour que le microcontrôleur fonctionne, il lui faut une alimentation ! Cette alimentation se fait en générale par du +5V. D’autres ont besoin d’une tension plus faible, du +3,3V (c’est le cas de la Arduino Due par exemple). En plus d’une alimentation, il a besoin d’un signal d’horloge. C’est en fait une succession de 0 et de 1 ou plutôt une succession de tension 0V et 5V. Elle permet en outre de cadencer le fonctionnement du microcontrôleur à un rythme régulier. Grâce à elle, il peut introduire la notion de temps en programmation. Nous le verrons plus loin. Bon, pour le moment, vous n’avez pas besoin d’en savoir plus. Passons à autre chose.\nLes bases de comptage (2,10 et 16)\nLes bases du de comptage\nOn va apprendre à compter ? o_O\nNon, je vais simplement vous expliquer ce que sont les bases de comptage. C’est en fait un système de numération qui permet de compter en utilisant des caractères de numérations, on appelle ça des chiffres.\nCas simple, la base 10\nLa base 10, vous la connaissez bien, c’est celle que l’on utilise tous les jours pour compter. Elle regroupe un ensemble de 10 chiffres : 0,1,2,3,4,5,6,7,8,9. Avec ces chiffres, on peut créer une infinité de nombres (ex : 42, 89, 12872, 14.56, 9.3, etc…). Cependant, voyons cela d’un autre œil…\nL’unité sera représenté par un chiffre multiplié par 10 à la puissance 0.\nLa dizaine sera représenté par un chiffre multiplié par 10 à la puissance 1.\nLa centaine sera représenté par un chiffre multiplié par 10 à la puissance 2.\nLe million sera représenté par un chiffre multiplié par 10 à la puissance 6.\nEn généralisant, on peut donc dire qu’un nombre (composé de chiffres) est la somme\ndes chiffres multipliés par 10 à une certaine puissance. Par exemple, si on veut écrire\nEt bien c’est\néquivalent à écrire :\n1024, on peut l’écrire :\n1 × 1000 + 0 × 100 + 2 × 10 + 4 × 1\n+ 0 ×\n+ 4 ×\nça, compter en base 10 ! Vous allez mieux comprendre avec la partie suivante.\nCas informatique, la base 2 et la base 16\nEn informatique, on utilise beaucoup les bases 2 et 16. Elles sont composées des chiffres suivants :\npour la base 2 : les chiffres 0 et 1.\npour la base 16 : on retrouve les chiffres de la base 10, plus quelques lettres :\nOn appelle la base 2, la base binaire. Elle représente des états logiques 0 ou 1. Dans un signal numérique, ces états correspondent à des niveaux de tension. En électronique numérique, très souvent il s’agira d’une tension de 0V pour un état logique 0 ; d’une tension de 5V pour un état logique 1. On parle aussi de niveau HAUT ou BAS (in english : HIGH or LOW). Elle existe à cause de la conception physique des ordinateurs. En effet, ces derniers utilisent des millions de transistors, utilisés pour traiter des données binaires, donc deux états distincts uniquement (0 ou 1). Pour compter en base 2, ce n’est pas très difficile si vous avez saisi ce qu’est une base. Dans le cas de la base 10, chaque chiffre était multiplié par 10 à une certaine puissance en partant de la puissance 0. Et bien en base 2, plutôt que d’utiliser 10, on utilise 2. Par exemple, pour obtenir 11 en base 2 on écrira : 1011… En effet, cela\néquivaut à faire :\n+ 1 ×\n+ 1 × 2 0\n1 × 8 + 0 × 4 + 1 × 2 + 1 × 1\nUn chiffre en base 2 s’appelle un bit. Un regroupement de 8 bits s’appelle un octet. Ce vocabulaire est très important donc retenezle !\nLa base 16, ou base hexadécimale est utilisée en programmation, notamment pour représenter des octets facilement. Reprenons nos bits. Si on en utilise quatre, on peut représenter des nombres de 0 (0000) à 15 (1111). Ça tombe bien, c’est justement la portée d’un nombre hexadécimale ! En effet, comme dit plus haut il va de 0 (0000 ou 0)\nà F (1111 ou 15), ce qui représente 16 “chiffres” en hexadécimal. Grâce à cela, on peut représenter “simplement” des octets, en utilisant juste deux chiffres hexadécimaux.\nIci, rien de très compliqué, je vais simplement vous montrer comment on peut noter un nombre en disant à quelle base il appartient.\nBase binaire : (10100010) 2\nBase décimale : (162) 10\nBase hexadécimale : (A2) 16\nA présent, voyons les différentes méthodes pour passer d’une base à l’autre grâce aux\nSouvent, on a besoin de convertir les nombres dans des bases différentes. On\nretrouvera deux méthodes, bonnes à savoir l’une comme l’autre. La première vous apprendra à faire les conversions “à la main”, vous permettant de bien comprendre les choses. La seconde, celle de la calculatrice, vous permettra de faire des conversions sans vous fatiguer.\nDécimale – Binaire\nPour convertir un nombre décimal (en base 10) vers un nombre binaire (en base 2, vous suivez c’est bien !), il suffit de savoir diviser par … 2 ! Ça ira ? Prenez votre nombre, puis divisez le par 2. Divisez ensuite le quotient obtenu par 2… puis ainsi de suite jusqu’à avoir un quotient nul. Il vous suffit alors de lire les restes de bas en haut pour obtenir votre nombre binaire… Par exemple le nombre 42 s’écrira 101010 en binaire. Voilà un schéma de démonstration de cette méthode :\nOn garde les restes (en rouge) et on li le résultat de bas en haut.\nBinaire – Hexadécimal\nLa conversion de binaire à l’hexadécimal est la plus simple à réaliser. Tout d’abord, commencez à regrouper les bits par blocs de quatre en commençant par la droite. Si il n’y a pas assez de bits à gauche pour faire le dernier groupe de quatre, on rajoute des\nzéros. Prenons le nombre 42, qui s’écrit en binaire, on l’a vu, 101010, on obtiendra\ndeux groupes de 4 bits qui seront 0010 1010. Ensuite, il suffit de calculer bloc par bloc pour obtenir un chiffre hexadécimal en prenant en compte la valeur de chaque bit. Le\npremier bit, de poids faible\n1 × 8 + 0 × 4 + 1 × 2 + 0 × 1 = 10\n). Donc 42 en base\nvaudra simplement 2 (\ndécimale vaut 2A en base hexadécimale, ce qui s’écrit aussi\npasser de hexadécimal à binaire, il suffit de faire le fonctionnement inverse en s’aidant de la base décimale de temps en temps. La démarche à suivre est la suivante :\n: A en hexadécimal). Ensuite, l’autre bloc\n0 × 8 + 0 × 4 + 1 × 2 + 0 × 1 = 2\nJe sépare les chiffres un par un (on obtient 2 et A)\nJe “convertis” leurs valeurs en décimal (ce qui nous fait 2 et 10)\nJe met ces valeurs en binaire (et on a donc 0010 1010)\nDécimal – Hexadécimal\nCe cas est plus délicat à traiter, car il nécessite de bien connaître la table de multiplication par 16. Comme vous avez bien suivi les explications précédentes, vous comprenez comment faire ici… Mais comme je suis nul en math, je vous conseillerais de faire un passage par la base binaire pour faire les conversions !\nPour cela, je vais dans Démarrer / Tous les programmes / Accessoires / Calculatrice. Qui a dit que j’étais fainéant ? :colere2:\nVous voyez en haut qu’il y a des options à cocher pour afficher le nombre entré dans la base que l’on veut. Présentement, je suis en base 10 (décimale – bouton Déc). Si je clique sur Hex :\nJe vois que mon nombre 42 a été converti en : 2A. Et maintenant, si je clique sur Bin :\nNotre nombre a été converti en : 00101010 Oui, c’est vrai ça. Pour quoi on a pas commencé par expliquer ça ? Qui sait.\n[Arduino 103] Le logiciel\nAfin de vous laisser un léger temps de plus pour vous procurer votre carte Arduino, je vais vous montrer brièvement comment se présente le logiciel Arduino.\nIl n’y a pas besoin d’installer le logiciel Arduino sur votre ordinateur puisque ce dernier est une version portable. Regardons ensemble les étapes pour préparer votre ordinateur à l’utilisation de la carte Arduino.\nPour télécharger le logiciel, il faut se rendre sur la page de téléchargement du site arduino.cc. Vous avez deux catégories :\nDownload : Dans cette catégorie, vous pouvez télécharger la dernière version du logiciel. Les plateformes Windows, Linux et Mac sont supportées par le logiciel. C’est donc ici que vous allez télécharger le logiciel.\nPrevious IDE Versions : Dans cette catégorielà, vous avez toutes les versions du logiciel, sous les plateformes précédemment citées, depuis le début de sa création.\nPour moi ce sera sous Windows. Je clique sur le lien Windows et le fichier apparait :\nTéléchargement du logiciel Arduino\nUne fois que le téléchargement est terminé, vous n’avez plus qu’à décompresser le\nfichier avec un utilitaire de décompression (7zip, WinRar, …). A l’intérieur du dossier se trouvent quelques fichiers et l’exécutable du logiciel :\nExécutable du logiciel Arduino\nCliquez sur le lien Mac OS. Un fichier .dmg apparait. Enregistrezle.\nTéléchargement sous Mac os\nDoublecliquez sur le fichier .dmg :\nOn y trouve l’application Arduino (.app), mais aussi le driver à installer (.mpkg). Procédez à l’installation du driver puis installez l’application en la glissant dans le raccourci du dossier “Applications” qui est normalement présent sur votre ordinateur.\nRien de plus simple, en allant dans la logithèque, recherchez le logiciel “Arduino”. Sinon vous pouvez aussi passer par la ligne de commande:\nPlusieurs dépendances seront installées en même temps.\nJe rajoute un lien qui vous mènera vers la page officielle.\nLançons le logiciel en doublecliquant sur l’icône avec le symbole “infinie” en vert. C’est l’exécutable du logiciel. Après un léger temps de réflexion, une image s’affiche :\nCette fois, après quelques secondes, le logiciel s’ouvre. Une fenêtre se présente à nous\nCe qui saute aux yeux en premier, c’est la clarté de présentation du logiciel. On voit tout de suite son interface intuitive. Voyons comment se compose cette interface.\nJ’ai découpé, grâce à mon ami paint.net, l’image précédente en plusieurs parties :\nLe cadre numéro 1 : ce sont les options de configuration du logiciel\nLe cadre numéro 2 : il contient les boutons qui vont nous servir lorsque l’on va programmer nos cartes\nLe cadre numéro 3 : ce bloc va contenir le programme que nous allons créer\nLe cadre numéro 4 : celuici est important, car il va nous aider à corriger les fautes dans notre programme. C’est le débogueur.\nApproche et utilisation du logiciel\nAttaquonsnous plus sérieusement à l’utilisation du logiciel. La barre des menus est entourée en rouge et numérotée par le chiffre 1.\nLe menu File\nC’est principalement ce menu que l’on va utiliser le plus. Il dispose d’un certain nombre de choses qui vont nous être très utiles. Il a été traduit en francais progressivement, nous allons donc voir les quelques options qui sortent de l’ordinaire :\nCarnet de croquis : CE menu regroupe les fichiers que vous avez pu faire jusqu’à maintenant (et s’ils sont enregistré dans le dossier par défaut du logiciel)\nExemples (exemples) : ceci est important, toute une liste se déroule pour afficher les noms d’exemples de programmes existants ; avec çà, vous pourrez vous aider/inspirer pour créer vos propres programmes ou tester de nouveaux composants\nTéléverser : Permet d’envoyer le programme sur la carte Arduino. Nous y reviendrons .\nTéléverser avec un programmateur : Idem que si dessus, mais avec l’utilisation d’un programmateur (vous n’en n’aurez que très rarement besoin).\nPréférences : Vous pourrez régler ici quelques paramètres du logiciel\nLe reste des menus n’est pas intéressant pour l’instant, on y reviendra plus tard, avant\nde commencer à programmer.\nVoyons à présent à quoi servent les boutons, encadrés en rouge et numérotés par le chiffre 2.\nBouton 1 : Ce bouton permet de vérifier le programme, il actionne un module qui cherche les erreurs dans votre programme\nBouton 2 : Charge (téléverse) le programme dans la carte Arduino\nBouton 3 : Crée un nouveau fichier\nBouton 4 : Ouvre un fichier\nBouton 5 : Enregistre le fichier\nBouton 6 : Ouvre le moniteur série (on verra plus tard ce que c’est )\nEnfin, on va pouvoir s’occuper du matériel que vous devriez tous posséder en ce moment même : la carte Arduino !\n[Arduino 104] Le matériel\nPour commencer notre découverte de la carte Arduino, je vais vous présenter la carte en ellemême. Nous allons voir comment s’en servir et avec quoi. J’ai représenté en rouge sur cette photo les points importants de la carte.\nVoyons quels sont ces points importants et à quoi ils servent.\nVoilà le cerveau de notre carte (en 1). C’est lui qui va recevoir le programme que vous aurez créé et qui va le stocker dans sa mémoire puis l’exécuter. Grâce à ce programme, il va savoir faire des choses, qui peuvent être : faire clignoter une LED, afficher des caractères sur un écran, envoyer des données à un ordinateur, …\nPour fonctionner, la carte a besoin d’une alimentation. Le microcontrôleur fonctionnant sous 5V, la carte peut être alimentée en 5V par le port USB (en 2) ou bien par une alimentation externe (en 3) qui est comprise entre 7V et 12V. Cette tension doit être continue et peut par exemple être fournie par une pile 9V. Un régulateur se charge ensuite de réduire la tension à 5V pour le bon fonctionnement de la carte. Pas de danger de tout griller donc! Veuillez seulement à respecter l’intervalle de 7V à 15V (même si le régulateur peut supporter plus, pas la peine de le retrancher dans ses limites)\nLes trois “points blancs” entourés en rouge (4) sont en fait des LED dont la taille est de\nl’ordre du millimètre. Ces LED servent à deux choses :\nCelle tout en haut du cadre : elle est connectée à une broche du microcontrôleur et va servir pour tester le matériel. Nota : Quand on branche la carte au PC, elle clignote quelques secondes.\nLes deux LED du bas du cadre : servent à visualiser l’activité sur la voie série (une pour l’émission et l’autre pour la réception). Le téléchargement du programme dans le microcontrôleur se faisant par cette voie, on peut les voir clignoter lors du chargement.\nLa carte Arduino ne possédant pas de composants qui peuvent être utilisés pour un programme, mis a par la LED connectée à la broche 13 du microcontrôleur, il est nécessaire de les rajouter. Mais pour ce faire, il faut les connecter à la carte. C’est là qu’intervient la connectique de la carte (en 5a et 5b). Par exemple, on veut connecter une LED sur une sortie du microcontrôleur. Il suffit juste le la connecter, avec une résistance en série, à la carte, sur les fiches de connections de la carte. Cette connectique est importante et a un brochage qu’il faudra respecter. Nous le verrons quand nous apprendrons à faire notre premier programme. C’est avec cette connectique que la carte est “extensible”, car l’on peut y brancher tous types de montages et modules ! Par exemple, la carte Arduino Uno peut être étendue avec des shields, comme le « Shield Ethernet » qui permet de connecter cette dernière à internet.\nUne carte Arduino étendue avec un Ethernet Shield\nAfin d’utiliser la carte, il faut l’installer. Normalement, les drivers sont déjà installés sous GNU/Linux. Sous mac, il suffit de double cliquer sur le fichier .mkpg inclus dans le téléchargement de l’application Arduino et l’installation des drivers s’exécute de façon automatique.\nLorsque vous connectez la carte à votre ordinateur sur le port USB, un petit message en bas de l’écran apparaît. Théoriquement, la carte que vous utilisez doit s’installer toute seule. Cependant, si vous êtes sous Win 7 comme moi, il se peut que ca ne marche pas du premier coup. Dans ce cas, laisser la carte branchée puis ensuite allez dans le panneau de configuration. Une fois là, cliquez sur “système” puis dans le panneau de gauche sélectionnez “gestionnaire de périphériques”. Une fois ce menu ouvert, vous\ndevriez voir un composant avec un panneau “attention” jaune. Faites un clic droit sur le composant et cliquez sur “Mettre à jour les pilotes”. Dans le nouveau menu, sélectionnez l’option “Rechercher le pilote moimême”. Enfin, il ne vous reste plus qu’à aller sélectionner le bon dossier contenant le driver. Il se trouve dans le dossier d’Arduino que vous avez du décompresser un peu plus tôt et se nomme “drivers” (attention, ne descendez pas jusqu’au dossier “FTDI”). Par exemple, pour moi le chemin sera:\nIl semblerait qu’il y est des problèmes en utilisant la version francaise d’Arduino (les drivers sont absents du dossier). Si c’est le cas, il vous faudra télécharger la version originale (anglaise) pour pouvoir installer les drivers.\nAprès l’installation et une suite de clignotement sur les microLED de la carte, celleci devrait être fonctionnelle; une petite LED verte témoigne de la bonne alimentation de la carte :\nCarte connectée et alimentée\nAvant de commencer à programmer la tête baissée, il faut, avant toutes choses, tester le bon fonctionnement de la carte. Car ce serait idiot de programmer la carte et chercher les erreurs dans le programme alors que le problème vient de la carte ! Nous allons tester notre matériel en chargeant un programme qui fonctionne dans la carte.\nMais, on n’en a pas encore fait de programmes ? o_O\nTout juste ! Mais le logiciel Arduino contient des exemples de programmes. Et bien ce sont ces exemples que nous allons utiliser pour tester la carte.\n1ère étape : ouvrir un programme\nNous allons choisir un exemple tout simple qui consiste à faire clignoter une LED. Son nom est Blink et vous le trouverez dans la catégorie Basics :\nUne fois que vous avez cliqué sur Blink, une nouvelle fenêtre va apparaître. Elle va contenir le programme Blink. Vous pouvez fermer l’ancienne fenêtre qui va ne nous servir plus à rien.\nAvant d’envoyer le programme Blink vers la carte, il faut dire au logiciel quel est le nom de la carte et sur quel port elle est branchée. Choisir la carte que l’on va programmer. Ce n’est pas très compliqué, le nom de votre carte est indiqué sur elle. Pour nous, il s’agit de la carte “Uno”. Allez dans le menu “Tools” (“outils” en français) puis dans “Board” (“carte” en français). Vérifiez que c’est bien le nom “Arduin Uno” qui est coché. Si ce n’est pas le cas, cochezle.\nChoisissez le port de connexion de la carte. Allez dans le menu Tools, puis Serial port. Là, vous choisissez le port COMX, X étant le numéro du port qui est affiché. Ne choisissez pas COM1 car il n’est quasiment jamais connecté à la carte. Dans mon cas, il s’agit de COM5 :\nPour trouver le port de connexion de la carte, vous pouvez aller dans le gestionnaire de périphérique qui se trouve dans le panneau de configuration. Regardez à la ligne Ports (COM et LPT) et là, vous devriez avoir Arduino Uno (COMX). Aller, une image pour le plaisir :\nTrès bien. Maintenant, il va falloir envoyer le programme dans la carte. Pour ce faire, il suffit de cliquer sur le bouton Téléverser, en jauneorangé sur la photo :\nVous verrez tout d’abord le message “Compilation du croquis en cours…” pour vous informer que le programme est en train d’être compilé en langage machine avant d’être envoyé. Ensuite vous aurez ceci :\nEn bas dans l’image, vous voyez le texte : “Téléversement…“, cela signifie que le logiciel est en train d’envoyer le programme dans la carte. Une fois qu’il a fini, il affiche un autre message :\nLe message afficher : “Téléversement terminé” signale que le programme à bien été chargé dans la carte. Si votre matériel fonctionne, vous devriez avoir une LED sur la carte qui clignote :\nSi vous n’obtenez pas ce message mais plutôt un truc en rouge, pas d’inquiétude, le matériel n’est pas forcément défectueux!\nEn effet, plusieurs erreurs sont possibles:\nl’IDE recompile avant d’envoyer le code, vérifier la présence d’erreur\nLa voie série est peutêtre mal choisi, vérifier les branchements et le choix de la voie série\nl’IDE est codé en JAVA, il peutêtre capricieux et bugger de temps en temps (surtout avec la voie série…) : réessayez l’envoi!\nLED sur la carte qui clignote\nNous avons vu précédemment ce qu’était une carte électronique programmable. Nous avons également vu de quels éléments se basait une carte électronique pour fonctionner (schéma électronique, schéma de câblage). Je viens de vous présenter la carte, de quoi elle est principalement constituée. Enfin, je vous ai montré comment l’utiliser de manière à faire clignoter une petite lumière. Dorénavant, nous allons voir comment elle fonctionne de façon globale et répondre à quelques questions qui pourraient vous trotter dans la tête : “Comment la carte sait qu’il y a une LED de connectée ?”, “Et comment saitelle que c’est sur telle broche ?”, “Et le programme, où estce qu’il se trouve et sous quelle forme ?”, “Comment la carte fait pour comprendre ce qu’elle doit faire ?”, … De nombreuses questions, effectivement !\nPartons du programme\nLe contenu du programme, donc le programme en luimême, est ce qui va définir chaque action que va exécuter la carte Arduino. Mais ce n’est pas tout ! Dans le programme il y a plusieurs zones, que nous verrons plus en détail tout au long de la lecture de ce cours, qui ont chacune un rôle particulier.\nLa première zone sert principalement (je ne vais pas m’étendre) à dire à la carte de garder en mémoire quelques informations qui peuvent être : l’emplacement d’un élément connecté à la carte, par exemple une LED en broche 13, ou bien une valeur quelconque qui sera utile dans le programme :\nLa zone secondaire est l’endroit où l’on va initialiser certains paramètres du\nprogramme. Par exemple, on pourra dire à la carte qu’elle devra communiquer\navec l’ordinateur ou simplement lui dire ce qu’elle devra faire de le LED qui est connectée sur sa broche 13. On peut encore faire d’autres choses, mais nous le\nLa dernière zone est la zone principale où se déroulera le programme. Tout ce qui va être écrit dans cette zone sera exécuté par la carte, se sont les actions que\nla carte fera. Par exemple, c’est ici qu’on pourra lui dire de faire clignoter la LED sur sa broche 13. On pourra également lui demander de faire une opération telle\nEn conclusion, tout (vraiment tout !) ce que va faire la carte est inscrit dans le programme. Sans programme, la carte ne sert à rien ! C’est grâce au programme que la carte Arduino va savoir qu’une LED est connectée sur sa broche 13 et ce qu’elle va devoir faire avec, allumer et éteindre la LED alternativement pour la faire clignoter.\nLe programme est envoyé dans la carte lorsque vous cliquez sur le bouton . Le logiciel Arduino va alors vérifier si le programme ne contient pas d’erreur et ensuite le compiler (le traduire) pour l’envoyer dans la carte :\nAu départ, le programme est sous forme de texte, puis il est transformé en un langage\ncomposé uniquement de 0 et de 1 (ce qui est absolument illisible en soi !\nL’envoi du programme est géré par votre ordinateur : le programme passe, sous forme de 0 et de 1, dans le câble USB qui relie votre ordinateur à votre carte et arrive dans la carte. Le reste se passe dans la carte ellemême…\nRéception du programme\nLe programme rentre donc dans la carte en passant en premier par le connecteur USB de celleci. Il va alors subir une petite transformation qui permet d’adapter le signal électrique correspondant au programme (oui car le programme transite dans le câble USB sous forme de signal électrique) vers un signal plus approprié pour le microcontrôleur. On passe ainsi d’un signal codé pour la norme USB à un signal codé pour une simple voie série (que l’on étudiera plus tard d’ailleurs). Puis ce “nouveau” signal est alors intercepté par le microcontrôleur.\nTout le reste se passe alors…\nA l’intérieur du microcontrôleur\nL’emplacement du programme\nLe microcontrôleur reçoit le programme sous forme de signal électrique sur ses broches Tx et Rx, d’ailleurs disponible sur les broches de la carte (cf. image). Une fois qu’il est reçu, il est intégralement stocké dans une mémoire de type Flash que l’on appellera “la mémoire de programme”. Ensuite, lorsque la carte démarre “normalement” (qu’aucun programme n’est en train d’être chargé), le cerveau va alors gérer les données et les répartir dans les différentes mémoires :\nLa mémoire programme est celle qui va servir à savoir où l’on en est dans le programme, à quelle instruction on est rendu. C’est à dire, en quelque sorte, pointer sur des morceaux des zones 2 et 3 que l’on a vu dans le précédent exemple de programme.\nLa mémoire de données, aussi appelé “RAM” (comme dans votre ordinateur) va\nstocker les variables telles que le numéro de la broche sur laquelle est connectée une LED, ou bien une simple valeur comme un chiffre, un nombre, des caractères, etc.\nVoici un petit synoptique qui vous montre un peu l’intérieur du microcontrôleur (c’est\nDémarrage du microcontrôleur\nLorsque le microcontrôleur démarre, il va commencer par lancé un bout de code particulier : le bootloader. C’est ce dernier qui va surveiller si un nouveau programme arrive sur la voie USB et s’il faut donc changer l’ancien en mémoire par le nouveau. Si rien n’arrive, il donne la main à votre programme, celui que vous avez créé. Ce dernier va alors défiler, instruction par instruction. Chaque fois qu’une nouvelle variable sera nécessaire, elle sera mise en RAM pour qu’on ai une mémoire de cette dernière (et supprimer lorsqu’elle n’est plus nécessaire). Sinon, les instructions vont se suivre une par une, dans l’ordre que vous les avez écrites.\n[Arduino 105] Le langage Arduino (1/2)\nA présent que vous avez une vision globale sur le fonctionnement de la carte Arduino, nous allons pouvoir apprendre à programmer avant de nous lancer dans la réalisation de programmes très simple pour débuter ! Pour pouvoir programmer notre carte, il nous faut trois choses :\nEt connaitre le langage Arduino\nC’est ce dernier point qu’il nous faut acquérir. Le but même de ce chapitre est de vous apprendre à programmer avec le langage Arduino. Cependant, ce n’est qu’un support de cours que vous pourrez parcourir lorsque vous devrez programmer tout seul votre carte. En effet, c’est en manipulant que l’on apprend, ce qui implique que votre apprentissage en programmation sera plus conséquent dans les prochains chapitres que dans ce cours même.\nLe langage Arduino est très proche du C et du C++. Pour ceux dont la connaissance de ces langages est fondée, ne vous sentez pas obligé de lire les deux chapitre sur le langage Arduino. Bien qu’il y ait des points quelques peu important.\nLa syntaxe d’un langage de programmation est l’ensemble des règles d’écritures liées à ce langage. On va donc voir dans ce souschapitre les règles qui régissent l’écriture du langage Arduino.\nLe code minimal\nAvec Arduino, nous devons utiliser un code minimal lorsque l’on crée un programme. Ce code permet de diviser le programme que nous allons créer en deux grosses parties.\nVous avez donc devant vous le code minimal qu’il faut insérer dans votre programme. Mais que peutil bien signifier pour quelqu’un qui n’a jamais programmé ?\nDans ce code se trouvent deux fonctions. Les fonctions sont en fait des portions de code.\nCette fonction setup() est appelée une seule fois lorsque le programme commence. C’est pourquoi c’est dans cette fonction que l’on va écrire le code qui n’a besoin d’être exécuté une seule fois. On appelle cette fonction : “fonction d’initialisation“. On y retrouvera la mise en place des différentes sorties et quelques autres réglages. C’est un peu le checkup de démarrage. Imaginez un pilote d’avion dans sa cabine qui fait\n:  patte 2 en sortie, état haut ? – OK – timer 3 à 15 millisecondes ? – OK\n… Une fois que l’on a initialisé le programme il faut ensuite créer son “cœur”, autrement\ndit le programme en lui même.\nC’est donc dans cette fonction loop() où l’on va écrire le contenu du programme. Il faut savoir que cette fonction est appelée en permanence, c’estàdire qu’elle est exécutée une fois, puis lorsque son exécution est terminée, on la réexécute et encore et encore. On parle de boucle infinie.\nA titre informatif, on n’est pas obligé d’écrire quelque chose dans ces deux fonctions. En revanche, il est obligatoire de les écrire, même si elles ne contiennent aucun code !\nDans ces fonctions, on écrit quoi ?\nC’est justement l’objet de ce paragraphe. Dans votre liste pour le diner de ce soir, vous écrivez les tâches importantes qui vous attendent. Ce sont des instructions. Les instructions sont des lignes de code qui disent au programme : “fait ceci, fait cela, …” C’est tout bête mais très puissant car c’est ce qui va orchestrer notre programme.\nLes points virgules terminent les instructions. Si par exemple je dis dans mon programme : “appelle la fonction couperDuSaucisson” je dois mettre un point virgule après l’appel de cette fonction.\nLes points virgules ( ; ) sont synonymes d’erreurs car il arrive très souvent de les oublier à la fin des instructions. Par conséquent le code ne marche pas et la recherche de l’erreur peut nous prendre un temps conséquent ! Donc faites bien attention.\nLes accolades sont les “conteneurs” du code du programme. Elles sont propres aux fonctions, aux conditions et aux boucles. Les instructions du programme sont écrites à l’intérieur de ces accolades. Parfois elles ne sont pas obligatoires dans les conditions (nous allons voir plus bas ce que c’est), mais je recommande de les mettre tout le temps ! Cela rendra plus lisible votre programme.\nPour finir, on va voir ce qu’est un commentaire. J’en ai déjà mis dans les exemples de codes. Ce sont des lignes de codes qui seront ignorées par le programme. Elles ne servent en rien lors de l’exécution du programme.\nMais alors c’est inutile ? o_O\nNon car cela va nous permettre à nous et aux programmeurs qui lirons votre code (s’il y en a) de savoir ce que signifie la ligne de code que vous avez écrite. C’est très important de mettre des commentaires et cela permet aussi de reprendre un programme laissé dans l’oubli plus facilement ! Si par exemple vous connaissez mal une instruction que vous avez écrite dans votre programme, vous mettez une ligne de commentaire pour vous rappeler la prochaine fois que vous lirez votre programme ce que la ligne signifie. Ligne unique de commentaire :\nLigne ou paragraphe sur plusieurs lignes :\nIl est formellement interdit de mettre des accents en programmation. Sauf dans les commentaires.\nNous l’avons vu, dans un microcontrôleur, il y a plusieurs types de mémoire. Nous nous occuperons seulement de la mémoire “vive” (RAM) et de la mémoire “morte” (EEPROM). Je vais vous poser un problème. Imaginons que vous avez connecté un bouton poussoir sur une broche de votre carte Arduino. Comment allezvous stocker l’état du bouton (appuyé ou éteint) ?\nUne variable, qu’est ce que c’est ?\nUne variable est un nombre. Ce nombre est stocké dans un espace de la mémoire vive (RAM) du microcontrôleur. La manière qui permet de les stocker est semblable à celle utilisée pour ranger des chaussures : dans un casier numéroté.\nChaussures rangées dans des cases numérotées\nUne variable est un nombre, c’est tout ? o_O\nCe nombre a la particularité de changer de valeur. Etrange n’estce pas ? Et bien pas tant que ça, car une variable est en fait le conteneur du nombre en question. Et ce conteneur va être stocké dans une case de la mémoire. Si on matérialise cette explication par un schéma, cela donnerait :\nnombre => variable => mémoire\nle symbole “=>” signifiant : “est contenu dans…”\nLe nom d’une variable\nLe nom de variable accepte quasiment tous les caractères sauf :\n. (le point)\n, (la virgule)\né,à,ç,è (les accents)\nBon je vais pas tous les donner, il n’accepte que l’alphabet alphanumérique ([az], [A Z], [09]) et _ (underscore)\nSi on donne un nombre à notre programme, il ne sait pas si c’est une variable ou pas. Il faut le lui indiquer. Pour cela, on donne un type aux variables. Oui, car il existe plusieurs types de variables ! Par exemple la variable “x” vaut 4 :\nEt bien ce code ne fonctionnerait pas car il ne suffit pas ! En effet, il existe une multitude de nombres : les nombres entiers, les nombres décimaux, … C’est pour cela qu’il faut assigner une variable à un type. Voilà les types de variables les plus répandus :\nQuel nombre il stocke ? entier\nValeurs maximales du\n32 768 à +32 767\n2 147 483 648 à +2 147 483\n128 à +127\nà +3.4 x\nPar exemple, si notre variable “x” ne prend que des valeurs entières, on utilisera les types int, long, ou char. Si maintenant la variable “x” ne dépasse pas la valeur 64 ou 87, alors on utilisera le type char.\nSi en revanche x = 260, alors on utilisera le type supérieur (qui accepte une plus grande quantité de nombre) à char, autrement dit int ou long.\nMais t’es pas malin, pour éviter les dépassements de valeur ont met tout dans des double ou long !\nOui, mais NON. Un microcontrôleur, ce n’est pas un ordinateur 2GHz multicore, 4Go de RAM ! Ici on parle d’un système qui fonctionne avec un CPU à 16MHz (soit 0,016 GHz) et 2 Ko de SRAM pour la mémoire vive. Donc deux raisons font qu’il faut choisir ses variables de manière judicieuse :\n La RAM n’est pas extensible, quand il y en a plus, y en a plus !\n Le processeur est de type 8 bits (sur Arduino UNO), donc il est optimisé pour faire des traitements sur des variables de taille 8 bits, un traitement sur une variable 32 bits prendra donc (beaucoup) plus de temps !\nSi à présent notre variable “x” ne prend jamais une valeur négative (20, 78, …), alors on utilisera un type nonsigné. C’est à dire, dans notre cas, un char dont la valeur n’est plus de 128 à +127, mais de 0 à 255. Voici le tableau des types non signés, on repère ces types par le mot unsigned (de l’anglais : nonsigné) qui les précède :\nQuel nombre il\nentier non négatif\nUne des particularités du langage Arduino est qu’il accepte un nombre plus important de types de variables. Je vous les liste dans ce tableau :\nQuel nombre il stocke ? entier non négatif entier non négatif\nboolean entier non négatif\nPour votre information, vous pouvez retrouver ces tableaux sur cette page.\nLes variables booléennes\nLes variables booléennes sont des variables qui ne peuvent prendre que deux valeurs : ou VRAI ou FAUX. Elles sont utilisées notamment dans les boucles et les conditions. Nous verrons pourquoi. Une variable booléenne peut être définie de plusieurs manières\nQuand une variable vaut “0″, on peut considérer cette variable comme une variable booléenne, elle est donc fausse. En revanche, lorsqu’elle vaut “1″ ou n’importe quelle valeurs différente de zéro, on peut aussi la considérer comme une variable booléenne, elle est donc vraie. Voilà un exemple :\nLe langage Arduino accepte aussi une troisième forme d’écriture (qui lui sert pour utiliser les broches de sorties du microcontrôleur) :\nNous nous servirons de cette troisième écriture pour allumer et éteindre des lumières…\nLes opérations “simples”\nOn va voir à présent les opérations qui sont possibles avec le langage Arduino (addition, multiplication, …). Je vous vois tout de suite dire : “Mais pourquoi on fait ça,\non l’a fait en primaire !\n” Et bien parce que c’est quelque chose d’essentiel, car on\npourra ensuite faire des opérations avec des variables. Vous verrez, vous changerez\nd’avis après avoir lu la suite !\nVous savez ce que c’est, pas besoin d’explications. Voyons comment on fait cette opération avec le langage Arduino. Prenons la même variable que tout à l’heure :\nFaisons maintenant une addition de variables :\nOn peut reprendre les exemples précédents, en faisant une soustraction :\nSoustraction de variables :\nAttention cependant, si vous essayer de stocker le résultat d’une division dans une variable de type char, int ou long, le résultat sera stocké sous la forme d’un entier arrondi au nombre inférieur. Par exemple dans le code précédent si on met z dans un int on aura :\nAprès cette brève explication sur les opérations de base, passons à quelque chose de plus sérieux. Le modulo est une opération de base, certes moins connue que les autres. Cette opération permet d’obtenir le reste d’une division.\nLe modulo est utilisé grâce au symbole %. C’est tout ce qu’il faut retenir. Autre exemple\nLe modulo ne peutêtre fait que sur des nombres entiers\nQuelques opérations bien pratiques\nVoyons un peu d’autres opérations qui facilitent parfois l’écriture du code.\nDerrière ce nom barbare se cache une simple opération d’addition.\n“var++;” revient à écrire : “var = var + 1;” En fait, on ajoute le chiffre 1 à la valeur de var. Et si on répète le code un certain nombre de fois, par exemple 30, et bien on aura var =\nC’est l’inverse de l’incrémentation. Autrement dit, on enlève le chiffre 1 à la valeur de var.\nLes opérations composées\nParfois il devient assez lassant de réécrire les mêmes chose et l’on sait que les programmeurs sont des gros fainéants ! Il existe des raccourcis lorsque l’on veut effectuer une opération sur une même variable :\nAvec un exemple, cela donnerait :\nL’opération de bascule (ou “inversion d’état”)\nUn jour, pour le projet du BAC, je devais (ou plutôt “je voulais”) améliorer un code qui servait à programmer un module d’une centrale de gestion domestique. Mon but était d’afficher un choix à l’utilisateur sur un écran. Pour ce faire, il fallait que je réalise une bascule programmée (c’est comme ça que je la nomme maintenant). Et après maintes recherches et tests, j’ai réussi à trouver ! Et il s’avère que cette “opération”, si l’on peut l’appeler ainsi, est très utile dans certains cas. Nous l’utiliserons notamment lorsque l’on voudra faire clignoter une lumière. Sans plus attendre, voilà cette astuce :\nAnalysons cette instruction. A chaque exécution du programme (oui, j’ai omis de vous le dire, il se répète jusqu’à l’infini), la variable x va changer de valeur :\n1 er temps : x = 1 – x soit x = 1 – 0 donc x = 1\n2 e temps : x = 1 – x or x vaut maintenant 1 donc x = 1 – 1 soit x = 0\n3 e temps : x vaut 0 donc x = 1 – 0 soit x = 1\nCe code se répète donc et à chaque répétition, la variable x change de valeur et passe de 0 à 1, de 1 à 0, de 0 à 1, etc. Il agit bien comme une bascule qui change la valeur d’une variable booléenne. En mode console cela donnerait quelque chose du genre (n’essayez pas cela ne marchera pas, c’est un exemple) :\nMais il existe d’autres moyens d’arriver au même résultat. Par exemple, en utilisant l’opérateur ‘!’ qui signifie “not” (“non”). Ainsi, avec le code suivant on aura le même fonctionnement :\nPuisqu’à chaque passage x devient “pas x” donc si x vaut 1 son contraire sera 0 et s’il vaut 0, il deviendra 1.\nQu’estce qu’une condition\nC’est un choix que l’on fait entre plusieurs propositions. En informatique, les conditions servent à tester des variables. Par exemple : Vous faites une recherche sur un site spécialisé pour acheter une nouvelle voiture. Vous imposez le prix de la voiture qui doit être inférieur à 5000€ (c’est un petit budget ). Le programme qui va gérer ça va faire appel à un test conditionnel. Il va éliminer tous les résultats de la recherche dont le prix est supérieur à 5000€.\nPour tester des variables, il faut connaître quelques symboles. Je vous ai fait un joli tableau pour que vous vous repériez bien :\n< Celuici teste l’infériorité d’une variable par rapport à une autre\nA quoi il sert Ce symbole, composé de deux égales, permet de tester l’égalité entre deux variables\nLà c’est la supériorité d’une variable par rapport à une autre teste l’infériorité ou l’égalité d’une variable par rapport à une autre teste la supériorité ou l’égalité d’une variable par rapport à une autre\nteste la différence entre deux variables\n… est égale à …\n…est inférieur à…\n…est supérieur à… …est inférieur ou égale à… …est supérieur ou égal à… …est différent de…\n“Et si on s’occupait des conditions ? Ou bien sinon on va tranquillement aller boire un\nHa ! Je sais ! Cette phrase implique un choix : le\npremier choix est de s’occuper des conditions. Si l’interlocuteur dit oui, alors il s’occupe des conditions. Mais s’il dit non, alors il va boire un bon café. Il a donc l’obligation d’effectuer une action sur les deux proposées. En informatique, on parle de condition.\nbon café ?” Comment décortiquer cette phrase ? Mmm…\n“si la condition est vraie”, on fait une action. En revanche “si la condition est fausse”, on exécute une autre action.\nLa première condition que nous verrons est la condition if…else. Voyons un peu le fonctionnement.\nOn veut tester la valeur d’une variable. Prenons le même exemple que tout à l’heure. Je veux tester si la voiture est inférieure à 5000€.\nD’abord on définit la variable “prix_voiture”. Sa valeur est de 4800€. Ensuite, on doit tester cette valeur. Pour tester une condition, on emploie le terme if (de l’anglais “si”). Ce terme doit être suivi de parenthèses dans lesquelles se trouveront les variables à tester. Donc entre ces parenthèses, nous devons tester la variable prix_voiture afin de savoir si elle est inférieure à 5000€.\nOn peut lire cette ligne de code comme ceci : “si la variable prix_voiture est inférieure à 5000, on exécute le code qui se trouve entre les accolades.\nLes instructions qui sont entre les accolades ne seront exécutées que si la\ncondition testée est vraie !\nLe “schéma” à suivre pour tester une condition est donc le suivant :\nOn a pour l’instant testé que si la condition est vraie. Maintenant, nous allons voir comment faire pour que d’autres instructions soient exécutées si la condition est fausse. Le terme else de l’anglais “sinon” implique notre deuxième choix si la condition est fausse. Par exemple, si le prix de la voiture est inférieur à 5000€, alors je l’achète. Sinon, je ne l’achète pas. Pour traduire cette phrase en ligne de code, c’est plus simple qu’avec un if, il n’y a pas de parenthèses à remplir :\nLe else est généralement utilisé pour les conditions dites de défaut. C’est lui qui\nà le pouvoir sur toutes les conditions, c’estàdire que si aucune condition n’est vraie, on exécute les instructions qu’il contient.\nLe else n’est pas obligatoire, on peut très bien mettre plusieurs if à la suite.\nLe “schéma” de principe à retenir est le suivant :\nA ce que je vois, on a pas trop le choix : soit la condition est vraie, soit elle est\nfausse. Il n’y a pas d’autres possibilités ? o_O\nBien sur que l’on peut tester d’autres conditions ! Pour cela, on emploie le terme else if qui signifie “sinon si…” Par exemple, SI le prix de la voiture est inférieur à 5000€ je l’achète; SINON SI elle est égale à 5500€ mais qu’elle a l’option GPS en plus, alors je l’achète ; SINON je ne l’achète pas. Le sinon si s’emploie comme le if :\nA retenir donc, si la première condition est fausse, on teste la deuxième, si la deuxième est fausse, on teste la troisième, etc. “Schéma” de principe du else, idem au if :


"Deshaïkusvrir", un instant autour de la poésie japonaise - UNIVERSITÉ LE HAVRE NORMANDIE\nAccueil > Actualités > Campus > "Deshaïkusvrir", un instant autour de la poésie japonaise\nDes étudiant.e.s du DUT Information-Communication, option Métiers du livre et du patrimoine organisent un événement culturel autour du haïku, dans le but de sensibiliser des élèves de 6e du collège Romain Rolland à d’autres cultures.\nAutour d’une animation-goûter « Haïku » avec les élèves, parents et le personnel du collège, la poésie japonaise sera mise à l’honneur. A travers cinq ateliers d’écriture le but est de sensibiliser le public à la découverte d’un autre pays, d’une autre culture, d’un autre genre de poésie.\nLe 25 avril, lors d’une restitution, les enfants recevront le livre édité à partir de leurs réalisations, témoignage de leur implication dans une forme d’art japonais encore méconnue du grand public.\nCette animation est réalisée en partenariat avec Alain Legoin, maître haïkiste de l’association Haïkouest.\nC’est quoi cet Haïku ?\nLe haïku est un genre de poésie japonaise introduite en France par Paul-Louis Couchoud, philosophe, médecin et poète français, ami d’Anatole France au début du 20e siècle (1905). Contrairement à la forme japonaise, le haïku français est caractérisé par une forme moins codifiée de versification : trois lignes au maximum, la dernière marque la « césure » avec les deux premières lignes. Elle doit être réalisée de manière brève, épurée au niveau du style et suggérer l’instantanéité.\nMise en ligne : 02-04-2019 - Mise à jour : 08-04-2019


Présidentielle 2022: Et si Cheick Modibo Diarra renvoyait l'ascenseur à Moussa Mara - Sènè Kunafoni\nLe premier tour du scrutin de la présidentielle de 2022 est prévu pour quelques mois seulement. Cette fois-ci, nombreux homme politiques l’imagineront comme l’heure de leur accession au pouvoir. Car à présent, plusieurs d’entre eux se réjouissant de la disparition tragique du plus présidentiable, feu honorable Soumaila Cissé et la retraite forcée de l’ex-président, IBK, pensent de ces événements, une voix divine leur disant » Maintenant, c’est ton tour » Ce qu’on ne sait pas encore, c’est que le réveil risque d’être brutal le lendemain du vote. Certains animés d’un excès de confiance, seront tout simplement surpris de voir leur score aussi misérable qu’ils n’y croiront de toute leur existence. Et si les favoris Mara et Cheick Modibo Diarra, alliés d’hier se mettaient ensemble en inversant cette fois-ci les rôles. La victoire sera sans nul doute à leur portée. Car, ayant été un artisan de son score honorable en 2018, Moussa Mara, ce jeune doué de la politique réaliste mérite qu’on lui renvoie l’ascenseur pour son sacrifice au profit de la Candidature de l’ancien employé de la NASA et de Microsoft, le Dr Cheick Modibo Diarra allias Bamanan de Ségou.\nBechir Ben Haiadara\nFAMOC : Clôture de l’atelier de formation des bénéficiaires de guichets C, B2, B1 et A\nPreparés pour prendre en compte des aspects de 03 thématiques dans le dessein de leur permettre de bien réaliser leurs projets, le Fonds d’appui aux moteurs du changement (FAMOC) a organisé du 8 au 11 juin 2021, à l’hôtel Orpheus sise à Missabougou, sa une session de formation à l’intention […]


Les investisseurs achètent des actions lors d’une ipo, car c’est potentiellement à des prix les plus avantageux qu’ils peuvent se les offrir. En effet, le prix des trading sur l’eur/gbp actions a tendance à s’apprécier avec le temps. Ces premiers investisseurs s’adaptent généralement à ce que les titres qu’ils achètent s’apprécient rapidement après l’ipo, ils pourront ainsi les revendre pour faire des profits rapidement. Démo gratuite de trading avec dépôt de garantie. En intervenant sur un cfd, vous pouvez être exposé à trois différents types de frais. Il est important de comparer les offres pour trouver le courtier adapté à vos besoins.\nEl curso " forex: day trading de indices con scalping (0 a experto) " de cristian guereñu, es uno de los mejores videocursos si te interesa aprender trading. Au cas où trading sur l’eur/gbp nous n'avons pas été assez clair, un bonus forex sans dépôt n'est pas de l'argent gratuit.\nCréer votre blog avec drupal une plateforme très connue. La marge maximale pour l’évolution du coût salarial les deux prochaines années (2019-2020) a été fixée à 1,1%. Ce pourcentage est identique à celui qui avait été fixé pour la période 2017-2018. La trading sur l’eur/gbp concrétisation de cette marge salariale peut intervenir tant sur le plan sectoriel qu’au niveau de l’entreprise. 12Pour parfaire la définition de l’environnement du marché, il faut définir quelle est l’information dont dispose les participants avant d’entrer sur le marché. Dans ce type d’expérience, chaque sujet connaît sa fonction, vendeur ou acheteur, et ses valeurs limites pour le bien échangé. Il ne connaît rien de la valeur attribuée au bien par les autres intervenants sur le marché. Il ne sait rien non plus du nombre de vendeurs et d’acheteurs. La seule information commune à l’ensemble des participants porte sur les règles d’échanges qui seront utilisées: l’institution de marché.\nSes larges capacités signifient que l'indicateur momentum pourrait être trading sur l’eur/gbp un bon outil de trading pour vous.\nVous ne pouvez pas loger au sein de votre pea les titres d’une société non cotée dont vous (ou votre groupe familial) détenez plus de 25 % du capital. "trading sur l’eur/gbp Si le robot est si bon, pourquoi le vendre?". Maintenant que vous avez constitué une petite liste de scalping forex brokers régulé, vous devez commencer à regarder les instruments de trading disponibles ainsi que les spreads correspondants. Beaucoup de courtiers ont des commissions et ce n'est pas une mauvaise chose et certain même n'en possèdent pas!\nIl se trouve que ce que j'ai trouvé correspond à une analyse en composante de fourier du signal que constituent trading sur l’eur/gbp les cours de bourse. Comme je suis ingénieur de formation, je me suis empressé d'exploiter cette analogie. Cette formation s'adresse à une clientèle débutante/intermédiaire qui souhaite bâtir un portefeuille, comparer et analyser des titres boursiers, définir un plan d'investissement et gérer ses risques. Visitez la page d’inscription etoro 75% de comptes cfd de clients de détail perdent de l’argent.


Mer et Soleil - Camping au Languedoc, France - Réserver en ligne\nVos vacances en camping dans une station balnéaire très prisée !\nDécouverte, sports, relaxation, jeux d'eau, soirées n'attendent plus que vous au camping Mer et Soleil ! Un charmant programme pour passer un séjour inoubliable au Cap d'Agde, confortablement installé dans votre mobil-home réservé via LuxCamp.\nPourquoi réserver au camping Mer et Soleil ?\nle confort d'un camping-club 4 étoiles\nun superbe spa de 650 m²\n3 clubs pour enfants et ados\nLes nombreux points de restauration du camping Mer et Soleil\nDégustez de petits déjeuners savoureux dans votre mobil-home en allant chercher tout ce dont vous avez besoin à la boulangerie/viennoiserie ou au dépôt de pain du camping village. Ponctuez vos vacances en camping de moments gastronomiques en dégustant quelques spécialités locales au restaurant. Une pizzeria, un snack, une crêperie et un glacier combleront tous vos petits creux en journée.\nSports nautiques et activités aquatiques au camping Mer et Soleil.\nVous n'aurez qu'1,50 km à parcourir pour vous adonner à votre sport nautique préféré qu'il s'agisse de la planche à voile, de la voile, du ski nautique, de la plongée ou du kite surf. Une activité de canoë kayak est également proposée à 10 km. Revivez les voyages d'Ulysse en plongeant dans l'espace aquatique à thème du camping village qui vous promet des heures d'amusement et de sensations fortes en famille.


Burgaronne - Visites en Aquitaine\nAccueil > Pyrénées-Atlantiques > Béarn > Burgaronne\nLa commune de Burgaronne est installée sur une crête qui offre un point de vue plongeant sur toute la vallée, un atout primordial pendant plusieurs siècles.\nDu fait de sa situation élevée, le site de Burgaronne est probablement occupé dès l’époque gallo-romaine. La présence d’un castera, ou camp défensif, en témoigne.\nAu Moyen Âge, c’est un village de taille moyenne qui accueille une domenjadure (maison noble). Celle-ci explique les nombreuses maisons serves du bourg.\nPoint stratégique, Burgaronne se situe dès ses origines à proximité d’une voie romaine, mais aussi du chemin de Saint-Jacques-de-Compostelle. En effet, dès le XIIIe siècle, il est fait mention de la commanderie-espitaü de Sainte-Lucie. Elle appartient au monastère Notre-Dame-Sainte-Marie de Roncevaux, qui accueille et soigne les pèlerins. Le bâtiment disparaît dans un incendie lors des guerres de Religion qui ravagent le Béarn au XVIe siècle.\nPar la suite, Burgaronne connait d’autres conflits. La commune se trouve notamment sur l’itinéraire des protestants en fuite, au XVIIIe siècle. Puis, son castera est occupé lors de la Seconde Guerre mondiale par les Allemands qui y installent une batterie antiaérienne.\nDe nos jours, Burgaronne profite de sa vue imprenable sur Sauveterre et les environs pour développer le tourisme vert en ouvrant de nombreux chemins de randonnée et des pistes cavalières.\nPopulation : 99 habitants (1999)\nle gave d’Oloron, l’Arrioutèque, l’arrec Héuré\nBurgarone est citée dès la Réforme de Béarn en 1235. Plusieurs hypothèses se profilent concernant l’origine de son nom. Il peut provenir soit du latin burgus , « le bourg », accolé à un ancien nom de rivière. On suggère aussi une origine basque ( buru = « tête rocheuse » ; gar = « hauteur » ; on = « bon ») qui renvoie à la situation dominante du village. Située à plus de deux cents mètres d’altitude, Burgaronne est en effet la commune la plus élevée du canton de Sauveterre.\nMairie de Burgaronne : 05.59.38.93.77\nOffice de tourisme de Sauveterre-de-Béarn : 05.59.38.32.86 ou 05.59.38.32.86\nN 43° 24.879 - W 0° 54.496