arduino – Blog radioamateur de F8ASB https://blog.f8asb.com Promouvoir est notre devoir ... Tue, 03 Jun 2025 05:47:59 +0000 fr-FR hourly 1 98010425 Le salon des Hauts de France à Wingles 2025 en photos https://blog.f8asb.com/2025/06/02/le-salon-des-hauts-de-france-a-wingles-2025-en-photos/ https://blog.f8asb.com/2025/06/02/le-salon-des-hauts-de-france-a-wingles-2025-en-photos/#comments Mon, 02 Jun 2025 19:21:36 +0000 https://blog.f8asb.com/?p=9874 Continuer la lecture ]]>

Dans cet article, vous retrouverez les photos du salon des Hauts de France de samedi dernier.
J’ai pris beaucoup de photos avant l’ouverture, cela permet de bien voir les stands mais ce n’est pas représentatif de la fréquentation.

Pour conclure, c’était une première et une vraie réussite un grand bravo aux organisateurs.
Je n’ai pas pris le temps de prendre mon stand en photo mais Damien F8DSN à eu l’occasion de me filmer quand je décris le concept de relais modulaire.

Sinon il n’y a pas de plus dans le Nord, j’en conclue que le film devait être une fiction 🙂

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM ainsi que des actualités Tech et radio, en entrant votre adresse email ICI. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2025/06/02/le-salon-des-hauts-de-france-a-wingles-2025-en-photos/feed/ 1 9874
Le salon radioamateur des Hauts de France , c’est samedi prochain! https://blog.f8asb.com/2025/05/26/le-salon-radioamateur-des-hauts-de-france-cest-samedi-prochain/ https://blog.f8asb.com/2025/05/26/le-salon-radioamateur-des-hauts-de-france-cest-samedi-prochain/#comments Mon, 26 May 2025 16:43:01 +0000 https://blog.f8asb.com/?p=9857 Continuer la lecture ]]> Je ne sais pas si je verrai le mur d’eau quand j’arriverai dans le Nord, je ne sais pas si je vais pleurer quand je rentrerai mais…
Je sais que pour ceux qui feront le déplacement, ils auront l’occasion de participer à un tout nouvel événement qui demande un travail et une organisation importante.
Il est aussi à prendre en compte que c’est la participation et la réussite qui fera grandir ce salon, et par la même occasion faire venir des acteurs ou des vendeurs importants dans le futur.

Je ne fais pas beaucoup de salon, mais je me suis engagé auprès des organisateurs pour y participer et ma manière d’encourager les organisateurs à poursuivre en 2026 ;).

Après cette petite introduction, vous l’aurez compris, je serai présent et pour certain avec qui je communique par mail, nous aurons la possibilité de nous rencontrer.
Je suis persuadé que des OMs de Belgique feront aussi le déplacement.

J’ai reçu quelques mails suite à la parution de mon dernier post qui concerne une approche modulaire d’un relais ou d’un link.
J’ai le plaisir de vous annoncer que l’on pourra échanger sur mon stand sur ce sujet car je suis en train de finaliser une maquette de ce concept afin de le présenter samedi.
Vous avez certainement de bonnes raisons de vous déplacer et celle-ci en sera peut-être une de plus ;).
J’oubliais, je serai à coté de Muriel F4LQS et Damien F8DSN avec qui j’avais fait une vidéo sur la carte µUsbPlug.
Cela fait 2 bonnes raisons. 🙂

Selon le temps que j’arrive à y consacrer, j’aurais peut être d’autres nouveautés à partager avec vous.
J’amènerai quelques cartes, si vous avez des demandes spéciales, n’hésitez pas à me contacter pour être sûr d’avoir ce que vous souhaitez.

Je vous partage le plan et le positionnement des participants à ce salon.

Retrouvez des informations supplémentaire sur le site de l’Apra62

Pour certains d’entre vous je vous dis à samedi, pensez au covoiturage cela limite les frais, et c’est toujours plus sympa.

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM ainsi que des actualités Tech et radio, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2025/05/26/le-salon-radioamateur-des-hauts-de-france-cest-samedi-prochain/feed/ 2 9857
Vers une structure de relais modulaire https://blog.f8asb.com/2025/05/01/vers-une-structure-de-relais-modulaire/ https://blog.f8asb.com/2025/05/01/vers-une-structure-de-relais-modulaire/#respond Thu, 01 May 2025 09:40:39 +0000 https://blog.f8asb.com/?p=9836 Continuer la lecture ]]>

Projet relais modulaire

Dans cette article, je vous présente le projet de relais radioamateur modulaire.
Cette réflexion fait suite à ma volonté de réaliser la SvxCard en version 2.
J’ai régulièrement des demandes pour la SvxCard qui n’est plus disponible à ce jour.

Beaucoup de demandes concernant la SvxCard portaient sur le fait qu’elle intègre un relais, mais aussi une voie transpondeur.
La partie entrée/sortie, mesure analogique, écran, est beaucoup moins utilisée.

Le côté modularité répondra à la personnalisation et aux besoins de chacun, mais aussi à l’évolution possible des installations.
Il y a également le côté maintenance qui est intéressant : les modules sont interchangeables rapidement pour des interventions optimisées.

Je vous décris brièvement les différents modules de la photo ci-dessus.

L’ensemble des modules sera positionné sur un rail DIN.
C’est ce type de rail que l’on retrouve dans les armoires électriques pour fixer des modules de type disjoncteurs, automates, etc.

Le Module 1: l’alimentation, ce module pourra être une alimentation 230V -> 5V ou un convertisseur 12V -> 5V.
Il pourra intégrer n’importe quel module d’alimentation selon vos besoins.
Ci-dessus un exemple d’alimentation disponible sur rail avec des tensions et des intensités personnalisables.

Le Module 2: l’ordinateur, dans ce rack, on retrouvera l’informatique que l’on souhaite intégrer.
Les modules radio, étant en USB avec la µUsbPlug, permettent d’utiliser n’importe quel micro-ordinateur fonctionnant sous Linux.
Il suffira de l’intégrer dans un boîtier rail DIN.

Ci-dessus, un exemple de boîtier sur rail DIN pour Raspberry Pi.
On peut retrouver une quantité importante de boîtiers selon les micro-ordinateurs.
De plus, l’impression 3D ouvre des possibilités illimitées quant à la personnalisation des boîtiers.

Le module 3 et module 4, le module radio, ces modules feront la liaison entre l’ordinateur et les radios.

projet Radiomodule

Ci-dessus un aperçu de la carte.

À gauche, les connecteurs pour les radios.
Dans le cadre d’un relais, on raccordera le RX d’un côté et le TX de l’autre.
On retrouve des connecteurs RJ12 ou des broches PIN 2,54.
Dans le cadre d’une voie transpondeur on raccordera qu’un coté (TX/RX)

Au centre, on pourra emboîter directement la carte µUsbPlug ou la souder sur la platine.

À droite, un connecteur USB B, avec une adaptation possible vers un type C.
Les connecteurs situés de chaque côté serviront de bus de communication entre les modules.
Bien entendu, les composants seront placés selon les choix retenus.
On intégrera un module pour un relais ou un link, et deux modules si l’on souhaite faire une interconnexion radio ou une voie transpondeur, ou du packet radio / APRS via Direwolf.

Le module 5, le HMI, Human Machine Interface, ce module sera l’interface utilisateur, afin de visualiser l’état de fonctionnement du relais mais également d’interagir avec le système.
Il est, ci-dessous, représenté sur un module rail DIN, mais il pourra très bien être déporté. Il pourra être tactile ou équipé de boutons directionnels pour parcourir les différents menus.


Le module 6
, L’interface Entrée/Sorties, ce module regroupera l’ensemble des entrées et sorties, qu’elles soient digitales, analogiques, capteurs de température ou relais de commutation.
Il communiquera avec le micro-ordinateur (Module 2) et lui indiquera les mesures et l’état des E/S.
Il intègrera probablement un microcontrôleur qui effectuera toutes les mesures de manière régulière.
Une approche intéressante, par exemple dans le cadre d’un relais alimenté par énergie solaire, pourrait être une gestion du routage et des mesures des énergies.


Conclusion:

Voilà la description globale du projet. Les images utilisées sont là pour donner des exemples ; le choix du matériel n’est pas encore défini. Des connecteurs situés sur les côtés des modules seront utilisés pour communiquer entre eux et limiter autant que possible les câblages.
L’installation sera compatible avec Allstarlink, Svxlink et Direwolf ( packet ou APRS)

L’avancement du projet sera documenté sur ce blog.

N’hésitez pas à me faire part de vos remarques et idées suite à la lecture de cet article.
Si vous avez des idées de modules ou souhaitez travailler sur certains modules, prenez contact.

À ce niveau d’avancement, vos retours sont importants.

Je serai présent au nouveau salon organisé par F4KLR & l’APRA62, le 31 mai 2025 à Wingles. J’y présenterai mon avancée.

Je serai aussi à ISERAMAT le 21 juin à Tullins, avec un mois de travail supplémentaire pour ajouter des éléments par rapport au salon précédent.

Sur ce dernier, j’animerai une conférence sur les interfaces relais.

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM ainsi que des actualités Tech et radio, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2025/05/01/vers-une-structure-de-relais-modulaire/feed/ 0 9836
Wokwi , simulateur Arduino en ligne ! https://blog.f8asb.com/2022/12/29/wokwi-simulateur-arduino-en-ligne/ https://blog.f8asb.com/2022/12/29/wokwi-simulateur-arduino-en-ligne/#comments Thu, 29 Dec 2022 09:02:09 +0000 http://blog.f8asb.com/?p=8086 Continuer la lecture ]]>

Dans cette article, je vous présente un simulateur en ligne pour Arduino mais pas que….

C’est un outils vraiment super pour faire des développements sans avoir besoin des composants.Je vous indique simulateur Arduino mais il peut simuler d’autres microcontôleurs ( ESP32, Raspberry Pico, Arduino nano etc… ) et aussi le language MicroPython.


Le site s’appelle https://wokwi.com/ et il est vraiment super.

Vous pouvez accédez à des exemples directement sur le site:

Il vous suffit de créer un compte, c’est ce qui vous permettra de sauvegarder vos projets et de les partager avec vos amis Makers.

Vous irez dans la section language pour choisir Français.

Vous pouvez désormais créer un nouveau projet et choisir sur quel microcontrolleur vous allez travailler.
On choisi l’Arduino Uno, un des plus connu pour la démo.

A gauche vous aurez le code et à droite vous aurez les composants

On va ajouter un écran LCD 16×2, en cliquant sur le + violet, et le câbler, vous allez voir la quantité de capteurs et d’actionneurs disponibles. C’est vraiment super sympa.

On raccorde tout ça rien de bien compliqué on sélectionne les Pins à raccorder, sur chaque composant en positionnant la souris dessus, on obtient une aide en ligne avec des informations complémentaires en cliquant sur le ?.
En cliquant, sur les lignes de raccordement, il est possible de changer leur couleur.

On écrit un petit bout de code et on appuie sur le bouton Lecture en Vert sur le dessus de l’écran.

Voici le résultat de la simulation, vous pouvez le voir en live sur le lien ci-dessous:

https://wokwi.com/projects/352233118744674305

Conclusion:

Il s’agit vraiment d’un super outils avec des mises à jour régulières, vous pouvez bien sûr ajouter un port série pour faire du debug en programmant.
En devenant membre du Club vous aurez la possibilité de voter dans les développements des futures options en soutenant le projet.
Je vous ai montré un exemple très basique, à vous de faire preuve d’imagination, je suis certain que vous allez mettre cet outil dans vos raccourcis.

Groupe Facebook: https://facebook.com/groups/wokwi

Groupe Discord: https://discord.com/invite/e5yFaayXkK

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2022/12/29/wokwi-simulateur-arduino-en-ligne/feed/ 3 8086
Programmation Arduino graphique https://blog.f8asb.com/2016/02/14/programmation-arduino-graphique/ https://blog.f8asb.com/2016/02/14/programmation-arduino-graphique/#respond Sun, 14 Feb 2016 18:10:34 +0000 http://blog.f8asb.com/?p=2512 Continuer la lecture ]]> arduino graphique

Voici une petite compilation de logiciel pour programmer les Arduino avec une interface graphique. Cela peut simplifier la programmation ou alors cela peut vous permettre de commencer à programmer les Arduino plus facilement.


 

PiBot_miniBloqMinibloq
Site du logiciel
Page pour téléchargement


screenshot-01-tnVisuino
Site du logiciel
Page de téléchargement


Arduino-Debugger-Visualization-Command-Syntax

Visual micro
Site du logiciel
Page de téléchargement


embrio-arduino-screenshot

Embrio
Site du logiciel
Page de téléchargement


 

ardublock_01Ardublock
Site du logiciel
Page de téléchargement


UnknownCodebender
Site du logiciel
Développement en ligne depuis votre browser


png;base64a539e0b6aa9bf898

ModKit micro
Site du logiciel
Page de téléchargement


 

shot01Scratch
Site du logiciel
Page de téléchargement


Unknown-1

Fritzing (Permet de modéliser vos projets)
Site du logiciel
Page de téléchargement


Voila une série de logiciel à tester, ma préférence est Ardublock dont j’ai déjà consacré un article sur ce blog. Si vous connaissez d’autres logiciels faites moi un petit mail et je mettrais à jour cet article.

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2016/02/14/programmation-arduino-graphique/feed/ 0 2512
BANGGOOD: LE Programmateur TL866CS universel https://blog.f8asb.com/2016/02/13/banggood-le-programmateur-tl866cs-universel/ https://blog.f8asb.com/2016/02/13/banggood-le-programmateur-tl866cs-universel/#respond Sat, 13 Feb 2016 11:03:45 +0000 http://blog.f8asb.com/?p=2493 Continuer la lecture ]]> 832175647_430

Je vous présente LE programmateur qui peut vous permettre de programmer ou de tester, plus de 14000 composants.

Fenêtre du choix du composant, au compteur 14037 !

device tl866

Aperçu du logiciel version 6.50

software tl866Caractéristiques:

1. Vitesse de programmation rapide
2. Petite taille et faible consommation d’énergie, il est l’unique programmeur synthétisé qui ne s’échauffe pas
3. Les composants programmables n’ont pas besoin de se connecter à une source d’alimentation externe car sa consommation est si faible que le port USB peut fournir.
4. Sa conception de 40 broches lui fournit la meilleure protection interne contre les surtensions , la plus puissante protection VPP et VCC de quatrième niveau contre les surintensités, ce qui assure que le PC ou programmeur ne sera pas remis à zéro lors du court-circuit
5. Soutient +14000 chips, ( chips en série et en parallèle )
6. Peut vraiment tester les circuits intégrés de la série 74/54 CMOS4000 et montrer  l’erreur du circuit
7. Fonctions des numéros de série de composant
8. Compatible avec les systèmes d’exploitation à 32 bits, tels que Win2000, WinXP, Win2003, Win2008, Win Vista et Win7

Modèle: Mini TL866CS
Couleur: blanc
Dimension: environ 102 x 61 x 45 mm
Longueur de câble USB: environ 120 cm
Dimension de l’emballage: 165 x 105 x 78 cm

Contenu du colis:

1 x Programmeur
1 x CD
1 x Câble USB
9 adaptateurs + extracteur PLCC

Vous trouverez sur le lien suivant les composants pris en charge: http://autoelectric.cn/MiniPro/MiniProSupportList.txt

Le Kit avec adaptateur de programmation est disponible chez BANGGOOD à 48,23 € frais de port compris ici

kit banggood

Téléchargement du logiciel support:
RAR_12060

Site du fabricant:
http://autoelectric.cn/EN/TL866_MAIN.html

Videos sur le sujet:


Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2016/02/13/banggood-le-programmateur-tl866cs-universel/feed/ 0 2493
Nouvelle page pour un accès direct aux articles https://blog.f8asb.com/2015/12/06/nouvelle-page-pour-un-acces-direct-aux-articles/ https://blog.f8asb.com/2015/12/06/nouvelle-page-pour-un-acces-direct-aux-articles/#respond Sun, 06 Dec 2015 08:03:06 +0000 http://blog.f8asb.com/?p=2345 Continuer la lecture ]]> À partir du moment ou le nombre d’article oblige à parcourir les pages les unes après les autres, il devient difficile de retrouver une information précise dans un blog.SEO-your-business-blog2
Il y a maintenant plus de 150 articles sur ce Blog et je reçois souvent des emails avec des questions dont les réponses sont déjà présentes sur ce Blog.
La nouvelle page disponible sur le menu supérieur du Blog vous permettra en 1 clic de visualiser l’ensemble des articles du Blog par catégorie. Celle-ci sera mise à jour régulièrement.

Accéder directement à cette page ici ou sur le menu supérieur

menumenu2

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement. Tous les articles en 1 clic ICI
]]>
https://blog.f8asb.com/2015/12/06/nouvelle-page-pour-un-acces-direct-aux-articles/feed/ 0 2345
BANGGOOD: Coffret Découverte Arduino UNO https://blog.f8asb.com/2015/11/29/banggood-coffret-decouverte-arduino-uno/ https://blog.f8asb.com/2015/11/29/banggood-coffret-decouverte-arduino-uno/#respond Sun, 29 Nov 2015 13:19:21 +0000 http://blog.f8asb.com/?p=2318 Continuer la lecture ]]> arduino_starterDescription:
Il s’agit d’un coffret de démarrage  avec un UNO R3 , équipé de plusieurs périphériques afin de pouvoir experimenter une multitude de montage.

Démarrage  avec des montage de bases en électronique, puis faire des projets plus complexes, le kit vous aidera à contrôler le monde réel du microcontrôleur avec ses capteurs et ses actionneurs.

UNO-Basic-Starter-Learning-Kit-Upgrade-Version-For-Arduino-Smart-Electronics
Contenu du coffret:

1 x Carte Arduino UNO R3
1 x Câble USB
1 x Carte extension prototype
1 x Mini carte prototype sans soudure
1 x 5V moteur pas à pas
1 x Carte ULN2003 pour piloter moteur pas à pas
5 x LED rouge
5 x LED verte
5 x LED jaune
2 x Capteur de Vibration
1 x Capteur de Flame
1 x Capteur de température LM35
1 x Récepteur Infrarouge
3 x Photorésistante
4 x Capuchons de bouton
4 x Boutons
1 x Potentiomètre ajustable
1 x Buzzer passif
1 x Buzzer actif
1 x cavalier
1 x Carte large prototype sans soudure

1 x Telecommande
1 x Ecran LCD1602
1 x Servo moteur 9G
1 x Boite pour composants
1 x 10p Fil pour montage
30 x Fil pour raccordement(approximativement femelle/femelle et mâle/mâle)
1 x resistance 220ohm
1 x 8*8 Matrice à led
1 x Afficheur 7 segments 1 digit
1 x Afficheur 7 segments 4 digits
1 x IC 74HC595
1 x Connecteur Batterie
1 x 1K resistor plug
1 x 10K resistor plug
1 x Pile 9V
1 x 2.54mm 40pin pin

Vous pouvez vous aider de l’article Capteurs et actionneurs précédemment écrit sur ce blog pour tester les capteurs et actionneurs du coffret.

Ce coffret est disponible chez Banggood sur ce lien au prix de 30,49 $ franco de port.

A ce prix, il n’y a pas d’excuses pour ne pas commencer à programmer et expérimenter l’Arduino

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement.
]]>
https://blog.f8asb.com/2015/11/29/banggood-coffret-decouverte-arduino-uno/feed/ 0 2318
Capteurs et actionneurs Arduino, les codes sources https://blog.f8asb.com/2015/11/01/capteurs-et-actionneurs-arduino-les-codes-sources/ https://blog.f8asb.com/2015/11/01/capteurs-et-actionneurs-arduino-les-codes-sources/#comments Sun, 01 Nov 2015 08:00:16 +0000 http://blog.f8asb.com/?p=1529 Continuer la lecture ]]> capteur
Voici un petit article qui regroupe 35 codes sources pour mettre en oeuvre les différents capteurs et actionneurs sur Arduino que l’on retrouve sur le net.

Capteur de Temperature:

Connecter le signal vers Arduino sur digital 10, et ouvrir le port moniteur série:

#include
 
/* DS18S20 Temperature chip i/o
 
 */
 
OneWire ds(10); // sur pin 10
 
void setup(void) {
 // initialisation inputs/outputs
 // demarrage port serie
 Serial.begin(9600);
}
 
 
 
void loop(void) {
 byte i;
 byte present = 0;
 byte data[12];
 byte addr[8];
 int Temp;
 if ( !ds.search(addr)) {
      //Serial.print("No more addresses.n");
      ds.reset_search();
      return;
 }
 
 Serial.print("R="); //R=28 Not sure what this is
 for( i = 0; i < 8; i++) {
   Serial.print(addr[i], HEX);
   Serial.print(" ");
 }
 
 if ( OneWire::crc8( addr, 7) != addr[7]) {
      Serial.print("CRC is not valid!n");
      return;
 }
 
 if ( addr[0] != 0x28) {
      Serial.print("Device is not a DS18S20 family device.n");
      return;
 }
 
 ds.reset();
 ds.select(addr);
 ds.write(0x44,1);        // start conversion, with parasite power on at the end
 
 delay(1000);    // maybe 750ms is enough, maybe not
 // we might do a ds.depower() here, but the reset will take care of it.
 
 present = ds.reset();
 ds.select(addr);
 ds.write(0xBE);   // Read Scratchpad
 
 Serial.print("P=");
 Serial.print(present,HEX);
 Serial.print(" ");
 for ( i = 0; i < 9; i++) {        // we need 9 bytes
   data[i] = ds.read();
   Serial.print(data[i], HEX);
   Serial.print(" ");
 }
 Temp=(data[1]<<8)+data[0];//take the two bytes from the response relating to temperature
 
 Temp=Temp>>4;//divide by 16 to get pure celcius readout
 
  //next line is Fahrenheit conversion
 Temp=Temp*1.8+32; // comment this line out to get celcius
 
 Serial.print("T=");//output the temperature to serial port
 Serial.print(Temp);
   Serial.print(" ");
 
 
 Serial.print(" CRC=");
 Serial.print( OneWire::crc8( data, 8), HEX);
 Serial.println();
}

capteur de choc:

Use the LED that is connected to digital 13, and connect the vibration sensor output to digital pin 3. When the vibration sensor detects vibration, the LED will blink.
Sample Code:
 
int Led=13;//define LED interface
int Shock=3//define vibration sensor interface
int val;//define digital varible val
void setup()
{
pinMode(Led,OUTPUT);//define LED as output 
pinMode(Shock,INPUT);//define shock as input
}
void loop()
{
val=digitalRead(Shock);//
if(val==HIGH)//
{
digitalWrite(Led,LOW);
}
else
{
digitalWrite(Led,HIGH);
}
}



Capteur Magnetique:

Use the LED of digital 13, and connect the Hall magnetic field sensor to digital pin 3, and when there is magnetic shield present, the LED will turn on, otherwise, it will turn off.
 
int Led=13;
int SENSOR=3;
int val;
void setup()
{
pinMode(Led,OUTPUT);
pinMode SENSOR,INPUT);
}
void loop()
{
val=digitalRead(SENSOR);
if(val==HIGH)
{
digitalWrite(Led, HIGH);
}
Else
{
digitalWrite(Led, LOW);
}
}
 



Bouton poussoir:

int Led = 13 ;// define LED Interface
int buttonpin = 10; // define the key switch sensor interface
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT); // define LED as output interface
  pinMode (buttonpin, INPUT); // define the key switch sensor output interface
}
void loop ()
{
  val = digitalRead (buttonpin); // digital interface will be assigned a value of 3 to read val
    if (val == HIGH)  // When the key switch when the sensor detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Emetteur infrarouge:

# Include <IRremote.h>
int RECV_PIN = 11; / / define input pin on Arduino
IRrecv irrecv (RECV_PIN);
decode_results results;
void setup ()
{
Serial.begin (9600);
irrecv.enableIRIn (); / / Start the receiver
}
void loop () {
if (irrecv.decode (& results)) {
Serial.println (results.value, HEX);
irrecv.resume (); / / Receive the next value
}
}
Main emission part of the code:
# Include <IRremote.h>
IRsend irsend;
void setup ()
{
Serial.begin (9600);
}
void loop () {
for (int i = 0; i <50; i + +) {
irsend.sendSony (0xa90, 12); / / Sony TV power code
delay (40);
}
}


module buzzer:

//Example Code for KY-006
 
int buzzer = 8 ;// setting controls the digital IO foot buzzer
void setup ()
{
  pinMode (buzzer, OUTPUT) ;// set the digital IO pin mode, OUTPUT out of Wen
}
void loop ()
{
  unsigned char i, j ;// define variables
  while (1)
  {
    for (i = 0; i <80; i++) // Wen a frequency sound
    {
      digitalWrite (buzzer, HIGH) ;// send voice
      delay (1) ;// Delay 1ms
      digitalWrite (buzzer, LOW) ;// do not send voice
      delay (1) ;// delay ms
    }
    for (i = 0; i <100; i++) // Wen Qie out another frequency sound
    {
      digitalWrite (buzzer, HIGH) ;// send voice
      delay (2) ;// delay 2ms
      digitalWrite (buzzer, LOW) ;// do not send voice
      delay (2) ;// delay 2ms
    }
  }
}


Diode laser:

void setup ()
{
   pinMode (13, OUTPUT); // define the digital output interface 13 feet
}
void loop () {
   digitalWrite (13, HIGH); // open the laser head
   delay (1000); // delay one second
   digitalWrite (13, LOW); // turn off the laser head
   delay (1000); // delay one second
}


Led RGB:

int redpin = 11; // select the pin for the red LED
int bluepin = 10; // select the pin for the blue LED
int greenpin = 9; // select the pin for the green LED
int val=0;
void setup () {
  pinMode (redpin, OUTPUT);
  pinMode (bluepin, OUTPUT);
  pinMode (greenpin, OUTPUT);
  Serial.begin (9600);
}
 
void loop () {
  for (val=255; val>0; val--)
  {
    analogWrite (11, val);
    analogWrite (10, 255-val);
    analogWrite (9, 128-val);
    delay (1);
  }
  for (val = 0; val <255; val++)
  {
    analogWrite (11, val);
    analogWrite (10, 255-val);
    analogWrite (9, 128-val);
    delay (1);
  }
  Serial.println (val, DEC);
}


Capteur optique :

// Example code for KY-010
// photo interrupter module
 
int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the photo interrupter sensor interface
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// define the photo interrupter sensor output interface   
}
void loop ()
{
  val = digitalRead (buttonpin) ;// digital interface will be assigned a value of 3 to read val
  if (val == HIGH) // When the light sensor detects a signal is interrupted, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Led bi color:

// Arduino test code for KY011
int redpin = 11; // select the pin for the red LED
int greenpin = 10; // select the pin for the green LED
int val;
void setup () {
   pinMode (redpin, OUTPUT);
   pinMode (greenpin, OUTPUT);
}
void loop () {
   for (val = 255; val> 0; val--)
      {
      analogWrite (greenpin, val);
      analogWrite (redpin, 255-val);
      delay (15);
   }
   for (val = 0; val <255; val++)
      {
      analogWrite (greenpin, val);
      analogWrite (redpin, 255-val);
      delay (15);
   }  
}


Capteur temperature analogique:

#include <math.h>
 
int sensorPin = A5; // select the input pin for the potentiometer
 
double Thermistor(int RawADC) {
  double Temp;
  Temp = log(10000.0*((1024.0/RawADC-1))); 
  Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
  Temp = Temp - 273.15;            // Convert Kelvin to Celcius
   //Temp = (Temp * 9.0)/ 5.0 + 32.0; // Convert Celcius to Fahrenheit
   return Temp;
}
 
void setup() {
 Serial.begin(9600);
}
 
void loop() {
 int readVal=analogRead(sensorPin);
 double temp =  Thermistor(readVal);
 
 Serial.println(temp);  // display tempature
 //Serial.println(readVal);  // display tempature
 
 delay(500);
}


Capteur temperature et humidité:

//KY015 DHT11 Temperature and humidity sensor 
int DHpin = 8;
byte dat [5];
byte read_data () {
  byte data;
  for (int i = 0; i < 8; i ++) {
    if (digitalRead (DHpin) == LOW) {
      while (digitalRead (DHpin) == LOW); // wait for 50us
      delayMicroseconds (30); // determine the duration of the high level to determine the data is '0 'or '1'
      if (digitalRead (DHpin) == HIGH)
        data |= (1 << (7-i)); // high front and low in the post
      while (digitalRead (DHpin) == HIGH); // data '1 ', wait for the next one receiver
     }
  }
return data;
}
 
void start_test () {
  digitalWrite (DHpin, LOW); // bus down, send start signal
  delay (30); // delay greater than 18ms, so DHT11 start signal can be detected
 
  digitalWrite (DHpin, HIGH);
  delayMicroseconds (40); // Wait for DHT11 response
 
  pinMode (DHpin, INPUT);
  while (digitalRead (DHpin) == HIGH);
  delayMicroseconds (80); // DHT11 response, pulled the bus 80us
  if (digitalRead (DHpin) == LOW);
  delayMicroseconds (80); // DHT11 80us after the bus pulled to start sending data
 
  for (int i = 0; i < 4; i ++) // receive temperature and humidity data, the parity bit is not considered
    dat[i] = read_data ();
 
  pinMode (DHpin, OUTPUT);
  digitalWrite (DHpin, HIGH); // send data once after releasing the bus, wait for the host to open the next Start signal
}
 
void setup () {
  Serial.begin (9600);
  pinMode (DHpin, OUTPUT);
}
 
void loop () {
  start_test ();
  Serial.print ("Current humdity =");
  Serial.print (dat [0], DEC); // display the humidity-bit integer;
  Serial.print ('.');
  Serial.print (dat [1], DEC); // display the humidity decimal places;
  Serial.println ('%');
  Serial.print ("Current temperature =");
  Serial.print (dat [2], DEC); // display the temperature of integer bits;
  Serial.print ('.');
  Serial.print (dat [3], DEC); // display the temperature of decimal places;
  Serial.println ('C');
  delay (700);
}


Module RGB:

//KY016 3-color LED module
int redpin = 11; // select the pin for the red LED
int bluepin = 10; // select the pin for the blue LED
int greenpin = 9 ;// select the pin for the green LED
int val;
void setup () {
  pinMode (redpin, OUTPUT);
  pinMode (bluepin, OUTPUT);
  pinMode (greenpin, OUTPUT);
  Serial.begin (9600);
}
void loop ()
{
  for (val = 255; val> 0; val --)
  {
    analogWrite (11, val);
    analogWrite (10, 255-val);
    analogWrite (9, 128-val);
    delay (10);
    Serial.println (val, DEC);
  }
  for (val = 0; val <255; val ++)
  {
    analogWrite (11, val);
    analogWrite (10, 255-val);
    analogWrite (9, 128-val);
    delay (10);
    Serial.println (val, DEC);
  }
}


Module contact boule de mercure:

//KY017 Mercury open optical module
int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the mercury tilt switch sensor interface
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// define the mercury tilt switch sensor output interface
}
void loop ()
{
  val = digitalRead (buttonpin) ;// read the values assigned to the digital interface 3 val
  if (val == HIGH) // When the mercury tilt switch sensor detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Capteur luminosité:

//KY018 Photo resistor module
 
int sensorPin = A5; // select the input pin for the potentiometer
int ledPin = 13; // select the pin for the LED
int sensorValue = 0; // variable to store the value coming from the sensor
void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}
void loop() {
  sensorValue = analogRead(sensorPin);
  digitalWrite(ledPin, HIGH);
  delay(sensorValue);
  digitalWrite(ledPin, LOW);
  delay(sensorValue);
  Serial.println(sensorValue, DEC);
}


Sortie relais:

//KY019 5V relay module
int relay = 10; // relay turns trigger signal - active high;
void setup ()
{
  pinMode (relay, OUTPUT); // Define port attribute is output;
}
void loop ()
{
  digitalWrite (relay, HIGH); // relay conduction;
  delay (1000);
  digitalWrite (relay, LOW); // relay switch is turned off;
  delay (1000);
}


Interrupteur Tilt:

int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the tilt switch sensor interfaces
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
    pinMode (buttonpin, INPUT) ;//define the output interface tilt switch sensor
}
void loop ()
{
  val = digitalRead (buttonpin) ;// digital interface will be assigned a value of 3 to read val
    if (val == HIGH) //When the tilt sensor detects a signal when the switch, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Détecteur de led flash:

//
// Example code for sensor KY021
// More info on http://tkkrlab.nl/wiki/Arduino_KY-021_Mini_magnetic_reed_modules
//
int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the Reed sensor interfaces
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// output interface as defined Reed sensor
}
void loop ()
{
  val = digitalRead (buttonpin) ;// digital interface will be assigned a value of 3 to read val
  if (val == HIGH) // When the Reed sensor detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Récepteur infrarouge:

/*
 * IRremote: IRrecvDemo - demonstrates receiving IR codes with IRrecv
 * An IR detector/demodulator must be connected to the input RECV_PIN.
 * Version 0.1 July, 2009
 * Copyright 2009 Ken Shirriff
 * http://arcfn.com
 */
 
#include <IRremote.h>
 
int RECV_PIN = 11;
 
IRrecv irrecv(RECV_PIN);
 
decode_results results;
 
void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
}
void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(results.value, HEX);
    irrecv.resume(); // Receive the next value
  }
}


Mini joystick 2 axes:

// Module KY023
// For more info see http://tkkrlab.nl/wiki/Arduino_KY-023_XY-axis_joystick_module
int JoyStick_X = A0; // x
int JoyStick_Y = A1; // y
int JoyStick_Z = 3; // key
void setup ()
{
  pinMode (JoyStick_X, INPUT);
  pinMode (JoyStick_Y, INPUT);
  pinMode (JoyStick_Z, INPUT);
  Serial.begin (9600); // 9600 bps
}
void loop ()
{
  int x, y, z;
  x = analogRead (JoyStick_X);
  y = analogRead (JoyStick_Y);
  z = digitalRead (JoyStick_Z);
  Serial.print (x, DEC);
  Serial.print (",");
  Serial.print (y, DEC);
  Serial.print (",");
  Serial.println (z, DEC);
  delay (100);
}


Capteur à effet Hall:

int Led = 13 ;/ / define LED Interface
int buttonpin = 3; / / define the linear Hall magnetic sensor interface
int val ;/ / define numeric variables val
void setup ()
{
pinMode (Led, OUTPUT) ;/ / define LED as output interface
pinMode (buttonpin, INPUT) ;/ / define linear Hall magnetic sensor output interface
}
void loop ()
{
val = digitalRead (buttonpin) ;/ / digital interface will be assigned a value of 3 to read val
if (val == HIGH) / / When the linear Hall sensor detects a magnetic signal, LED flashes
{
digitalWrite (Led, HIGH);
}
else
{
digitalWrite (Led, LOW);
}
}


Détecteur led Flash (BIG):

int Led = 13 ;/ / define LED Interface
int buttonpin = 3; / / define the Reed sensor interfaces
int val ;/ / define numeric variables val
void setup ()
{
pinMode (Led, OUTPUT) ;/ / define LED as output interface
pinMode (buttonpin, INPUT) ;/ / output interface as defined Reed sensor
}
void loop ()
SunFounder{
val = digitalRead (buttonpin) ;/ / digital interface will be assigned a value of 3 to read val
if (val == HIGH) / / When the Reed sensor detects a signal, LED flashes
{
digitalWrite (Led, HIGH);
}
else
{
digitalWrite (Led, LOW);
}
}


Capteur de flamme:

//Example for KY-026
//TkkrLab
int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the flame sensor interface
int analoog = A3; // define the flame sensor interface
 
int val ;// define numeric variables val
float sensor; //read analoog value
 
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// output interface defines the flame sensor
  pinMode (analoog, INPUT) ;// output interface defines the flame sensor
  Serial.begin(9600);
}
 
void loop ()
{
  sensor = analogRead(analoog);
  Serial.println(sensor);  // display tempature
 
  val = digitalRead (buttonpin) ;// digital interface will be assigned a value of 3 to read val
    if (val == HIGH) // When the flame sensor detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
  delay(1000);
}


Led magique:

nt LedPinA = 5;
int LedPinB = 6;
int ButtonPinA = 7;
int ButtonPinB = 4;
int buttonStateA = 0;
int buttonStateB = 0;
int brightness = 0;
void setup ()
{
pinMode (LedPinA, OUTPUT);
pinMode (LedPinB, OUTPUT);
pinMode (ButtonPinA, INPUT);
pinMode (ButtonPinB, INPUT);
}
void loop ()
{
buttonStateA = digitalRead (ButtonPinA);
if (buttonStateA == HIGH && brightness! = 255)
{
brightness + +;
}
buttonStateB = digitalRead (ButtonPinB);
if (buttonStateB == HIGH && brightness! = 0)
{
brightness -;
}
analogWrite (LedPinA, brightness); / / A few Guan Yuan (ii)? analogWrite (LedPinB, 255 - brightness); 
/ / B Yuan (ii) a few Bang? 
Delay (25);
}


Capteur t° digital:

int Led = 13 ;/ / define LED Interface
int buttonpin = 3; / / define the digital temperature sensor interface
int val ;/ / define numeric variables val
void setup ()
{
pinMode (Led, OUTPUT) ;/ / define LED as output interface
pinMode (buttonpin, INPUT) ;/ / define digital temperature sensor output interface
}
void loop ()
{
val = digitalRead (buttonpin) ;/ / digital interface will be assigned a value of 3 to read val
if (val == HIGH) / / when the digital temperature sensor detects a signal, LED flashes
{
digitalWrite (Led, HIGH);
}
else
{
digitalWrite (Led, LOW);
}
}


Capteur de choc:

int Led = 13 ;/ / define LED Interface
int Shock = 3 / / define the percussion Sensor Interface
int val ;/ / define numeric variables val
void setup ()
{
pinMode (Led, OUTPUT) ;/ / define LED as output interface
pinMode (Shock, INPUT) ;/ / define knock sensor output interface
}
void loop ()
{
val = digitalRead (Shock) ;/ / read digital interface is assigned a value of 3 val
if (val == HIGH) / / When the percussion when the sensor detects a signal, LED flashes
{
digitalWrite (Led, LOW);
}
else
{
digitalWrite (Led, HIGH);
}
}
</syntaxhighlight lang="C">


Capteur obstacle:

int Led = 13 ;// define LED Interface
int buttonpin = 3; // define the obstacle avoidance sensor interface
int val ;// define numeric variables val
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// define the obstacle avoidance sensor output interface
}
void loop ()
{
  val = digitalRead (buttonpin) ;// digital interface will be assigned a value of 3 to read val
  if (val == HIGH) // When the obstacle avoidance sensor detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Capteur suiveur de ligne:

int sensorPin = A5; / / select the input pin
int ledPin = 13; / / select the pin for the LED
int sensorValue = 0; / / variable to store the value coming from the
sensor
void setup () {
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
}
void loop () {
sensorValue = analogRead (sensorPin);
digitalWrite (ledPin, HIGH);
delay (sensorValue);
digitalWrite (ledPin, LOW);
delay (sensorValue);
Serial.println (sensorValue, DEC);
}


Led 7 couleurs:

/ *
Blink
Turns on an LED on for two second, then off for two second, repeatedly.
This example code is in the public domain.
* /
void setup () {
/ / Initialize the digital pin as an output.
/ / Pin 13 has an LED connected on most Arduino boards:
pinMode (13, OUTPUT);
}
void loop () {
digitalWrite (13, HIGH); / / set the LED on
delay (2000); / / wait for a second
digitalWrite (13, LOW); / / set the LED off
delay (2000); / / wait for a second
}


Capteur effet Hall:

/* 
KY-035 Hall analog sensor
*/
 
int sensorPin = A5;    // select the input pin
int ledPin = 13;       // select the pin for the LED
int sensorValue = 0;   // variable to store the value coming from the sensor
 
void setup () {
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
}
 
void loop () {
sensorValue = analogRead (sensorPin);
digitalWrite (ledPin, HIGH);
delay (sensorValue);
digitalWrite (ledPin, LOW);
delay (sensorValue);
Serial.println (sensorValue, DEC);
}


Capteur de touche métallique:

int Led = 13 ;/ / define LED Interface
int buttonpin = 3; / / define Metal Touch Sensor Interface
int val ;/ / define numeric variables val
void setup ()
{
pinMode (Led, OUTPUT) ;/ / define LED as output interface
pinMode (buttonpin, INPUT) ;/ / define metal touch sensor output interface
}
void loop ()
{
val = digitalRead (buttonpin) ;/ / digital interface will be assigned a value of 3 to read val
if (val == HIGH) / / When the metal touch sensor detects a signal, LED flashes
{
digitalWrite (Led, HIGH);
}
else
{
digitalWrite (Led, LOW);
}
}


Capteur micro sensible:

analogique:

int sensorPin = A0; // select the input pin for the potentiometer
int ledPin = 13; // select the pin for the LED
int sensorValue = 0; // variable to store the value coming from the sensor
 
void setup () 
{
  pinMode (ledPin, OUTPUT);
  Serial.begin (9600);
}
 
void loop () 
{
  sensorValue = analogRead (sensorPin);
  digitalWrite (ledPin, HIGH);
  delay (sensorValue);
  digitalWrite (ledPin, LOW);
  delay (sensorValue);
  Serial.println (sensorValue, DEC);
}

numérique:

int Led = 13 ;// define LED Interface
int buttonpin = 3; // define D0 Sensor Interface
int val = 0;// define numeric variables val
 
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// output interface D0 is defined sensor
}
 
void loop ()
{
  val = digitalRead(buttonpin);// digital interface will be assigned a value of pin 3 to read val
  if (val == HIGH) // When the sound detection module detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Capteur micro:

Analogique:

int sensorPin = A0; // select the input pin for the potentiometer
int ledPin = 13; // select the pin for the LED
int sensorValue = 0; // variable to store the value coming from the sensor
 
void setup () 
{
  pinMode (ledPin, OUTPUT);
  Serial.begin (9600);
}
 
void loop () 
{
  sensorValue = analogRead (sensorPin);
  digitalWrite (ledPin, HIGH);
  delay (sensorValue);
  digitalWrite (ledPin, LOW);
  delay (sensorValue);
  Serial.println (sensorValue, DEC);
}

Numerique:

int Led = 13 ;// define LED Interface
int buttonpin = 3; // define D0 Sensor Interface
int val = 0;// define numeric variables val
 
void setup ()
{
  pinMode (Led, OUTPUT) ;// define LED as output interface
  pinMode (buttonpin, INPUT) ;// output interface D0 is defined sensor
}
 
void loop ()
{
  val = digitalRead(buttonpin);// digital interface will be assigned a value of pin 3 to read val
  if (val == HIGH) // When the sound detection module detects a signal, LED flashes
  {
    digitalWrite (Led, HIGH);
  }
  else
  {
    digitalWrite (Led, LOW);
  }
}


Capteur heatbeat:

// Pulse Monitor Test Script
int sensorPin = 0;
double alpha = 0.75;
int period = 100;
double change = 0.0;
double minval = 0.0;
void setup ()
{
  Serial.begin (9600);
}
void loop ()
{
    static double oldValue = 0;
    static double oldChange = 0;
 
    int rawValue = analogRead (sensorPin);
    double value = alpha * oldValue + (1 - alpha) * rawValue;
 
    Serial.print (rawValue);
    Serial.print (",");
    Serial.println (value);
    oldValue = value;
 
    delay (period);
}


Encodeur:

int redPin = 2;
int yellowPin = 3;
int greenPin = 4;
int aPin = 6;
int bPin = 7;
int buttonPin = 5;
int state = 0;
int longPeriod = 5000; // Time at green or red
int shortPeriod = 700; // Time period when changing
int targetCount = shortPeriod;
int count = 0;
void setup ()
{
  pinMode (aPin, INPUT);
  pinMode (bPin, INPUT);
  pinMode (buttonPin, INPUT);
  pinMode (redPin, OUTPUT);
  pinMode (yellowPin, OUTPUT);
  pinMode (greenPin, OUTPUT);
}
void loop ()
{
  count++;
  if (digitalRead (buttonPin))
  {
    setLights (HIGH, HIGH, HIGH);
  }
  else
  {
    int change = getEncoderTurn ();
    int newPeriod = longPeriod + (change * 1000);
    if (newPeriod  >= 1000 && newPeriod <= 10000)
    {
      longPeriod = newPeriod;
    }
    if (count> targetCount)
    {
      setState ();
      count = 0;
    }
  }
  delay (1);
}
int getEncoderTurn ()
{
  // Return -1, 0, or +1
  static int oldA = LOW;
  static int oldB = LOW;
  int result = 0;
  int newA = digitalRead (aPin);
  int newB = digitalRead (bPin);
  if (newA != oldA || newB != oldB)
  {
    //Something has changed
    if (oldA == LOW && newA == HIGH)
    {
      result = - (oldB * 2 - 1);
    }
  }
  oldA = newA;
  oldB = newB;
  return result;
}
int setState ()
{
  if (state == 0)
  {
    setLights (HIGH, LOW, LOW);
    targetCount = longPeriod;
    state = 1;
  }
  else if (state == 1)
  {
    setLights (HIGH, HIGH, LOW);
    targetCount = shortPeriod;
    state = 2;
  }
  else if (state == 2)
  {
    setLights (LOW, LOW, HIGH);
    targetCount = longPeriod;
    state = 3;
  }
  else if (state == 3)
  {
    setLights (LOW, HIGH, LOW);
    targetCount = shortPeriod;
    state = 0;
  }
}
void setLights (int red, int yellow, int green)
{
  digitalWrite (redPin, red);
  digitalWrite (yellowPin, yellow);
  digitalWrite (greenPin, green);
}

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM, entrez votre mail sur la fenêtre à droite et cliquer sur abonnement.
]]>
https://blog.f8asb.com/2015/11/01/capteurs-et-actionneurs-arduino-les-codes-sources/feed/ 1 1529