35
GEF 447: Robotiques Intro au micro contrôleur HC12

GEF 447: Robotiques Intro au micro contrôleur HC12

Embed Size (px)

Citation preview

Page 1: GEF 447: Robotiques Intro au micro contrôleur HC12

GEF 447: Robotiques

Intro au micro contrôleur HC12

Page 2: 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

Page 3: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 4: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 5: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 6: 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

Page 7: GEF 447: Robotiques Intro au micro contrôleur HC12

16 ATD, 10 bit

8 timing 8 PWM, 8

bit 2 RS232

serial 3 SPI 1 IIC 5 CAN 16 Wakeup Watchdog

Page 8: 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

Page 9: GEF 447: Robotiques Intro au micro contrôleur HC12

Config. de la

mémoire

Note:Adressage de 16 bit = 64Kpas 512K!Ainsi utilisePage

mémoire.

Page 10: GEF 447: Robotiques Intro au micro contrôleur HC12

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)

Page 11: GEF 447: Robotiques Intro au micro contrôleur HC12

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!!!

Page 12: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 13: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 14: GEF 447: Robotiques Intro au micro contrôleur HC12

Flash EEPROM - bloque

Page 15: GEF 447: Robotiques Intro au micro contrôleur HC12

Flash EEPROM - pages

Page 16: GEF 447: Robotiques Intro au micro contrôleur HC12

Flash EEPROM - registres

2 Registres significatifs: PPAGE $0030

FPROT $0104

Page 17: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 18: 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

Page 19: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 20: GEF 447: Robotiques Intro au micro contrôleur HC12

L’organisation de la planchette

Page 21: GEF 447: Robotiques Intro au micro contrôleur HC12

L’organisation de la planchette

H2

H1

Page 22: GEF 447: Robotiques Intro au micro contrôleur HC12

Connecteur H1, H2

Page 23: 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

Page 24: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 25: GEF 447: Robotiques Intro au micro contrôleur HC12

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)

Page 26: GEF 447: Robotiques Intro au micro contrôleur HC12

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.

Page 27: GEF 447: Robotiques Intro au micro contrôleur HC12

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

Page 28: 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

Page 29: GEF 447: Robotiques Intro au micro contrôleur HC12

Questions?

Page 30: GEF 447: Robotiques Intro au micro contrôleur HC12
Page 31: GEF 447: Robotiques Intro au micro contrôleur HC12
Page 32: GEF 447: Robotiques Intro au micro contrôleur HC12
Page 33: GEF 447: Robotiques Intro au micro contrôleur HC12
Page 34: GEF 447: Robotiques Intro au micro contrôleur HC12

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 )

Page 35: GEF 447: Robotiques Intro au micro contrôleur HC12

Reset Vectors: pg 141

Reset COP SWI RTI Timer channels 0-7, Pulse

accumulator SPI, SCI, IIC, CAN ATD