Table des matières:

ELEGOO Kit Lab ou comment me simplifier la vie en tant que développeur : 5 étapes (avec photos)
ELEGOO Kit Lab ou comment me simplifier la vie en tant que développeur : 5 étapes (avec photos)

Vidéo: ELEGOO Kit Lab ou comment me simplifier la vie en tant que développeur : 5 étapes (avec photos)

Vidéo: ELEGOO Kit Lab ou comment me simplifier la vie en tant que développeur : 5 étapes (avec photos)
Vidéo: Cours ESPHome pour Home Assistant : mini module complémentaire D1 et installation raspberry pi 4😍 2024, Novembre
Anonim
ELEGOO Kit Lab ou comment me faciliter la vie en tant que développeur
ELEGOO Kit Lab ou comment me faciliter la vie en tant que développeur

Objectifs du projet

Beaucoup d'entre nous ont des problèmes avec la maquette autour des contrôleurs UNO. Souvent, le câblage des composants devient difficile avec de nombreux composants. En revanche, la programmation sous Arduino peut être complexe et peut nécessiter de nombreuses lignes de code. Le projet décrit ici devrait rendre la maquette beaucoup plus facile. Ce projet est basé sur et utilise près de 80% des composants du "ELEGOO Super Starter Kit UNO R3".

Les objectifs de ce projet sont:

- La création d'un bus technique permettant l'utilisation simultanée de jusqu'à quatre breadboards.

- La création d'un programme de référence servant de base à de nombreux montages.

- La création de fonctions facilitant la lisibilité de la programmation.

- Le montage de l'écran LCD en I2C.

Tous les fichiers du projet peuvent être téléchargés ici.

Étape 1: Le bus de prototypage

Le bus de prototypage
Le bus de prototypage

Les composants:

  • Câble plat multibrin de 40 conducteurs (35cm).
  • Connecteurs pour câble plat 40 broches (5).
  • Connecteur PCB mâle-mâle 40 broches.
  • Planches à pain demi-taille en option (2).

Du kit ELEGOO:

  • La carte contrôleur.
  • La carte d'extension.
  • Planches à pain (2).

Le montage est simple à réaliser:

Montez les cinq connecteurs sur le câble plat. Quatre connecteurs seront fixés avec la partie connecteur vers le haut et un connecteur avec la partie connecteur vers le bas. Ce connecteur sera ensuite enfiché sur la carte d'extension.

Montez les deux connecteurs PCB en parallèle sur la carte d'extension pour recevoir le connecteur du câble plat.

Soudez les broches sous la carte aux broches d'entrée/sortie des connecteurs d'extension UNO.

Branchez la carte d'extension sur le contrôleur UNO, puis branchez le connecteur du câble plat.

Après le montage, tous les signaux de la carte contrôleur seront disponibles sur les quatre connecteurs du câble plat.

Le résultat est un bus d'extension pouvant accueillir jusqu'à quatre maquettes, comme indiqué dans l'image.

Un certain nombre de broches seront déconnectées sur la carte d'extension (je les ai notées en minuscules) et sont disponibles. Ils peuvent être utilisés pour connecter des circuits entre les maquettes.

Étape 2: Premier montage: l'écran LCD en I2C

Premier assemblage: l'écran LCD en I2C
Premier assemblage: l'écran LCD en I2C

L'écran LCD LCM1602/HD44780 possède de nombreux liens. Sa connexion directe au contrôleur UNO réduit la possibilité de connecter d'autres composants.

C'est pourquoi j'ai ajouté une puce PCF8574 pour réduire le nombre de liens à 2 en utilisant le protocole I2C.

Les composants:

  • Un connecteur PCB mâle-mâle à 16 broches.
  • Une carte à souder ELEGOO 2x8cm
  • Une puce PCF8574.
  • Un connecteur 4 broches avec sa partie PCB.

Les composants du kit ELGOO:

  • L'écran LCD
  • Le potentiomètre 10k

L'Assemblée:

L'ensemble est testé sur le bus de prototypage puis soudé sur la plaque de soudure. Cet affichage peut facilement être ajouté pour une utilisation simple dans d'autres projets.

Étape 3: Programmation

La programmation
La programmation

L'objectif du programme est de simplifier le travail lors du développement de nouveaux projets.

Le programme est composé de plusieurs parties:

- La partie déclarative avec l'inclusion de bibliothèques et de constantes. Cette partie fixe sera commune à tous les tests des différents composants. (AVANT JC)

- La partie développement qui contient les séquences "setup" et "loop". (RÉ)

- La partie fonctions qui en regroupe trois (A). Ces fonctions sont décrites ci-dessous.

Le répertoire "0-My_ELEGOO_soft_build" contient cinq fichiers qui doivent être conservés ensemble dans le même dossier:

  • "0-My_ELEGOO_soft_build.ino".
  • "1-Ma_fonction_LCD.ino".
  • "2-Ma_fonction_IR.ino".
  • "3-My_Output_port_extension.ino".
  • "Quelques échantillons.rtf"

En ouvrant le fichier " 0-My_ELEGOO_soft_build.ino " Arduino ouvrira également les autres fichiers (.ino). Tous les fichiers sont affichés et peuvent être modifiés.

Le fichier "Some samples.rtf" contient quelques exemples de programmes simples qui utilisent les fonctions.

Étape 4: diverses fonctions

Diverses fonctions
Diverses fonctions

Le contrôle LCD

Le but de cette fonction est de faciliter l'affichage des informations sur l'écran LCD avec une seule commande. Cette commande sera utilisée dans les sections void setup et void loop. Il montre également comment construire une fonction.

Cette fonction est appelée par lcdw(par1, par2, par3, par4, par5);

  • par1 indique la sous-fonction souhaitée.
  • par2 indique le numéro de ligne sur l'afficheur (0 ou 1).
  • par3 indique le numéro de colonne sur la ligne d'affichage (0 à 15).
  • par4 contient le texte à afficher.
  • par5 contient une valeur numérique à afficher.

Les exemples sont:

lcdw(0, 0, 0, "", 0); initialise l'affichage. Seul cet appel devra être placé dans l'élément de configuration d'annulation.

lcdw(1, 1, 5, "BONJOUR LE MONDE", 0); affiche le texte sur la deuxième ligne à partir de la position 6.

lcdw(1, 1, 5, "BONJOUR LE MONDE", 25); affiche le texte "HELLO WORLD 25" sur la deuxième ligne à partir de la position 6. lcdw(1, 0, 0, """, 25); affiche "25" sur la première ligne à partir de la position 1.

lcdw(2, 0, 0, "", 0); efface l'affichage.

Cette fonction est assez simple et peut être complétée selon vos besoins.

L'interface infrarouge et sa télécommande

Cette fonction a pour but de faciliter l'utilisation du capteur infrarouge avec sa télécommande. Cette fonction est appelée par tst = IRrec(par1);

par1 indique la sous-fonction souhaitée. 0 pour initialiser le capteur, 1 pour recevoir et décoder la touche enfoncée sur la télécommande. Un texte correspondant au nom de la clé est retourné dans la variable tst

Augmentation du nombre de portes numériques

L'objectif est d'utiliser la puce 74hc595 pour augmenter le nombre de broches de sortie numérique. Le circuit utilise 3 broches UNO en entrée et offre 8 portes binaires en sortie. Nous utiliserons deux fonctions. Le schéma de connexion physique sera décrit dans la section suivante.

Le circuit est constitué de deux registres à 8 positions (un registre interne au programme ino et un autre contenu dans le circuit). La mise à jour se fait en deux étapes. Tout d'abord, les valeurs du registre interne peuvent être modifiées (à l'aide de la fonction setExtPin). Ensuite, le registre interne est copié dans le circuit (à l'aide de la fonction Expin).

Expin(par1);

Par1: 0 pour l'initialisation de la puce. 1 pour régler toutes les portes de sortie sur LOW. 2 pour copier le registre interne sur la puce 74hc595

setExtPin(par1, par2);

  • par1: le numéro de la porte à changer (0-7).
  • par2: l'état de la porte souhaité (LOW ou HIGH).

Étape 5: Exemples d'utilisation, de programme et d'exemples de BUS

Exemples d'utilisation, de programme et d'exemples de BUS
Exemples d'utilisation, de programme et d'exemples de BUS

Pour harmoniser les éléments décrits dans ce projet je propose quelques exemples.

Ces exemples se trouvent dans le fichier " Some samples.rtf ".

Le câblage des composants est donné par les schémas ci-dessus. Le projet a été conçu pour permettre l'utilisation simultanée de nombreux composants.

Pour utiliser un modèle, il vous suffit de:

- Câbler les composants souhaités sur la planche à pain.

- Copiez la partie correspondante du fichier "Some samples.rtf" dans la partie programme (D) et compilez/téléchargez-la dans le contrôleur.

Vous constaterez que ces modèles n'ont pas beaucoup de lignes de code. C'est pour faciliter la programmation.

Le programme, une fois compilé, ne chargera que les fonctions utilisées. Le code de sortie est optimisé.

D'autre part, le bus matériel avec sa capacité à utiliser plusieurs breadboards facilite grandement l'assemblage.

Pour ce projet, tous les composants ont été câblés ensemble sur plusieurs maquettes. L'écran LCD était connecté à la carte d'extension UNO.

Cela permet une combinaison facile et un assemblage rapide des composants. Grâce aux fils de câblage courts, l'ensemble de l'unité est visuellement attrayant.

Vous pouvez désormais laisser libre cours à votre imagination pour la modélisation de vos projets.

Profitez-en!

Conseillé: