Chapitre 5 : L affichage



Documents pareils
ANALYSE TRAMEs LIAISON SERIE

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

1. PRESENTATION DU PROJET

Encoder Encoder 1 sur 15. Codification fil par étage 15 étages max. + 2 flèches + signal de mouvement. Raccordements 0.1 mm²...

Modules d automatismes simples

Prototypage électronique

Une carte pour vos projets

Activité initiation Arduino

Conservation des documents numériques

Flowcode - Mode d'emploi

Pour les caméras IP de modèles : QSTC201 QSTC211. Surveillance à distance via Internet Guide de démarrage

Utilisation du visualiseur Avermedia

TER Licence 3 Electronique des Télécoms Transmission GSM

Cours 3 : L'ordinateur

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Table des matières. F. Saint-Germain / S. Carasco Document réalisé avec OpenOffice.org Page 1/13

Traitement numérique de l'image. Raphaël Isdant

Mentions légales (non traduites) Introduction Légendes Schémas de raccordement Configuration de la S16...

Chapitre 4 Pierre, papier, ciseaux

Durée estimée :1 journée Date de la réalisation : Description Fournisseur Référence Nombre PU HT LM35CZ, LM35AZ LM35DZ

La mémoire. Un ordinateur. L'octet. Le bit

Séverine Marien Maxime Ringard. 2 ème année GEII. Régulateur de charge pour station de recharge photovoltaïque

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Immersion - Vision 3D dans la RV.

Mises à jour des logiciels Manuel de l'utilisateur

Régler les paramètres de mesure en choisissant un intervalle de mesure 10µs et 200 mesures.

Création de maquette web

Le bus USB. I) Introduction : II) Architecture du bus USB :

Nb. De pages : 24 MANGO. Manuel d'utilisation. Version 1.2. décembre 2010

LOGICIEL SDS ver Manuel de l utilisateur SDS VER 1-28/05/03

COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Bien commencer avec un LaunchPad MSP430G et un Breadboard

IV- Comment fonctionne un ordinateur?

VIII- Circuits séquentiels. Mémoires

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

IUT GEII MARSEILLE Patrick GUMUCHIAN. Lycée Alphonse Benoit L'Isle sur la Sorgue Marc SILANUS

Lecteur de carte à puce LCPM1 SOMMAIRE

BAMOSONIC IT. - Mesure de niveau -

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51


Interface PC Vivago Ultra. Pro. Guide d'utilisation

Projet Matlab : un logiciel de cryptage

Transmissions série et parallèle

Gestion des utilisateurs : Active Directory

LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011

Le langage C. Séance n 4

Éléments d'architecture des ordinateurs

UE Programmation Impérative Licence 2ème Année

I00 Éléments d architecture

Chapitre 2. Classes et objets

MANUEL D INSTRUCTION

Manuel d'utilisation de Mémo vocal

Guide de fonctions du téléphone du système SCI Norstar

TP SIN Traitement d image

A L ERT. Pour démarrer rapidement avec

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

La programmation des PIC en C. Les fonctions, les interruptions.

Cours d initiation à la programmation en C++ Johann Cuenin

Création d'un questionnaire (sondage)

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Rapport de projet de fin d études

Sélection du contrôleur

PIC EVAL Dev Board PIC18F97J60

COMMUNICATION PC/MINITEL

Transférer et enregistrer les photos sur l'ordinateur

Notice d'utilisation Afficheur multifonctions et système d'évaluation FX 360. Mode/Enter

Manuel utilisateur Alarme GSM+RTC

TABLE DES MATIÈRES. Avant-propos... 1 Communications série Entrées simples analogiques et numériques... 61

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cahier des charges. driver WIFI pour chipset Ralink RT2571W. sur hardware ARM7

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

BM Le bus USB 09/05/2013. Le Port USB

Reekin Timemaster Station météo

ENREGISTREUR DE TEMPERATURE

Le modèle de données

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

1 sur 5 10/06/14 13:10

Changer la batterie de son ordinateur portable

Chaque ordinateur est constitué de différentes unités de stockage de données (Disque dur, Graveur ) que l on peut imaginer comme de grandes armoires.

PROJET ALGORITHMIQUE ET PROGRAMMATION II

Visio Kit. Mode d'emploi

Configurer un réseau domestique. Partager ses fichiers, ses dossiers et ses imprimantes sur tous ses PC.

Totem Digital LED 50 pouces touten-un

Comment mettre en page votre livre

CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF

Education Delivery Intelligent Tool

C.6-6. Mode d'emploi utilisateur. Centrale d'alarme Filaire et sans fil. Fait par:

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

KPI (Key Performance Indicator) dans MOSS

BONNE NOUVELLE, À PARTIR DE DEMAIN 15 AOÛT 2014, l inscription en ligne sera disponible à partir du site de l ARO.

Dossier technique. Présentation du bus DMX et Utilisation des options EL13 / EL14 ERM AUTOMATISMES INDUSTRIELS 1 LE PROTOCOLE DMX 2

Ceci est un Chromebook, ton ordinateur!

HTML5, CSS3 et JavaScript Développez vos sites pour les terminaux mobiles

Oscilloscope actif de précision CONCEPT 4000M

GUIDE D'UTILISATION DU LOGICIEL DU TRIDENT GRAPHIQUE : TRG_REPORT

LES DECIMALES DE π BERNARD EGGER

MODULES 3D TAG CLOUD. Par GENIUS AOM

Transcription:

Chapitre 5 : L affichage Vue d ensemble Cette leçon présente la définition et l utilité de la récursivité. Objectifs L apprenant doit appris plus tôt comment interagir avec l'ordinateur, lui envoyer de l'information. Mais maintenant, il faut pouvoir afficher de l'information sans avoir besoin d'un ordinateur donc avec les écrans. Pré-requis Electronique Programmation Système logique Durée 3 H Eléments de contenu 1. Les Ecrans LCD 2. Exercice d application

5.1 Les ecrans LCD Mettons tout de suite au clair les termes : LCD signifie "Liquid Crystal Display" et se traduit, en français, par "Écran à Cristaux Liquides". Ces écrans sont dans plein d'appareils électroniques disposant d'afficheur : les montres, le tableau de bord de du voiture, les calculatrices, etc Normalement, pour pouvoir afficher des caractères sur l'écran il nous faudrait activer individuellement chaque pixel de l'écran. Un caractère est représenté par un bloc de 7*5 pixels. Ce qui fait qu'un écran de 16 colonnes et 2 lignes représente un total de 16*2*7*5 = 1120 pixels. Tout comme il existe un driver vidéo pour la carte graphique d'ordinateur, il existe un driver "LCD" pour l afficheur. Ce composant va servir à décoder un ensemble "simple" de bits pour afficher un caractère à une position précise ou exécuter des commandes comme déplacer le curseur par exemple. Ce composant est fabriqué principalement par Hitachi et se nomme le HC44780. Il sert de décodeur de caractères. Ainsi, plutôt que de devoir multiplier les signaux pour commander les pixels un à un, il nous suffira d'envoyer des octets de commandes pour lui dire "écris moi 'welcome ISET' à partir de la colonne 3 sur la ligne 1". Ce composant possède 16 broches que je vais brièvement décrire : N Nom Rôle 1 VSS Masse 2 Vdd +5V 3 V0 Réglage du contraste 4 RS Sélection du registre (commande ou donnée) 5 R/W Lecture ou écriture 6 E Entrée de validation 7 à 14 D0 à D7 Bits de données 15 A Anode du rétroéclairage (+5V) 16 K Cathode du rétroéclairage (masse) Afficheur alphanumérique Afficheur graphique (monochrome) Afficheur graphique (couleur) Les afficheurs existent dans de nombreuses tailles. Pour les afficheurs de type textes, on retrouve le plus fréquemment le format 2 lignes par 16 colonnes. Il en existe cependant de Ensg. Amine Shared 42

nombreux autres avec une seule ligne, ou 4 (ou plus) et 8 colonnes, ou 16, ou 20 ou encore plus. L'afficheur LCD utilise 6 à 10 broches de données ((D0 à D7) ou (D4 à D7) + RS + E) et deux d'alimentations (+5V et masse). La plupart des écrans possèdent aussi une entrée analogique pour régler le contraste des caractères. Nous brancherons dessus un potentiomètre de 10 kohms. Le montage à 4 broches de données Ensg. Amine Shared 43

Nous allons utiliser la librairie "LiquidCrystal". Nous allons donc commencer par déclarer un objet (c'est en fait une variable évoluée, plus de détails dans la prochaine partie) lcd, de type LiquidCrystal et qui sera global à notre projet. La déclaration de cette variable possède plusieurs formes: LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7) où rs est le numéro de la broche où est branché "RS", "enable" est la broche "E" et ainsi de suite pour les données. LiquidCrystal(rs, enable, d4, d5, d6, d7) (même commentaires que précédemment Ensuite, dans le setup() il nous faut démarrer l'écran en spécifiant son nombre de colonnes puis de lignes. Cela se fait grâce à la fonction begin(cols,rows). Voici un exemple complet de code correspondant au branchement précédent : #include "LiquidCrystal.h" //ajout de la librairie //Vérifier les broches! LiquidCrystal lcd(11,10,9,8,7,6,5,4,3,2); //liaison 8 bits de données LiquidCrystal lcd(11,10,5,4,3,2); //liaison 4 bits de données void setup() lcd.begin(16,2); //utilisation d'un écran 16 colonnes et 2 lignes lcd.write("welcome ISET"); //petit test pour vérifier que tout marche void loop() 5.2 Exercice d application En effet, une fois que l écran LCD est bien paramétré, il nous suffira d'utiliser qu'une seule fonction pour afficher du texte. En effet, une fois de plus nous retrouvons une fonction print(), comme pour l'objet Serial, pour envoyer du texte. lcd.print("welcome ISET"); et pour code complet avec les déclarations on obtient : #include <LiquidCrystal.h> //on inclut la librairie // initialise l'écran avec les bonnes broches LiquidCrystal lcd(8,9,4,5,6,7); void setup() // set up the LCD's number of columns and rows: lcd.begin(16, 2); lcd.print("bonjour SEM 3 1!"); void loop() Ensg. Amine Shared 44

Dans cet exercice, je vous propose de réaliser une petite horloge. L'objectif sera donc d'afficher le message suivant : "Il est hh:mm:ss" avec 'hh' pour les heures, 'mm' pour les minutes et 'ss' pour les secondes. Solution : #include <LiquidCrystal.h> //on inclut la librairie // initialise l'écran avec les bonnes broches // ATTENTION, REMPLACER LES NOMBRES PAR VOS BRANCHEMENTS À VOUS! LiquidCrystal lcd(8,9,4,5,6,7); int heures,minutes,secondes; char message[16] = ""; void setup() lcd.begin(16, 2); // règle la taille du LCD : 16 colonnes et 2 lignes //changer les valeurs pour démarrer à l'heure souhaitée! heures = 0; minutes = 0; secondes = 0; void loop() //on commence par gérer le temps qui passe... if(secondes == 60) //une minutes est atteinte? secondes = 0; //on recompte à partir de 0 minutes++; if(minutes == 60) //une heure est atteinte? minutes = 0; heures++; if(heures == 24) //une journée est atteinte? heures = 0; //met le message dans la chaine à transmettre sprintf(message,"il est %2d:%2d:%2d",heures,minutes,secondes); lcd.home(); //met le curseur en position (0;0) sur l'écran lcd.write(message); //envoi le message sur l'écran delay(1000); //attend une seconde //une seconde s'écoule... secondes++; Ensg. Amine Shared 45