LPR VOILLAUME Microcontrôleur ST626X Page 1/59 Les systèmes microprogrammés Exe

LPR VOILLAUME Microcontrôleur ST626X Page 1/59 Les systèmes microprogrammés Exemple du ST62 Date :14/01/01 Révision : 20 Fichiers : mpu1 ss exercices CHOFFARDET / SERREAU LPR VOILLAUME Microcontrôleur ST626X Page 2/59 1 Généralités : 3 1.1 Logique programmée ou logique câblée ? 3 1.2 Historique du microprocesseur 3 1.3 Un microprocesseur pour quoi faire ? 4 1.4 un aperçu du marché 4 2 Structure matérielle d’un microcontrôleur 6 2.1 Unité centrale 6 2.1.1 Unité arithmétique et logique 6 2.1.2 Décodeur d'instructions 7 2.2 Liaisons 7 2.3 Stockage des Informations binaires 9 2.3.1 Fonction mémoire, adressage 9 2.3.2 Ecriture ou lecture d’une donnée en mémoire 9 2.3.3 Classement matériel des mémoires 10 2.3.4 Classement logiciel des mémoires 11 2.3.5 Registres internes 13 2.3.6 L'EEPROM et la fenêtre de donnée en RAM 14 2.4 Interfaçage 16 2.4.1 Introduction : 16 2.4.2 L'EEPROM 17 2.4.3 Port d'entrées sorties 18 2.4.4 Interface série (SPI) 19 2.4.5 Temporisateur 22 2.4.6 Temporisateur à rechargement automatique 26 2.4.7 Convertisseur Analogique Numérique CAN 31 2.4.8 Chien de garde 33 2.4.9 Conclusion 34 2.5 l'Horloge 35 2.6 Les interruptions 37 2.7 Reset 40 2.8 Mise en œuvre du ST6260 : 40 2.8.1 Introduction : 40 2.8.2 Alimentation : 40 2.8.3 Oscillateur : 40 2.8.4 Reset 41 2.9 La famille ST625X et 626X 41 3 STRUCTURE LOGICIELLE DES SYSTEMES DE TRAITEMENT DE L’INFORMATION 47 3.1 Le Programme : 47 3.2 Les Langages : 47 3.3 Les instructions 48 3.3.1 Structure générale d’une instruction 48 3.3.2 Modes d’adressage 48 3.4 Assembleur du ST62 52 3.5 Mise en œuvre logicielle du ST6260 54 3.6 Exemples de programmes 55 3.6.1 Utilisation du CAN sans interruption 55 3.6.2 Temporisation 56 LPR VOILLAUME Microcontrôleur ST626X Page 3/59 1 Généralités : 1.1 Logique programmée ou logique câblée ? Le choix du type de logique pour résoudre un problème, dépend de plusieurs critères : complexité ; coût ; évolutivité ; rapidité. Complexité / Coût : Dans la logique câblée, un problème est résolu par un ensemble de fonctions logiques, la taille du circuit croissant avec la complexité du problème. La logique programmée nécessite un minimum de composant mais la taille du circuit n'augmente plus avec la complexité du problème (moins vite qu'en logique câblée). En fait le coût des microcontrôleurs a tellement chuté que le seuil de rentabilité est très bas et peu de problèmes sont actuellement résolus en logique câblée. Evolutivité : En logique câblée, la moindre modification du problème entraîne la mise au point d'un nouveau circuit. Alors qu'en logique programmée on pourra parfois se contenter d'une modification du programme. Rapidité : En fait, la logique câblée garde l'avantage en terme de rapidité. On notera l'existence de circuits logiques programmables (Pal et GAL) à mi-chemin entre les deux technologies. 1.2 Historique du microprocesseur Le microprocesseur est né en 1972 du développement de la technologie des semi-conducteurs. La recherche avait rendu possible l’intégration de plusieurs milliers de transistors dans un seul et même boîtier. Le coût de développement de circuits aussi complexes, nécessaires en particulier pour la conquête spatiale, ne pouvait être amorti que sur de très grandes séries, mais utilisés en petites séries dans des applications différentes. Le circuit logique programmable par l’utilisateur en fonction de l’application fût alors appelé microprocesseur. Depuis, le microprocesseur a évolué dans trois directions : ‰ Ordinateurs : complexes et puissants, ils disposent de nombreux périphériques et d’une interface homme machine très évoluée, ces microprocesseurs sont très complexes. ‰ Automates programmables industriels (API) : ils sont orientés vers des applications industrielles et disposent donc d’interfaces de puissances permettant de commander différents actionneurs. Les microprocesseurs sont robustes et spécialisés dans des opérations de logique. ‰ Les microcontrôleurs : Il s’agit ici de mettre dans le même boîtier un nombre maximum de circuits afin d’obtenir un système performant mais peu encombrant. Dans le même boîtier on trouve le CPU, la mémoire RAM et ROM et les circuits d'entrée sortie. Ce cours prendra comme exemple de système microprogrammé les microcontrôleurs fabriqués par ST MICROELECTRONICS utilisables avec le STARTER KIT ST626X. LPR VOILLAUME Microcontrôleur ST626X Page 4/59 1.3 Un microprocesseur pour quoi faire ? De nos jours, les microprocesseurs sont partout : A la maison : Ordinateurs personnels ; machines à laver ; Fours à micro-ondes ; Aspirateur ; Climatisation ; Jouet ; Alarme. Les voitures : Airbag ; tableau de bord ; Allumage ; Carburation ; ABS Industrie : Les API ; machines outils ; Le système microprogrammé doit pouvoir gérer des tâches très différentes : Dialogue homme machine. Contrôle d’énergie. Surveillance de capteurs. Cycles de fonctionnement. Ils permettent d'améliorer : Le facteur de puissance (compatibilité électromagnétique) ; le rendement . Le programme gère ces tâches mais des informations doivent parvenir au système. Cela se fait par un ensemble d’entrées sorties qui peut être : Entrées Tout ou Rien (TOR) Entrées analogiques Entrées numériques Sorties tout ou rien Sorties analogiques Sorties numériques La plupart des applications ci-dessus peuvent être réalisées avec des microcontrôleurs 8 bits, peu performants mais richement dotés de circuits d'entrées sorties. Ce marché est en pleine expansion. 1.4 un aperçu du marché Le tableau suivant présente quelques caractéristiques de microcôntroleurs. - Il ne s'agit que d'un aperçu du marché, chaque famille de microcontrôleur comporte quelques dizaines de produits. De plus certains produits récents ne sont pas présentés (AMTEL ; SCENIX). Les produits présentés ont été choisis car ils possèdent certaines caractéristiques communes (sortie PWM ; CAN ; liaison série). - On ne peut se contenter de ce tableau pour faire une comparaison exhaustive de ces produits. Il manque : les outils de développement ; des caractéristiques matériels plus développés (interruptions ; pile ; jeu d'instruction) ; le coût d'un système de développement. LPR VOILLAUME Microcontrôleur ST626X Page 5/59 Architecture Puissance (MIPS) ALU ROM RAM E/S (A) PWM CAN Périphériques Boîtier TIMER Thomson ST6265 8bits 0,16 8 bits : + - 4 ko 256 o 21 (13) 1 1 8bits 70 µs SPI ; EEPROM DIP28 1 8 bits Thomson ST72251G1 8 bits 2,7 8 bits : + - × 4 ko 256 o 22 (6) 1 1 8 bits 7 µs SPI ; I²C DIP32 2 16 bits Thomson ST9 8 / 16 bits 0,2 8 bits + ; - ;× ; ÷ 16 ko 256 o 56 2 1 8 bits 7 µs SCI ; SPI PLCC 68 3 16 bits Motorola 68HC05P8 8 bits 0,2 8 bits + ; - 4 ko 112 o 20 1 DIP 28 1 8 bits Motorola 68HC11A7 8 bits 0,2 8 bits × ; ÷ 8 ko 256 o 32 (8) 1 1 8 bits 16 µs SPI ; SCI PLCC 68 1 8 bits PHILIPS 80C535 8 bits 1 8 bits +; -; × ; ÷ 4 ko 128 o 32 1 1 bits 14 µs 2 Intel 80c196kc 16 bits 3 16 bits + - × 256 o (8) 3 10 bits SPI 6 Microchip PIC16C74 8 bits 5 8 bits + ; - 4 ko 192 33 (8) 2 1 8 bits 1,6 µs SPI ; I²C ; USART ; SCI DIP40 2 8 bits 1 16 bits On notera : Le ST6265 est le moins puissant tant au niveau de son ALU que de sa puissance de calcul. Le ST7 fait jeu égal avec le 80c196kc en 8 bits. Les 68HC11 ; 80C535 et 80c196kc sont plus difficiles à mettre en œuvre (boîtier). Le 68HC05 est basé sur un 6800 le 68HC11 sur un 6801. Enfin le PIC16C74 est le plus puissant en 8 bits mais il n'a pas de multiplication câblée. LPR VOILLAUME Microcontrôleur ST626X Page 6/59 2 Structure matérielle d’un microcontrôleur Synoptique des microcôntroleurs ST626X Erreur! Aucune rubrique spécifiée. „ L’unité centrale exécute les opérations logiques ou arithmétiques qui permettent de calculer les données de sorties à partir des données d’entrées. „ les bus sont les liaisons électriques qui véhiculent les informations entre les différents composants du système électronique ; „ La mémoire stocke le programme, ainsi que toutes les données nécessaires au traitement. „ les interfaces d’entrées et sorties, permettent de communiquer avec les périphériques extérieurs au système „ L’horloge donne la cadence, par des impulsions électriques qui synchronisent le système. „ Un système d'interruptions qui permet la gestion d'événements inattendus „ Une alimentation 2.1 Unité centrale Erreur! Aucune rubrique spécifiée. L’unité centrale d’un microprocesseur comprend essentiellement : „ Une unité arithmétique et logique (UAL ou ALU) qui effectue les opérations arithmétiques (addition, soustraction, multiplication,...), les opérations logiques (ET, OU, COMPLEMENT...), et les tests ; „ Un décodeur d'instructions ou séquenceur, qui s’occupe de l’enchaînement des opérations pour réaliser les instructions du programme ; „ Des registres qui permettent de stocker des données, des instructions ou des adresses. 2.1.1 Unité arithmétique et logique L’unité arithmétique et logique permet de faire les opérations demandées par le programme entre les opérandes (données d’entrées) pour obtenir un résultat (données de sortie). Exemple : l'ALU du ST62 Il s'agit d'une ALU 8 bits, capable de traiter des octets. Elle peut exécuter : „ Des opérations arithmétiques Addition, Soustraction ; uploads/Philosophie/ systeme-microprogrames.pdf

  • 19
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager