GEF 447: Robotiques
Intro au micro contrôleur HC12
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
Pourquoi utiliser un microcontrôleur?
Microprocesseur de base: Pas de circuit pour connections
externes Microcontrôleur
Ordinateur ‘tout en un’ avec RAM, EEPROM …
Possède plusieurs module – prêt à être introduit dans un circuit; p.ex. le convertisseur ATD
Résistance de tirage Embarqué déjà dans plusieurs
produits commercial – p.ex. l’automobile
$ » pas cher: entre $1 à quelque $100
Histoire du Motorola HC11/121971: Intel 4004 (4 bits)
1974: Intel 8080: début du marché pour les microprocesseurs
64 kilobytes de mémoire, 2 MHz
1974: Motorola 68001975: GM veut des uC 6800
sur mesure1976: Zilog sort un uC 8-
bit, Z80 Intel sort un uC 8-bit,
MCS-48
Radio Shack TRS-80 (Trash 80)
Motorola 6800
Histoire du Motorola HC11/121979: version du 6800 à 8 bits avec un bus de
16 bits, le 6809 Motorola also announce le 68000 à 16 bits Zilog announce le Z800 à 16bits
1980: Intel 8051, un uC à 8 bit avec une mémoire EPROM sur la puce
1982: Motorola 6805 (un uC basé sur le 6800)1990s: Motorola HC11s (ou fin des années
1980) Microchip PIC (utilise l’architecture Harvard au lieu de von Neumann)
1997: HC12A4, 1998: B32, 1999: D60, 2000: DG128, 2001: 9S12DP256
2003: C32
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
16 ATD, 10 bit
8 timing 8 PWM, 8
bit 2 RS232
serial 3 SPI 1 IIC 5 CAN 16 Wakeup Watchdog
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
Config. de la
mémoire
Note:Adressage de 16 bit = 64Kpas 512K!Ainsi utilisePage
mémoire.
Registres: $0000 - $03FF
1024 registres!!! Contrôle tous les aspects du
microcontrôleur
Ils peuvent être changés manuellement!! Tester manuellement et puis après
insérer les changement dans votre programme.
Livre de réf. principale est “MC9S12DP256 Advance Information” (Cartable noir)
RAM: $1000 - $3FFF = 12K
Facile et rapide à loader Presque tout votre programme (si ce
n’est pas tout) pourrait être contenu dans cet espace mémoire
Volatile
Notez que la stack utilise la RAM!!!
EEPROM: $000 - $0FFF = 4K
2048 rangés de 2 octets Plus lent à charger Quelques étapes de plus pour le
chargement Mémoire non-volatile Présentement à $0000 - $0FFF = 4K
Mes les registres sont à $0000 et prenne environs 1K
EEPROM disponible $0400 - $0FFF = 3K
Flash EEPROM
Arrangé en quatre bloques de 64K Chacun est 32K de 2 octets Différence entre Flash EEPROM et
EEPROM?? Plus rapide à écrire que le EEPROM Efface des block de 512 octets ou 64Ko
Flash EEPROM - bloque
Flash EEPROM - pages
Flash EEPROM - registres
2 Registres significatifs: PPAGE $0030
FPROT $0104
EEPROM Blocks
EP[2:0] Protected Address Protected Size
000 $_FC0 - $_FFF 64 bytes 001 $_F80 - $_FFF 128 bytes 010 $_F40 - $_FFF 192 bytes 011 $_F00 - $_FFF 256 bytes 100 $_EC0 - $_FFF 320 bytes 101 $_E80 - $_FFF 384 bytes 110 $_E40 - $_FFF 448 bytes 111 $_E00 - $_FFF 512 bytes
$0114
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
L’organisation de la planchette
La planchette du microcontrôleur vient de ‘Technological Arts’.
Adapt9s12DP512 Inclut
9S12DP256B Horloge (clock) Interface avec la puce, RS232, CAN, RS485 Régulateur de Voltage Configuration jumpers / bouton de reset Connecteurs – toutes les pines du CPU, BDM
etc
L’organisation de la planchette
L’organisation de la planchette
H2
H1
Connecteur H1, H2
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
Manuels de référence
MC9s12DP256 Advanced Information: C’est le livre principale de référence List of sections / table of contents block diagram, pg 16 CPU and CPU registers, pg 19 CPU pinout, pg 41 Registers, pg 65 ********** Memory Map, pg 120
Manuels de référence
CPU12 Reference Manual Liste tous les commande en assembleur Les mode d’adressage Chapitre sur la logique flou (Fuzzy
logic)
Manuels de référence
Adapt9S12DP256 User Manual (Evaluation Package) Inclue dans le gros cartable noir, mais vous ne
devriez pas avoir besoin de l’utiliser Ceux qui sont motivés, ou ceux qui considère
acheter une planchette similaire, vous pouvez considérer zyeuter cette partie.
Versions Électroniques des Manuels
Chaque PC du Laboratoire a: MC9s12DP256AdvanceInformation.rev1.pdf CPU12_ReferenceManual.rev3.pdf Tech_Arts_ADAPT9s12dp256UserManual.pdf 9s12dp256_MemoryMap.jpg Tech_Arts_ADAPT9s12dp256_H1_H2pinout.jpg Tech_Arts_ADAPT9s12dp256_ModuleLayoutDiagram.jpg
Aperçu de la leçon
Pourquoi utiliser un microcontrôleur Histoire des microcontrôleurs Aperçu des Modules Configuration de la mémoire L’organisation de la planchette Manuels de référence
Questions?
Pseudo-Vector Table
DBUG 12 – monitor program resides at top of Flash ($F000)
Reset table: $FF80 - $FFFF Redirects to: $EF80 - $EFFF then redirects Pseudo vectors to
table in RAM at $3E00 (Currently: this can be changed at any time )
Reset Vectors: pg 141
Reset COP SWI RTI Timer channels 0-7, Pulse
accumulator SPI, SCI, IIC, CAN ATD