Les Fuses par Serge VE2HLS.

Slides:



Advertisements
Présentations similaires
Effectuer une recherche avancée sur EBSCOhost Champ de recherche unique Didacticiel support.ebsco.com.
Advertisements

Réservation des courts couverts
Généralité sur les Codes Déterminés par des Tables
Les formats Stage – Semaine 4.
a CODAGE DE HUFFMAN 0.40 Objectif : coder les lettres
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée Types dérivés, structures et tableaux §
Les éléments de mémorisation
Les circuits séquentiels
Samedi 6 septembre 2008matériel informatique1 Codage de linformation.
Fonctions Booléennes primaires
Présentation Unité de codage
Présentation des tables des matières j puis appuyez sur F5 ou cliquez sur Diaporama > Du début. Pour commencer le cours, dans la barre des messages, cliquez.
La notation en complément à 2
Commission scolaire des Laurentides
Rédaction dun article sur le site internet du CRCACK Lien administration :
ENVIRONNEMENT WINDOWS
Commande séquentielle d’un moteur
Développement Mobile : Android
TRAVAIL 3 : PRODUCTION MULTIMÉDIA
POWERPOINT 97 POMazagol Les barres d'outils PowerPoint donne la possibilité douvrir de nombreuses « barres doutils ». Pour ajouter ou enlever une barre.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Créer une animation simple Gif avec ImageReady.
Logique Combinatoire Fonction OUI Fonction NON Fonction ET Fonction OU
Quels sont les différents modèles ?
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
Formats des nombres réels
Bonjour Voici comment utiliser simplement les tableaux pour faire son CHOIX de suivi.
INTRODUCTION AU Février 2008
1 CLUB DES UTILISATEURS SAS DE QUÉBEC COMMENT TRANSFORMER UN PROGRAMME SAS EN TÂCHE PLANIFIÉE SOUS WINDOWS Présentation de Jacques Pagé STRiCT Technologies.
Le menu « Actualités » © Michel DURIEUX – Février 2007.
Tableaux de distributions
Chapitre 4.
Tableaux de distributions
Sections sélectionnées du Chapitre 11
LES SYSTEMES AUTOMATISES
Maîtriser le langage HTML Les Formulaires. Dans cette section on verra comment diviser un formulaire en plusieurs blocs principaux avec un titre pour.
GIF-3002 SYSTÈMES MICRO- PROCESSEURS ET INTERFACES 4 et 5 Novembre 2009 Automne 2009 PLT Décodeurs dadresses, bases (8.5) U.S. Ganguly, Pr., responsable.
Module 1 : Installation de Windows 2000 ou mise à niveau vers Windows 2000.
Cours #7 Vérification d’un modèle VHDL
Page: 1-Ali Walid Gestion de fichiers. Hashing Dynamique et Extensible.
Les Microcontrôleurs PIC 16Cxx
WoW-CD Comment démarrer le PC par un lecteur optique CD ou DVD ? Défilement à votre rythme par la souris.
Générateur d’un signal Carré MICROCONTROLEUR PIC 16F84 Application 1:
Création et présentation d’un tableau avec Word 2007
Codage de l’information
République Algérienne Démocratique et Populaire Ministère de l'enseignement supérieur et de herche scientifique Université de Ferhat Abbas -Sétif.
Le Système Binaire Introduction Les bases à connaitre Conversions
COMMENT ACCEDER AU FORMULAIRE SUBVENTION MONDIALE en ligne 1° Si vous avez ouvert votre compte précédemment, accédez à votre compte par le site
TP math-G-101.
Chapitre 9 : La machine MIASM
Chapitre 3 :Algèbre de Boole
Le codage des nombres binaires
OMRON ® Contrôle de mouvements 1. OMRON ® Contrôle de mouvements 2 CX-Position Démarrage d ’un nouveau projet Démarrez CX-Position, créez un nouveau projet.
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Vérification de circuits.
Vue d'ensemble Préparation de l'installation
© 2012 Microsoft Corporation. Tous droits réservés. Planifier une réunion Lync Si vous utilisez Outlook, vous pouvez planifier une réunion Lync à l’aide.
Les Microcontrôleurs 68HCXX
Microcontrôleurs PIC. 1ère séance Présentation du PIC16F876 Outils de programmation du PIC Le langage C Exemples d’applications simples 2ème séance Présentation.
Bureautique M1 Publipostage.
République Algérienne Démocratique et Populaire Ministère de l'enseignement supérieur et de herche scientifique Université de Ferhat Abbas -Sétif.
En route vers le déploiement . . .
Support.ebsco.com Didacticiel Mon EBSCOhost Didacticiel.
Semaine 5 Registres spéciaux et périphériques internes Projet initial en ingénierie informatique et travail en équipe INF1995 Jérôme Collin et al.
CONSTRUCTION DE TABLEAUX CROISES SUR LE LOGICIEL MODALISA MET4 – Avril 2005.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
Formation.
Transcription de la présentation:

Les Fuses par Serge VE2HLS

Nous allons dans ce document essayer de démystifier la section des Fuses que tous utilisent dans l’écriture d’un programme avec un microcontrôleur de modèle PIC!

Voici le choix de fuses que Claude VE2APS a utilisé pour son programme "Horloge Calendrier" XT_OSC,WDT_OFF,MCLR_OFF,PWRT_ON,BOD_ON,LVP_OFF,CPD_OFF,PROTECT_OFF

Après avoir compilé le programme "Horloge Calendrier" nous obtenons plusieurs fichiers dont le fichier HEX "Horloge et calendrier.HEX " 

Voici quelques trucs pour mieux comprendre ce fameux fichier " HEX " Premièrement le fichier HEX est de format INTEL sa définition complète est disponible sur WIKIPIDIA à cette adresse : http://en.wikipedia.org/wiki/.hex

Il est facile d’ouvrir le fichier HEX avec Bloc-notes

La section qui nous intéresse se situe complètement dans la bas de ce fichier "HEX "

Cette ligne représente nos fuses en format "INTEL«  :02400E00413F30

Il faut lire cette ligne en partant de la droite 02400E00413F30 mais en regroupant deux nombres à la fois : 02 40 0E 00 41 3F 30 30 est le checksum de la ligne 3F41 défini les fuses qui sont utilisées

Voici un façon simple de comprendre ce que nous indique 3F41 Ce 3F41 représente en hexadécimale : 3 = 0011 F = 1111 4 = 0100 1 = 0001

La séquence 3F41 format Intel représente 0011 1111 0100 0001 en format Hexadécimale

0011 1111 0100 0001 est le "Configuration Word" de 14 bits qui sera envoyé au Pic pour lui indiquer le choix des fuses que le programmeur a choisit dans son programme

Dans la prochaine positive vous avez toutes les possibilités de configurations pour les fuses du Pic 16F628 choisit par Claude lors de l’écriture de son programme, le tableau est disponible dans le data sheet

La fuse XT_OSC se sert des Bits 4, 1 et 0 Prenons la première fuse XT_OSC dans la séquence choisit par Claude dans la liste : XT_OSC,WDT_OFF,MCLR_OFF,PWRT_ON,BOD_ON,LVP_OFF,CPD_OFF,PROTECT_OFF La fuse XT_OSC se sert des Bits 4, 1 et 0 dans la séquence 0110 1111 0100 0001 bit 4, 1-0: FOSC2:FOSC0: Oscillator Selection bits(4) 111 = ER oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, Resistor on RA7/OSC1/CLKIN 110 = ER oscillator: I/O function on RA6/OSC2/CLKOUT pin, Resistor on RA7/OSC1/CLKIN 101 = INTRC oscillator: CLKOUT function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN 100 = INTRC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN 011 = EC: I/O function on RA6/OSC2/CLKOUT pin, CLKIN on RA7/OSC1/CLKIN 010 = HS oscillator: High speed crystal/resonator on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN 001 = XT oscillator: Crystal/resonator on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN 000 = LP oscillator: Low power crystal on RA6/OSC2/CLKOUT and RA7/OSC1/CLKIN

Si on revient à notre "Configuration Word" 0011 1111 0100 0001 nous avons trois bits de trouvés : 0011 1111 0100 0001 XT_OSC equ 3FEC0001h ; XX XXXX XXX0 XX01 Par la suite on refait la même séquence pour la fuse suivante : WDT_OFF WDT_OFF equ 3FFB0000h ; XX XXXX XXXX X0XX nous avons maintenant quatre bits de trouvés : 0011 1111 0100 0001

Il est par la suite facile de compléter la séquence pour chacune des autres fuses : MCLR_OFF,PWRT_ON,BOD_ON,LVP_OFF,CPD_OFF,PROTECT_OFF C’est ainsi que nous obtenons notre "Configuration Word" de 0011 1111 0100 0001

Voici comment le compilateur PICBASICPRO construit le "Configuration Word" ce fichier se trouve dans votre compilateur PicBasicPro dans le dans le dossier C:\PBP\INC et ouvrez "M16F62XA.INC"

; *** DEVICE Fuses Definitions RC_OSC_CLKOUT equ 3FEC0013h ; XX XXXX XXX1 XX11 ER_OSC_CLKOUT equ 3FEC0013h ; XX XXXX XXX1 XX11 RC_OSC_NOCLKOUT equ 3FEC0012h ; XX XXXX XXX1 XX10 ER_OSC_NOCLKOUT equ 3FEC0012h ; XX XXXX XXX1 XX10 RC_OSC equ 3FEC0012h ; XX XXXX XXX1 XX10 INTRC_OSC_CLKOUT equ FEC0011h ; XX XXXX XXX1 XX01 INTOSC_OSC_CLKOUT equ 3FEC0011h ; XX XXXX XXX1 XX01 INTRC_OSC_NOCLKOUT equ 3FEC0010h ; XX XXXX XXX1 XX00 INTOSC_OSC_NOCLKOUT equ 3FEC0010h ; XX XXXX XXX1 XX00 INTRC_OSC equ 3FEC0010h ; XX XXXX XXX1 XX00 EXTCLK_OSC equ 3FEC0003h ; XX XXXX XXX0 XX11 EC_OSC equ 3FEC0003h ; XX XXXX XXX0 XX11 HS_OSC equ 3FEC0002h ; XX XXXX XXX0 XX10 XT_OSC equ 3FEC0001h ; XX XXXX XXX0 XX01 LP_OSC equ 3FEC0000h ; XX XXXX XXX0 XX00 WDT_ON equ 3FFB0004h ; XX XXXX XXXX X1XX WDT_OFF equ 3FFB0000h ; XX XXXX XXXX X0XX PWRT_ON equ 3FF70000h ; XX XXXX XXXX 0XXX PWRT_OFF equ 3FF70008h ; XX XXXX XXXX 1XXX MCLR_ON equ 3FDF0020h ; XX XXXX XX1X XXXX MCLR_OFF equ 3FDF0000h ; XX XXXX XX0X XXXX BOD_ON equ 3FBF0040h ; XX XXXX X1XX XXXX BOD_OFF equ 3FBF0000h ; XX XXXX X0XX XXXX LVP_ON equ 3F7F0080h ; XX XXXX 1XXX XXXX LVP_OFF equ 3F7F0000h ; XX XXXX 0XXX XXXX CPD_ON equ 3EFF0000h ; XX XXX0 XXXX XXXX CPD_OFF equ 3EFF0100h ; XX XXX1 XXXX XXXX PROTECT_ON equ 1FFF0000h ; 0X XXXX XXXX XXXX PROTECT_OFF equ 1FFF2000h ; 1X XXXX XXXX XXXX

Ceci termine l’explication des fuses utilisées pour le programme "Horloge Calendrier" avec le PIC 16F628 Pour les prochains ateliers, nous utiliserons un nouveau PIC, le 16F690, si le programme avait été écrit avec ce PIC, voici les quelques changements aux fuses nécessaires au fonctionnement du programme

Premièrement comparons les deux "Configuration Word" Le 16F628 Le 16F690

Le 16F690 possède deux nouvelles fonctions "FCMEN" bit 11 et "IESO" bit 10

Fail-Safe Clock Monitor Enabled FCMEN Fail-Safe Clock Monitor Enabled Le "Fail-Safe Clock Monitor" permet au microcontrôleur 16F690 de continuer l'opération en cas d'un échec externe de l'oscillateur en commutant automatiquement l'horloge du dispositif au bloc interne d'oscillateur Par défaut, le "Fail-Safe Clock Monitor" est désactivé. bit 11 FCMEN: Fail-Safe Clock Monitor Enabled bit 1 = Fail-Safe Clock Monitor is enabled 0 = Fail-Safe Clock Monitor is disabled

Internal External Switchover IESO Internal External Switchover Two speed start-up /Internal External switchover Le mode de démarrage à deux vitesses réduit au minimum la latence entre le démarrage de l’oscillateur et l'exécution externe du code. Le code commence à s'exécuter à partir des oscillateurs internes tandis que l'oscillateur externe se stabilise. Quand l'oscillateur externe est stable, le dispositif commute automatiquement à la source extérieure réduisant les périphériques du programme (program overhead). bit 10 IESO: Internal External Switchover bit 1 = Internal External Switchover mode is enabled 0 = Internal External Switchover mode is disabled

Claude n’utilise pas ces deux nouvelles fonctions nous allons donc désactiver ces deux fuses!

Voici la nouvelle ligne des fuses pour le 16F690 : XT_OSC,WDT_OFF,MCLR_OFF,PWRT_ON,BOD_ON,CPD_OFF, PROTECT_OFF,IESO_OFF, FCMEN_OFF Note : Le 16F690 ne possède pas la fonction LVP, Low Voltage Programming

Après compilation avec le nouveau 16F690 du programme "Horloge Calendrier" nous obtenons dans le fichier HEX les fuses 33C1 en hexadécimale 0011 0011 1100 0001 Le "Configuration Word" du 16F690 utilise seulement 12 bits pour programmer le registre 33C1 ou 0011 0011 1100 0001

J’espère que ce document vous a aidé à mieux comprendre la section des Fuses dans un programme! Serge VE2HLS Février 2009