Guide de l’écran 1.8 TFT avec Arduino

Guide de l'écran 1.8 TFT avec Arduino

Dans ce guide, nous allons vous montrer comment vous pouvez utiliser l’écran TFT 1.8 avec l’Arduino. Vous apprendrez à câbler l’affichage, à écrire du texte, à dessiner des formes et à afficher des images à l’écran.

Guide de lecran 18 TFT avec Arduino

Présentation de l’écran TFT 1.8

Le 1.8 TFT est un écran coloré avec 128 x 160 pixels de couleur. L’écran peut charger des images à partir d’une carte SD – il dispose d’un emplacement pour carte SD à l’arrière. La figure suivante montre la vue avant et arrière de l’écran.

Guide de lecran 18 TFT avec Arduino

Ce module utilise la communication SPI – voir le câblage ci-dessous. Pour contrôler l’affichage, nous utiliserons le TFT bibliothèque, qui est déjà incluse avec Arduino IDE 1.0.5 et versions ultérieures.

Où acheter?

1642322885 944 Guide de lecran 18 TFT avec Arduino

Vous pouvez obtenir l’écran 1.8 TFT pour environ 3 $ – vérifier les prix sur Maker Advisor.

Vous pouvez utiliser les liens précédents ou accéder directement à MakerAdvisor.com/tools pour trouver toutes les pièces pour vos projets au meilleur prix !

1642322885 195 Guide de lecran 18 TFT avec Arduino

Câblage des broches

Le tableau ci-dessous montre le câblage 1.8 TFT vers Arduino UNO.

1.8 Écran TFT Câblage à Arduino Uno
LED 3,3 V
SCK 13
SDA 11
A0 ou CC 9
RÉINITIALISER 8
CS dix
Terre Terre
VCC 5V

Noter: différentes cartes Arduino ont des broches SPI différentes. Si vous utilisez une autre carte Arduino, consultez le document officiel Arduino Documentation.

Initialisation de l’affichage

L’écran TFT communique avec l’Arduino via la communication SPI, vous devez donc inclure la bibliothèque SPI dans votre code. Nous utilisons également la bibliothèque TFT pour écrire et dessiner sur l’écran.

#include <TFT.h> 
#include <SPI.h>

Ensuite, vous devez définir les broches CS, A0 (ou DC) et RST :

#define cs 10
#define dc 9
#define rst 8

Créez une instance de la bibliothèque appelée Écran TFT:

TFT TFTscreen = TFT(cs, dc, rst);

Enfin, dans le mettre en place(), vous devez initialiser la bibliothèque :

TFTscreen.begin();

Afficher le texte

Pour écrire du texte sur l’écran, vous pouvez personnaliser la couleur d’arrière-plan de l’écran, la taille de la police et la couleur.

Pour définir la couleur d’arrière-plan, utilisez :

TFTscreen.background(r, g, b);

Dans lequel, r, g et b sont les valeurs RVB pour une couleur donnée. Pour choisir la couleur de la police :

TFTscreen.stroke(r, g, b);

Pour définir la taille de la police :

TFTscreen.setTextSize(2);

Vous pouvez augmenter ou diminuer le nombre donné en argument, pour augmenter ou diminuer la taille de la police.

Enfin, pour dessiner du texte sur l’affichage, utilisez la ligne suivante :

TFTscreen.text("Hello, World!", x, y);

Dans lequel « Bonjour le monde! » est le texte que vous souhaitez afficher et la coordonnée (x, y) est l’emplacement où vous souhaitez commencer à afficher le texte à l’écran.

Code

L’exemple suivant affiche « Hello, World! » au milieu de l’écran et change la couleur de la police toutes les 200 millisecondes.

Copiez le code suivant dans votre IDE Arduino et téléchargez-le sur votre carte Arduino.

/*
 * Rui Santos 
 * Complete Project Details https://www.raspberryme.com
 */

// include TFT and SPI libraries
#include <TFT.h>  
#include <SPI.h>

// pin definition for Arduino UNO
#define cs   10
#define dc   9
#define rst  8


// create an instance of the library
TFT TFTscreen = TFT(cs, dc, rst);

void setup() {

  //initialize the library
  TFTscreen.begin();

  // clear the screen with a black background
  TFTscreen.background(0, 0, 0);
  //set the text size
  TFTscreen.setTextSize(2);
}

void loop() {

  //generate a random color
  int redRandom = random(0, 255);
  int greenRandom = random (0, 255);
  int blueRandom = random (0, 255);
  
  // set a random font color
  TFTscreen.stroke(redRandom, greenRandom, blueRandom);
  
  // print Hello, World! in the middle of the screen
  TFTscreen.text("Hello, World!", 6, 57);
  
  // wait 200 miliseconds until change to next color
  delay(200);
}

Afficher le code brut

Voici votre « Hello, World! » texte sur l’écran 1.8 TFT.

Guide de lecran 18 TFT avec Arduino

Formes d’affichage

La bibliothèque TFT fournit des fonctions utiles pour dessiner des formes sur l’écran :

  • Écran TFT.point(x, y) – afficher un point à la coordonnée (x, y)
  • Écran TFT.ligne(xDébut, yDébut, xFin, yFin) – dessine un ligne qui commence à (xStart, yStart) et se termine à (xEnd, yEnd)
  • Écran TFT.rect(xStart, yStart, largeur, hauteur) – dessine un rectangle avec le coin supérieur gauche à (xStart, yStart) avec la largeur et la hauteur définies
  • Écran TFT.circle(x, y, rayon) – dessine un cercle dont le centre est à (x, y) avec le rayon spécifié

Code

L’exemple suivant affiche plusieurs formes. Chaque fois que le code passe par la boucle, les formes changent de couleur.

Copiez le code suivant dans votre IDE Arduino et téléchargez-le sur votre carte Arduino.

/*
 * Rui Santos 
 * Complete Project Details https://www.raspberryme.com
 */
 
// include TFT and SPI libraries
#include <TFT.h>  
#include <SPI.h>

// pin definition for Arduino UNO
#define cs   10
#define dc   9
#define rst  8


// create an instance of the library
TFT TFTscreen = TFT(cs, dc, rst);

void setup() {

  //initialize the library
  TFTscreen.begin();

  // clear the screen with a black background
  TFTscreen.background(0, 0, 0);
}

void loop() {

  //generate a random color
  int redRandom = random(0, 255);
  int greenRandom = random (0, 255);
  int blueRandom = random (0, 255);
  
  // set the color for the figures
  TFTscreen.stroke(redRandom, greenRandom, blueRandom);

  // light up a single point
  TFTscreen.point(80,64);
  // wait 200 miliseconds until change to next figure
  delay(500);

  // draw a line
  TFTscreen.line(0,64,160,64);
  delay(500);

  //draw a square
  TFTscreen.rect(50,34,60,60);
  delay(500);
    
  //draw a circle
  TFTscreen.circle(80,64,30);
  delay(500);

  //erase all figures
  TFTscreen.background(0,0,0);
}

Afficher le code brut

Voici les formes à l’écran : 1642322886 925 Guide de lecran 18 TFT avec Arduino

Afficher les images

L’écran TFT 1.8 peut charger des images à partir de la carte SD. Pour lire à partir de la carte SD, vous utilisez le Dakota du Sud bibliothèque, déjà incluse dans le logiciel Arduino IDE. Suivez les étapes suivantes pour afficher une image sur l’écran :

1) Broches d’en-tête à souder pour la carte SD. Il y a quatre broches opposées aux broches d’affichage, comme illustré dans la figure ci-dessous.

1642322886 410 Guide de lecran 18 TFT avec Arduino

2) L’affichage peut charger des images plus grandes ou plus petites que la taille d’affichage (160 x 128 px), mais pour de meilleurs résultats, modifiez la taille de votre image à 160 x 128 px.

3) L’image doit être dans .bmp format. Pour ce faire, vous pouvez utiliser un logiciel de retouche photo et enregistrer l’image sous .bmp format.

4) Copiez l’image sur la carte SD et insérez-la dans la fente pour carte SD à l’arrière de l’écran.

5) Câblez les broches de la carte SD à l’Arduino en suivant le tableau ci-dessous :

Carte SD sur écran TFT Câblage à Arduino Uno
CS 4
MOSI 11
MISO 12
SCK 13

L’écran et la carte SD fonctionnent avec la communication SPI, vous aurez donc des broches sur l’Arduino avec deux connexions.

6) Dans l’IDE Arduino, accédez à Fichier > Exemples > TFT > Arduino > TFTBitmaLogo.

sept) Modifiez le code pour qu’il recherche votre image. Remplace le « arduino.bmp” avec le nom de votre image :

// now that the SD card can be access, try to load the image file
logo = TFTscreen.loadImage("arduino.bmp");

8) Téléchargez le code sur votre Arduino.

Noter: certaines personnes rencontrent des problèmes avec cet affichage lorsqu’elles essaient de lire à partir de la carte SD. Nous ne savons pas pourquoi cela se produit. En fait, nous avons testé plusieurs fois et cela a bien fonctionné, puis, lorsque nous étions sur le point d’enregistrer pour vous montrer le résultat final, l’écran n’a plus reconnu la carte SD – nous ne savons pas si c’est un problème avec le support de carte SD qui n’établit pas une connexion correcte avec la carte SD. Cependant, nous sommes sûrs que ces instructions fonctionnent, car nous les avons testées.

Conclusion

Dans ce guide, nous vous avons montré comment utiliser l’écran TFT 1.8 avec l’Arduino : afficher du texte, dessiner des formes et afficher des images. Vous pouvez facilement ajouter une belle interface visuelle à vos projets en utilisant cet affichage.

Avez-vous des projets avec l’écran 1.8 TFT ? Faites-nous savoir dans la section commentaires ci-dessous.

Si vous avez aimé cet article, vous pouvez également trouver utile :

Merci d’avoir lu.