Table des matières:

Programme MicroPython : afficher la taille du cercle : 9 étapes
Programme MicroPython : afficher la taille du cercle : 9 étapes

Vidéo: Programme MicroPython : afficher la taille du cercle : 9 étapes

Vidéo: Programme MicroPython : afficher la taille du cercle : 9 étapes
Vidéo: MicroPython sur ESP32 2024, Novembre
Anonim

Cette expérience utilise le module MakePython ESP8266, qui nous permet d'apprendre la programmation MicroPython sur ESP8266. L'expérience a contrôlé la taille du cercle sur l'écran en faisant tourner le potentiomètre. Dans le processus, nous découvrirons l'utilisation de l'ADC, de l'écran OLED SSD1306 et de l'IDE uPyCraft.

Étape 1: À propos de l'ADC et de l'I2C

À propos de l'ADC et de l'I2C
À propos de l'ADC et de l'I2C

ADC: ADC est un convertisseur analogique/numérique qui convertit les signaux analogiques en numérique. Dans la LED de contrôle avant allumée, PWM à l'intérieur, nous connaissons la différence entre le signal numérique et le signal analogique. Les signaux que nous utilisons dans la vie quotidienne, tels que l'intensité lumineuse, les ondes sonores et les tensions de batterie, sont tous des valeurs analogiques. Si nous voulons mesurer le signal analogique (tension, intensité lumineuse, onde sonore) via le micro-ordinateur monopuce et l'exprimer par un signal numérique, nous avons besoin d'un convertisseur de signal numérique analogique ADC

Communication I2C: I2C est largement utilisé pour la communication du contrôleur avec les composants embarqués tels que les capteurs/écrans. La transmission de données ne peut être complétée que par deux lignes de signaux, respectivement la ligne d'horloge SCL et la ligne de signal SDA. Il n'y a qu'un seul appareil principal maître et plusieurs appareils esclaves sur la ligne I2C. Afin de garantir que les deux bus sont à un niveau élevé lorsqu'ils sont inactifs, SDA et SCL doivent être connectés à la résistance de tirage. La valeur classique de la résistance de tirage est de 10K.

Étape 2: Fournitures

Fournitures
Fournitures

Matériel:

  • MarquePython ESP8266
  • Potentiomètre
  • Planche à pain
  • Ligne de saut
  • cable USB

MakePython ESP8266: Il y a un module OLED 1.3' OLED embarqué sur la carte MakePython, avec 128x64 pixels… Un pixel d'un écran monochrome est une diode électroluminescente. OLED est "auto-illumination", le pixel lui-même est la source de lumière, donc le contraste est très élevé. Les écrans OLED ont des protocoles de communication I2C et SPI, qui sont totalement incompatibles en raison de protocoles différents. Dans notre leçon, l'OLED est configuré pour être compatible avec le protocole I2C. Lien d'achat du module:

Potentiomètre: le potentiomètre est une résistance réglable avec trois extrémités principales et des valeurs de résistance qui peuvent être ajustées selon une certaine loi de variation. Un potentiomètre se compose généralement d'un corps de résistance et d'un balai mobile. Lorsque la brosse se déplace le long du corps de résistance, la valeur de résistance ou la tension par rapport au déplacement est obtenue à l'extrémité de sortie.

Logiciel:

IDE uPyCraft

Il existe de nombreux codes et méthodes de programmation avec MicroPython. Pour ce didacticiel, nous utilisons uPyCraft IDE, qui est le moyen le plus simple et le plus facile pour les débutants de passer à MicroPython.

Étape 3: Câblage

Câblage
Câblage
Câblage
Câblage
Câblage
Câblage

Il s'agit d'un circuit très simple qui nécessite très peu de fils, seulement trois. Connectez simplement la broche VCC du potentiomètre à 3.3v de MakePython ESP8266 et la broche OUT (milieu) à A0, et connectez le GND l'un à l'autre. L'écran OLED utilise la communication I2C et la carte est câblée pour que vous n'ayez pas à vous en soucier.

Étape 4: Installation d'UPyCraft IDE PC Windows

Installation d'UPyCraft IDE sur un PC Windows
Installation d'UPyCraft IDE sur un PC Windows
Installation d'UPyCraft IDE sur un PC Windows
Installation d'UPyCraft IDE sur un PC Windows

Cliquez sur ce lien pour télécharger uPyCraft IDE pour Windows:

randomnerdtutorials.com/uPyCraftWindows.

Après quelques secondes, vous devriez voir un fichier similaire (uPyCraft_VX.exe) dans votre dossier Téléchargements

Double-cliquez sur ce fichier. Une nouvelle fenêtre s'ouvre avec le logiciel IDE uPyCraft.

Étape 5: Établir une communication avec le conseil

Établir une communication avec le conseil
Établir une communication avec le conseil

Après avoir installé le micrologiciel MicroPython (micrologiciel MicroPython déjà installé lorsque vous obtenez Makerfabs MakePython ESP8266), connectez-le à votre ordinateur via un câble USB, suivez les étapes:

  • Allez dans Outils > Tableau et sélectionnez le tableau que vous utilisez. Sélectionnez l'esp8266
  • Allez dans Outils > Série et sélectionnez le port com auquel votre ESP est connecté (téléchargez le pilote USB sur:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)

Appuyez sur le bouton Connect pour établir une communication série avec votre carte.

Vous verrez « >>> » apparaître dans la fenêtre Shell après une connexion réussie avec votre carte.

Étape 6: Création du fichier Main.py sur votre carte

Création du fichier Main.py sur votre tableau
Création du fichier Main.py sur votre tableau
Création du fichier Main.py sur votre tableau
Création du fichier Main.py sur votre tableau
  • Appuyez sur le bouton "Nouveau fichier" pour créer un nouveau fichier.
  • Appuyez sur le bouton « Enregistrer le fichier » pour enregistrer le fichier sur votre ordinateur.
  • Une nouvelle fenêtre s'ouvre, nommez votre fichier main.py et enregistrez-le sur votre ordinateur.
  • Après cela, vous devriez voir le fichier boot.py sur votre appareil et un nouvel onglet avec le fichier main.py.
  • Cliquez sur le bouton « Télécharger et exécuter » pour télécharger le fichier sur votre carte ESP.
  • Le répertoire de l'appareil doit maintenant charger le fichier main.py. Votre ESP a le fichier main.py stocké.

Étape 7: Ajouter un fichier de pilote

Étant donné que l'écran OLED utilise la puce de pilote SSD1306, nous devons télécharger le pilote de SSD1306. Vous pouvez accéder au site Web GitHub pour rechercher et télécharger la bibliothèque de SSD1306 ou cliquer pour télécharger notre fichier de pilote ssd1306.py.

Après le téléchargement, enregistrez ssd1306.py dans le répertoire du fichier workSpace. Ensuite, cliquez sur ouvrir le fichier ssd1306.py et cliquez sur exécuter, et le fichier de bibliothèque peut être chargé dans le répertoire du périphérique. À ce stade, le fichier de bibliothèque de ssd1306.py a été chargé avec succès dans MakePython ESP8266, qui peut être appelé avec l'instruction import ssd1306.

*remarque: La première fois que vous ouvrez l'IDE uPyCraft, le chemin de l'espace de travail n'existe pas. Lorsque vous cliquez, la boîte de dialogue WorkSpace apparaîtra. Vous pouvez créer un répertoire workSpace pour stocker les fichiers de l'utilisateur en sélectionnant le répertoire que vous souhaitez stocker.

Étape 8: La fonction principale

La fonction principale
La fonction principale
La fonction principale
La fonction principale

Explication de la grammaire:

  • i2c: configurer les broches SCL et SDA
  • oled: créer un objet OLED
  • adc.read(): lit les données échantillonnées ADC
  • cercle (): fonction de cercle de dessin personnalisée qui UTILISE la fonction sqrt () pour calculer le rayon du cercle
  • math.sqrt(r): renvoie la racine carrée du nombre
  • pixel(x, y, c): dessine le point en (x, y)
  • hline(x, y, w, c): Tracez une ligne horizontale, commençant à (x, y), longueur w
  • vline(x, y, w, c): Tracez une ligne verticale, commençant à (x, y), avec une hauteur de w
  • oled.fill(n): Vide l'écran quand n=0, et remplit l'écran quand n> est 0
  • oled.show(): Activer la fonction d'affichage

Vous pouvez soit ajouter directement ce fichier, soit copier son contenu dans le fichier principal nouvellement créé.

Étape 9: Les résultats expérimentaux

Les résultats expérimentaux
Les résultats expérimentaux

Tournez le potentiomètre lentement, dans le sens des aiguilles d'une montre, et le cercle sur l'écran deviendra plus grand, plus petit dans le sens inverse des aiguilles d'une montre.

Conseillé: