Les microcontrôleurs - PIC 16F84 04

Documents pareils
Codage d information. Codage d information : -Définition-

Représentation d un entier en base b

Conversion d un entier. Méthode par soustraction

Les opérations binaires

Une version javascript sera disponible directement dans le cours prochainement.

Informatique Générale

Cours Informatique 1. Monsieur SADOUNI Salheddine

MICROCONTROLEURS PIC PROGRAMMATION EN C. V. Chollet - cours-pic-13b - 09/12/2012 Page 1 sur 44

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

I- Définitions des signaux.

Architecture des ordinateurs Introduction à l informatique

GPA770 Microélectronique appliquée Exercices série A

V- Manipulations de nombres en binaire

IV- Comment fonctionne un ordinateur?

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

Logiciel de Base. I. Représentation des nombres

Le codage informatique

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

Algorithme. Table des matières

Rappels d architecture

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

TP 1 : 1 Calculs en binaire, octal et hexadécimal

I.1- DÉFINITIONS ET NOTIONS DE BASE

Conception de circuits numériques et architecture des ordinateurs

ELP 304 : Électronique Numérique. Cours 1 Introduction

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Représentation des Nombres

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

IFT1215 Introduction aux systèmes informatiques

Concevoir son microprocesseur

Architecture des ordinateurs


Chapitre 10 Arithmétique réelle

Initiation au binaire

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Chapitre 1 I:\ Soyez courageux!

PIC : COURS ASSEMBLEUR

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Introduction à l algorithmique et à la programmation (Info 2)

Programmation C. Apprendre à développer des programmes simples dans le langage C

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Bases de programmation. Cours 5. Structurer les données

Information. BASES LITTERAIRES Etre capable de répondre à une question du type «la valeur trouvée respecte t-elle le cahier des charges?

AMICUS 18 (2ème partie) 4) Présentation du logiciel Amicus IDE

Electronique Numérique

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

ASR1 TD7 : Un microprocesseur RISC 16 bits

Architecture des Ordinateurs. Partie II:

Microprocesseur + Logiciel

CODAGE DES SMS. 2 Commandes «AT» 25 3 Matériels utilisés 55 4 Interfacer un téléphone GSM 73 5 Réalisations électroniques 101

STAGE IREM 0- Premiers pas en Python

Architecture de l ordinateur

Rappels Entrées -Sorties

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Programmation assembleur : aperçu

Architecture des Ordinateurs Première partie. Licence d Informatique - IUP Miage - FIIFO

Annexe : La Programmation Informatique

Conférence sur les microcontroleurs.

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

Chap17 - CORRECTİON DES EXERCİCES

Introduction à NetCDF

Manuel de référence du langage Exemples Les aventures de Docteur R.

Architecture matérielle des systèmes informatiques

ROYAUME DU MAROC RESUME THEORIQUE & GUIDE DE TRAVAUX PRATIQUES : TERTIAIRE ET NTIC : SYSTÈME ET RÉSEAUX INFORMATIQUES

DM 1 : Montre Autoquartz ETA

Cours 3 : L'ordinateur

Système binaire. Algèbre booléenne

Logiciels DSPiy. DSPiyStudio logiciels et format des fichiers. incomplet

TP a Notions de base sur le découpage en sous-réseaux

Informatique Industrielle Année Architecture des ordinateurs Note de cours T.Dumartin

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

Utilisation de KoXo Computers V2.1

Architecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155)

1 Introduction au codage

a) b)

RESUME DE COURS ET CAHIER D'EXERCICES

ProCod. Manuel d utilisation. Software de programmation pour codeurs absolus TWK modèles CRF et DAF CRF DF 08 / 10


Organisation des Ordinateurs

Le multiplexage. Sommaire

Equipement. électronique

Lecteur de carte à puce LCPM1 SOMMAIRE

Compilation (INF 564)

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Introduction...6. Assembleur, philosophieet atouts...8. Avantages et inconvénients de l assembleur...9. Que programmer en Assembleur?.

nom : Collège Ste Clotilde

TD Architecture des ordinateurs. Jean-Luc Dekeyser

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Éléments d'architecture des ordinateurs

ET LO GICIEL D UN S YS T EME IN FORMATIQUE

Le chiffre est le signe, le nombre est la valeur.

Conception et réalisation d'une pédale MIDI

Transcription:

Sciences de l Ingénieur PAGE 58 Les microcontrôleurs - PIC 16F84 04 Fonction : Les microcontrôleurs µc permettent sous une taille réduite de réaliser des calculs. Ils peuvent recevoir et envoyer des ordres grâce à des interfaces d'entrées et de sorties. Ils présentent l'intérêt de réunir sous un volume réduit de la mémoire, un calculateur, des ports E/S... Une fois programmés, ils sont autonomes. Structures PC : (programme counter) permet de lire la mémoire programme Les registres ALU : (Unité arithmétique et logique) il s'agit de l'unité de calcul Les données et les programmes sont toujours stockés en mémoire tandis que les opérations exécutées par l'unité de calcul le sont au moyen de registres. Un registre est un circuit logique capable de contenir des données. L'association de plusieurs circuits (par exemple une bascule D) permet de réaliser un registre. Un groupe de huit bits est nommé un octet. Les registres servent aux calculs et à la configuration du µc

Sciences de l Ingénieur PAGE 59 Mémoire Afin de mémoriser plusieurs mots binaires, on empile des registres. Cette association s'appelle une mémoire. Afin d'accéder à chaque mot contenu dans la mémoire, ceux-ci ont une adresse qui correspond à leur position physique dans la mémoire. Les µc étant des circuits logiques, ils ne manipulent que du binaire (0-0V ; 1 - +5v). L'écriture des contenus des registres ainsi que leur adresse devient vite lourde. Afin de simplifier l'écriture, on utilise la notation hexadécimale. L'adresse 0 0 0 0 0 1 1 0 devient alors 06, par défaut les nombres seront exprimés en hexa. Matériel PIC 16 F 84-04 (4 MHz) 13 E / S à configurer L'horloge s'obtient de deux façons QUARTZ ou réseau RC

Sciences de l Ingénieur PAGE 60 Entrées Sorties Principe de programmation Le µc ne comprend que l hexadécimal. Le programme est écrit grâce à un éditeur comme notepad. Le programme est transféré grâce à une carte électronique et un logiciel comme Icprog. Il est possible de programmer les µcs en assembleur. Des mnémoniques remplacent l hexadécimal. Pour le pic qui est du type (RISC) reduced instruction set computer, il n y a que 35 instructions. Le programme est ensuite compiler en hexadécimal par un logiciel type MPASMWIN. Il est possible d écrire le programme dans un langage évolué type c basic ou en logigramme et de le compiler en assembleur et en hexadécimal Résumé assembleur hexadécimal µc MPASMWIN Icprog Langage de haut niveau : C basic Ou algorigramme Principe fondamental de programmation : Un microcontrôleur garde en mémoire les ordres donnés, il faut absolument remettre à zéro les sorties quand on veut les couper. Un µc exécute les actions les uns après les autres à la cadence du quartz (environ 1 opération toutes les 1µs), il faut donc utiliser des boucles ou attendre avec des temporisations.

Sciences de l Ingénieur PAGE 61 NUMERATION CODAGE 1 la Numération Système égyptien - Utilisation de symbole représentant un poids - La place n a pas d importance. Exemple Unité Dizaine Centaine Mille Dix mille = 151 Système utilisé par les Romains I V X L C D M 1 5 10 50 100 500 1000 CLI = 151 - Si à droite d un chiffre on en écrit un autre de valeur moindre ou égal, la valeur du chiffre est augmentée VI = 6, XX = 20. - Si à gauche d un chiffre on en écrit un autre de valeur moindre la valeur du chiffre est diminuée IV = 4, IC = 99. - La valeur d un chiffre est multipliée par mille s il est surmonté d un trait Système dit arabe - Chaque chiffre a un poids, de 0 à n suivant la base ( 9 pour la base 10, 1 pour la base 2). - La place des chiffres dans le nombre a son importance. - Chaque place a son poids Exemple 1 5 1 en base 10 1 unité : 0 à 9 1 centaine 5 x 1 dizaine 1 unité

Sciences de l Ingénieur PAGE 62 2 - Bases Notation 10 2, 96 16, 52 10 2 1 Base10 La base 10 est utilisée tous les jours, ce sont les nombres décimaux. Une unité va de 0 à 9, au delà c est à dire 10 unités on utilise le terme de dizaine. Ex 7 7 unités 15 15 unités ou 1 dizaine + 5 unités 1 dizaine 5 unités 0 9 1 dizaine 1 9 7 2 = 1000 + 900 + 70 + 2 1 millier 9 centaines 7 dizaines 2 unités Généralisation 1972 = 1. 10 3 + 9. 10² + 7. 10 1 + 2. 10 0 = 1000 + 900 + 70 + 2 2 2 Base 2 Une unité peut prendre l état 0 ou 1 Ex 10 2 10 2 = 1. 2 1 + 0. 2 0 0 0 1 1 2 1 2 0 2 3 Base 16 Ex Hexa 0 1 2 3 4 5 6 7 8 9 A B C D E F Décim 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 al 0 0 E19 16 = E. 16² + 1. 16 1 + 9. 16 0 F F E19 16 = 14. 16² + 1. 16 1 + 9. 16 0 16 1 16 0 E19 16 = 3609

Sciences de l Ingénieur PAGE 63 3 Conversions entre bases 3 1 Bases 2 10 1101 2 = 1. 2 3 + 1. 2 2 + 0. 2 1 + 1. 2 0 = 1.8 + 1. 4 + 0. 2 + 1. 1 = 13 10 3 2 Bases 16 10 C1 16 = C. 16 1 + 1. 16 0 = 12.16 1 + 1. 16 0 = 193 3 3 Bases 10 n Diviser par n le nombre en base 10 Puis diviser le quotient par n et garder le reste Lire le résultat en partant de la fin et en remontant. nbr n r q r Sens de lecture n q 4 Addition de nombres binaires 1 + 1 10 1 1 1 1 0 0 1 + 0 1 0 1 1 0 1 5 - Codage 5 1 Notion de code Le format le plus simple est le bit, il peut prendre deux états, 0 ou 1, facilement réalisable en électricité en affectant une grandeur électrique au 1 et une autre au 0. 1 bit Oui Etat logique 1 v = + vcc Non Etat logique 0 v = 0 v Mais si on veut différencier plus de cas, il faudra utiliser un ensemble de n bits faisant correspondre à chaque cas une combinaison. La table de correspondance entre les cas et les combinaisons sera le code. 5 2 Type d information à coder La plupart des informations à coder seront des nombres (une quantité, n d ordre ou adresse) ou la transmission de textes grâce aux codes alphanumériques (ASCII).

Sciences de l Ingénieur PAGE 64 6 - les codes numériques 6 1 Code binaire pur C est le code le plus simple. Son principe est le même que pour les nombres décimaux, mais ici la base de numération est égale à 2 et l on utilise que deux symboles : 0 et 1 Le code binaire pur est un code pondéré. On peut affecter à chaque bit un poids, et la valeur du nombre représenté peut être obtenue directement en additionnant le poids des bits. 128 64 32 16 8 4 2 1 Un nombre X s écrira : X a a a a X = 11001 a, a,.., a, a 0ou 1 n n 1 1 0 = n 2 + n 1 2 +... + 1 2 + 0 2 avec n n 1 1 0 = 4 3 2 1 0 X = 1 2 + 1 2 + 0 2 + 0 2 + 1 2 X = 16+ 8+ 0+ 0+ 1= 25 Conversion rapide binaire décimale Exemple 0110 4+2=6 Notations condensées Notation hexadécimale 8 4 2 1 0 1 1 0 L utilisation du système hexadécimal, ou système à base 16, relève du même principe que la notation octale, mais on regroupe les éléments binaires par 4 au lieu de 3. Il faut utiliser 16 chiffres pour la représentation. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 A B C D E F Conversion rapide hexa binaire Exemples 101110 on fait des paquets de 4 0010 1110 on convertit caque paquet 2 E Code BCD décimal codé binaire Chaque chiffre est codé par son équivalent binaire, la représentation de nombres décimaux se fait avec autant de groupe de 4 bits que le nombre a de chiffres. 3609 3 6 0 9 0011 0110 0000 1001

Sciences de l Ingénieur PAGE 65 Notation sous forme de mot binaire 8 bits : octet 16 bits : mot 32 bits : mot long 6 2 Code binaire réfléchi ou code gray C est un code non pondéré, les combinaisons n ont qu une valeur relative. Il offre l avantage de ne modifier qu un bit à la fois. 6 3 Nombres binaires signés binaire naturel nombre binaire réfléchi D2 D1 D0 décimal D2 D1 D0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 2 0 1 1 0 1 1 3 0 1 0 1 0 0 4 1 1 0 1 0 1 5 1 1 1 1 1 0 6 1 0 1 1 1 1 7 1 0 0 Lorsqu il est nécessaire d utiliser des nombres binaires positifs et négatifs, on travaille en binaire signé. Le signe est donné par le bit de poids fort (MSB). Si c est 0 le nombre est positif, si c est 1 le nombre est négatif. Conversion d un nombre binaire négatif en nombre décimal Extraire le MSB pour le signe Complémenter les autres bits 1000 0000 => 000 0000 111 1111 Additionner 1 + 1 Convertir le résultat en décimal 1000 0000 = - 128 6 4 Conclusions Le code binaire pur, qui se prête parfaitement au traitement dans les unités de calcul, est malheureusement inadapté à l interprétation directe par l homme. La forme octale ou hexadécimale bien que plus facile à écrire n offre pas plus de facilité d interprétation. binaire pur hexadécimal décimal 01101010 6A 106