Programmation in-situ de la mémoire flash du HC08



Documents pareils
2 Raccordement d une imprimante, d un terminal ou d un ordinateur au DULCOMARIN

Master d'informatique 1ère année Réseaux et protocoles. Couche physique

ANALYSE TRAMEs LIAISON SERIE

Transmissions série et parallèle

ENREGISTREUR DE TEMPERATURE

Leçon 1 : Les principaux composants d un ordinateur

AP1.1 : Montages électroniques élémentaires. Électricité et électronique

PACK ADSL WIFI. Configurer ma connexion ADSL avec Modem/Routeur Sagem 1400W

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

GUIDE D UTILISATION ADSL ASSISTANCE

Système M-Bus NIEVEAU TERRAIN NIVEAU AUTOMATION NIVEAU GESTION. Domaines d'application

ANNEXE 5 (1 page) MIC2920x

Notice technique. Système de surveillance MAS 711

Bien commencer avec un LaunchPad MSP430G et un Breadboard

LCD COLOR MONITOR (English French Translation)

13/11/2009 DUT-MUX-0185 /V2.0

Description d'une liaison

fullprotect inside EOLE SPEie RS E-SPEie V-0.6A-RS 1.0 revision Protection environnement Datasheet édition française

CRÉER UN DVD VIDEO avec DVD FLICK (avec ou sans menu)

1. PRESENTATION DU PROJET

Solution parfaite pour une expérience bureautique transparente. Récapitulatif. Processeur Teradici avancé, haute performance

Notice de fonctionnement DVR H Méthode de Visionnage ESEENET

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

Un ordinateur, c est quoi?

ENVOI EN NOMBRE DE MESSAGES AUDIO

SYSTEMES MODULAIRES INDUSTRIELS DE TELETRANSMISSION TELEGESTION

Carte Relais GSM (Manuel Utilisateur)

Boîtier disque dur SATA 3,5 pouces Fonction économie d énergie

SCL LOGICIEL DE CONTROL

MANUEL D UTILISATION TERMINAL PHL 2700

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

Utilisation de l éditeur.

TeamConnect. SL TeamConnect CU1, Unité centrale SL TeamConnect CB1, Combox CARACTÉRISTIQUES

Utilisation de la clé USB et autres supports de stockages amovibles

Boîtier pour disque dur externe 3,5" (8,89cm) USB 2.0

Premier démarrage de votre portable GIGABYTE

Modules d entrées/sorties pour FX série XM07 et XM14

Utilisation de Sarbacane 3 Sarbacane Software

Modem routeur ADSL2/2+ WIFI avec switch 4 ports Guide d'installation rapide

MANUEL D INSTALLATION

LibreOffice Calc : introduction aux tableaux croisés dynamiques

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

MEDIA NAV Guide de téléchargement de contenus en ligne

Conférence sur les microcontroleurs.

! analyse du fonctionnement

Connecter un PC sur une TV.

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

Félicitations pour l'achat de votre Notebook GIGABYTE.

Enregistreur de Température pour PC DALLAS 1820

MACHINE A SOUDER MANUEL D UTILISATION

UP 588/13 5WG AB13

Caméra microscope USB

Prise en main. Prise en main - 0

Enregistreur sans papier. Interface LON. B Description des interfaces 10.99/

SMS-COM LT RAILS DIN V Manuel d installation, de programmation et d utilisation.


/ / / Système de distribution audio A44/A88 Logiciel PC

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

MANUEL DRIVELINK DRIVELINK

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

Notice ARES Version 5.20 Française

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Accès à un coupleur/contrôleur Ethernet via une liaison téléphonique

Les tablettes et l'extranet Intermixt Mode d'emploi

Animation pédagogique sur l oscilloscope à mémoire Hameg HM 507

Carte IEEE Version 1.0

EM398x-R1 UPS VA

Documentation Technique du programme HYDRONDE_LN

energy BOX WEB Automates de GTB

NOTICE D UTILISATION ET D INSTALLATION. de la CARTE MONITORING DE RELAIS «IO-MONITOR»

Introduction à l informatique en BCPST

I) INTRODUCTION... 3 II) ENREGISTREMENT DE SON TYROS

1. Insérez le DVD de support dans le lecteur optique. L onglet Drivers (Pilotes) apparaîtra si l Exécution automatique est activée.

Boîtier Externe USB 3.0 pour Disque Dur 2,5 SATA III avec soutien UASP

Manuel d utilisation

Présentation et installation PCE-LOG V4 1-5

Suivant les windows, le signal pour indiquer l imprimante par défaut est un petit rond noir ou vers avec un V à l intérieur.

MID. Table des matières

Conviviality Line. Votre sécurité en bonnes mains

Manuel d utilisation de Wireless Mobile Adapter Utility. Fonctionnalités

ASUS AI Suite II. D083 v1.0

Sécurisation avancée des données de cartes bancaires Guide Hôtel v1.0 SECURISATION AVANCEE DES DONNEES BANCAIRES. Guide Hôtel

CENTRALE D ALARME SANS FILS

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

X-Lite guide de configuration et d utilisation

1AN. e n 19" FicheS Techniques. PLV - Dynamique. caractéristiques techniques. dimensions dela structure

SpeechiTablet Notice d utilisation

Indicateur d accélération numérique. Mode d emploi

Réalisez votre propre carte de vœux Éléctronique

1/6. L icône Ordinateur

QUICK START RF Monitor 4.3-1

Guide d'utilisateur. Câble adaptateur USB2.0 vers IDE et SATA. Modèle : DA-70202

PRECAUTIONS DESCRIPTION DU PRODUIT

PARAGON - Sauvegarde système

Notice d utilisation

CLIP. (Calling Line Identification Presentation) Appareil autonome affichant le numéro appelant

Connected to the FP World

Configuration de ma connexion ADSL

Mise en service HORUS version HTTP

Transcription:

Programmation in-situ de la mémoire flash du HC Nabil Al-HOSSRI, département GEII IUT Bordeaux E-mail: nabil.al-hossri@u-bordeaux.fr Sommaire PROGRAMMATION IN-SITU DE LA MEMOIRE FLASH DU HC... INTRODUCTION... LA MEMOIRE FLASH... PROGRAMMATION IN-SITU EN MODE MONITEUR... LA PRISE RS DU PC... PROGRAMMATEUR COMMERCIAL... BPROGRAMMATEUR «MAISON»... LOGICIEL CODE WARRIOR... CARTE MICROCONTROLEUR TYPE MCHCGP... CARTES D APPLICATION... Carte d affichage sur LCD x alphanumérique... Carte de visualisation sur LCD graphique x pixels... Interface permettant de dialoguer en duplex entre PC et micro.. Interface d un clavier matriciel touches... Programmation in-situ de la mémoire flash du HC

Introduction Lors du développement d une application électronique basée sur des systèmes à microcontrôleur, il est nécessaire de reprogrammer à plusieurs reprises les composants, surtout pendant la phase de mise au point de l application. Or il est pénible de sortir le composant de son support, le placer sur le programmateur, le replacer dans le circuit, pour finalement s apercevoir que le soft ne marche pas et qu il faut réitérer la manœuvre!!! En effet, à cette occasion, il peut subir plusieurs dommages : pattes qui se tordent, dessoudage nécessaire quand il s agit d une technologie CMS. On voit vite l intérêt de pouvoir reprogrammer le composant sans le sortir de sa carte cible. Afin de pouvoir programmer un composant logique, il va falloir aménager les cartes cibles. Néanmoins, nous voulons que l encombrement supplémentaire et le nombre de composant soient minimisés le plus possible. Il faut aussi ne pas perdre trop de pattes d entrées-sorties sur les composants. Afin de réaliser tout ceci, on va prévoir des connecteurs sur la carte qui nous permettront de relier un programmateur in-situ à nos microcontrôleurs. Nous utilisons essentiellement des microcontrôleurs HC de la firme Freescale. Le programmateur doit permettre la programmation in-situ des microcontrôleurs, et aussi leur debugging, procédure bien pratique en phase de développement d une application. La mémoire flash La mémoire Flash des microcontrôleurs HC de la firme Freescale peut être programmée ou effacée, selon l utilisation des routines fonctionnant dans le mode autonome ou le mode moniteur. En mode autonome le micro exécute les codes qui ont été programmés par l utilisateur, dans sa mémoire Flash. C'est le mode de fonctionnement habituel d un processeur. En mode moniteur, le micro exécute les routines qui ont été figées, au cours de sa fabrication, dans une zone de sa mémoire. Ce mode est employé pour gérer une communication sérielle, via une seule broche (PTA pour HCGP), avec un équipement extérieur. L effacement et la reprogrammation de la mémoire flash du micro font aussi appel à ce mode. Les niveaux logiques appliqués sur quelques broches du micro utilisé déterminent, après une mise sous tension, son mode de fonctionnement. Pour le HCGP voir le tableau suivant : Mode moniteur du HCGP Nom IRQ\ PTA PTA PTC PTC PTC Quartz Transmission Niveau ou tension V De V à V. MHz Bauds Tableau Conditions de mise en mode moniteur du HCGP. Le dialogue avec un PC se fait via la ligne bidirectionnelle PTA. Pour plus de détails se référer à la section «Monitor ROM» ici. Programmation in-situ de la mémoire flash du HC

Programmation in-situ en mode moniteur Pour programmer, in-situ ( sur place, ou ICP, pour : In-Circuit Programming), un microcontrôleur de la famille HC de chez Freescale, on doit disposer de l équipement suivant (Figure ) : Programmateur HC Carte d application Cette plate-forme comprend : Figure Plate-forme de programmation in-situ du HC. Un PC possédant un port série à la norme RS. Un logiciel (compilateur/debugger) capable de contrôler le cycle dit «power off/on» pendant lequel le micro doit être mis hors tension ( du micro < mv, voir aussi Tableau ). Ce cycle est nécessaire pour que le micro démarre en mode moniteur. Une interface (programmateur) qui assure une mise en dialogue correct entre le PC et le micro. Une carte micro montée en mode moniteur (tableau ). La prise RS du PC La prise RS du PC est en général au format DB ( broches) de type femelle. Du côté de l application, il est de type mâle. Le tableau suivant exprime les différentes broches de ce connecteur : N Nom E/S Description CD E Carrier Detect: Déclare que l'autre équipement reçoit une réponse. RD E Received Data : Entrée de réception des données TD S Transmitted Data : Sortie d'émission des données DTR S Data Terminal Ready : Indique à l'autre équipement que l'on souhaite communiquer. SG Signal Ground : Masse DSR E Data Set Ready : Indique que l'équipement opposé est prêt. RTS S Request To Send : Demande à l'autre équipement de se tenir prêt à recevoir. CTS E Clear To Send : Indique que l'autre équipement est prêt à recevoir. RI E Ring Indicator : Annonce que le modem reçoit un appel. Tableau Les Broches de la prise RS du PC Programmation in-situ de la mémoire flash du HC

Les quatre broches principales utilisées par notre programmateur sont évidemment les broches de transmission des données et, la broche (DTR) dont on verra plus loin le rôle, et naturellement la masse (broche ). Les niveaux logiques de ces broches sont représentés par: Niveau logique est une tension de -V. Niveau logique est une tension de +V. A noter que les tensions logiques sur un système informatique sont en général de et V, et c est le cas de notre microcontrôleur HC. Un circuit d'adaptation s avère nécessaire pour convertir ces tension en ± V et réciproquement. Figure Le circuit MAX de chez MAXIM. On y voit les valeurs des condensateurs à adopter. Le circuit MAX de la figure est conçu pour réaliser cette fonction. Les condensateurs dont il est équipé permettent de générer les tensions de V et -V à partir du V. En pratique, la mesure réelle donne ±,V. Programmateur commercial Le programmateur doit répondre aux exigences suivantes : Au repos, il doit mettre le microcontrôleur en mode moniteur (cf. Tableau ) et de ce fait :. alimenter le micro sous une tension =V,. appliquer à l entrée IRQ\ une tension entre et V,. positionner data (PTA pour HCGP) à une tension de V. A l arrivée d une impulsion (-V) sur la ligne DTR du port série du PC :. couper l alimentation ( mv) du micro, Programmation in-situ de la mémoire flash du HC

. mettre l entrée IRQ\ à zéro,. positionner data à zéro. Un schéma, dans sa version commerciale, accompagné de l explication claire de son fonctionnement, a été publié par Freescale sous forme d une note référencée (AN-HK- H ). A cause de la mauvaise qualité de ce document nous nous sommes permis de le reproduire à la figure. Ce programmateur est destiné à fonctionner, sous Code Warrior, en CLASS (cycle power off/on contrôlé par le signal DTR) et une vitesse de transmission de bauds. C n C u C+ U U:C HC C- C- DTR_PC TOUT TIN RIN ROUT Tx_PC TOUT TIN RIN ROUT Rx_PC VS+ VS- MAX C u C u C C+ Tx_micro Rx_micro u D N C u C n VI U GND VO D LED C n GND U:A HC U:B HC J CONN-DF Prise femelle De v à v J CONN-H Programmateur Freescale HC R RV.k C u R k Coté PC VCC R k Buffers états R k Q N R k R k v_micro Data VCC v fixe R k / watt min R Q N R k D N D N R.k Q N De.V à.v Vtst DTR_PC = -v Power off Vers micro HC Vtst v_micro Data J CONN-SIL IRQ\ du micro Data Masse v_micro DTR_PC = -v Power off R k C.u D'après la note AN-HK- Figure Schéma fonctionnel, d après la note AN-HK-H, du programmateur Freescale HC. La figure montre une réalisation fonctionnelle de ce programmateur. Programmation in-situ de la mémoire flash du HC

Figure Un produit fini du programmateur Freescale réalisé par Christian CAZAUBON et Christian PECOSTE (GEII Bordeaux-). Programmateur «maison» Il pourrait être techniquement intéressant de développer notre propre programmateur. Dans ce but en nous inspirant du schéma commercial donné plus haut, et d autres programmateurs présentés sur le site http://www.hc.net, nous avons élaboré un schéma simplifié qui le rend plus compact et plus économique car il minimise le nombre de composants utilisés, tout en préservant ses qualités fonctionnelles. Ce dernier est présenté, ci-dessous, dans le schéma de la figure (). Son originalité réside dans l utilisation du signal DTR pour contrôler, à la sortie IRQ\, le cycle power off/on, ce qui économise un boîtier de buffers et un transistor. Programmateur simplifié HC J DTR_PC Tx_PC Rx_PC CONN-DF Prise femelle R k Coté PC C n R k R k TOUT RIN TOUT RIN VS+ D.V MAX De à V Vtst C+ TIN ROUT TIN ROUT Ca+ Cb+ VSa- VSb- C- Ca- Cb- Rx_micro D N Vtst v_micro DATA VCC R k Vers micro HC J CONN-SIL J CONN-H R k IRQ\ v_micro DATA Masse VCC Masse DATA De à V J CONN-H D U VI GND VO U R D LED VCC +V C u R k Q N R.k V_micro GND N. AL HOSSRI Figure Schéma fonctionnel de notre programmateur «maison» Programmation in-situ de la mémoire flash du HC

Notre collègue Martial Leyney s est empressé de réaliser, tester et valider le bon fonctionnement de ce programmateur simplifié. Vous trouvez sur la figure le montage final (à gauche), connecté à une carte d application (à droite) à base de microcontrôleur type MCHCJL. Figure Un produit fini du programmateur «maison» réalisé par Martial Leyney (GEII Bordeaux-). Logiciel Code Warrior Le logiciel utilisé est Code Warrior. C est un éditeur de la firme FREESCALE, d'environnement de développement (IDE) spécifique aux microcontrôleurs appartenant à la famille HC(S) (voir ici ). Au début de chargement, en classe, d un programme, Code Warrior envoie, via la ligne DTR (cf. Tableau ), une impulsion (-V), de durée programmable par l utilisateur. Cette impulsion doit être traduite par le programmateur par un cycle power off/on, ce qui met, on l a vu, le micro en mode moniteur (effacement et reprogrammation de sa mémoire flash). La durée de l impulsion DTR doit être suffisante pour que le programmateur puisse exécuter correctement le cycle power off/on. Dans le cas d un programmateur, compte tenu de son temps de réponse, la durée programmée présentant le meilleur compromis est d environ ms. Les démarches à suivre, sous Code Warrior, pour programmer la durée de l impulsion DTR sont : au chargement d un projet sous Code Warrior, le menu suivant s ouvre : Programmation in-situ de la mémoire flash du HC

un clic sur la flèche verte permet de lancer le debugger et de faire apparaître la fenêtre ci-dessous :. Sélectionnez la classe à l aide de la commande Add A Connection. Pour un premier effacement de la mémoire flash du micro, cochez la case «Ignore Security» et exécutez manuellement le cycle power off/on. cliquez sur le bouton Advanced Settings et remplissez le tableau comme cidessous: Programmation in-situ de la mémoire flash du HC

validez le tout avec le bouton «Contact Target with These Settings» finalisez avec le bouton «Yes». Patientez lors du chargement. It s over! Carte microcontrôleur type MCHCGP Cette carte doit répondre aux exigences suivantes : disposer évidemment d un microcontrôleur, par exemple, dans notre cas, du type MCHCGP, monté en mode moniteur (voir Tableau ). être munie d un connecteur broches lui permettant de dialoguer (effacement et reprogrammation de la mémoire flash du micro) avec le programmateur de la Figure. être munie des connecteurs permettant de piloter une carte d application. Ces exigences aboutissent alors à un schéma représenté par la Figure. Retirer le fil d'alimentation extérieure +v avant de brancher le câble de programmation J Schéma du câblage du microcontrôleur MCHCGP à insérer dans une application en vu de programmation in-situ (voir tableau ). Aalimentation extérieure de +V J Connecteur de programmation R D LED Vtst v_micro DATA Masse IRQ PTA v_micro C J U VSS AD VSSAD C n p C p BOU Reset du micro X. C n R.M IRQ PTA PTA PTA PTA PTA PTA PTA PTA R k PTE PTE A PTB/AD VSSA PTB/AD PTB/AD CGMXFC PTB/AD OSC PTB/AD OSC PTB/AD PTB/AD RST PTB/AD IRQ PTC PTA PTC PTA PTC PTA PTC PTA PTC PTA PTA PTD/SS PTA PTD/MISO PTA PTD/MOSI PTD/SPSCK PTE/TXD PTE/RXD PTD/TCH PTD/TCH MCHCGP PTB PTB PTB PTB PTB PTB PTB PTB PTC PTC PTD PTD PTD PTD PTD PTD R k R k PTC PTC R k PTC Figure MCHCGP ( broches) mis en mode moniteur. La résistance PULLUP de la ligne PTA se trouve dans le programmateur de la Figure Programmation in-situ de la mémoire flash du HC

Pour simplifier son insertion dans une application, on peut l encapsuler dans un souscircuit comme le montre la Figure. C est vrai, les connecteurs, dans cette carte, sont bien présents, mais il faut voir que dans une application ils ne sont pas tous utilisés. Notre souci était de créer une carte micro universelle que l on puisse exploiter quelle que soit la nature de l application. Ainsi les ports A et B sont divisés en deux demi-octets (connecteurs de j à j) et les deux sorties PTD et PTD de PWM sont isolées et disponibles aussi sur le connecteur j. PTD PTD PTE PTE J J Port C Port E J J Port D J PTE PTE PTD PTD PTC PTC PTC PTC PTC PTE PTE PTD PTD PTD PTD PTD PTD CCT MCHCGP PTA PTA PTA PTA PTA PTA PTA PTA PTB PTB PTB PTB PTB PTB PTB PTB PTA PTA PTA PTA PTA PTA PTA PTA PTB PTB PTB PTB PTB PTB PTB PTB J J Port A Port B PTA PTA PTA PTA PTB PTB PTB PTB J J PTA PTA PTA PTA PTB PTB PTB PTB J J Figure Sous circuit de la carte MCHCGP ( broches). Tous les ports sont disponibles sur des connecteurs. La figure donne une idée du typon que l on peut réaliser sous le routeur ARES..xcm IRQ\ +v PTA Port Port Port A Port B MCHCGP Reset +v +v M Port C Port ME Port D Port C Port EM Port D Figure A titre indicatif voici comment se présente le typon du schéma précédent, avec les différents connecteurs. Programmation in-situ de la mémoire flash du HC

Cartes d application Les applications sont trop vastes pour que l on puisse les énumérer ici. Il suffit en réalité d avoir de l imagination et un besoin à satisfaire pour en créer une. Cependant, nous allons vous présenter dans la suite quelques applications courantes : Carte d affichage sur LCD x alphanumérique (pour avoir plus d informations, clic ici ) Son schéma d adaptation avec notre carte universelle HC est illustré sur la figure. LCD Port A ou B Bonjour J D D D D D D D D D D D D D D D D E RW RS VEE VSS K A Port A, B, C ou D D D D D D D D D E RW RS J +v +v J J RV k C n R D LED Port A, B, C ou D J D D D D E RW RS Figure Interface d affichage sur LCD alphanumérique. Il couvre trois possibilités de fonctionnement du LCD : o la première possibilité en mode bits, dont les données et les signaux de contrôle sont connectés sur deux ports différents ; o la deuxième, toujours en mode bits, mais dont les données et les signaux de contrôle sont connectés sur le même port ; o enfin, évidemment, en mode bits, forcément sur deux ports distincts. Cette carte est facilement routée sur la figure. Programmation in-situ de la mémoire flash du HC

D D D D D D D D RS RW E D D D D +V RS RW E DB DB DB DB DB DB DB DB Bonjour.x.cm Figure Le typon de l interface LCD x alphanumérique. Cette fois ci le «Bonjour» est dans le bon sens!.. Carte de visualisation sur LCD graphique x pixels (pour plus de précisions, clic ici ) : Son schéma d adaptation avec notre carte universelle HC est illustré sur la figure. La figure représente le typon correspondant (ce qui prouve qu on peut vraiment faire afficher ce qu on veut et aller jusqu à manipuler le temps!) LCD GDMXA J H :: J VEE RST CS CS DB DB DB DB DB DB DB DB E RW RS V VSS K A J R /W Données Port A ou B SW RV k Commandes Port A, B ou D C n J Figure Le schéma de l interface LCD x pixels. Programmation in-situ de la mémoire flash du HC

xcm H :: Contraste Données DB DB DB DB DB DB DB DB Commandes RST CS CS E RW RS +v +V +v Figure Le typon de la carte d adaptation entre le HC et le LCD x pixels. Interface permettant de dialoguer en duplex entre PC et micro (pour plus de précisions, clic ici ) : C est un montage simple et facile à réaliser. Elle permet au micro de communiquer avec un PC via le port série RS. Son schéma est le suivant : C J PC CONN-DF Rx_PC Tx_PC VCC C uf C uf VS+ VS- C- C C+ uf uf U C- C+ TOUT TIN RIN ROUT TOUT TIN RIN ROUT MAX VCC GND Tx_micro Rx_micro C n Vers micro J J PTE PTE +v Ce qui peut aboutir au typon ci-dessous : Programmation in-situ de la mémoire flash du HC

PTE PTE +v Interface d un clavier matriciel touches En général ce type de clavier possède sa propre carte adaptatrice qui est constituée d un connecteur huit broches (voir image ci-contre). Ce dernier peut être facilement connecté à notre carte universelle HC. Pour exploiter la fonctionnalité KBI de notre micro, le clavier doit être connecté au port A (voir explication ici H). Accueil Programmation in-situ de la mémoire flash du HC