电子工程世界电子工程世界电子工程世界

型号

产品描述

搜索
 

P912XDP512F0VFU

器件型号:P912XDP512F0VFU
器件类别:半导体    嵌入式处理器和控制器   
厂商名称:FREESCALE (NXP )
下载文档

器件描述

16-BIT, FLASH, 40 MHz, MICROCONTROLLER, PQFP144

16位, FLASH, 40 MHz, 单片机, PQFP144

参数

P912XDP512F0VFU外部数据总线宽度 16
P912XDP512F0VFU输入输出总线数量 119
P912XDP512F0VFU端子数量 144
P912XDP512F0VFU最小工作温度 -40 Cel
P912XDP512F0VFU最大工作温度 105 Cel
P912XDP512F0VFU线速度 40 MHz
P912XDP512F0VFU加工封装描述 20 X 20 MM, LEAD FREE, LQFP-144
P912XDP512F0VFUreach_compliant Yes
P912XDP512F0VFU欧盟RoHS规范 Yes
P912XDP512F0VFU中国RoHS规范 Yes
P912XDP512F0VFU状态 Active
P912XDP512F0VFUmicroprocessor_microcontroller_peripheral_ic_type MICROCONTROLLER
P912XDP512F0VFUADC通道 YES
P912XDP512F0VFU地址总线宽度 23
P912XDP512F0VFU位数 16
P912XDP512F0VFUclock_frequency_max 16 MHz
P912XDP512F0VFUcpu_family CPU12
P912XDP512F0VFUDAC通道 NO
P912XDP512F0VFUDMA通道 YES
P912XDP512F0VFUjesd_30_code S-PQFP-G144
P912XDP512F0VFUjesd_609_code e3
P912XDP512F0VFUmoisture_sensitivity_level 3
P912XDP512F0VFU包装材料 PLASTIC/EPOXY
P912XDP512F0VFUpackage_code LFQFP
P912XDP512F0VFUpackage_equivalence_code QFP144,.87SQ,20
P912XDP512F0VFU包装形状 SQUARE
P912XDP512F0VFU包装尺寸 FLATPACK, LOW PROFILE, FINE PITCH
P912XDP512F0VFUpeak_reflow_temperature__cel_ 260
P912XDP512F0VFUpower_supplies 2.5,5
P912XDP512F0VFUPWM通道 YES
P912XDP512F0VFUqualification_status COMMERCIAL
P912XDP512F0VFUram__bytes_ 32768
P912XDP512F0VFUROM编程 FLASH
P912XDP512F0VFUrom__words_ 524288
P912XDP512F0VFUseated_height_max 1.6 mm
P912XDP512F0VFUsub_category Microcontrollers
P912XDP512F0VFU额定供电电压 2.5 V
P912XDP512F0VFU最小供电电压 2.35 V
P912XDP512F0VFU最大供电电压 2.75 V
P912XDP512F0VFU表面贴装 YES
P912XDP512F0VFU工艺 CMOS
P912XDP512F0VFU温度等级 INDUSTRIAL
P912XDP512F0VFU端子涂层 MATTE TIN
P912XDP512F0VFU端子形式 GULL WING
P912XDP512F0VFU端子间距 0.5000 mm
P912XDP512F0VFU端子位置 QUAD
P912XDP512F0VFUtime_peak_reflow_temperature_max__s_ 40
P912XDP512F0VFUlength 20 mm
P912XDP512F0VFUwidth 20 mm
P912XDP512F0VFUadditional_feature ALSO REQUIRES 5V SUPPLY

文档预览

P912XDP512F0VFU器件文档内容

MC9S12XDP512

Data Sheet
Covers
S12XD, S12XB & S12XA Families

HCS12X
Microcontrollers

  MC9S12XDP512
  Rev. 2.17
  July 2007

  freescale.com
MC9S12XDP512 Data Sheet

                                                        MC9S12XDP512
                                                                  Rev. 2.17
                                                                  July 2007
To provide the most up-to-date information, the revision of our documents on the World Wide Web will be
the most current. Your printed copy may be an earlier revision. To verify you have the latest information
available, refer to:

   http://freescale.com/
A full list of family members and options is included in the appendices.
Read page 29 first to understand the maskset specific chapters of this document
This document contains information for all constituent modules, with the exception of the S12X CPU. For
S12X CPU information please refer to the CPU S12X Reference Manual.

Revision History

   Date          Revision                           Description
                   Level

   April, 2005   02.07 New Book

   May, 2005     02.08 Minor corrections

   May, 2005     02.09     removed ESD Machine Model from electrical characteristics
                           added thermal characteristics
                           added more details to run current measurement configurations
                           VDDA supply voltage range 3.15V - 3.6V fot ATD Operating Characteristics
                           I/O Chararcteristics for alll pins except EXTAL, XTAL ....
                           corrected VREG electrical spec
                           IDD wait max 95mA

   May 2005      02.10 Improvements to NVM reliabity spec, added part numbers

   July 2005     02.11 Added ROM parts to App.

   October 2005  02.12     Single Souce S12XD Fam. Document, New Memory Map Figures,

                           SPI electricals updated

   May 2006      2.13      Voltage Regulator electricals updated
                           Added Partnumbers and 1L15Y maskset

                           Updated App. E 6SCI's on 112 pin DT/P512 and 3 SPI's on all D256 parts

   June 2006     2.14      Data Sheet covers S12XD/B & A Family
                           Included differnt pull device specification for differnt masksets

   July 2006     2.15      Minor Corrections and Improvments

   June 2007     2.16      Added 2M42E and 1M84E masksets

   July 2007     2.17      Modified Appendix

FreescaleTM and the Freescale logo are trademarks of Freescale Semiconductor, Inc.
This product incorporates SuperFlash technology licensed from SST.

Freescale Semiconductor, Inc., 2005. All rights reserved.

                        MC9S12XDP512 Data Sheet, Rev. 2.17

4                                                                                   Freescale Semiconductor
                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      5
   MC9S12XDP512 Data Sheet, Rev. 2.17

6                                      Freescale Semiconductor
Section Number           Title                               Page

Chapter 1 Device Overview MC9S12XD-Family . . . . . . . . . . . . . . . . . . . . 31
Chapter 2 Clocks and Reset Generator (S12CRGV6) . . . . . . . . . . . . . . . . 79
Chapter 3 Pierce Oscillator (S12XOSCLCPV1) . . . . . . . . . . . . . . . . . . . . 119
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4)
Block Description125
Chapter 5 Analog-to-Digital Converter (S12ATD10B8CV3) . . . . . . . . . . 159
Chapter 6 XGATE (S12XGATEV2). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Chapter 7 Enhanced Capture Timer (S12ECT16B8CV2) . . . . . . . . . . . . 309
Chapter 8 Pulse-Width Modulator (S12PWM8B8CV1) . . . . . . . . . . . . . . 363
Chapter 9 Inter-Integrated Circuit (IICV2) Block Description. . . . . . . . . 395
Chapter 10 Freescale's Scalable Controller Area Network (S12MSCANV3).
419
Chapter 11 Serial Communication Interface (S12SCIV5) . . . . . . . . . . . . . 477
Chapter 12 Serial Peripheral Interface (S12SPIV4) . . . . . . . . . . . . . . . . . . 515
Chapter 13 Periodic Interrupt Timer (S12PIT24B4CV1) . . . . . . . . . . . . . . 541
Chapter 14 Voltage Regulator (S12VREG3V3V5) . . . . . . . . . . . . . . . . . . . 555
Chapter 15 Background Debug Module (S12XBDMV2) . . . . . . . . . . . . . . 569
Chapter 16 Interrupt (S12XINTV1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595
Chapter 17 Memory Mapping Control (S12XMMCV2) . . . . . . . . . . . . . . . . 613
Chapter 18 Memory Mapping Control (S12XMMCV3) . . . . . . . . . . . . . . . 651
Chapter 19 Debug (S12XDBGV2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
Chapter 20 S12X Debug (S12XDBGV3) Module . . . . . . . . . . . . . . . . . . . . 745
Chapter 21 External Bus Interface (S12XEBIV2) . . . . . . . . . . . . . . . . . . . 787
Chapter 22 DP512 Port Integration Module (S12XDP512PIMV2) . . . . . . . 807
Chapter 23 DQ256 Port Integration Module (S12XDQ256PIMV2) . . . . . . 901
Chapter 24 DG128 Port Integration Module (S12XDG128PIMV2) . . . . . . 975

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      5
Section Number  Title                               Page

Chapter 25 2 Kbyte EEPROM Module (S12XEETX2KV1) . . . . . . . . . . . . 1039
Chapter 26 4 Kbyte EEPROM Module (S12XEETX4KV2) . . . . . . . . . . . . 1073
Chapter 27 512 Kbyte Flash Module (S12XFTX512K4V2). . . . . . . . . . . . 1107
Chapter 28 256 Kbyte Flash Module (S12XFTX256K2V1). . . . . . . . . . . . 1149
Chapter 29 128 Kbyte Flash Module (S12XFTX128K1V1). . . . . . . . . . . . 1191
Chapter 30 Security (S12X9SECV2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1231
Appendix A Electrical Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
Appendix B Package Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290
Appendix C Recommended PCB Layout . . . . . . . . . . . . . . . . . . . . . . . . . 1294
Appendix D Using L15Y Silicon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1299
Appendix E Derivative Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1300
Appendix F Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1308
Appendix G Detailed Register Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1309

                MC9S12XDP512 Data Sheet, Rev. 2.17

6                                                   Freescale Semiconductor
Section Number           Title                               Page

                     Chapter 1Device Overview MC9S12XD-Family

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
         1.1.1 MC9S12XD/B/A Family Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
         1.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
         1.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
         1.1.4 Device Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
         1.1.5 Part ID Assignments & Maskset Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

1.2 Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
         1.2.1 Device Pinout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
         1.2.2 Signal Properties Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
         1.2.3 Detailed Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
         1.2.4 Power Supply Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

1.3 System Clock Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
1.4 Chip Configuration Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
1.5 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

         1.5.1 User Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
         1.5.2 Low-Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
         1.5.3 Freeze Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
1.6 Resets and Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
         1.6.1 Vectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
         1.6.2 Effects of Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
1.7 COP Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
1.8 ATD0 External Trigger Input Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
1.9 ATD1 External Trigger Input Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

                                               Chapter 2
                        Clocks and Reset Generator (S12CRGV6)

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
         2.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
         2.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
         2.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

2.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
         2.2.1 VDDPLL and VSSPLL -- Operating and Ground Voltage Pins . . . . . . . . . . . . . . . . . . . . . 82
         2.2.2 XFC -- External Loop Filter Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
         2.2.3 RESET -- Reset Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

2.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
         2.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
         2.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

2.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
         2.4.1 Functional Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
         2.4.2 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
         2.4.3 Low Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      9
Section Number  Title                               Page

2.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
         2.5.1 Description of Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
         2.5.2 Clock Monitor Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
         2.5.3 Computer Operating Properly Watchdog (COP) Reset . . . . . . . . . . . . . . . . . . . . . . . . . 115
         2.5.4 Power On Reset, Low Voltage Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

2.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
         2.6.1 Real Time Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
         2.6.2 PLL Lock Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
         2.6.3 Self Clock Mode Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

                                               Chapter 3
                             Pierce Oscillator (S12XOSCLCPV1)

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
         3.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
         3.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
         3.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

3.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
         3.2.1 VDDPLL and VSSPLL -- Operating and Ground Voltage Pins . . . . . . . . . . . . . . . . . . . . 120
         3.2.2 EXTAL and XTAL -- Input and Output Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
         3.2.3 XCLKS -- Input Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

3.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
3.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

         3.4.1 Gain Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
         3.4.2 Clock Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
         3.4.3 Wait Mode Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
         3.4.4 Stop Mode Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

                                               Chapter 4
                      Analog-to-Digital Converter (ATD10B16CV4)

                                         Block Description

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
         4.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
         4.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
         4.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

4.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
         4.2.1 ANx (x = 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) -- Analog Input Channel x Pins
                  127
         4.2.2 ETRIG3, ETRIG2, ETRIG1, ETRIG0 -- External Trigger Pins . . . . . . . . . . . . . . . . . 127
         4.2.3 VRH, VRL -- High Reference Voltage Pin, Low Reference Voltage Pin . . . . . . . . . . . . 127
         4.2.4 VDDA, VSSA -- Analog Circuitry Power Supply Pins . . . . . . . . . . . . . . . . . . . . . . . . . 127

4.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

                MC9S12XDP512 Data Sheet, Rev. 2.17

10                                                  Freescale Semiconductor
Section Number           Title                               Page

         4.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
         4.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
         4.4.1 Analog Sub-block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
         4.4.2 Digital Sub-Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
         4.4.3 Operation in Low Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
4.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

             Chapter 5Analog-to-Digital Converter (S12ATD10B8CV3)

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
         5.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
         5.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
         5.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

5.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
         5.2.1 ANx (x = 7, 6, 5, 4, 3, 2, 1, 0) -- Analog Input Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
         5.2.2 ETRIG3, ETRIG2, ETRIG1, and ETRIG0 -- External Trigger Pins . . . . . . . . . . . . . . 160
         5.2.3 VRH and VRL -- High and Low Reference Voltage Pins . . . . . . . . . . . . . . . . . . . . . . . . 160
         5.2.4 VDDA and VSSA -- Power Supply Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

5.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
         5.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
         5.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

5.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
         5.4.1 Analog Sub-Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
         5.4.2 Digital Sub-Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

5.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
5.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

                                               Chapter 6
                                      XGATE (S12XGATEV2)

6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
         6.1.1 Glossary of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
         6.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
         6.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
         6.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

6.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
6.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

         6.3.1 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

         6.4.1 XGATE RISC Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
         6.4.2 Programmer's Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
         6.4.3 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      11
Section Number  Title                               Page

         6.4.4 Semaphores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
         6.4.5 Software Error Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.5 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
         6.5.1 Incoming Interrupt Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
         6.5.2 Outgoing Interrupt Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.6 Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
         6.6.1 Debug Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
         6.6.2 Entering Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
         6.6.3 Leaving Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.7 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.8 Instruction Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
         6.8.1 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
         6.8.2 Instruction Summary and Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
         6.8.3 Cycle Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
         6.8.4 Thread Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
         6.8.5 Instruction Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
         6.8.6 Instruction Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
6.9 Initialization and Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
         6.9.1 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
         6.9.2 Code Example (Transmit "Hello World!" on SCI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291

                                               Chapter 7
                      Enhanced Capture Timer (S12ECT16B8CV2)

7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
         7.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
         7.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
         7.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310

7.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.1 IOC7 -- Input Capture and Output Compare Channel 7 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.2 IOC6 -- Input Capture and Output Compare Channel 6 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.3 IOC5 -- Input Capture and Output Compare Channel 5 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.4 IOC4 -- Input Capture and Output Compare Channel 4 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.5 IOC3 -- Input Capture and Output Compare Channel 3 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.6 IOC2 -- Input Capture and Output Compare Channel 2 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.7 IOC1 -- Input Capture and Output Compare Channel 1 . . . . . . . . . . . . . . . . . . . . . . . . 311
         7.2.8 IOC0 -- Input Capture and Output Compare Channel 0 . . . . . . . . . . . . . . . . . . . . . . . . 311

7.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
         7.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
         7.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314

7.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
         7.4.1 Enhanced Capture Timer Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
         7.4.2 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

                MC9S12XDP512 Data Sheet, Rev. 2.17

12                                                  Freescale Semiconductor
Section Number           Title                               Page

         7.4.3 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361

                                               Chapter 8
                        Pulse-Width Modulator (S12PWM8B8CV1)

8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
         8.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
         8.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
         8.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364

8.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
         8.2.1 PWM7 -- PWM Channel 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
         8.2.2 PWM6 -- PWM Channel 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
         8.2.3 PWM5 -- PWM Channel 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.2.4 PWM4 -- PWM Channel 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.2.5 PWM3 -- PWM Channel 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.2.6 PWM3 -- PWM Channel 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.2.7 PWM3 -- PWM Channel 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.2.8 PWM3 -- PWM Channel 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365

8.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
         8.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366

8.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
         8.4.1 PWM Clock Select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
         8.4.2 PWM Channel Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384

8.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
8.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393

                                               Chapter 9
                   Inter-Integrated Circuit (IICV2) Block Description

9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
         9.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
         9.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
         9.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396

9.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
         9.2.1 IIC_SCL -- Serial Clock Line Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
         9.2.2 IIC_SDA -- Serial Data Line Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397

9.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
         9.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
         9.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398

9.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
         9.4.1 I-Bus Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
         9.4.2 Operation in Run Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
         9.4.3 Operation in Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      13
Section Number  Title                               Page

         9.4.4 Operation in Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
9.5 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
9.6 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
9.7 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

         9.7.1 IIC Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

                                              Chapter 10
          Freescale's Scalable Controller Area Network (S12MSCANV3)

10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
         10.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
         10.1.2 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
         10.1.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
         10.1.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421

10.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
         10.2.1 RXCAN -- CAN Receiver Input Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
         10.2.2 TXCAN -- CAN Transmitter Output Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
         10.2.3 CAN System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421

10.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
         10.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
         10.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
         10.3.3 Programmer's Model of Message Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

10.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
         10.4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
         10.4.2 Message Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
         10.4.3 Identifier Acceptance Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
         10.4.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
         10.4.5 Low-Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
         10.4.6 Reset Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
         10.4.7 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472

10.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
         10.5.1 MSCAN initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
         10.5.2 Bus-Off Recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474

                                              Chapter 11
                       Serial Communication Interface (S12SCIV5)

11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
         11.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
         11.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
         11.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
         11.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478

11.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
         11.2.1 TXD -- Transmit Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480

                MC9S12XDP512 Data Sheet, Rev. 2.17

14                                                  Freescale Semiconductor
Section Number           Title                               Page

         11.2.2 RXD -- Receive Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
11.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480

         11.3.1 Module Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
         11.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
11.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
         11.4.1 Infrared Interface Submodule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
         11.4.2 LIN Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
         11.4.3 Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
         11.4.4 Baud Rate Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
         11.4.5 Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
         11.4.6 Receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
         11.4.7 Single-Wire Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
         11.4.8 Loop Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
11.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
         11.5.1 Reset Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
         11.5.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511
         11.5.3 Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
         11.5.4 Recovery from Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
         11.5.5 Recovery from Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514

                                              Chapter 12
                           Serial Peripheral Interface (S12SPIV4)

12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
         12.1.1 Glossary of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
         12.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
         12.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
         12.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516

12.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
         12.2.1 MOSI -- Master Out/Slave In Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
         12.2.2 MISO -- Master In/Slave Out Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
         12.2.3 SS -- Slave Select Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
         12.2.4 SCK -- Serial Clock Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518

12.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
         12.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
         12.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519

12.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
         12.4.1 Master Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
         12.4.2 Slave Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
         12.4.3 Transmission Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531
         12.4.4 SPI Baud Rate Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
         12.4.5 Special Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
         12.4.6 Error Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      15
Section Number  Title                               Page

         12.4.7 Low Power Mode Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537

                                              Chapter 13
                        Periodic Interrupt Timer (S12PIT24B4CV1)

13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
         13.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
         13.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
         13.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
         13.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542

13.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
13.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
13.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551

         13.4.1 Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
         13.4.2 Interrupt Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
         13.4.3 Hardware Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
13.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
         13.5.1 Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
         13.5.2 Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
         13.5.3 Flag Clearing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553

                                              Chapter 14
                            Voltage Regulator (S12VREG3V3V5)

14.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
         14.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
         14.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
         14.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556

14.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
         14.2.1 VDDR -- Regulator Power Input Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
         14.2.2 VDDA, VSSA -- Regulator Reference Supply Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
         14.2.3 VDD, VSS -- Regulator Output1 (Core Logic) Pins . . . . . . . . . . . . . . . . . . . . . . . . . . 557
         14.2.4 VDDPLL, VSSPLL -- Regulator Output2 (PLL) Pins . . . . . . . . . . . . . . . . . . . . . . . . . 558
         14.2.5 VREGEN -- Optional Regulator Enable Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558

14.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
         14.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 558
         14.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559

14.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
         14.4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
         14.4.2 Regulator Core (REG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564
         14.4.3 Low-Voltage Detect (LVD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
         14.4.4 Power-On Reset (POR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
         14.4.5 Low-Voltage Reset (LVR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
         14.4.6 Regulator Control (CTRL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565

                MC9S12XDP512 Data Sheet, Rev. 2.17

16                                                  Freescale Semiconductor
Section Number           Title                               Page

         14.4.7 Autonomous Periodical Interrupt (API) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
         14.4.8 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
         14.4.9 Description of Reset Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
         14.4.10Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566

                                              Chapter 15
                        Background Debug Module (S12XBDMV2)

15.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
         15.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
         15.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
         15.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571

15.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
15.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572

         15.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
         15.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
         15.3.3 Family ID Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
15.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
         15.4.1 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
         15.4.2 Enabling and Activating BDM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
         15.4.3 BDM Hardware Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
         15.4.4 Standard BDM Firmware Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580
         15.4.5 BDM Command Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
         15.4.6 BDM Serial Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
         15.4.7 Serial Interface Hardware Handshake Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
         15.4.8 Hardware Handshake Abort Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
         15.4.9 SYNC -- Request Timed Reference Pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
         15.4.10Instruction Tracing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
         15.4.11Serial Communication Time Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593

                                              Chapter 16
                                      Interrupt (S12XINTV1)

16.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595
         16.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
         16.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
         16.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
         16.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598

16.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
16.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599

         16.3.1 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
16.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607

         16.4.1 S12X Exception Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
         16.4.2 Interrupt Prioritization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      17
Section Number  Title                               Page

         16.4.3 XGATE Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
         16.4.4 Priority Decoders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
         16.4.5 Reset Exception Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
         16.4.6 Exception Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609
16.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
         16.5.1 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
         16.5.2 Interrupt Nesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
         16.5.3 Wake Up from Stop or Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611

                                              Chapter 17
                         Memory Mapping Control (S12XMMCV2)

17.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
         17.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
         17.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
         17.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614

17.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
17.3 Memory Map and Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616

         17.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616
         17.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
17.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
         17.4.1 MCU Operating Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
         17.4.2 Memory Map Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631
         17.4.3 Chip Access Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
         17.4.4 Chip Bus Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
         17.4.5 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
17.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
         17.5.1 CALL and RTC Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643
         17.5.2 Port Replacement Registers (PRRs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
         17.5.3 On-Chip ROM Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646

                                              Chapter 18
                         Memory Mapping Control (S12XMMCV3)

18.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
         18.1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
         18.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
         18.1.3 S12X Memory Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
         18.1.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
         18.1.5 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654

18.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
18.3 Memory Map and Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656

         18.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
         18.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657

                MC9S12XDP512 Data Sheet, Rev. 2.17

18                                                  Freescale Semiconductor
Section Number           Title                               Page

18.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
         18.4.1 MCU Operating Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 671
         18.4.2 Memory Map Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 672
         18.4.3 Chip Access Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681
         18.4.4 Chip Bus Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683
         18.4.5 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684

18.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
         18.5.1 CALL and RTC Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
         18.5.2 Port Replacement Registers (PRRs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 685
         18.5.3 On-Chip ROM Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 687

                                              Chapter 19
                                       Debug (S12XDBGV2)

19.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
         19.1.1 Glossary of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
         19.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694
         19.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 694
         19.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695

19.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695
19.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697

         19.3.1 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697
19.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714

         19.4.1 DBG Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714
         19.4.2 Comparator Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715
         19.4.3 Trigger Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718
         19.4.4 State Sequence Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
         19.4.5 Trace Buffer Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 721
         19.4.6 Tagging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 728
         19.4.7 Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729

                                              Chapter 20
                             S12X Debug (S12XDBGV3) Module

20.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
         20.1.1 Glossary Of Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
         20.1.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745
         20.1.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
         20.1.4 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746
         20.1.5 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747

20.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747
20.3 Memory Map and Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748

         20.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 748
         20.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      19
Section Number  Title                               Page

20.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768
         20.4.1 S12XDBG Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 768
         20.4.2 Comparator Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
         20.4.3 Trigger Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 772
         20.4.4 State Sequence Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 774
         20.4.5 Trace Buffer Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775
         20.4.6 Tagging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 782
         20.4.7 Breakpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783

                                              Chapter 21
                             External Bus Interface (S12XEBIV2)

21.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
         21.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
         21.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 787
         21.1.3 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788

21.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 788
21.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790

         21.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
         21.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 790
21.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794
         21.4.1 Operating Modes and External Bus Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 794
         21.4.2 Internal Visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795
         21.4.3 Accesses to Port Replacement Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
         21.4.4 Stretched External Bus Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
         21.4.5 Data Select and Data Direction Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
         21.4.6 Low-Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
21.5 Initialization/Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
         21.5.1 Normal Expanded Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802
         21.5.2 Emulation Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803

                                              Chapter 22
                  DP512 Port Integration Module (S12XDP512PIMV2)

22.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807
         22.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808
         22.1.2 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 808

22.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810
         22.2.1 Signal Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810

22.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817
         22.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 817
         22.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 820

22.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881
         22.4.1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881

                MC9S12XDP512 Data Sheet, Rev. 2.17

20                                                  Freescale Semiconductor
Section Number           Title                               Page

         22.4.2 Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883
         22.4.3 Pin Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887
         22.4.4 Expanded Bus Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 888
         22.4.5 Low-Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889
22.5 Initialization and Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889

                                              Chapter 23
                 DQ256 Port Integration Module (S12XDQ256PIMV2)

Chapter 23Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901
         23.0.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901
         23.0.2 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902

Figure 23-1.External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904
         23.0.3 Signal Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904

Table 23-1.Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
         23.0.4 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
         23.0.5 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913

Table 23-66.Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962
         23.0.6 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
         23.0.7 Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965
         23.0.8 Pin Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 968
         23.0.9 Expanded Bus Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 969
         23.0.10Low-Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971

23.0.10.3Initialization and Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 971

                                              Chapter 24
                 DG128 Port Integration Module (S12XDG128PIMV2)

Chapter 24Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975
         24.0.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975
         24.0.2 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976

Figure 24-1.External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978
         24.0.3 Signal Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 978

Table 24-1.Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983
         24.0.4 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983
         24.0.5 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985

Table 24-59.Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028
         24.0.6 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029
         24.0.7 Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031
         24.0.8 Pin Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033
         24.0.9 Low-Power Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034

24.0.9.3Initialization and Application Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      21
Section Number  Title                               Page

                                              Chapter 25
                       2 Kbyte EEPROM Module (S12XEETX2KV1)

25.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039
         25.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039
         25.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039
         25.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039
         25.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040

25.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040
25.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040

         25.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040
         25.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043
25.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051
         25.4.1 EEPROM Command Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1051
         25.4.2 EEPROM Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054
         25.4.3 Illegal EEPROM Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068
25.5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
         25.5.1 Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
         25.5.2 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
         25.5.3 Background Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
25.6 EEPROM Module Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1069
         25.6.1 Unsecuring the MCU in Special Single Chip Mode using BDM . . . . . . . . . . . . . . . . 1070
25.7 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
         25.7.1 EEPROM Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
         25.7.2 Reset While EEPROM Command Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
25.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
         25.8.1 Description of EEPROM Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1071

                                              Chapter 26
                       4 Kbyte EEPROM Module (S12XEETX4KV2)

26.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
         26.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
         26.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
         26.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
         26.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074

26.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074
26.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074

         26.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1074
         26.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1078
26.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1086
         26.4.1 EEPROM Command Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1086
         26.4.2 EEPROM Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1089
         26.4.3 Illegal EEPROM Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103

                MC9S12XDP512 Data Sheet, Rev. 2.17

22                                                  Freescale Semiconductor
Section Number           Title                               Page

26.5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
         26.5.1 Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
         26.5.2 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
         26.5.3 Background Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104

26.6 EEPROM Module Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1104
         26.6.1 Unsecuring the MCU in Special Single Chip Mode using BDM . . . . . . . . . . . . . . . . 1105

26.7 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
         26.7.1 EEPROM Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
         26.7.2 Reset While EEPROM Command Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105

26.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1105
         26.8.1 Description of EEPROM Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106

                                              Chapter 27
                      512 Kbyte Flash Module (S12XFTX512K4V2)

27.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107
         27.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107
         27.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107
         27.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108
         27.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108

27.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109
27.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110

         27.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110
         27.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1113
27.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126
         27.4.1 Flash Command Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126
         27.4.2 Flash Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129
         27.4.3 Illegal Flash Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1144
27.5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145
         27.5.1 Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145
         27.5.2 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145
         27.5.3 Background Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145
27.6 Flash Module Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1145
         27.6.1 Unsecuring the MCU using Backdoor Key Access . . . . . . . . . . . . . . . . . . . . . . . . . . . 1146
         27.6.2 Unsecuring the MCU in Special Single Chip Mode using BDM . . . . . . . . . . . . . . . . 1147
27.7 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147
         27.7.1 Flash Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147
         27.7.2 Reset While Flash Command Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147
27.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1147
         27.8.1 Description of Flash Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      23
Section Number  Title                               Page

                                              Chapter 28
                      256 Kbyte Flash Module (S12XFTX256K2V1)

28.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149
         28.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149
         28.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1149
         28.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150
         28.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150

28.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150
28.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151

         28.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1151
         28.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1153
28.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1166
         28.4.1 Flash Command Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1166
         28.4.2 Flash Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1169
         28.4.3 Illegal Flash Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1185
28.5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
         28.5.1 Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
         28.5.2 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
         28.5.3 Background Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
28.6 Flash Module Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1186
         28.6.1 Unsecuring the MCU using Backdoor Key Access . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187
         28.6.2 Unsecuring the MCU in Special Single Chip Mode using BDM . . . . . . . . . . . . . . . . 1188
28.7 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188
         28.7.1 Flash Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188
         28.7.2 Reset While Flash Command Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188
28.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188
         28.8.1 Description of Flash Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189

                                              Chapter 29
                      128 Kbyte Flash Module (S12XFTX128K1V1)

29.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191
         29.1.1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191
         29.1.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1191
         29.1.3 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
         29.1.4 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192

29.2 External Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1192
29.3 Memory Map and Register Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193

         29.3.1 Module Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193
         29.3.2 Register Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1195
29.4 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1208
         29.4.1 Flash Command Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1208
         29.4.2 Flash Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1211

                MC9S12XDP512 Data Sheet, Rev. 2.17

24                                                  Freescale Semiconductor
Section Number           Title                               Page

         29.4.3 Illegal Flash Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
29.5 Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227

         29.5.1 Wait Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
         29.5.2 Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
         29.5.3 Background Debug Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
29.6 Flash Module Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
         29.6.1 Unsecuring the MCU using Backdoor Key Access . . . . . . . . . . . . . . . . . . . . . . . . . . . 1227
         29.6.2 Unsecuring the MCU in Special Single Chip Mode using BDM . . . . . . . . . . . . . . . . 1229
29.7 Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
         29.7.1 Flash Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
         29.7.2 Reset While Flash Command Active . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
29.8 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229
         29.8.1 Description of Flash Interrupt Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1230

                                              Chapter 30
                                     Security (S12X9SECV2)

30.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1231
         30.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1231
         30.1.2 Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1232
         30.1.3 Securing the Microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1232
         30.1.4 Operation of the Secured Microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1233
         30.1.5 Unsecuring the Microcontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1235
         30.1.6 Reprogramming the Security Bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1236
         30.1.7 Complete Memory Erase (Special Modes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1236

                                              Appendix A
                                    Electrical Characteristics

A.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
         A.1.1 Parameter Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
         A.1.2 Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1239
         A.1.3 Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
         A.1.4 Current Injection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1240
         A.1.5 Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1241
         A.1.6 ESD Protection and Latch-up Immunity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1241
         A.1.7 Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1243
         A.1.8 Power Dissipation and Thermal Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
         A.1.9 I/O Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1246
         A.1.10 Supply Currents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1249

A.2 ATD Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1253
         A.2.1 ATD Operating Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1253
         A.2.2 Factors Influencing Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1254
         A.2.3 ATD Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1256

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      25
Section Number  Title                               Page

A.3 NVM, Flash, and EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1259
         A.3.1 NVM Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1259
         A.3.2 NVM Reliability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262

A.4 Voltage Regulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1264
         A.4.1 Chip Power-up and Voltage Drops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265
         A.4.2 Output Loads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1265

A.5 Reset, Oscillator, and PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1267
         A.5.1 Startup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1267
         A.5.2 Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1268
         A.5.3 Phase Locked Loop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1270

A.6 MSCAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1273
A.7 SPI Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274

         A.7.1 Master Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274
         A.7.2 Slave Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1276
A.8 External Bus Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279
         A.8.1 Normal Expanded Mode (External Wait Feature Disabled). . . . . . . . . . . . . . . . . . . . . 1279
         A.8.2 Normal Expanded Mode (External Wait Feature Enabled) . . . . . . . . . . . . . . . . . . . . . 1281
         A.8.3 Emulation Single-Chip Mode (Without Wait States) . . . . . . . . . . . . . . . . . . . . . . . . . . 1284
         A.8.4 Emulation Expanded Mode (With Optional Access Stretching) . . . . . . . . . . . . . . . . . 1286
         A.8.5 External Tag Trigger Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289

                                              Appendix B
                                       Package Information

B.1 144-Pin LQFP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1291
B.2 112-Pin LQFP Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1292
B.3 80-Pin QFP Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1293

                                              Appendix C
                                  Recommended PCB Layout

                                              Appendix D
                                        Using L15Y Silicon

                                              Appendix E
                                      Derivative Differences

E.1 Memory Sizes and Package Options S12XD - Family . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1300
E.2 Memory Sizes and Package Options S12XA & S12XB Family. . . . . . . . . . . . . . . . . . . . . . . . . 1302
E.3 MC9S12XD-Family Flash Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1303
E.4 MC9S12XD/A/B -Family SRAM & EEPROM Configuration . . . . . . . . . . . . . . . . . . . . . . . . . 1304
E.5 Peripheral Sets S12XD - Family . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1305
E.6 Peripheral Sets S12XA & S12XB - Family . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1306

                MC9S12XDP512 Data Sheet, Rev. 2.17

26                                                  Freescale Semiconductor
Section Number           Title                               Page

E.7 Pinout explanations: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1307

                                              Appendix F
                                       Ordering Information

                                              Appendix G
                                      Detailed Register Map

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      27
Section Number  Title                               Page

                MC9S12XDP512 Data Sheet, Rev. 2.17

28                                                  Freescale Semiconductor
                                         NOTE

This documentation covers all devices in the S12XD, S12XB and S12XA
families. A full list of these devices and their features can be found in the
following chapters:

E.1 Memory Sizes and Package Options S12XD - Family
E.2 Memory Sizes and Package Options S12XA & S12XB Family
E.5 Peripheral Sets S12XD - Family
E.6 Peripheral Sets S12XA & S12XB - Family
Table 1-6 Partnames, Masksets and assigned PartID's
This document includes different sections for S12XDPIM, S1XMMC,
S12XDBG, S12XEETX and S12XFTX because the different masksets of
the S12XD, S12XB and S12XA families include differnt configurations or
versions of the modules or have different memory sizes. Table 0-1 shows the
maskset specific chapters in this documentation.

                         Table 0-1. Maskset Specific Documentation

                       Chapters in this Documentation          L15Y    M84E    M42E
                                                               (512k   (256K   (128K
           Chapter 21 External Bus Interface (S12XEBIV2) 787   Flash)  Flash)  Flash)
        Chapter 17 Memory Mapping Control (S12XMMCV2) 613
        Chapter 18 Memory Mapping Control (S12XMMCV3) 649                        
                                                                                 
                     Chapter 19 Debug (S12XDBGV2) 691                    
           Chapter 20 S12X Debug (S12XDBGV3) Module 743                          
Chapter 22 DP512 Port Integration Module (S12XDP512PIMV2) 805                    
Chapter 23 DQ256 Port Integration Module (S12XDQ256PIMV2) 899            
Chapter 24 DG128 Port Integration Module (S12XDG128PIMV2) 973                    
    Chapter 25 2 Kbyte EEPROM Module (S12XEETX2KV1) 1037                 
    Chapter 26 4 Kbyte EEPROM Module (S12XEETX4KV2) 1071         
    Chapter 27 512 Kbyte Flash Module (S12XFTX512K4V2) 1105
    Chapter 28 256 Kbyte Flash Module (S12XFTX256K2V1) 1147
    Chapter 29 128 Kbyte Flash Module (S12XFTX128K1V1) 1189
    Chapter 5 Analog-to-Digital Converter (S12ATD10B8CV3) 157

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                29
Chapter 1 Device Overview MC9S12XD-Family describes pinouts, detailed pin description , interrupts
and register map of the cover part MC9S12XDP512 (maskset L15Y). For availability of the modules on
other members of the S12XA, S12XB and S12XD families please refer to Appendix E Derivative
Differences. For pinout explanations of the different parts refer to E.7 Pinout explanations:. For a list of
available partnames /masksets refer to Table 1-6.

    MC9S12XDP512 Data Sheet, Rev. 2.17

30                                      Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

Chapter 1 Device Overview MC9S12XD-Family

1.1 Introduction

The MC9S12XD family will retain the low cost, power consumption, EMC and code-size efficiency
advantages currently enjoyed by users of Freescale's existing 16-Bit MC9S12 MCU Family.

Based around an enhanced S12 core, the MC9S12XD family will deliver 2 to 5 times the performance of
a 25-MHz S12 whilst retaining a high degree of pin and code compatibility with the S12.

The MC9S12XD family introduces the performance boosting XGATE module. Using enhanced DMA
functionality, this parallel processing module offloads the CPU by providing high-speed data processing
and transfer between peripheral modules, RAM, Flash EEPROM and I/O ports. Providing up to 80 MIPS
of performance additional to the CPU, the XGATE can access all peripherals, Flash EEPROM and the
RAM block.

The MC9S12XD family is composed of standard on-chip peripherals including up to 512 Kbytes of Flash
EEPROM, 32 Kbytes of RAM, 4 Kbytes of EEPROM, six asynchronous serial communications interfaces
(SCI), three serial peripheral interfaces (SPI), an 8-channel IC/OC enhanced capture timer, an 8-channel,
10-bit analog-to-digital converter, a 16-channel, 10-bit analog-to-digital converter, an 8-channel
pulse-width modulator (PWM), five CAN 2.0 A, B software compatible modules (MSCAN12), two
inter-IC bus blocks, and a periodic interrupt timer. The MC9S12XD family has full 16-bit data paths
throughout.

The non-multiplexed expanded bus interface available on the 144-pin versions allows an easy interface to
external memories

The inclusion of a PLL circuit allows power consumption and performance to be adjusted to suit
operational requirements. System power consumption can be further improved with the new "fast exit from
stop mode" feature.

In addition to the I/O ports available in each module, up to 25 further I/O ports are available with interrupt
capability allowing wake-up from stop or wait mode.

Family members in 144-pin LQFP will be available with external bus interface and parts in 112-pin LQFP
or 80-pin QFP package without external bus interface. See Appendix E Derivative Differences for package
optio@

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      31
Chapter 1 Device Overview MC9S12XD-Family

1.1.1 MC9S12XD/B/A Family Features

                  This section lists the features which are available on MC9S12XDP512. See
                  Appendix E Derivative Differences for availability of features and memory
                  sizes on other family members.

    HCS12X Core
         -- 16-bit HCS12X CPU
             Upward compatible with MC9S12 instruction set
             Interrupt stacking and programmer's model identical to MC9S12
             Instruction queue
             Enhanced indexed addressing
             Enhanced instruction set
         -- EBI (external bus interface)
         -- MMC (module mapping control)
         -- INT (interrupt controller)
         -- DBG (debug module to monitor HCS12X CPU and XGATE bus activity)
         -- BDM (background debug mode)

    XGATE (peripheral coprocessor)
         -- Parallel processing module off loads the CPU by providing high-speed data processing and
             transfer
         -- Data transfer between Flash EEPROM, RAM, peripheral modules, and I/O ports

    PIT (periodic interrupt timer)
         -- Four timers with independent time-out periods
         -- Time-out periods selectable between 1 and 224 bus clock cycles

    CRG (clock and reset generator)
         -- Low noise/low power Pierce oscillator
         -- PLL
         -- COP watchdog
         -- Real time interrupt
         -- Clock monitor
         -- Fast wake-up from stop mode

    Port H & Port J with interrupt functionality
         -- Digital filtering
         -- Programmable rising or falling edge trigger

    Memory
         -- 512, 256 and 128-Kbyte Flash EEPROM
         -- 4 and 2-Kbyte EEPROM
         -- 32, 16 and 12-Kbyte RAM

    One 16-channel and one 8-channel ADC (analog-to-digital converter)

    MC9S12XDP512 Data Sheet, Rev. 2.17

32                                      Freescale Semiconductor
                                                                                                                     Chapter 1 Device Overview MC9S12XD-Family

    -- 10-bit resolution
    -- External and internal conversion trigger capabilityFiveFourTwo 1M bit per second,

         CAN 2.0 A, B software compatible modules
    -- Five receive and three transmit buffers
    -- Flexible identifier filter programmable as 2 x 32 bit, 4 x 16 bit, or 8 x 8 bit
    -- Four separate interrupt channels for Rx, Tx, error, and wake-up
    -- Low-pass filter wake-up function
    -- Loop-back for self-test operation
ECT (enhanced capture timer)
    -- 16-bit main counter with 7-bit prescaler
    -- 8 programmable input capture or output compare channels
    -- Four 8-bit or two 16-bit pulse accumulators
8 PWM (pulse-width modulator) channels
    -- Programmable period and duty cycle
    -- 8-bit 8-channel or 16-bit 4-channel
    -- Separate control for each pulse width and duty cycle
    -- Center-aligned or left-aligned outputs
    -- Programmable clock select logic with a wide range of frequencies
    -- Fast emergency shutdown input
Serial interfaces
    -- SixFourTwo asynchronous serial communication interfaces (SCI) with additional LIN support

         and selectable IrDA 1.4 return-to-zero-inverted (RZI) format with programmable pulse width
    -- ThreeTwo Synchronous Serial Peripheral Interfaces (SPI)
TwoOne IIC (Inter-IC bus) Modules
    -- Compatible with IIC bus standard
    -- Multi-master operation
    -- Software programmable for one of 256 different serial clock frequencies
On-Chip Voltage Regulator
    -- Two parallel, linear voltage regulators with bandgap reference
    -- Low-voltage detect (LVD) with low-voltage interrupt (LVI)
    -- Power-on reset (POR) circuit
    -- 3.3-V5.5-V operation
    -- Low-voltage reset (LVR)
    -- Ultra low-power wake-up timer
144-pin LQFP, 112-pin LQFP, and 80-pin QFP packages
    -- I/O lines with 5-V input and drive capability
    -- Input threshold on external bus interface inputs switchable for 3.3-V or 5-V operation
    -- 5-V A/D converter inputs
    -- Operation at 80 MHz equivalent to 40-MHz bus speed

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      33
Chapter 1 Device Overview MC9S12XD-Family

    Development support
         -- Single-wire background debugTM mode (BDM)
         -- Four on-chip hardware breakpoints

1.1.2 Modes of Operation

                  Normal expanded mode, Emulation of single-chip mode and Emulation of
                  expanded mode are ony available on family members with an external bus
                  interface in 144-pin LQFP. See Appendix E Derivative Differences for
                  package options.

User modes:
    Normal and emulation operating modes
         -- Normal single-chip mode
         -- Normal expanded mode
         -- Emulation of single-chip mode
         -- Emulation of expanded mode
    Special Operating Modes
         -- Special single-chip mode with active background debug mode
         -- Special test mode (Freescale use only)

Low-power modes:
    System stop modes
         -- Pseudo stop mode
         -- Full stop mode
    System wait mode

1.1.3 Block Diagram

Figure 1-1 shows a block diagram of theMC9S12X-Family. The block diagram shows all modules
available on cover part MC9S12XDP512. Availability of modules on other family members see
Appendix E Derivative Differences. Figure 1-2 shows blocks integrated on maskset M42E. The 16 channel
ATD Converter is routed to pins PAD00 - PAD15 on maskset M42E. See Chapter 4 Analog-to-Digital
Converter (ATD10B16CV4) Block Description 123.

    MC9S12XDP512 Data Sheet, Rev. 2.17

34                                      Freescale Semiconductor
                                                                                                                                Chapter 1 Device Overview MC9S12XD-Family

                              512/384/256/128/64-Kbyte Flash                                                    ATD0   VRH               ATD1                           VRH      VRH
                               32/20/16/14/10/8/4-Kbyte RAM                                                            VRL                                              VRL      VRL
                                     4/2/1-Kbyte EEPROM                                                               VDDA                                             VDDA      VDDA
                                                                                                                      VSSA                                             VSSA      VSSA

                                                                                                                AN0             PAD00 AN8                                        PAD08
                                                                                                                                                                                 PAD09
                       VDDR                                                                                     AN1   DDRAD0 & AD0PAD01 AN9                                      PAD10
                        VSSR                                                                                                                                   DDRAD1 & AD1      PAD11
                    VREGEN                                                                                      AN2             PAD02 AN10                                       PAD12
                      VDD1,2                                                                                                                                                     PAD13
                      VSS1,2             Voltage Regulator                                                      AN3             PAD03 AN11                                       PAD14
                                                                                                                                                                                 PAD15
                      BKGD                                                                                      AN4             PAD04 AN12                                       PAD16
                                                                                                                                                                                 PAD17
                        XFC                                                                                     AN5             PAD05 AN13                                       PAD18
                     VDDPLL                                                                                                                                                      PAD19
                     VSSPLL       Single-Wire                                                                   AN6             PAD06 AN14                                       PAD20
                     EXTAL        Background                                                                                                                                     PAD21
                                Debug Module                                                                    AN7             PAD07 AN15                                       PAD22
                       XTAL                                                                                                                                                      PAD23
                    RESET                   Clock                                          CPU12X                                                                AN16            PT0
                              PLL and Reset                                                                                                                                      PT1
                       TEST                                                            Periodic Interrupt          Enhanced Multilevel       AN17                                PT2      Signals shown in Bold-Italics are neither available on the 112-pin nor on the 80-pin oackage option
                                        Generation                                      COP Watchdog                 Interrupt Module        AN18                                PT3          Signals shown in Bold are not available on the 80-pin package
                         PE0              Module                                         Clock Monitor                                       AN19                                PT4
                         PE1                                                                                               XGATE             AN20                                PT5
                         PE2                                                              Breakpoints           Peripheral Co-Processor      AN21                                PT6
                         PE3                                                                                                                 AN22                                PT7
                         PE4             XIRQ                                                                                                AN23                                PS0
                         PE5                                                                                                             IOC0                                    PS1
                         PE6             IRQ                                                                                             IOC1                                    PS2
                         PE7                                                                                                             IOC2                                    PS3
                              PTE        R/W/WE                                                                 Enhanced Capture         IOC3                          DDRT      PS4
         ADDR16 PK0                DDRE                                                                                 Timer            IOC4                               PTT  PS5
         ADDR17 PK1                      LSTRB/LDS/EROMCTL                                                                               IOC5                                    PS6
         ADDR18 PK2                                                                                                                      IOC6                                    PS7
         ADDR19 PK3                      ECLK                                                                                            IOC7                                    PM0
         ADDR20 PK4                                                                                                                      RXD                                     PM1
         ADDR21 PK5                      MODA/RE/TAGLO                                                                                    TXD                                    PM2
         ADDR22 PK6                                                                                                                      RXD                                     PM3
                                         MODB/TAGHI                                                                                       TXD                                    PM4
            EWAIT PK7                                                                                                                                                            PM5
         ADDR15 PA7                      ECLKX2/XCLKS                                                                                                                            PM6
         ADDR14 PA6                                                                                                                                                              PM7
         ADDR13 PA5                      IQSTAT0                                                                SCI0
         ADDR12 PA4                                                                                             SCI1                                                             PJ0 CS3
         ADDR11 PA3                      IQSTAT1                                                                                                                                 PJ1
         ADDR10 PA2                                                                                             SPI0                                                             PJ2 CS1
                              PTK        IQSTAT2                                                                                                                       DDRS      PJ4 CS0
           ADDR9 PA1               DDRK                                                                                                                                     PTS  PJ5 CS2
           ADDR8 PA0                     IQSTAT3                                        8-Bit PPAGE                   MISO                                                       PJ6
           ADDR7 PB7                                                                   Allows 4-MByte                 MOSI                                                       PJ7
           ADDR6 PB6                     ACC0                                          Program space                                                                             PP0
           ADDR5 PB5                     ACC1                                                                          SCK                                                       PP1
           ADDR4 PB4                                                                                                     SS                                                      PP2
           ADDR3 PB3                     ACC2                                                                                                                                    PP3
           ADDR2 PB2                                                                                                                                                             PP4
           ADDR1 PB1                     ROMCTL/EWAIT                                                                 RXCAN                                                      PP5
UDS ADDR0 PB0                                                                                                         TXCAN                                                      PP6
          DATA15 PC7                                                                                            CAN0                     Module to Port Routing                  PP7
          DATA14 PC6                                                                                                                                                             PH0
          DATA13 PC5          PTA                                                                 Timer         CAN1  RXCAN                                            DDRM      PH1
          DATA12 PC4               DDRA                                                       4-Channel               TXCAN                                                 PTM  PH2
          DATA11 PC3                                                                    16-Bit with Prescaler                                                                    PH3
          DATA10 PC2                                                                   for Internal Timebases   CAN2  RXCAN                                                      PH4
            DATA9 PC1                                                                                                 TXCAN                                                      PH5
            DATA8 PC0                                                                                                                                                            PH6
            DATA7 PD7                                                                  SCI3  RXD                CAN3  RXCAN                                                      PH7
            DATA6 PD6                                                                        TXD                      TXCAN
            DATA5 PD5
            DATA4 PD4                    Non-Multiplexed External Bus Interface (EBI)  Digital Supply 2.5 V              RXCAN
            DATA3 PD3                                                                                           CAN4 TXCAN
            DATA2 PD2                                                                     VDD1,2
            DATA1 PD1         PTB                                                         VSS1,2                SCI2  RXD                KWJ0
            DATA0 PD0              DDRB                                                                               TXD                KWJ1
                                                                                                                                         KWJ2
                                                                                       PLL Supply 2.5 V         IIC1    SDA              KWJ4                          DDRJ
                                                                                                                IIC0    SCL              KWJ5                               PTJ
                                                                                          VDDPLL                PWM     SDA              KWJ6
                                                                                          VSSPLL                        SCL              KWJ7
                                                                                                                SPI1  PWM0               KWP0
                              PTC                                                      Analog Supply 3-5 V      SPI2  PWM1               KWP1                          DDRP
                                   DDRC                                                     VDDA                      PWM2               KWP2                               PTP
                                                                                            VSSA                      PWM3               KWP3
                                                                                                                      PWM4               KWP4
                              PTD                                                            I/O Supply 3-5 V         PWM5               KWP5                          DDRH
                                   DDRD                                                      VDDX1,2                  PWM6               KWP6                               PTH
                                                                                             VSSX1,2                  PWM7               KWP7
                                                                                                                       MISO              KWH0
                                                                                       Voltage Regulator 3-5 V         MOSI              KWH1
                                                                                                                        SCK              KWH2
                                                                                          VDDR1,2                                        KWH3
                                                                                           VSSR1,2                         SS            KWH4
                                                                                                                       MISO              KWH5
                                                                                       SCI4  RXD                       MOSI              KWH6
                                                                                       SCI5  TXD                        SCK              KWH7
                                                                                             RXD
                                                                                             TXD                           SS

                                         Figure 1-1. MC9S12XD-Family Block Diagram

                                                                                       MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                                                                                                                                                                                                        35
Chapter 1 Device Overview MC9S12XD-Family

                         128-Kbyte Flash                                                ATD1                    VRH         VRH
                          12 Kbyte RAM                                                                                      VRL
                                                                                         AN0                    VRL         VDDA
                        2-Kbyte EEPROM                                                   AN1                    VDDA        VSSA
                                                                                         AN2                    VSSA
                                                                                         AN3                                PAD00
       VDDR             Voltage Regulator                                                AN4                                PAD01
       VSSR                                                                              AN5                                PAD02
    VREGEN       Single-Wire                   CPU12X              Enhanced Multilevel   AN6                    DDRAD1      PAD03
     VDD1,2      Background                                          Interrupt Module    AN7                         PTAD1  PAD04
     VSS1,2    Debug Module                Periodic Interrupt                            AN8                                PAD05
                                            COP Watchdog                   XGATE         AN9                                PAD06  Signals shown in Bold-Italics are neither available on the 112-pin nor on the 80-pin oackage option
     BKGD                  Clock             Clock Monitor               Peripheral     AN10                                PAD07      Signals shown in Bold are not available on the 80-pin package
             PLL and Reset                                             Co-Processor     AN11                                PAD08
        XFC                                   Breakpoints                               AN12                                PAD09
    VDDPLL             Generation                                  Enhanced Capture     AN13                                PAD10
    VSSPLL               Module                                            Timer        AN14                                PAD11
     EXTAL                                                                              AN15                                PAD12
                        XIRQ                                                            IOC0                                PAD13
       XTAL             IRQ                                                             IOC1                                PAD14
    RESET                                                                               IOC2                                PAD15
             PTE        ECLK                                                            IOC3                    DDRT        PT0
      TEST        DDRE                                                                  IOC4                         PTT    PT1
                                                                                        IOC5                                PT2
        PE0             ECLKX2/XCLKS                                                    IOC6                                PT3
        PE1                                                                             IOC7                                PT4
        PE2                                                        SCI0                  RXD                                PT5
        PE3                                                                              TXD                                PT6
        PE4  PTK                                                   SCI1                  RXD                    DDRS        PT7
        PE5       DDRK                                                                   TXD                         PTS    PS0
        PE6                                                                                                                 PS1
        PE7                                          8-Bit PPAGE         MISO                                               PS2
        PK0                                        Allows 4-MByte                                                           PS3
        PK1                                        Program space   SPI0  MOSI                                               PS4
        PK2                                                               SCK                                               PS5
        PK3                                           Timer                                                                 PS6
        PK4                                       4-Channel              SS                                                 PS7
        PK5                                 16-Bit with Prescaler                                                           PM0
                                           for Internal Timebases           RXCAN       Module to Port Routing              PM1
        PK7                                                        CAN0 TXCAN                                               PM2
        PA7                                                                                                                 PM3
        PA6  PTA                                                                                                DDRM        PM4
        PA5       DDRA                                                                                               PTM    PM5
        PA4                                                                                                                 PM6
        PA3                                                                 RXCAN                                           PM7
        PA2                                                        CAN4 TXCAN
        PA1                                                                                                                 PJ0
        PA0  PTB                           Digital Supply 2.5 V                         KWJ0                                PJ1
        PB7       DDRB                                                                  KWJ1
        PB6                                   VDD1,2                                                                        PJ6
        PB5                                   VSS1,2                                                                        PJ7
        PB4                                                                                                                 PP0
        PB3                           PLL Supply 2.5 V                                                          DDRJ        PP1
        PB2                              VDDPLL                                                                      PTJ    PP2
        PB1                              VSSPLL                                                                             PP3
        PB0                                                        IIC0    SDA          KWJ6                                PP4
                                    Analog Supply 3-5 V            PWM     SCL          KWJ7                                PP5
                                          VDDA                     SPI1  PWM0           KWP0                    DDRP        PP6
                                          VSSA                           PWM1           KWP1                         PTP    PP7
                                                                         PWM2           KWP2                                PH0
                                         I/O Supply 3-5 V                PWM3           KWP3                    DDRH        PH1
                                             VDDX                        PWM4           KWP4                         PTH    PH2
                                             VSSX                        PWM5           KWP5                                PH3
                                                                         PWM6           KWP6                                PH4
                                   Voltage Regulator 3-5 V               PWM7           KWP7                                PH5
                                          VDDR                            MISO          KWH0                                PH6
                                          VSSR                            MOSI          KWH1                                PH7
                                                                           SCK          KWH2
                                                                                        KWH3
                                                                              SS        KWH4
                                                                                        KWH5
                                                                                        KWH6
                                                                                        KWH7

                        Figure 1-2. Block Diagram Maskset M42E

                              MC9S12XDP512 Data Sheet, Rev. 2.17

36                                                                                                                    Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

1.1.4 Device Memory Map

Table 1-1shows the device register memory map of the MC9S12XDP512. Available modules on other
Family members please refer to Appendix E Derivative Differences

Unimplemented register space shown in Table 1-1 is not allocated to any module. Writing to these
locations have no effect. Read access to these locations returns zero. Figure 1-1 shows the global address
mapping for the parts listed in Table 1-2.

                         Table 1-1. Device Register Memory Map

     Address                                     Module                    Size
                                                                         (Bytes)
0x00000x0009
0x000A0x000B            PIM (port integration module)                   10
0x000C0x000D
0x000E0x000F            MMC (memory map control)                        2
0x00100x0017
0x00180x0019            PIM (port integration module)                   2
0x001A0x001B
0x001C0x001F            EBI (external bus interface)                    2
0x00200x002F
0x00300x0031            MMC (memory map control)                        8
0x00320x0033
0x00340x003F            Unimplemented                                   2
0x00400x007F
0x00800x00AF            Device ID register                              2
0x00B00x00B7
0x00B80x00C7            PIM (port integration module)                   4
0x00B80x00BF
0x00C00x00C7            DBG (debug module)                              16
0x00C80x00CF
0x00D00x00D7            MMC (memory map control)                        2
0x00D80x00DF
0x00E00x00E7            PIM (port integration module)                   2
0x00E80x00EF
0x00F00x00F7            CRG (clock and reset generator)                 12
0x00F80x013F
0x00F80x00FF            ECT (enhanced capture timer 16-bit 8-channel)s  64
0x01000x010F
                         ATD1 (analog-to-digital converter 10-bit 16-channel) 48

                         IIC1 (inter IC bus)                             8

                         Reserved                                        16

                         SCI2 (serial communications interface)          8

                         SCI3 (serial communications interface)          8

                         SCI0 (serial communications interface)          8

                         SCI1 (serial communications interface)          8

                         SPI0 (serial peripheral interface)              8

                         IIC0 (inter IC bus)                             8

                         Unimplemented                                   8

                         SPI1 (serial peripheral interface)              8

                         Reserved                                        8

                         SPI2 (serial peripheral interface)              8

                         Flash control register                          16

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                           37
Chapter 1 Device Overview MC9S12XD-Family

    Table 1-1. Device Register Memory Map (continued)

         Address                                Module                    Size
                                                                        (Bytes)
    0x01100x011B  EEPROM control register
    0x011C0x011F  MMC (memory map control)                                12
    0x01200x012F  INT (interrupt module)                                   4
    0x01300x013F  Reserved                                                16
    0x01300x0137  SCI4 (serial communications interface)                  16
    0x01380x013F  SCI5 (serial communications interface)                   8
    0x01400x017F  CAN0 (scalable CAN)                                      8
    0x01800x01BF  CAN1 (scalable CAN)                                     64
    0x01800x023F  Reserved                                                64
    0x01C00x01FF  CAN2 (scalable CAN)                                    192
    0x02000x023F  Reserved                                                64
    0x02000x023F  CAN3 (scalable CAN)                                     64
    0x02400x027F  PIM (port integration module)                           64
    0x02800x02BF  CAN4 (scalable CAN)                                     64
    0x02C00x02DF  Reserved                                                64
    0x02C00x02DF  ATD0 (analog-to-digital converter 10 bit 8-channel)     32
    0x02E00x02EF  Unimplemented                                           32
    0x02F00x02F7  Voltage regulator                                       16
    0x02F80x02FF  Unimplemented                                            8
    0x03000x0327  PWM (pulse-width modulator 8 channels)                   8
    0x03280x033F  Unimplemented                                           40
    0x03400x0367  Periodic interrupt timer                                24
    0x03680x037F  Unimplemented                                           40
    0x03800x03BF  XGATE                                                   24
    0x03C00x03FF  Unimplemented                                           64
    0x04000x07FF  Unimplemented                                           64
                                                                         1024

                   MC9S12XDP512 Data Sheet, Rev. 2.17

38                                                                      Freescale Semiconductor
                                                 Chapter 1 Device Overview MC9S12XD-Family

CPU and BDM                                      Global Memory Map
Local Memory Map

                                 0x00_0000                    2K REGISTERS
                                 0x00_07FF

                                                              Unimplemented                       CS3
                                                                     RAM

                                 RAM_LOW

0x0000 2K REGISTERS                                           RAM                     RAMSIZE

0x0800 1K EEPROM window   EPAGE  0x0F_FFFF
                          RPAGE
0x0C00  1K EEPROM
                          PPAGE
0x1000  4K RAM window                                         Unimplemented                       CS2
0x2000                                                            EEPROM

        8K RAM                   EEPROM_LOW                                           EEPROMSIZE
                                      0x13_FFFF
0x4000                                                        EEPROM

         Unpaged                                                                                  CS2
        16K FLASH

                                 0x1F_FFFF                    External
                                                               Space
0x8000

                                                                                                  CS1

        16K FLASH window         0x3F_FFFF

0xC000                                                        Unimplemented                       CS0
0xFFFF                                                             FLASH

          Unpaged                FLASH_LOW
         16K FLASH

        Reset Vectors

                                                              FLASH                   FLASHSIZE

                                                                           0x7F_FFFF
                         Figure 1-3. S12X CPU & BDM Global Address Mapping

                          MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                39
Chapter 1 Device Overview MC9S12XD-Family

    Table 1-2. Device Internal Resources (see Figure 1-3)

        Device  RAMSIZE/                   EEPROMSIZE/   FLASHSIZE/
    9S12XDP512  RAM_LOW                    EEPROM_LOW    FLASH_LOW
    9S12XDT512
     9S12XA512       32K                           4K         512K
    9S12XDG128  0x0F_8000                     0x13_F000   0x78_0000
    3S12XDG128
     9S12XD128       20K                           4K         512K
                0x0F_B000                     0x13_F000   0x78_0000
      9S12XD64
     9S12XB128       32K                           4K         512K
     9S12XA128  0x0F_8000                     0x13_F000   0x78_0000

                     12K                           2K         128K
                0x0F_D000                     0x13_F800     7E_0000

                     12K                           2K         128K
                0x0F_D000                     0x13_F800     7E_0000

                     8K                            2K         128K
                0x0F_E000                     0x13_F800     7E_0000

                     4K                            1K          64K
                0x0F_F000                     0x13_FC00     7F_0000

                     6K                            1K         128K
                0x0F_E800                     0x13_FC00     7E_0000

                     12K                           2K         128K
                0x0F_D000                     0x13_F800     7E_0000

                MC9S12XDP512 Data Sheet, Rev. 2.17

40                                                         Freescale Semiconductor
CPU and BDM                                                Chapter 1 Device Overview MC9S12XD-Family
Local Memory Map
                                                      Global Memory Map
                                       0x00_0000 2K REGISTERS                                  CS3
                                       0x00_07FF

                                                            Unimplemented
                                                                   RAM

                                       RAM_LOW

0x0000 2K REGISTERS                                                 RAM            RAMSIZE

0x0800 1K EEPROM window         EPAGE  0x0F_FFFF
                                RPAGE
0x0C00  1K EEPROM
                                PPAGE
0x1000  4K RAM window                                               Unimplemented              CS2
0x2000                                                                  EEPROM

        8K RAM                         EEPROM_LOW                                  EEPROMSIZE
                                            0x13_FFFF
0x4000                                                              EEPROM

         Unpaged                                                                               CS2
        16K FLASH

                                       0x1F_FFFF                    External
                                                                     Space
0x8000
              16K FLASH window                                                                 CS1

                                       0x3F_FFFF

0xC000                                                              Unimplemented              CS0
0xFFFF                                                                   FLASH

          Unpaged                      0x78_0000
         16K FLASH

        Reset Vectors

                                                                    FLASH0

                                       FLASH0_LOW                   Unimplemented  FLASHSIZE
                                       FLASH1_HIGH                       FLASH             CS0

                                                                    FLASH1

                                       0x7F_FFFF

                         Figure 1-4. S12X CPU & BDM Global Address Mapping

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                             41
Chapter 1 Device Overview MC9S12XD-Family

                Table 1-3. Device Internal Resources (see Figure 1-4)

        Device  RAMSIZE/                   EEPROMSIZE/   FLASHSIZE0/   FLASHSIZE1/
    9S12XDT384  RAM_LOW                    EEPROM_LOW    FLASH_LOW     FLASH_HIGH
    9S12XDQ256
    9S12XDT256       20K                           4K          128K          256K
     9S12XD256  0x0F_B000                     0x13_F000   0x79_FFFF     0x7C_0000
     9S12XA256
     9S12XB256       16K                           4K          128K          128K
                0x0F_C000                     0x13_F000   0x79_FFFF      0x7E_0000

                     16K                           4K
                0x0F_C000                     0x13_F000

                     14K                           4K
                0x0F_C800                     0x13_F000

                     16K                           4K
                0x0F_C000                     0x13_F000

                     10K                           2K
                0x0F_D800                     0x13_F800

                MC9S12XDP512 Data Sheet, Rev. 2.17

42                                                                     Freescale Semiconductor
                              Chapter 1 Device Overview MC9S12XD-Family

XGATE                         Figure 1-5. GATE Global Address Mapping
Local Memory Map                                                                          Global Memory Map

                              0x00_0000                           Registers
                              0x00_07FF

0x0000  Registers             XGRAM_LOW                                                                      XGRAMSIZE
0x0800                          0x0F_FFFF                                                                            RAMSIZE

                                                                  RAM

        FLASH

                         RAM       0x78_0800                      FLASH
0xFFFF                        XGFLASH_HIGH
                                                                                                             FLASHSIZE

                              0x7F_FFFF

                              MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                                 43
Chapter 1 Device Overview MC9S12XD-Family

    Table 1-4. XGATE Resources (see Figure 1-5)

    Device                                 XGRANMSIZE  XGFLASHSIZE1
                                           XGRAM_LOW   XGFLASH_HIGH

    9S12XDP512                                 32K
                                           0x0F_8000

    9S12XDT512                                  20K
                                           0x0F_B000

    9S12XDT384                                  20K
                                           0x0F_B000

     9S12XA512                                  32K         30K
    9S12XDQ256                             0x0F_8000   0x78_7FFF

                                                16K
                                           0x0F_C000

    9S12XD256                                   16K
                                           0x0F_C000

    9S12XB256                                   10K
                                           0x0F_D800

    9S12XA256                                   16K
                                           0x0F_C000

    1 Available Flah Memory 30K on all listed parts

    MC9S12XDP512 Data Sheet, Rev. 2.17

44                                                                   Freescale Semiconductor
                              Chapter 1 Device Overview MC9S12XD-Family

XGATE                         Figure 1-6. XGATE Global Address Mapping
Local Memory Map                                                                           Global Memory Map

                              0x00_0000                           Registers
                              0x00_07FF

0x0000  Registers             XGRAM_LOW                                                                       XGRAMSIZE
0x0800                          0x0F_FFFF                                                                             RAMSIZE

                                                                  RAM

                         RAM

0xFFFF

                              0x7F_FFFF

                              MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                       45
Chapter 1 Device Overview MC9S12XD-Family

    Table 1-5. XGATE Resources (see Figure 1-6)

        Device                             XGRAMSIZE  XGRAM_LOW
    9S12XDG128                                   12K    0x0F_D000
    3S12XDG128                                   12K    0x0F_D000
     9S12XD128                                    8K    0x0F_E000
                                                  4K    0x0F_F000
      9S12XD64                                    6K    0x0F_E800
     9S12XB128                                   12K    0x0F_D000
     9S12XA128

    MC9S12XDP512 Data Sheet, Rev. 2.17

46                                                                 Freescale Semiconductor
                                            Chapter 1 Device Overview MC9S12XD-Family

1.1.5 Part ID Assignments & Maskset Numbers

The part ID is located in two 8-bit registers PARTIDH and PARTIDL (addresses 0x001A and 0x001B).
The read-only value is a unique part ID for each revision of the chip. Table 1-6 shows the assigned part ID
number and Mask Set number.

                              Table 1-6. Part Names, Masksets and Assigned Part ID Numbers

Part Names               Mask Set Number                                Part ID1

MC9S12XDP512             0L15Y/1L15Y                         0xC410/0xC411

MC9S12XDT512             0L15Y/1L15Y                         0xC410/0xC411

MC9S12XA512              0L15Y/1L15Y                         0xC410/0xC411

MC9S12XDT384             0L15Y/1L15Y                         0xC410/0xC411

MC9S12XDQ256             0L15Y/1L15Y                         0xC410/0xC411
                         0M84E/1M84E                         0xC000/0xC001

MC9S12XDT256             0L15Y/1L15Y                         0xC410/0xC411
                         0M84E/1M84E                         0xC000/0xC001

MC9S12XD256              0L15Y/1L15Y                         0xC410/0xC411
                         0M84E/1M84E                         0xC000/0xC001

MC9S12XB256              0L15Y/1L15Y                         0xC410/0xC411

                         0M84E/1M84E                         0xC000/0xC001

MC9S12XA256              0L15Y/1L15Y                         0xC410/0xC411

                         0M84E/1M84E                         0xC000/0xC001

MC9S12XDG128                   0L15Y/1L15Y       0xC410/0xC411
                         0M42E/1M42E/2M42E  0xC100/0xC101/0xC102

MC9S12XD128                    0L15Y/1L15Y       0xC410/0xC411
                         0M42E/1M42E/2M42E  0xC100/0xC101/0xC102

MC9S12XA128              0L15Y/1L15Y                         0xC410/0xC411

                         0M42E/1M42E/2M42E  0xC100/0xC101/0xC102

MC9S12XB128              0L15Y/1L15Y                         0xC410/0xC411

                         0M42E/1M42E/2M42E  0xC100/0xC101/0xC102

1 The coding is as follows:
       Bit 15-12: Major family identifier
       Bit 11-8: Minor family identifier
       Bit 7-4: Major mask set revision number including FAB transfers
       Bit 3-0: Minor -- non full -- mask set revision

1.2 Signal Description

This section describes signals that connect off-chip. It includes a pinout diagram, a table of signal
properties, and detailed discussion of signals.

1.2.1 Device Pinout

The MC9S12XD family of devices offers pin-compatible packaged devices to assist with system
development and accommodate expansion of the application.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                47
Chapter 1 Device Overview MC9S12XD-Family

The S12XD, S12XA and S12XB family devices are offered in the following packages:
    144-pin LQFP package with an external bus interface (address/data bus)
    112-pin LQFP without external bus interface
    80-pin QFP without external bus interface

See Appendix E Derivative Differences for package options.

                                                        CAUTION
                  Most the I/O Pins have different functionality depending on the module
                  configuration. Not all functions are shown in the following pinouts. Please
                  refer to Table 1-7 for a complete description. For avalability of the modules
                  on different family members refer to Appendix E Derivative Differences.
                  For pinout explanations of the different parts refer to E.7 Pinout
                  explanations:

    MC9S12XDP512 Data Sheet, Rev. 2.17

48                                      Freescale Semiconductor
                                                                                                                                                                                                                                                                                                                                                                                                                                                                               Chapter 1 Device Overview MC9S12XD-Family

                         PP4/KWP4/PWM4/MISO2  PP5/KPW5/PWM5/MOSI2  PP6/KWP6/PWM6/SS2  PP7/KWP7/PWM7/SCK2  PK7/ROMCTL/EWAIT  VDDX1       VSSX1       PM0/RXCAN0         PM1/TXCAN0          PM2/RXCAN1/RXCAN0/MISO0  PM3/TXCAN1/TXCAN0/SS0  PM4/RXCAN2/RXCAN0/RXCAN4/MOSI0  PM5/TXCAN2/TXCAN0/TXCAN4/SCK0  PJ4/KWJ4/SDA1/CS0  PJ5/KWJ5/SCL1/CS2  PJ6/KWJ6/RXCAN4/SDA0/RXCAN0  PJ7/KWJ7/TXCAN4/SCL0/TXCAN0  VREGEN  PS7/SS0  PS6/SCK0  PS5/MOSI0  PS4/MISO0  PS3/TXD1  PS2/RXD1  PS1/TXD0      PS0/RXD0       PM6/RXCAN3/RXCAN4/RXD3  PM7/TXCAN3/TXCAN4/TXD3  PAD23/AN23  PAD22/AN22  PAD21/AN21  PAD20/AN20  PAD19/AN19             PAD18/AN18  VSSA     VRL

                         144                  143                  142                141                 140               139         138         137                136                 135                      134                    133                             132                            131                130                129                          128                          127     126      125       124        123        122       121       120           119            118                     117                     116         115         114         113         112                    111         110      109

SS1/PWM3/KWP3/PP3    1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            108 VRH
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  107 VDDA
SCK1/PWM2/KWP2/PP2   2                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            106 PAD17/AN17
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  105 PAD16/AN16
MOSI1/PWM1/KWP1/PP1  3                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            104 PAD15/AN15
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  103 PAD07/AN07
MISO1/PWM0/KWP0/PP0  4                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            102 PAD14/AN14
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  101 PAD06/AN06
CS1/KWJ2/PJ2         5                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            100 PAD13/AN13

ACC2/ADDR22/PK6      6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             99 PAD05/AN05
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   98 PAD12/AN12
IQSTAT3/ADDR19/PK3   7                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             97 PAD04/AN04
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   96 PAD11/AN11
IQSTAT2/ADDR18/PK2   8                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             95 PAD03/AN03
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   94 PAD10/AN10
IQSTAT1/ADDR17/PK1   9                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             93 PAD02/AN02
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   92 PAD09/AN09
IQSTAT0/ADDR16/PK0   10                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            91 PAD01/AN01
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   90 PAD08/AN08
IOC0/PT0             11                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            89 PAD00/AN00
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   88 VSS2
IOC1/PT1             12                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            87 VDD2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   86 PD7/DATA7
IOC2/PT2             13                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            85 PD6/DATA6
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   84 PD5/DATA5
IOC3/PT3             14                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            83 PD4/DATA4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   82 VDDR2
VDD1                 15                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            81 VSSR2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   80 PA7/ADDR15
VSS1                 16                                                                                                                          MC9S12XD-Family                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   79 PA6/ADDR14
                                                                                                                                                     144-Pin LQFP                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  78 PA5/ADDR13
IOC4/PT4             17                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            77 PA4/ADDR12
                                                                                                                                        Pins shown in BOLD-ITALICS are not available on the                                                                                                                                                                                                                                                                                                                                                                                                                                                                        76 PA3/ADDR11
IOC5/PT5             18                                                                                                                    112-Pin LQFP or the 80-Pin QFP package option                                                                                                                                                                                                                                                                                                                                                                                                                                                                           75 PA2/ADDR10
                                                                                                                                              Pins shown in BOLD are not available on the                                                                                                                                                                                                                                                                                                                                                                                                                                                                          74 PA1/ADDR9
IOC6/PT6             19                                                                                                                                   80-Pin QFP package option                                                                                                                                                                                                                                                                                                                                                                                                                                                                                73 PA0/ADDR8

IOC7/PT7             20

ACC1/ADDR21/PK5      21

ACC0/ADDR20/PK4      22

TXD2/KWJ1/PJ1        23

CS3/RXD2/KWJ0/PJ0    24

MODC/BKGD            25

VDDX2                26

VSSX2                27

DATA8/PC0            28

DATA9/PC1            29

DATA10/PC2           30

DATA11/PC3           31

UDS/ADDR0/PB0        32

ADDR1/PB1            33

ADDR2/PB2            34

ADDR3/PB3            35

ADDR4/PB4            36

                         37                   38                   39                 40                  41                42          43          44                 45                  46                       47                     48                              49                             50                 51                 52                           53                           54      55       56        57         58         59        60        61            62             63                      64                      65          66          67          68          69                     70          71       72

                         ADDR5/PB5            ADDR6/PB6            ADDR7/PB7          DATA12/PC4          DATA13/PC5        DATA14/PC6  DATA15/PC7  TXD5/SS2/KWH7/PH7  RXD5/SCK2/KWH6/PH6  TXD4/MOSI2/KWH5/PH5      RXD4/MISO2/KWH4/PH4    XCLKS/ECLKX2/PE7                TAGHI/MODB/PE6                 RE/TAGLO/MODA/PE5  ECLK/PE4           VSSR1                        VDDR1                        RESET   VDDPLL   XFC       VSSPLL     EXTAL      XTAL      TEST      SS1/KWH3/PH3  SCK1/KWH2/PH2  MOSI1/KWH1/PH1          MISO1/KWH0/PH0          PD0/DATA0   PD1/DATA1   PD2/DATA2   PD3/DATA3   LDS/LSTRB/PE3/EROMCTL  WE/R/W/PE2  IRQ/PE1  XIRQ/PE0

                     Figure 1-7. MC9S12XD Family Pin Assignment 144-Pin LQFP Package

                                                                                                                                                    MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           49
Chapter 1 Device Overview MC9S12XD-Family

       SS1/PWM3/KWP3/PP3 1        112 PP4/KWP4/PWM4/MISO2                                                                                              84 VRH
     SCK1/PWM2/KWP2/PP2 2            111 PP5/KPW5/PWM5/MOSI2                                                                                           83 VDDA
    MOSI1/PWM1/KWP1/PP1 3                110 PP6/KWP6/PWM6/SS2                                                                                         82 PAD15/AN15
    MISO1/PWM0/KWP0/PP0 4                    109 PP7/KWP7/PWM7/SCK2                                                                                    81 PAD07/AN07
                                                108 PK7                                                                                                80 PAD14/AN14
                            PK3 5                   107 VDDX                                                                                           79 PAD06/AN06
                            PK2 6                       106 VSSX                                                                                       78 PAD13/AN13
                            PK1 7                          105 PM0/RXCAN0                                                                              77 PAD05/AN05
                            PK0 8                              104 PM1/TXCAN0                                                                          76 PAD12/AN12
                     IOC0/PT0 9                                    103 PM2/RXCAN1/RXCAN0/MISO0                                                         75 PAD04/AN04
                     IOC1/PT1 10                                       102 PM3/TXCAN1/TXCAN0/SS0                                                       74 PAD11/AN11
                     IOC2/PT2 11                                          101 PM4/RXCAN2/RXCAN0/RXCAN4/MOS                                             73 PAD03/AN03
                     IOC3/PT3 12                                              100 PM5/TXCAN2/TXCAN0/TXCAN4/SCK0                                        72 PAD10/AN10
                          VDD1 13                                                 99 PJ6/KWJ6/RXCAN4/SDA0/RXCAN0                                       71 PAD02/AN02
                          VSS1 14                                                    98 PJ7/KWJ7/TXCAN4/SCL0/TXCAN0                                    70 PAD09/AN09
                     IOC4/PT4 15                                                         97 VREGEN                                                     69 PAD01/AN01
                     IOC5/PT5 16                                                             96 PS7/SS0                                                68 PAD08/AN08
                     IOC6/PT6 17                                                                 95 PS6/SCK0                                           67 PAD00/AN00
                     IOC7/PT7 18                                                                    94 PS5/MOSI0                                       66 VSS2
                            PK5 19                                                                      93 PS4/MISO0                                   65 VDD2
                            PK4 20                                                                          92 PS3/TXD1                                64 PA7
             TXD2/KWJ1/PJ1 21                                                                                  91 PS2/RXD1                             63 PA6
             RXD2/KWJ0/PJ0 22                                                                                      90 PS1/TXD0                         62 PA5
                 MODC/BKGD 23                                                                                          89 PS0/RXD0                     61 PA4
                            PB0 24                                                                                         88 PM6/RXCAN3/RXCAN4/RXD3   60 PA3
                            PB1 25                                                                                            87 PM7/TXCAN3/TXCAN4/TXD359 PA2
                            PB2 26                                                                                                86 VSSA              58 PA1
                            PB3 27                                                                                                    85 VRL           57 PA0
                            PB4 28
                                                 MC9S12XD-Family
                                                    112-Pin LQFP

                                           Pins shown in BOLD are not available on the
                                                      80-Pin QFP package option

                                  PB5 29
                                     PB6 30
                                         PB7 31
                                             TXD5/SS2/KWH7/PH7 32
                                                RXD5/SCK2/KWH6/PH6 33
                                                    TXD4/MOSI2/KWH5/PH5 34
                                                        RXD4/MISO2/KWH4/PH4 35
                                                           XCLKS/PE7 36
                                                               PE6 37
                                                                   PE5 38
                                                                       ECLK/PE4 39
                                                                          VSSR1 40
                                                                              VDDR1 41
                                                                                  RESET 42
                                                                                     VDDPLL 43
                                                                                         XFC 44
                                                                                             VSSPLL 45
                                                                                                 EXTAL 46
                                                                                                    XTAL 47
                                                                                                        TEST 48
                                                                                                            SS1/KWH3/PH3 49
                                                                                                               SCK1/KWH2/PH2 50
                                                                                                                   MOSI1/KWH1/PH1 51
                                                                                                                       MISO1/KWH0/PH0 52
                                                                                                                           PE3 53
                                                                                                                              PE2 54
                                                                                                                                  IRQ/PE1 55
                                                                                                                                      XIRQ/PE0 56

    Figure 1-8. MC9S12XD Family Pin Assignments 112-Pin LQFP Package

                                    MC9S12XDP512 Data Sheet, Rev. 2.17

50                                                                                      Freescale Semiconductor
                                Chapter 1 Device Overview MC9S12XD-Family

                         80 PP4/KWP4/PWM4/MISO2                                                             60 VRH
                            79 PP5/KWP5/PWM5/MOSI2                                                          59 VDDA
                                78 PP7/KWP7/PWM7/SCK2                                                       58 PAD07/AN07
                                    77 VDDX                                                                 57 PAD06/AN06
                                       76 VSSX                                                              56 PAD05/AN05
                                           75 PM0/RXCAN0                                                    55 PAD04/AN04
                                               74 PM1/TXCAN0                                                54 PAD03/AN03
                                                  73 PM2/RXCAN1/RXCAN0/MISO0                                53 PAD02/AN02
                                                      72 PM3/TXCAN1/TXCAN0/SS0                              52 PAD01/AN01
                                                          71 PM4/RXCAN2/RXCAN0/RXCAN4/MOSI0                 51 PAD00/AN00
                                                              70 PM5/TXCAN2/TXCAN0/TXCAN4/SCK0              50 VSS2
                                                                 69 PJ6/KWJ6/RXCAN4/SDA0/RXCAN0             49 VDD2
                                                                     68 PJ7/KWJ7/TXCAN4/SCL0/TXCAN0         48 PA7
                                                                         67 VREGEN                          47 PA6
                                                                            66 PS3/TXD1                     46 PA5
                                                                                65 PS2/RXD1                 45 PA4
                                                                                    64 PS1/TXD0             44 PA3
                                                                                        63 PS0/RXD0         43 PA2
                                                                                           62 VSSA          42 PA1
                                                                                               61 VRL       41 PA0
   SS1/PWM3/KWP3/PP3 1
SCK1/PWM2/KWP2/PP2 2           MC9S12XD-Family
MOSI1/PWM1/KWP1/PP1 3                80-Pin QFP
MISO1/PWM0/KWP0/PP0 4

                 IOC0/PT0 5
                 IOC1/PT1 6
                 IOC2/PT2 7
                 IOC3/PT3 8

                      VDD1 9
                      VSS1 10
                 IOC4/PT4 11
                 IOC5/PT5 12
                 IOC6/PT6 13
                 IOC7/PT7 14
             MODC/BKGD 15

                        PB0 16
                        PB1 17
                        PB2 18
                        PB3 19
                        PB4 20

                         PB5 21
                            PB6 22
                                PB7 23
                                    XCLKS/PE7 24
                                       PE6 25
                                           PE5 26
                                               ECLK/PE4 27
                                                  VSSR1 28
                                                      VDDR1 29
                                                          RESET 30
                                                              VDDPLL 31
                                                                 XFC 32
                                                                     VSSPLL 33
                                                                         EXTAL 34
                                                                            XTAL 35
                                                                                TEST 36
                                                                                    PE3 37
                                                                                        PE2 38
                                                                                           IRQ/PE1 39
                                                                                               XIRQ/PE0 40

Figure 1-9. MC9S12XD Family Pin Assignments 80-Pin QFP Package

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                                    51
Chapter 1 Device Overview MC9S12XD-Family

1.2.2 Signal Properties Summary

Table 1-7 summarizes the pin functionality of the MC9S12XDP512. For available modules on other parts
of the S12XD, S12XB and S12XA family please refer to Appendix E Derivative Differences.

                         Table 1-7. Signal Properties Summary (Sheet 1 of 4)

     Pin          Pin         Pin         Pin         Pin    Power   Internal Pull
   Name         Name        Name        Name        Name     Supply    Resistor
Function 1   Function 2  Function 3  Function 4  Function 5
                                                                                             Description

                                                                     CTRL    Reset
                                                                             State

    EXTAL    --          --          --          --          VDDPLL  NA      NA Oscillator pins

    XTAL     --          --          --          --          VDDPLL  NA      NA

    RESET    --          --          --          --          VDDR    PULLUP         External reset

    TEST     --          --          --          --          N.A. RESET pin DOWN Test input

VREGEN       --          --          --          --          VDDX    PUCR    Up Voltage regulator enable

                                                                                    Input

    XFC      --          --          --          --          VDDPLL  NA      NA PLL loop filter

    BKGD     MODC        --          --          --          VDDX Always on  Up Background debug

PAD[23:08] AN[23:8]      --          --          --          VDDA    PER0/ Disabled Port AD I/O, Port AD inputs

                                                                     PER1           of ATD1 and

                                                                                    analog inputs of ATD1

PAD[07:00] AN[7:0]       --          --          --          VDDA    PER1 Disabled Port AD I/O, Port AD inputs

                                                                                    of ATD0 and

                                                                                    analog inputs of ATD0

    PA[7:0]  --          --          --          --          VDDR    PUCR Disabled Port A I/O

    PB[7:0]  --          --          --          --          VDDR    PUCR Disabled Port BI/O

    PA[7:0] ADDR[15:8] IVD[15:8]     --          --          VDDR    PUCR Disabled Port A I/O, address bus,

                                                                                    internal visibility data

    PB[7:1] ADDR[7:1] IVD[7:0]       --          --          VDDR    PUCR Disabled Port B I/O, address bus,

                                                                                    internal visibility data

    PB0      ADDR0       UDS                                 VDDR    PUCR    Disabled Port B I/O, address bus,
                                                                                          upper data strobe

    PC[7:0] DATA[15:8]   --          --          --          VDDR    PUCR Disabled Port C I/O, data bus

    PD[7:0] DATA[7:0]    --          --          --          VDDR    PUCR Disabled Port D I/O, data bus

    PE7      ECLKX2 XCLKS            --          --          VDDR    PUCR    Up Port E I/O, system clock
                                                                                      output, clock select

    PE6      TAGHI       MODB        --          --          VDDR    While RESET    Port E I/O, tag high, mode

                                                                     pin is low: down input

    PE5      RE          MODA TAGLO              --          VDDR    While RESET    Port E I/O, read enable,

                                                                     pin is low: down mode input, tag low input

    PE4      ECLK        --          --          --          VDDR    PUCR    Up Port E I/O, bus clock output

    PE3      LSTRB       LDS EROMCTL             --          VDDR    PUCR    Up Port E I/O, low byte data
                                                                                      strobe, EROMON control

    PE2      R/W         WE          --          --          VDDR    PUCR    Up Port E I/O, read/write

    PE1      IRQ         --          --          --          VDDR    PUCR    Up Port E Input, maskable
                                                                                      interrupt

                                     MC9S12XDP512 Data Sheet, Rev. 2.17

52                                                                                  Freescale Semiconductor
                                                                     Chapter 1 Device Overview MC9S12XD-Family

                         Table 1-7. Signal Properties Summary (Sheet 2 of 4)

     Pin         Pin          Pin         Pin         Pin    Power   Internal Pull
   Name        Name         Name        Name        Name     Supply    Resistor
Function 1  Function 2   Function 3  Function 4  Function 5
                                                                                    Description

                                                                     CTRL   Reset
                                                                            State

  PE0       XIRQ         --            --            --      VDDR    PUCR   Up Port E input, non-maskable
  PH7                                TXD5            --                              interrupt
  PH6                                RXD5            --
  PH5       KWH7         SS2         TXD4            --      VDDR PERH/PPSH Disabled Port H I/O, interrupt, SS of
  PH4                                RXD4            --                                                 SPI2, TXD of SCI5
  PH3                                                --
  PH2       KWH6         SCK2          --            --      VDDR    PERH/ Disabled Port H I/O, interrupt, SCK of
  PH1                                  --            --
  PH0                                  --            --              PPSH           SPI2, RXD of SCI5
  PJ7                                  --        TXCAN0
            KWH5         MOSI2       SCL0                    VDDR    PERH/ Disabled Port H I/O, interrupt, MOSI
  PJ6                                            RXCAN0
                                     SDA0                            PPSH           of SPI2, TXD of SCI4
  PJ5                                                --
  PJ4       KWH4         MISO2        CS2            --      VDDR PERH/PPSH Disabled Port H I/O, interrupt, MISO
  PJ2                                 CS0            --                                                 of SPI2, RXD of SCI4
  PJ1                                  --            --
  PJ0       KWH3         SS1           --            --      VDDR PERH/PPSH Disabled Port H I/O, interrupt, SS of
  PK7                                 CS3            --                                                 SPI1
PK[5:4]                                --            --
  PK7       KWH2         SCK1          --            --      VDDR PERH/PPSH Disabled Port H I/O, interrupt, SCK of
PK[6:4]                                --            --                                                 SPI1
                                       --
  PK3       KWH1         MOSI1                       --      VDDR PERH/PPSH Disabled Port H I/O, interrupt, MOSI
                                       --                                                               of SPI1

            KWH0         MISO1                               VDDR PERH/PPSH Disabled Port H I/O, interrupt, MISO
                                                                                                        of SPI1

            KWJ7 TXCAN4                                      VDDX    PERJ/  Up Port J I/O, interrupt, TX of
                                                                     PPSJ            CAN4, SCL of IIC0, TX of
                                                                                     CAN0

            KWJ6 RXCAN4                                      VDDX    PERJ/  Up Port J I/O, interrupt, RX of
                                                                     PPSJ            CAN4, SDA of IIC0, RX of
                                                                                     CAN0

            KWJ5         SCL1                                VDDX    PERJ/  Up Port J I/O, interrupt, SCL of
                                                                     PPSJ            IIC1, chip select 2

            KWJ4         SDA1                                VDDX    PERJ/  Up Port J I/O, interrupt, SDA of
                                                                     PPSJ            IIC1, chip select 0

            KWJ2         CS1                                 VDDX    PERJ/  Up Port J I/O, interrupt, chip
                                                                     PPSJ            select 1

            KWJ1         TXD2                                VDDX    PERJ/  Up Port J I/O, interrupt, TXD of
                                                                     PPSJ            SCI2

            KWJ0         RXD2                                VDDX    PERJ/  Up Port J I/O, interrupt, RXD of
                                                                     PPSJ            SCI2

               --            --                              VDDX    PUCR   Up Port K I/O
               --            --                              VDDX    PUCR   Up Port K I/O
            EWAIT        ROMCTL                              VDDX    PUCR   Up Port K I/O, EWAIT input,

                                                                                     ROM on control

            ADDR         ACC[2:0]                            VDDX    PUCR   Up Port K I/O, extended
            [22:20]                                                                  addresses, access source
                                                                                     for external access

            ADDR19 IQSTAT3                                   VDDX    PUCR   Up Extended address, PIPE
                                                                                     status

                                     MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                        53
Chapter 1 Device Overview MC9S12XD-Family

                        Table 1-7. Signal Properties Summary (Sheet 3 of 4)

     Pin         Pin         Pin         Pin         Pin    Power   Internal Pull
   Name        Name        Name        Name        Name     Supply    Resistor
Function 1  Function 2  Function 3  Function 4  Function 5
                                                                                   Description

                                                                    CTRL   Reset
                                                                           State

    PK2     ADDR18 IQSTAT2          --             --       VDDX    PUCR   Up Extended address, PIPE
    PK1                                            --                               status
    PK0                                            --
    PM7     ADDR17 IQSTAT1          --             --       VDDX    PUCR   Up Extended address, PIPE
    PM6                                            --                               status
    PM5                                         SCK0
    PM4     ADDR16 IQSTAT0          --          MOSI0       VDDX    PUCR   Up Extended address, PIPE
    PM3                                          SS0                                status
    PM2                                         MISO0
    PM1     TXCAN3 TXD3 TXCAN4                     --       VDDX    PERM/ Disabled Port M I/O, TX of CAN3 and
    PM0                                            --
    PP7                                            --               PPSM           CAN4, TXD of SCI3

    PP6     RXCAN3 RXD3 RXCAN4                     --       VDDX PERM/PPSM Disabled Port M I/O RX of CAN3 and
    PP5                                            --                                                  CAN4, RXD of SCI3
    PP4                                            --
    PP3     TXCAN2 TXCAN0 TXCAN4                   --       VDDX PERM/PPSM Disabled Port M I/O CAN0, CAN2,
    PP2                                            --                                                  CAN4, SCK of SPI0
    PP1                                            --
    PP0     RXCAN2 RXCAN0 RXCAN4                   --       VDDX PERM/PPSM Disabled Port M I/O, CAN0, CAN2,
    PS7                                            --                                                  CAN4, MOSI of SPI0
    PS6                                            --
            TXCAN1 TXCAN0           --                      VDDX PERM/PPSM Disabled Port M I/O TX of CAN1,
                                                                                                       CAN0, SS of SPI0

            RXCAN1 RXCAN0           --                      VDDX PERM/PPSM Disabled Port M I/O, RX of CAN1,
                                                                                                       CAN0, MISO of SPI0

            TXCAN0                    --                    VDDX    PERM/PPSM Disabled Port M I/O, TX of CAN0
            RXCAN0                    --                    VDDX
                                    SCK2                    VDDX    PERM/PPSM Disabled Port M I/O, RX of CAN0
             KWP7
                        PWM7                                        PERP/  Disabled Port P I/O, interrupt, channel
                                                                    PPSP                7
                                                                                        of PWM, SCK of SPI2

            KWP6        PWM6         SS2                    VDDX    PERP/  Disabled Port P I/O, interrupt, channel
            KWP5        PWM5        MOSI2                           PPSP                6 of PWM, SS of SPI2
            KWP4        PWM4        MISO2
            KWP3        PWM3                                VDDX    PERP/  Disabled Port P I/O, interrupt, channel
            KWP2        PWM2         SS1                            PPSP                5 of PWM, MOSI of SPI2
            KWP1        PWM1        SCK1
            KWP0        PWM0        MOSI1                   VDDX    PERP/  Disabled Port P I/O, interrupt, channel
             SS0                    MISO1                           PPSP                4 of PWM, MISO2 of SPI2
            SCK0           --
                           --          --                   VDDX    PERP/  Disabled Port P I/O, interrupt, channel
                                       --                           PPSP                3 of PWM, SS of SPI1

                                                            VDDX    PERP/  Disabled Port P I/O, interrupt, channel
                                                                    PPSP                2 of PWM, SCK of SPI1

                                                            VDDX    PERP/  Disabled Port P I/O, interrupt, channel
                                                                    PPSP                1 of PWM, MOSI of SPI1

                                                            VDDX    PERP/  Disabled Port P I/O, interrupt, channel
                                                                    PPSP                0 of PWM, MISO2 of SPI1

                                                            VDDX    PERS/  Up Port S I/O, SS of SPI0
                                                                    PPSS

                                                            VDDX    PERS/  Up Port S I/O, SCK of SPI0
                                                                    PPSS

                                    MC9S12XDP512 Data Sheet, Rev. 2.17

54                                                                                 Freescale Semiconductor
                                                                     Chapter 1 Device Overview MC9S12XD-Family

                         Table 1-7. Signal Properties Summary (Sheet 4 of 4)

     Pin         Pin          Pin         Pin         Pin    Power   Internal Pull
   Name        Name         Name        Name        Name     Supply    Resistor
Function 1  Function 2   Function 3  Function 4  Function 5
                                                                                    Description

                                                                     CTRL   Reset
                                                                            State

PS5         MOSI0        --          --          --          VDDX    PERS/  Up Port S I/O, MOSI of SPI0
                                                                     PPSS

PS4         MISO0        --          --          --          VDDX    PERS/  Up Port S I/O, MISO of SPI0
                                                                     PPSS   Up Port S I/O, TXD of SCI1
PS3         TXD1         --          --          --          VDDX           Up Port S I/O, RXD of SCI1
                                                                     PERS/  Up Port S I/O, TXD of SCI0
PS2         RXD1         --          --          --          VDDX    PPSS   Up Port S I/O, RXD of SCI0

PS1         TXD0         --          --          --          VDDX    PERS/
                                                                     PPSS
PS0         RXD0         --          --          --          VDDX
                                                                     PERS/
                                                                     PPSS

                                                                     PERS/
                                                                     PPSS

PT[7:0] IOC[7:0]         --          --          --          VDDX    PERT/  Disabled Port T I/O, timer channels
                                                                     PPST

                                                     NOTE

            For devices assembled in 80-pin and 112-pin packages all non-bonded out
            pins should be configured as outputs after reset in order to avoid current
            drawn from floating inputs. Refer to Table 1-7 for affected pins.

1.2.3       Detailed Signal Descriptions

                                                        NOTE

               This section describes all pins which are availabe on the cover part
               MC9S12XDP512 in 144-pin LQFP package. For modules and pinout
               explanations of the different family members refer to E.7 Pinout
               explanations: and E.5 Peripheral Sets S12XD - Family and E.6 Peripheral
               Sets S12XA & S12XB - Family

1.2.3.1 EXTAL, XTAL -- Oscillator Pins

EXTAL and XTAL are the crystal driver and external clock pins. On reset all the device clocks are derived
from the EXTAL input frequency. XTAL is the crystal output.

1.2.3.2 RESET -- External Reset Pin

The RESET pin is an active low bidirectional control signal. It acts as an input to initialize the MCU to a
known start-up state, and an output when an internal MCU function causes a reset.The RESET pin has an
internal pullup device.

                                     MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                          55
Chapter 1 Device Overview MC9S12XD-Family

1.2.3.3 TEST -- Test Pin
This input only pin is reserved for test. This pin has a pulldown device.

                                                           NOTE
                  The TEST pin must be tied to VSS in all applications.

1.2.3.4 VREGEN -- Voltage Regulator Enable Pin
This input only pin enables or disables the on-chip voltage regulator. The input has a pullup device.

1.2.3.5 XFC -- PLL Loop Filter Pin

Please ask your Freescale representative for the interactive application note to compute PLL loop filter
elements. Any current leakage on this pin must be avoided.

    MCU  VDDPLL       VDDPLL
                  CS           CP
                 R0

                                                                  XFC

                                              Figure 1-10. PLL Loop Filter Connections

1.2.3.6 BKGD / MODC -- Background Debug and Mode Pin
The BKGD/MODC pin is used as a pseudo-open-drain pin for the background debug communication. It
is used as a MCU operating mode select pin during reset. The state of this pin is latched to the MODC bit
at the rising edge of RESET. The BKGD pin has a pullup device.

1.2.3.7 PAD[23:8] / AN[23:8] -- Port AD Input Pins of ATD1
PAD[23:8] are general-purpose input or output pins and analog inputs AN[23:8] of the analog-to-digital
converter ATD1.

1.2.3.8 PAD[7:0] / AN[7:0] -- Port AD Input Pins of ATD0
PAD[7:0] are general-purpose input or output pins and analog inputs AN[7:0] of the analog-to-digital
converter ATD0.

1.2.3.9 PAD[15:0] / AN[15:0] -- Port AD Input Pins of ATD1
PAD[15:0] are general-purpose input or output pins and analog inputs AN[15:0] of the analog-to-digital
converter ATD1.

    MC9S12XDP512 Data Sheet, Rev. 2.17

56                                      Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

1.2.3.10 PA[7:0] / ADDR[15:8] / IVD[15:8] -- Port A I/O Pins
PA[7:0] are general-purpose input or output pins. In MCU expanded modes of operation, these pins are
used for the external address bus. In MCU emulation modes of operation, these pins are used for external
address bus and internal visibility read data.

1.2.3.11 PB[7:1] / ADDR[7:1] / IVD[7:1] -- Port B I/O Pins
PB[7:1] are general-purpose input or output pins. In MCU expanded modes of operation, these pins are
used for the external address bus. In MCU emulation modes of operation, these pins are used for external
address bus and internal visibility read data.

1.2.3.12 PB0 / ADDR0 / UDS / IVD[0] -- Port B I/O Pin 0
PB0 is a general-purpose input or output pin. In MCU expanded modes of operation, this pin is used for
the external address bus ADDR0 or as upper data strobe signal. In MCU emulation modes of operation,
this pin is used for external address bus ADDR0 and internal visibility read data IVD0.

1.2.3.13 PB[7:0] -- Port B I/O Pins
PB[7:0] are general-purpose input or output pins.

1.2.3.14 PC[7:0] / DATA [15:8] -- Port C I/O Pins
PC[7:0] are general-purpose input or output pins. In MCU expanded modes of operation, these pins are
used for the external data bus.
The input voltage thresholds for PC[7:0] can be configured to reduced levels, to allow data from an external
3.3-V peripheral to be read by the MCU operating at 5.0 V. The input voltage thresholds for PC[7:0] are
configured to reduced levels out of reset in expanded and emulation modes. The input voltage thresholds
for PC[7:0] are configured to 5-V levels out of reset in normal modes.

1.2.3.15 PD[7:0] / DATA [7:0] -- Port D I/O Pins
PD[7:0] are general-purpose input or output pins. In MCU expanded modes of operation, these pins are
used for the external data bus.
The input voltage thresholds for PD[7:0] can be configured to reduced levels, to allow data from an
external 3.3-V peripheral to be read by the MCU operating at 5.0 V. The input voltage thresholds for
PD[7:0] are configured to reduced levels out of reset in expanded and emulation modes. The input voltage
thresholds for PC[7:0] are configured to 5-V levels out of reset in normal modes.

1.2.3.16 PE7 / ECLKX2 / XCLKS -- Port E I/O Pin 7
PE7 is a general-purpose input or output pin. The XCLKS is an input signal which controls whether a
crystal in combination with the internal loop controlled (low power) Pierce oscillator is used or whether
full swing Pierce oscillator/external clock circuitry is used.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      57
Chapter 1 Device Overview MC9S12XD-Family

The XCLKS signal selects the oscillator configuration during reset low phase while a clock quality check
is ongoing. This is the case for:

    Power on reset or low-voltage reset
    Clock monitor reset
    Any reset while in self-clock mode or full stop mode
The selected oscillator configuration is frozen with the rising edge of reset.
The pin can be configured to drive the internal system clock ECLKX2.

              EXTAL

    MCU                            C1

                             Crystal or
                         Ceramic Resonator

              XTAL

                         C2
                                     VSSPLL

    Figure 1-11. Loop Controlled Pierce Oscillator Connections (PE7 = 1)

      EXTAL         RB            C1
    MCU       RS               Crystal or
                         Ceramic Resonator
        XTAL
                                  C2
                                               VSSPLL

    Figure 1-12. Full Swing Pierce Oscillator Connections (PE7 = 0)

                 EXTAL                CMOS-Compatible
              MCU                     External Oscillator

                   XTAL  Not Connected

                                        Figure 1-13. External Clock Connections (PE7 = 0)

1.2.3.17 PE6 / MODB / TAGHI -- Port E I/O Pin 6
PE6 is a general-purpose input or output pin. It is used as a MCU operating mode select pin during reset.
The state of this pin is latched to the MODB bit at the rising edge of RESET. This pin is an input with a

              MC9S12XDP512 Data Sheet, Rev. 2.17

58                                                                   Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

pull-down device which is only active when RESET is low. TAGHI is used to tag the high half of the
instruction word being read into the instruction queue.
The input voltage threshold for PE6 can be configured to reduced levels, to allow data from an external
3.3-V peripheral to be read by the MCU operating at 5.0 V. The input voltage threshold for PE6 is
configured to reduced levels out of reset in expanded and emulation modes.

1.2.3.18 PE5 / MODA / TAGLO / RE -- Port E I/O Pin 5
PE5 is a general-purpose input or output pin. It is used as a MCU operating mode select pin during reset.
The state of this pin is latched to the MODA bit at the rising edge of RESET. This pin is shared with the
read enable RE output. This pin is an input with a pull-down device which is only active when RESET is
low. TAGLO is used to tag the low half of the instruction word being read into the instruction queue.
The input voltage threshold for PE5 can be configured to reduced levels, to allow data from an external
3.3-V peripheral to be read by the MCU operating at 5.0 V. The input voltage threshold for PE5 is
configured to reduced levels out of reset in expanded and emulation modes.

1.2.3.19 PE4 / ECLK -- Port E I/O Pin 4
PE4 is a general-purpose input or output pin. It can be configured to drive the internal bus clock ECLK.
ECLK can be used as a timing reference.

1.2.3.20 PE3 / LSTRB / LDS / EROMCTL-- Port E I/O Pin 3
PE3 is a general-purpose input or output pin. In MCU expanded modes of operation, LSTRB or LDS can
be used for the low byte strobe function to indicate the type of bus access. At the rising edge of RESET
the state of this pin is latched to the EROMON bit.

1.2.3.21 PE2 / R/W / WE-- Port E I/O Pin 2
PE2 is a general-purpose input or output pin. In MCU expanded modes of operations, this pin drives the
read/write output signal or write enable output signal for the external bus. It indicates the direction of data
on the external bus

1.2.3.22 PE[6:2] -- Port E I/O Pins
PE[6:2] are general-purpose input or output pins.

1.2.3.23 PE1 / IRQ -- Port E Input Pin 1
PE1 is a general-purpose input pin and the maskable interrupt request input that provides a means of
applying asynchronous interrupt requests. This will wake up the MCU from stop or wait mode.

1.2.3.24 PE0 / XIRQ -- Port E Input Pin 0
PE0 is a general-purpose input pin and the non-maskable interrupt request input that provides a means of
applying asynchronous interrupt requests. This will wake up the MCU from stop or wait mode.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      59
Chapter 1 Device Overview MC9S12XD-Family

1.2.3.25 PH7 / KWH7 / SS2 / TXD5 -- Port H I/O Pin 7

PH7 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as slave select pin SS of the serial peripheral
interface 2 (SPI2). It can be configured as the transmit pin TXD of serial communication interface 5
(SCI5).

1.2.3.26 PH6 / KWH6 / SCK2 / RXD5 -- Port H I/O Pin 6

PH6 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as serial clock pin SCK of the serial peripheral
interface 2 (SPI2). It can be configured as the receive pin (RXD) of serial communication interface 5
(SCI5).

1.2.3.27 PH5 / KWH5 / MOSI2 / TXD4 -- Port H I/O Pin 5

PH5 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as master output (during master mode) or slave input
pin (during slave mode) MOSI of the serial peripheral interface 2 (SPI2). It can be configured as the
transmit pin TXD of serial communication interface 4 (SCI4).

1.2.3.28 PH4 / KWH4 / MISO2 / RXD4 -- Port H I/O Pin 4

PH4 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as master input (during master mode) or slave output
(during slave mode) pin MISO of the serial peripheral interface 2 (SPI2). It can be configured as the receive
pin RXD of serial communication interface 4 (SCI4).

1.2.3.29 PH3 / KWH3 / SS1 -- Port H I/O Pin 3

PH3 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as slave select pin SS of the serial peripheral
interface 1 (SPI1).

1.2.3.30 PH2 / KWH2 / SCK1 -- Port H I/O Pin 2

PH2 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as serial clock pin SCK of the serial peripheral
interface 1 (SPI1).

1.2.3.31 PH1 / KWH1 / MOSI1 -- Port H I/O Pin 1

PH1 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as master output (during master mode) or slave input
pin (during slave mode) MOSI of the serial peripheral interface 1 (SPI1).

    MC9S12XDP512 Data Sheet, Rev. 2.17

60                                      Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

1.2.3.32 PH0 / KWH0 / MISO1 -- Port H I/O Pin 0
PH0 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured as master input (during master mode) or slave output
(during slave mode) pin MISO of the serial peripheral interface 1 (SPI1).

1.2.3.33 PJ7 / KWJ7 / TXCAN4 / SCL0 / TXCAN0-- PORT J I/O Pin 7
PJ7 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the transmit pin TXCAN for the scalable controller area
network controller 0 or 4 (CAN0 or CAN4) or as the serial clock pin SCL of the IIC0 module.

1.2.3.34 PJ6 / KWJ6 / RXCAN4 / SDA0 / RXCAN0 -- PORT J I/O Pin 6
PJ6 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the receive pin RXCAN for the scalable controller area
network controller 0 or 4 (CAN0 or CAN4) or as the serial data pin SDA of the IIC0 module.

1.2.3.35 PJ5 / KWJ5 / SCL1 / CS2 -- PORT J I/O Pin 5
PJ5 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the serial clock pin SCL of the IIC1 module. It can be
configured to provide a chip-select output.

1.2.3.36 PJ4 / KWJ4 / SDA1 / CS0 -- PORT J I/O Pin 4
PJ4 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the serial data pin SDA of the IIC1 module. It can be
configured to provide a chip-select output.

1.2.3.37 PJ2 / KWJ2 / CS1 -- PORT J I/O Pin 2
PJ2 is a general-purpose input or output pins. It can be configured to generate an interrupt causing the
MCU to exit stop or wait mode. It can be configured to provide a chip-select output.

1.2.3.38 PJ1 / KWJ1 / TXD2 -- PORT J I/O Pin 1
PJ1 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the transmit pin TXD of the serial communication
interface 2 (SCI2).

1.2.3.39 PJ0 / KWJ0 / RXD2 / CS3 -- PORT J I/O Pin 0
PJ0 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as the receive pin RXD of the serial communication interface
2 (SCI2).It can be configured to provide a chip-select output.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      61
Chapter 1 Device Overview MC9S12XD-Family

1.2.3.40 PK7 / EWAIT / ROMCTL -- Port K I/O Pin 7

PK7 is a general-purpose input or output pin. During MCU emulation modes and normal expanded modes
of operation, this pin is used to enable the Flash EEPROM memory in the memory map (ROMCTL). At
the rising edge of RESET, the state of this pin is latched to the ROMON bit. The EWAIT input signal
maintains the external bus access until the external device is ready to capture data (write) or provide data
(read).
The input voltage threshold for PK7 can be configured to reduced levels, to allow data from an external
3.3-V peripheral to be read by the MCU operating at 5.0 V. The input voltage threshold for PK7 is
configured to reduced levels out of reset in expanded and emulation modes.

1.2.3.41 PK[6:4] / ADDR[22:20] / ACC[2:0] -- Port K I/O Pin [6:4]

PK[6:4] are general-purpose input or output pins. During MCU expanded modes of operation, the
ACC[2:0] signals are used to indicate the access source of the bus cycle. This pins also provide the
expanded addresses ADDR[22:20] for the external bus. In Emulation modes ACC[2:0] is available and is
time multiplexed with the high addresses

1.2.3.42 PK[3:0] / ADDR[19:16] / IQSTAT[3:0] -- Port K I/O Pins [3:0]

PK3-PK0 are general-purpose input or output pins. In MCU expanded modes of operation, these pins
provide the expanded address ADDR[19:16] for the external bus and carry instruction pipe information.

1.2.3.43 PK7,PK[5:0] -- Port K I/O Pins 7 & [5:0]

PK7 and PK[5:0] are general-purpose input or output pins.

1.2.3.44 PM7 / TXCAN3 / TXCAN4 / TXD3 -- Port M I/O Pin 7

PM7 is a general-purpose input or output pin. It can be configured as the transmit pin TXCAN of the
scalable controller area network controller 3 or 4 (CAN3 or CAN4). PM7 can be configured as the transmit
pin TXD3 of the serial communication interface 3 (SCI3).

1.2.3.45 PM6 / RXCAN3 / RXCAN4 / RXD3 -- Port M I/O Pin 6

PM6 is a general-purpose input or output pin. It can be configured as the receive pin RXCAN of the
scalable controller area network controller 3 or 4 (CAN3 or CAN4). PM6 can be configured as the receive
pin RXD3 of the serial communication interface 3 (SCI3).

1.2.3.46 PM5 / TXCAN0 / TXCAN2 / TXCAN4 / SCK0 -- Port M I/O Pin 5

PM5 is a general-purpose input or output pin. It can be configured as the transmit pin TXCAN of the
scalable controller area network controllers 0, 2 or 4 (CAN0, CAN2, or CAN4). It can be configured as
the serial clock pin SCK of the serial peripheral interface 0 (SPI0).

    MC9S12XDP512 Data Sheet, Rev. 2.17

62                                      Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

1.2.3.47 PM4 / RXCAN0 / RXCAN2 / RXCAN4 / MOSI0 -- Port M I/O Pin 4
PM4 is a general-purpose input or output pin. It can be configured as the receive pin RXCAN of the
scalable controller area network controllers 0, 2, or 4 (CAN0, CAN2, or CAN4). It can be configured as
the master output (during master mode) or slave input pin (during slave mode) MOSI for the serial
peripheral interface 0 (SPI0).

1.2.3.48 PM3 / TXCAN1 / TXCAN0 / SS0 -- Port M I/O Pin 3
PM3 is a general-purpose input or output pin. It can be configured as the transmit pin TXCAN of the
scalable controller area network controllers 1 or 0 (CAN1 or CAN0). It can be configured as the slave
select pin SS of the serial peripheral interface 0 (SPI0).

1.2.3.49 PM2 / RXCAN1 / RXCAN0 / MISO0 -- Port M I/O Pin 2
PM2 is a general-purpose input or output pin. It can be configured as the receive pin RXCAN of the
scalable controller area network controllers 1 or 0 (CAN1 or CAN0). It can be configured as the master
input (during master mode) or slave output pin (during slave mode) MISO for the serial peripheral
interface 0 (SPI0).

1.2.3.50 PM1 / TXCAN0 -- Port M I/O Pin 1
PM1 is a general-purpose input or output pin. It can be configured as the transmit pin TXCAN of the
scalable controller area network controller 0 (CAN0).

1.2.3.51 PM0 / RXCAN0 -- Port M I/O Pin 0
PM0 is a general-purpose input or output pin. It can be configured as the receive pin RXCAN of the
scalable controller area network controller 0 (CAN0).

1.2.3.52 PP7 / KWP7 / PWM7 / SCK2 -- Port P I/O Pin 7
PP7 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 7 output. It can
be configured as serial clock pin SCK of the serial peripheral interface 2 (SPI2).

1.2.3.53 PP6 / KWP6 / PWM6 / SS2 -- Port P I/O Pin 6
PP6 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 6 output. It can
be configured as slave select pin SS of the serial peripheral interface 2 (SPI2).

1.2.3.54 PP5 / KWP5 / PWM5 / MOSI2 -- Port P I/O Pin 5
PP5 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 5 output. It can

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      63
Chapter 1 Device Overview MC9S12XD-Family

be configured as master output (during master mode) or slave input pin (during slave mode) MOSI of the
serial peripheral interface 2 (SPI2).

1.2.3.55 PP4 / KWP4 / PWM4 / MISO2 -- Port P I/O Pin 4
PP4 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 4 output. It can
be configured as master input (during master mode) or slave output (during slave mode) pin MISO of the
serial peripheral interface 2 (SPI2).

1.2.3.56 PP3 / KWP3 / PWM3 / SS1 -- Port P I/O Pin 3
PP3 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 3 output. It can
be configured as slave select pin SS of the serial peripheral interface 1 (SPI1).

1.2.3.57 PP2 / KWP2 / PWM2 / SCK1 -- Port P I/O Pin 2
PP2 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 2 output. It can
be configured as serial clock pin SCK of the serial peripheral interface 1 (SPI1).

1.2.3.58 PP1 / KWP1 / PWM1 / MOSI1 -- Port P I/O Pin 1
PP1 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 1 output. It can
be configured as master output (during master mode) or slave input pin (during slave mode) MOSI of the
serial peripheral interface 1 (SPI1).

1.2.3.59 PP0 / KWP0 / PWM0 / MISO1 -- Port P I/O Pin 0
PP0 is a general-purpose input or output pin. It can be configured to generate an interrupt causing the MCU
to exit stop or wait mode. It can be configured as pulse width modulator (PWM) channel 0 output. It can
be configured as master input (during master mode) or slave output (during slave mode) pin MISO of the
serial peripheral interface 1 (SPI1).

1.2.3.60 PS7 / SS0 -- Port S I/O Pin 7
PS7 is a general-purpose input or output pin. It can be configured as the slave select pin SS of the serial
peripheral interface 0 (SPI0).

1.2.3.61 PS6 / SCK0 -- Port S I/O Pin 6
PS6 is a general-purpose input or output pin. It can be configured as the serial clock pin SCK of the serial
peripheral interface 0 (SPI0).

    MC9S12XDP512 Data Sheet, Rev. 2.17

64                                      Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

1.2.3.62 PS5 / MOSI0 -- Port S I/O Pin 5
PS5 is a general-purpose input or output pin. It can be configured as master output (during master mode)
or slave input pin (during slave mode) MOSI of the serial peripheral interface 0 (SPI0).

1.2.3.63 PS4 / MISO0 -- Port S I/O Pin 4
PS4 is a general-purpose input or output pin. It can be configured as master input (during master mode) or
slave output pin (during slave mode) MOSI of the serial peripheral interface 0 (SPI0).

1.2.3.64 PS3 / TXD1 -- Port S I/O Pin 3
PS3 is a general-purpose input or output pin. It can be configured as the transmit pin TXD of serial
communication interface 1 (SCI1).

1.2.3.65 PS2 / RXD1 -- Port S I/O Pin 2
PS2 is a general-purpose input or output pin. It can be configured as the receive pin RXD of serial
communication interface 1 (SCI1).

1.2.3.66 PS1 / TXD0 -- Port S I/O Pin 1
PS1 is a general-purpose input or output pin. It can be configured as the transmit pin TXD of serial
communication interface 0 (SCI0).

1.2.3.67 PS0 / RXD0 -- Port S I/O Pin 0
PS0 is a general-purpose input or output pin. It can be configured as the receive pin RXD of serial
communication interface 0 (SCI0).

1.2.3.68 PT[7:0] / IOC[7:0] -- Port T I/O Pins [7:0]
PT[7:0] are general-purpose input or output pins. They can be configured as input capture or output
compare pins IOC[7:0] of the enhanced capture timer (ECT).

1.2.4 Power Supply Pins

MC9S12XDP512 power and ground pins are described below.
                                                           NOTE

                  All VSS pins must be connected together in the application.

1.2.4.1 VDDX1, VDDX2, VSSX1,VSSX2 -- Power and Ground Pins for I/O Drivers
External power and ground for I/O drivers. Because fast signal transitions place high, short-duration
current demands on the power supply, use bypass capacitors with high-frequency characteristics and place
them as close to the MCU as possible. Bypass requirements depend on how heavily the MCU pins are
loaded.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      65
Chapter 1 Device Overview MC9S12XD-Family

1.2.4.2  VDDR1, VDDR2, VSSR1, VSSR2 -- Power and Ground Pins for I/O Drivers
         and for Internal Voltage Regulator

External power and ground for I/O drivers and input to the internal voltage regulator. Because fast signal
transitions place high, short-duration current demands on the power supply, use bypass capacitors with
high-frequency characteristics and place them as close to the MCU as possible. Bypass requirements
depend on how heavily the MCU pins are loaded.

1.2.4.3 VDD1, VDD2, VSS1, VSS2 -- Core Power Pins

Power is supplied to the MCU through VDD and VSS. Because fast signal transitions place high,
short-duration current demands on the power supply, use bypass capacitors with high-frequency
characteristics and place them as close to the MCU as possible. This 2.5-V supply is derived from the
internal voltage regulator. There is no static load on those pins allowed. The internal voltage regulator is
turned off, if VREGEN is tied to ground.

                                                           NOTE

                  No load allowed except for bypass capacitors.

1.2.4.4 VDDA, VSSA -- Power Supply Pins for ATD and VREG

VDDA, VSSA are the power supply and ground input pins for the voltage regulator and the analog-to-digital
converters.

1.2.4.5 VRH, VRL -- ATD Reference Voltage Input Pins
VRH and VRL are the reference voltage input pins for the analog-to-digital converter.

1.2.4.6 VDDPLL, VSSPLL -- Power Supply Pins for PLL
Provides operating voltage and ground for the oscillator and the phased-locked loop. This allows the
supply voltage to the oscillator and PLL to be bypassed independently. This 2.5-V voltage is generated by
the internal voltage regulator.

                                                           NOTE
                  No load allowed except for bypass capacitors.

         MC9S12XDP512 Data Sheet, Rev. 2.17

66                                           Freescale Semiconductor
                                                      Chapter 1 Device Overview MC9S12XD-Family

           Table 1-8. MC9S12XD Family Power and Ground Connection Summary

Mnemonic   144-Pin       Pin Number  80-Pin  Nominal             Description
            LQFP                      QFP    Voltage
  VDD1, 2                   112-Pin
  VSS1, 2   15, 87           LQFP     9, 49  2.5 V    Internal power and ground generated by
   VDDR1    16, 88           13, 65  10, 50   0V      internal regulator
   VSSR1                     14, 66
   VDDX1      53                       29    5.0 V    External power and ground, supply to pin
   VSSX1      52               41      28     0V      drivers and internal voltage regulator
   VDDX2     139               40      77    5.0 V
   VSSX2     138              107      76     0V      External power and ground, supply to pin
   VDDR2      26              106     N.A.   5.0 V    drivers
   VSSR2      27              N.A.    N.A.    0V
   VDDA       82              N.A.    N.A.   5.0 V    External power and ground, supply to pin
    VSSA      81              N.A.    N.A.    0V      drivers
             107              N.A.     59    5.0 V
    VRL      110               83      62     0V      External power and ground, supply to pin
    VRH                        86                     drivers
  VDDPLL                                      0V
  VSSPLL   109           85          61      5.0 V    Operating voltage and ground for the
                                             2.5 V    analog-to-digital converters and the
           108           84          60       0V      reference for the internal voltage regulator,
                                                      allows the supply voltage to the A/D to be
           55            43          31               bypassed independently.

           57            45          33               Reference voltages for the analog-to-digital
                                                      converter.

                                                      Provides operating voltage and ground for
                                                      the phased-locked loop. This allows the
                                                      supply voltage to the PLL to be bypassed
                                                      independently. Internal power and ground
                                                      generated by internal regulator.

                             MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                       67
Chapter 1 Device Overview MC9S12XD-Family

1.3 System Clock Description

The clock and reset generator module (CRG) provides the internal clock signals for the core and all
peripheral modules. Figure 1-12 shows the clock connections from the CRG to all modules.
See 79Chapterf or details on clock generation.

    SCI Modules                SPI Modules  CAN Modules                               IIC Modules  ATD Modules

                    Bus Clock                                                                              PIT
    EXTAL                                                                                                  ECT

          CRG                                                       Oscillator Clock                       PIM
                                            Core Clock
    XTAL

          RAM                  S12X         XGATE                                     FLASH        EEPROM

                                        Figure 1-14. MC9S12XD Family Clock Connections

The MCU's system clock can be supplied in several ways enabling a range of system operating frequencies
to be supported:

    The on-chip phase locked loop (PLL)
    the PLL self clocking
    the oscillator

The clock generated by the PLL or oscillator provides the main system clock frequencies core clock and
bus clock. As shown in Figure 1-12, this system clocks are used throughout the MCU to drive the core, the
memories, and the peripherals.

The program Flash memory and the EEPROM are supplied by the bus clock and the oscillator clock.The
oscillator clock is used as a time base to derive the program and erase times for the NVM's. See the Flash
and EEPROM section for more details on the operation of the NVM's.

                               MC9S12XDP512 Data Sheet, Rev. 2.17

68                                                                                                 Freescale Semiconductor
                                                                                                                            Chapter 1 Device Overview MC9S12XD-Family

The CAN modules may be configured to have their clock sources derived either from the bus clock or
directly from the oscillator clock. This allows the user to select its clock based on the required jitter
performance. Consult MSCAN block description for more details on the operation and configuration of
the CAN blocks.

In order to ensure the presence of the clock the MCU includes an on-chip clock monitor connected to the
output of the oscillator. The clock monitor can be configured to invoke the PLL self-clocking mode or to
generate a system reset if it is allowed to time out as a result of no oscillator clock being present.

In addition to the clock monitor, the MCU also provides a clock quality checker which performs a more
accurate check of the clock. The clock quality checker counts a predetermined number of clock edges
within a defined time window to insure that the clock is running. The checker can be invoked following
specific events such as on wake-up or clock monitor failure.

1.4 Chip Configuration Summary

                                                        CAUTION
                  Emulation single chip mode, Normal expanded mode, Emulation expanded
                  mode and ROMCTL/EROMCTL functionality is only available on parts
                  with external bus interface in 144 LQFP package. see Appendix E
                  Derivative Differences.

The MCU can operate in six different modes. The different modes, the state of ROMCTL and EROMCTL
signal on rising edge of RESET, and the security state of the MCU affects the following device
characteristics:

    External bus interface configuration
    Flash in memory map, or not
    Debug features enabled or disabled

The operating mode out of reset is determined by the states of the MODC, MODB, and MODA signals
during reset (see Table 1-9). The MODC, MODB, and MODA bits in the MODE register show the current
operating mode and provide limited mode switching during operation. The states of the MODC, MODB,
and MODA signals are latched into these bits on the rising edge of RESET.

In normal expanded mode and in emulation modes the ROMON bit and the EROMON bit in the
MMCCTL1 register defines if the on chip flash memory is the memory map, or not. (See Table 1-9.) For
a detailed description of the ROMON and EROMON bits refer to the S12X_MMC section.

The state of the ROMCTL signal is latched into the ROMON bit in the MMCCTL1 register on the rising
edge of RESET. The state of the EROMCTL signal is latched into the EROMON bit in the MISC register
on the rising edge of RESET.

The MCU can operate in two different modes. The operating mode out of reset is determined by the state
of the MODC signal during reset. The MODC bit in the MODE register shows the current operating mode
and provide limited mode switching during operation. The state of the MODC signal is latched into this
bit on the rising edge of RESET.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      69
Chapter 1 Device Overview MC9S12XD-Family

                                  Table 1-9. Chip Modes and Data Sources

    Chip Modes            BKGD =           PE6 =  PE5 =    PK7 =                 PE3 =            Data Source1
                           MODC            MODB   MODA   ROMCTL               EROMCTL

Normal single chip             1           0      0      X                    X                   Internal

Special single chip            0           0      0

Emulation single chip          0           0      1      X                    0                   Emulation memory

                                                         X                    1                   Internal Flash

Normal expanded                1           0      1      0                    X                   External application

                                                         1                    X                   Internal Flash

Emulation expanded             0           1      1      0                    X                   External application

                                                         1                    0                   Emulation memory

                                                         1                    1                   Internal Flash

Special test                   0           1      0      0                    X                   External application

                                                         1                    X                   Internal Flash

1 Internal means resources inside the MCU are read/written.
   Internal Flash means Flash resources inside the MCU are read/written.
   Emulation memory means resources inside the emulator are read/written (PRU registers, Flash replacement, RAM, EEPROM,
   and register space are always considered internal).
   External application means resources residing outside the MCU are read/written.

The configuration of the oscillator can be selected using the XCLKS signal (see Table 1-10). For a detailed
description please refer to the S12CRG section.

                                              Table 1-10. Clock Selection Based on PE7

                     PE7 = XCLKS                         Description

                       0          Full swing Pierce oscillator or external clock source selected

                       1          Loop controlled Pierce oscillator selected

The logic level on the voltage regulator enable pin VREGEN determines whether the on-chip voltage
regulator is enabled or disabled (see Table 1-11).

                                                Table 1-11. Voltage Regulator VREGEN

                       VREGEN                                           Description
                           1
                           0      Internal voltage regulator enabled
                                  Internal voltage regulator disabled, VDD1,2 and VDDPLL must be
                                  supplied externally

                                  MC9S12XDP512 Data Sheet, Rev. 2.17

70                                                                                                Freescale Semiconductor
                         Chapter 1 Device Overview MC9S12XD-Family

1.5 Modes of Operation

1.5.1 User Modes

1.5.1.1 Normal Expanded Mode
Ports K, A, and B are configured as a 23-bit address bus, ports C and D are configured as a 16-bit data bus,
and port E provides bus control and status signals. This mode allows 16-bit external memory and
peripheral devices to be interfaced to the system. The fastest external bus rate is divide by 2 from the
internal bus rate.

1.5.1.2 Normal Single-Chip Mode
There is no external bus in this mode. The processor program is executed from internal memory. Ports A,
B,C,D, K, and most pins of port E are available as general-purpose I/O.

1.5.1.3 Special Single-Chip Mode
This mode is used for debugging single-chip operation, boot-strapping, or security related operations. The
background debug module BDM is active in this mode. The CPU executes a monitor program located in
an on-chip ROM. BDM firmware is waiting for additional serial commands through the BKGD pin. There
is no external bus after reset in this mode.

1.5.1.4 Emulation of Expanded Mode
Developers use this mode for emulation systems in which the users target application is normal expanded
mode. Code is executed from external memory or from internal memory depending on the state of
ROMON and EROMON bit. In this mode the internal operation is visible on external bus interface.

1.5.1.5 Emulation of Single-Chip Mode
Developers use this mode for emulation systems in which the user's target application is normal
single-chip mode. Code is executed from external memory or from internal memory depending on the state
of ROMON and EROMON bit. In this mode the internal operation is visible on external bus interface.

1.5.1.6 Special Test Mode
Freescale internal use only.

1.5.2 Low-Power Modes

The microcontroller features two main low-power modes. Consult the respective sections for information
on the module behavior in system stop, system pseudo stop, and system wait mode. An important source
of information about the clock system is the Clock and Reset Generator S12CRG section.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      71
Chapter 1 Device Overview MC9S12XD-Family

1.5.2.1 System Stop Modes

The system stop modes are entered if the CPU executes the STOP instruction and the XGATE doesn't
execute a thread and the XGFACT bit in the XGMCTL register is cleared. Depending on the state of the
PSTP bit in the CLKSEL register the MCU goes into pseudo stop mode or full stop mode. Please refer to
CRG section. Asserting RESET, XIRQ, IRQ or any other interrupt ends the system stop modes.

1.5.2.2 Pseudo Stop Mode

In this mode the clocks are stopped but the oscillator is still running and the real time interrupt (RTI) or
watchdog (COP) submodule can stay active. Other peripherals are turned off. This mode consumes more
current than the system stop mode, but the wake up time from this mode is significantly shorter.

1.5.2.3 Full Stop Mode

The oscillator is stopped in this mode. All clocks are switched off. All counters and dividers remain frozen.

1.5.2.4 System Wait Mode

This mode is entered when the CPU executes the WAI instruction. In this mode the CPU will not execute
instructions. The internal CPU clock is switched off. All peripherals and the XGATE can be active in
system wait mode. For further power consumption the peripherals can individually turn off their local
clocks. Asserting RESET, XIRQ, IRQ or any other interrupt that has not been masked ends system wait
mode.

1.5.3 Freeze Mode

The enhanced capture timer, pulse width modulator, analog-to-digital converters, the periodic interrupt
timer and the XGATE module provide a software programmable option to freeze the module status during
the background debug module is active. This is useful when debugging application software. For detailed
description of the behavior of the ATD0, ATD1, ECT, PWM, XGATE and PIT when the background debug
module is active consult the corresponding sections..

1.6 Resets and Interrupts

Consult the S12XCPU Block Guide for information on exception processing.

1.6.1 Vectors

Table 1-12 lists all interrupt sources and vectors in the default order of priority. The interrupt module
(S12XINT) provides an interrupt vector base register (IVBR) to relocate the vectors. Associated with each
I-bit maskable service request is a configuration register. It selects if the service request is enabled, the
service request priority level and whether the service request is handled either by the S12X CPU or by the
XGATE module.

    MC9S12XDP512 Data Sheet, Rev. 2.17

72                                      Freescale Semiconductor
                                                                      Chapter 1 Device Overview MC9S12XD-Family

                         Table 1-12. Interrupt Vector Locations (Sheet 1 of 3)

Vector Address1       XGATE                 Interrupt Source          CCR              Local Enable
                   Channel ID2                                        Mask
        $FFFE                   System reset or illegal access reset                        None
       $FFFC              --              Clock monitor reset         None      PLLCTL (CME, SCME)
        $FFFA             --             COP watchdog reset           None
Vector base + $F8         --                                          None           COP rate select
Vector base+ $F6          --      Unimplemented instruction trap      None                  None
Vector base+ $F4          --                        SWI               None                  None
Vector base+ $F2          --                        XIRQ              X Bit                 None
Vector base+ $F0          --                         IRQ               I bit
Vector base+ $EE         $78                                           I bit         IRQCR (IRQEN)
Vector base + $EC        $77               Real time interrupt         I bit         CRGINT (RTIE)
Vector base+ $EA         $76    Enhanced capture timer channel 0       I bit
Vector base+ $E8         $75    Enhanced capture timer channel 1       I bit              TIE (C0I)
Vector base+ $E6         $74    Enhanced capture timer channel 2       I bit              TIE (C1I)
Vector base+ $E4         $73    Enhanced capture timer channel 3       I bit              TIE (C2I)
Vector base + $E2        $72    Enhanced capture timer channel 4       I bit              TIE (C3I)
Vector base+ $E0         $71    Enhanced capture timer channel 5       I bit              TIE (C4I)
Vector base+ $DE         $70    Enhanced capture timer channel 6       I bit              TIE (C5I)
Vector base+ $DC        $6F     Enhanced capture timer channel 7       I bit              TIE (C6I)
Vector base + $DA       $6E      Enhanced capture timer overflow       I bit              TIE (C7I)
Vector base + $D8       $6D                                            I bit           TSRC2 (TOF)
Vector base+ $D6        $6C        Pulse accumulator A overflow        I bit          PACTL (PAOVI)
                        $6B        Pulse accumulator input edge        I bit            PACTL (PAI)
                                                                                SPI0CR1 (SPIE, SPTIE)
                                                    SPI0                                  SCI0CR2
                                                    SCI0                         (TIE, TCIE, RIE, ILIE)
                                                                                          SCI1CR2
Vector base + $D4        $6A    SCI1                                  I bit      (TIE, TCIE, RIE, ILIE)
                                                                                   ATD0CTL2 (ASCIE)
Vector base + $D2        $69    ATD0                                  I bit
                                                                                   ATD1CTL2 (ASCIE)
Vector base + $D2                             Reserved                             PIEJ (PIEJ7-PIEJ0)
                                                                                  PIEH (PIEH7-PIEH0)
Vector base + $D0        $68    ATD1                                  I bit
                                                                                      MCCTL(MCZI)
Vector base + $CE        $67    Port J                                I bit          PBCTL(PBOVI)
                                                                                    CRGINT(LOCKIE)
Vector base + $CC        $66    Port H                                I bit         CRGINT (SCMIE)

Vector base + $CA        $65    Modulus down counter underflow        I bit            IBCR0 (IBIE)

Vector base + $C8        $64    Pulse accumulator B overflow          I bit

Vector base + $C6        $63    CRG PLL lock                          I bit

Vector base + $C4        $62    CRG self-clock mode                   I bit

Vector base + $C2                             Reserved

Vector base + $C0        $60    IIC0 bus                              I bit

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                  73
Chapter 1 Device Overview MC9S12XD-Family

                   Table 1-12. Interrupt Vector Locations (Sheet 2 of 3)

Vector Address1       XGATE                Interrupt Source                        CCR              Local Enable
                   Channel ID2                                                     Mask
Vector base + $BE                                  SPI1                             I bit    SPI1CR1 (SPIE, SPTIE)
Vector base + $BC       $5F                        SPI2                             I bit    SPI2CR1 (SPIE, SPTIE)
Vector base + $BC       $5E
Vector base + $BA                                               RESERVED            I bit     ECNFG (CCIE, CBEIE)
Vector base + $B8       $5D                     EEPROM                              I bit     FCNFG (CCIE, CBEIE)
Vector base + $B6       $5C                                                         I bit
Vector base + $B4       $5B                      FLASH                              I bit       CAN0RIER (WUPIE)
Vector base + $B2       $5A                 CAN0 wake-up                            I bit  CAN0RIER (CSCIE, OVRIE)
Vector base + $B0        $59                                                        I bit
Vector base + $AE        $58                  CAN0 errors                           I bit       CAN0RIER (RXFIE)
Vector base + $AC        $57                 CAN0 receive                           I bit    CAN0TIER (TXEIE[2:0])
Vector base + $AA        $56                CAN0 transmit                           I bit
Vector base + $A8        $55                CAN1 wake-up                            I bit       CAN1RIER (WUPIE)
Vector base + $A6        $54                  CAN1 errors                           I bit  CAN1RIER (CSCIE, OVRIE)
Vector base + $A4        $53                 CAN1 receive                           I bit
Vector base + $A2        $52                CAN1 transmit                           I bit       CAN1RIER (RXFIE)
Vector base + $A0        $51                CAN2 wake-up                            I bit    CAN1TIER (TXEIE[2:0])
Vector base + $9E        $50                  CAN2 errors                           I bit
Vector base+ $9C       $4F                  CAN2 receive                           I bit       CAN2RIER (WUPIE)
Vector base+ $9A       $4E                 CAN2 transmit                           I bit  CAN2RIER (CSCIE, OVRIE)
Vector base + $98       $4D                 CAN3 wake-up                            I bit
Vector base + $AE       $4C                   CAN3 errors                                       CAN2RIER (RXFIE)
                                             CAN3 receive                                    CAN2TIER (TXEIE[2:0])
           to           $4B                 CAN3 transmit
Vector base + 98       $4A                                                                     CAN3RIER (WUPIE)
Vector base + $9E        $49                                                               CAN3RIER (CSCIE, OVRIE)
                         $48
           to            $47                                                                    CAN3RIER (RXFIE)
Vector base + 98        $46                                                                 CAN3TIER (TXEIE[2:0])
Vector base + $96        $45
Vector base + $94                          Reserved
Vector base + $92
Vector base + $90                                                        Reserved  I bit   CAN4RIER (WUPIE)
Vector base + $8E
Vector base+ $8C                                   CAN4 wake-up                    I bit CAN4RIER (CSCIE, OVRIE)
Vector base + $8A                                    CAN4 errors
                                                    CAN4 receive                   I bit   CAN4RIER (RXFIE)
                                                   CAN4 transmit
                                                                                   I bit   CAN4TIER (TXEIE[2:0])
                                                   Port P Interrupt
                                           PWM emergency shutdown                  I bit   PIEP (PIEP7-PIEP0)

                                                          SCI2                     I bit   PWMSDN (PWMIE)

                                                                                   I bit   SCI2CR2

                                                                                           (TIE, TCIE, RIE, ILIE)

                                MC9S12XDP512 Data Sheet, Rev. 2.17

74                                                                                         Freescale Semiconductor
                                                                           Chapter 1 Device Overview MC9S12XD-Family

                             Table 1-12. Interrupt Vector Locations (Sheet 3 of 3)

Vector Address1        XGATE     Interrupt Source                          CCR            Local Enable
Vector base + $88   Channel ID2          SCI3                              Mask              SCI3CR2

                          $44                                               I bit    (TIE, TCIE, RIE, ILIE)

Vector base + $8A                          Reserved                                          SCI4CR2
           to                                                                        (TIE, TCIE, RIE, ILIE)

Vector base + $88                                                                            SCI5CR2
                                                                                     (TIE, TCIE, RIE, ILIE)
Vector base + $86        $43     SCI4                                      I bit
                                                                                           IBCR (IBIE)
Vector base + $84        $42     SCI5                                      I bit
                                                                                      VREGCTRL (LVIE)
Vector base + $86                          Reserved                                 VREGAPICTRL (APIE)
          to
                                                                                       PITINTE (PINTE0)
Vector base + $84                                                                      PITINTE (PINTE1)
                                                                                       PITINTE (PINTE2)
Vector base + $82        $41     IIC1 Bus                                  I bit       PITINTE (PINTE3)

Vector base + $82                          Reserved                                     XGMCTL (XGIE)
                                                                                        XGMCTL (XGIE)
Vector base + $80        $40     Low-voltage interrupt (LVI)               I bit        XGMCTL (XGIE)
                                                                                        XGMCTL (XGIE)
Vector base + $7E        $3F     Autonomous periodical interrupt (API) I bit            XGMCTL (XGIE)
                                                                                        XGMCTL (XGIE)
Vector base + $7C                          Reserved                                     XGMCTL (XGIE)
                                                                                        XGMCTL (XGIE)
Vector base + $7A        $3D     Periodic interrupt timer channel 0        I bit        XGMCTL (XGIE)
                                                                                       RAMWPC (AVIE)
Vector base + $78        $3C     Periodic interrupt timer channel 1        I bit
                                                                                               None
Vector base + $76        $3B     Periodic interrupt timer channel 2        I bit

Vector base + $74        $3A     Periodic interrupt timer channel 3        I bit

Vector base + $72        $39     XGATE software trigger 0                  I bit

Vector base + $70        $38     XGATE software trigger 1                  I bit

Vector base + $6E        $37     XGATE software trigger 2                  I bit

Vector base + $6C        $36     XGATE software trigger 3                  I bit

Vector base + $6A        $35     XGATE software trigger 4                  I bit

Vector base + $68        $34     XGATE software trigger 5                  I bit

Vector base + $66        $33     XGATE software trigger 6                  I bit

Vector base + $64        $32     XGATE software trigger 7                  I bit

Vector base + $62        --      XGATE software error interrupt            I bit

Vector base + $60        --      S12XCPU RAM access violation              I bit

Vector base+ $12                           Reserved
                to

Vector base + $5E

Vector base + $10        --      Spurious interrupt                        --

1 16 bits vector address based
2 For detailed description of XGATE channel ID refer to XGATE Block Guide

                                 MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                      75
Chapter 1 Device Overview MC9S12XD-Family

1.6.2 Effects of Reset

When a reset occurs, MCU registers and control bits are changed to known start-up states. Refer to the
respective module Block Guides for register reset states.

1.6.2.1 I/O Pins
Refer to the PIM Block Guide for reset configurations of all peripheral module ports.

1.6.2.2 Memory
The RAM array is not initialized out of reset.

1.7 COP Configuration

The COP timeout rate bits CR[2:0] and the WCOP bit in the COPCTL register are loaded on rising edge
of RESET from the Flash control register FCTL ($0107) located in the Flash EEPROM block. See
Table 1-13 and Table 1-14 for coding. The FCTL register is loaded from the Flash configuration field byte
at global address $7FFF0E during the reset sequence

                                             NOTE

    If the MCU is secured the COP timeout rate is always set to the longest
    period (CR[2:0] = 111) after COP reset.

    Table 1-13. Initial COP Rate Configuration

       NV[2:0] in           CR[2:0] in
    FCTL Register      COPCTL Register

           000                   111
           001                   110
           010                   101
           011                   100
           100                   011
           101                   010
           110                   001
           111                   000

    Table 1-14. Initial WCOP Configuration

        NV[3] in             WCOP in
    FCTL Register      COPCTL Register

             1                    0
             0                    1

    MC9S12XDP512 Data Sheet, Rev. 2.17

76                                              Freescale Semiconductor
                                           Chapter 1 Device Overview MC9S12XD-Family

1.8 ATD0 External Trigger Input Connection

The ATD_10B8C module includes four external trigger inputs ETRIG0, ETRIG1, ETRIG, and ETRIG3.
The external trigger allows the user to synchronize ATD conversion to external trigger events. Table 1-15
shows the connection of the external trigger inputs on MC9S12XDP512.

                                              Table 1-15. ATD0 External Trigger Sources

                         External Trigger                  Connected to . .
                                Input
                                                Pulse width modulator channel 1
                               ETRIG0           Pulse width modulator channel 3
                               ETRIG1      Periodic interrupt timer hardware trigger0
                               ETRIG2
                                                              PITTRIG[0].
                               ETRIG3      Periodic interrupt timer hardware trigger1

                                                              PITTRIG[1].

See Section Chapter 5, "Analog-to-Digital Converter (S12ATD10B8CV3) for information about the
analog-to-digital converter module. When this section refers to freeze mode this is equivalent to active
BDM mode.

1.9 ATD1 External Trigger Input Connection

The ATD_10B16C module includes four external trigger inputs ETRIG0, ETRIG1, ETRIG, and ETRIG3.
The external trigger feature allows the user to synchronize ATD conversion to external trigger events.
Table 1-16 shows the connection of the external trigger inputs on MC9S12XDP512.

                                              Table 1-16. ATD1 External Trigger Sources

                         External Trigger                  Connected to . .
                                Input
                                                Pulse width modulator channel 1
                               ETRIG0           Pulse width modulator channel 3
                               ETRIG1      Periodic interrupt timer hardware trigger0
                               ETRIG2
                                                              PITTRIG[0].
                               ETRIG3      Periodic interrupt timer hardware trigger1

                                                              PITTRIG[1].

See Section Chapter 4, "Analog-to-Digital Converter (ATD10B16CV4) Block Description for information
about the analog-to-digital converter module. When this section refers to freeze mode this is equivalent to
active BDM mode.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                   77
Chapter 1 Device Overview MC9S12XD-Family

    MC9S12XDP512 Data Sheet, Rev. 2.17

78                                         Freescale Semiconductor
Chapter 2
Clocks and Reset Generator (S12CRGV6)

2.1 Introduction

This specification describes the function of the clocks and reset generator (CRG).

2.1.1 Features

The main features of this block are:
    Phase locked loop (PLL) frequency multiplier
         -- Reference divider
         -- Automatic bandwidth control mode for low-jitter operation
         -- Automatic frequency lock detector
         -- Interrupt request on entry or exit from locked condition
         -- Self clock mode in absence of reference clock
    System clock generator
         -- Clock quality check
         -- User selectable fast wake-up from Stop in self-clock mode for power saving and immediate
             program execution
         -- Clock switch for either oscillator or PLL based system clocks
    Computer operating properly (COP) watchdog timer with time-out clear window
    System reset generation from the following possible sources:
         -- Power on reset
         -- Low voltage reset
         -- Illegal address reset
         -- COP reset
         -- Loss of clock reset
         -- External pin reset
    Real-time interrupt (RTI)

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                               79
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.1.2 Modes of Operation

This subsection lists and briefly describes all operating modes supported by the CRG.

    Run mode
         All functional parts of the CRG are running during normal run mode. If RTI or COP functionality
         is required, the individual bits of the associated rate select registers (COPCTL, RTICTL) have to
         be set to a nonzero value.

    Wait mode
         In this mode, the PLL can be disabled automatically depending on the PLLSEL bit in the CLKSEL
         register.

    Stop mode
         Depending on the setting of the PSTP bit, stop mode can be differentiated between full stop mode
         (PSTP = 0) and pseudo stop mode (PSTP = 1).
         -- Full stop mode
             The oscillator is disabled and thus all system and core clocks are stopped. The COP and the
             RTI remain frozen.
         -- Pseudo stop mode
             The oscillator continues to run and most of the system and core clocks are stopped. If the
             respective enable bits are set, the COP and RTI will continue to run, or else they remain frozen.

    Self clock mode
         Self clock mode will be entered if the clock monitor enable bit (CME) and the self clock mode
         enable bit (SCME) are both asserted and the clock monitor in the oscillator block detects a loss of
         clock. As soon as self clock mode is entered, the CRG starts to perform a clock quality check. Self
         clock mode remains active until the clock quality check indicates that the required quality of the
         incoming clock signal is met (frequency and amplitude). Self clock mode should be used for safety
         purposes only. It provides reduced functionality to the MCU in case a loss of clock is causing
         severe system conditions.

    MC9S12XDP512 Data Sheet, Rev. 2.17

80                                      Freescale Semiconductor
                                                           Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.1.3 Block Diagram

Figure 2-1 shows a block diagram of the CRG.

       S12X_MMC Illegal Address Reset

          Voltage Power on Reset
         Regulator Low Voltage Reset

                         CRG

RESET                                                            Reset         System Reset
                                                              Generator
XCLKS   Clock                       CM fail   COP Timeout                         Bus Clock
       Monitor           OSCCLK                            Clock Quality         Core Clock
                                                              Checker         Oscillator Clock
EXTAL Oscillator
                                                           COP RTI          Real Time Interrupt
XTAL                                                                        PLL Lock Interrupt
                                                                             Self Clock Mode
       XFC                       PLLCLK                          Registers
      VDDPLL                                                                       Interrupt
      VSSPLL             PLL                               Clock and Reset
                                                                 Control

                         Figure 2-1. CRG Block Diagram

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                          81
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.2 External Signal Description

This section lists and describes the signals that connect off chip.

2.2.1 VDDPLL and VSSPLL -- Operating and Ground Voltage Pins

These pins provide operating voltage (VDDPLL) and ground (VSSPLL) for the PLL circuitry. This allows
the supply voltage to the PLL to be independently bypassed. Even if PLL usage is not required, VDDPLL
and VSSPLL must be connected to properly.

2.2.2 XFC -- External Loop Filter Pin

A passive external loop filter must be placed on the XFC pin. The filter is a second-order, low-pass filter
that eliminates the VCO input ripple. The value of the external filter network and the reference frequency
determines the speed of the corrections and the stability of the PLL. Refer to the device specification for
calculation of PLL Loop Filter (XFC) components. If PLL usage is not required, the XFC pin must be tied
to VDDPLL.

                                                                                                VDDPLL

               CS  CP

    MCU        RS
          XFC

                                               Figure 2-2. PLL Loop Filter Connections

2.2.3 RESET -- Reset Pin

RESET is an active low bidirectional reset pin. As an input. it initializes the MCU asynchronously to a
known start-up state. As an open-drain output, it indicates that a system reset (internal to the MCU) has
been triggered.

2.3 Memory Map and Register Definition

This section provides a detailed description of all registers accessible in the CRG.

    MC9S12XDP512 Data Sheet, Rev. 2.17

82                                      Freescale Semiconductor
                                                             Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.1 Module Memory Map

Table 2-1 gives an overview on all CRG registers.

                                                        Table 2-1. CRG Memory Map

Address                  Use                                                       Access
Offset
                                                                                     R/W
0x_00                    CRG Synthesizer Register (SYNR)                             R/W
                                                                                     R/W
0x_01                    CRG Reference Divider Register (REFDV)                      R/W
0x_02                        CRG Test Flags Register (CTFLG)1                        R/W
0x_03                           CRG Flags Register (CRGFLG)                          R/W
0x_04                                                                                R/W
                         CRG Interrupt Enable Register (CRGINT)                      R/W
                                                                                     R/W
0x_05                    CRG Clock Select Register (CLKSEL)                          R/W
                                                                                     R/W
0x_06                    CRG PLL Control Register (PLLCTL)                           R/W

0x_07                    CRG RTI Control Register (RTICTL)

0x_08                           CRG COP Control Register (COPCTL)
0x_09                    CRG Force and Bypass Test Register (FORBYP)2
0x_0A
                                 CRG Test Control Register (CTCTL)3

0x_0B                    CRG COP Arm/Timer Reset (ARMCOP)

1 CTFLG is intended for factory test purposes only.
2 FORBYP is intended for factory test purposes only.
3 CTCTL is intended for factory test purposes only.

                                         NOTE

Register Address = Base Address + Address Offset, where the Base Address
is defined at the MCU level and the Address Offset is defined at the module
level.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                    83
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2 Register Descriptions

This section describes in address order all the CRG registers and their individual bits.

    Register     Bit 7       6                   5        4                3         2        1     Bit 0
      Name                                                              SYN3     SYN2     SYN1      SYN0
      SYNR    R  0           0                   SYN5   SYN4          REFDV3    REFDV2   REFDV1   REFDV0
     REFDV
     CTFLG    W                                                            0         0        0        0
                                                                        LOCK    TRACK               SCM
    CRGFLG    R  0           0                                                            SCMIF
    CRGINT                               REFDV5 REFDV4                     0         0    SCMIE        0
    CLKSEL    W                                                                      0   RTIWAI
     PLLCTL                                                           PLLWAI                      COPWAI
     RTICTL   R  0           0                   0        0           FSTWKP      PRE      PCE     SCME
    COPCTL                                                                       RTR2     RTR1      RTR0
    FORBYP    W                                                         RTR3      CR2      CR1       CR0
     CTCTL                                                                 0                           0
    ARMCOP    R              PORF                LVRF   LOCKIF             0         0        0        0
                       RTIF                                                0         0        0        0
                                                                           0         0        0      Bit 0
              W                                                                   Bit 2    Bit 1
                                                                         Bit 3
              R              ILAF                0
                       RTIE                                   LOCKIE

              W

              R  PLLSEL      PSTP                0        0

              W

              R              PLLON               AUTO   ACQ
                       CME

              W

              R              RTR6                RTR5   RTR4
                     RTDEC

              W

              R  WCOP        RSBCK               0        0

              W                     WRTMASK

              R  0           0                   0        0

              W

              R  1           0                   0        0

              W

              R  0             0                   0      0
                             Bit 6               Bit 5  Bit 4
              W Bit 7

                             = Unimplemented or Reserved

                             Figure 2-3. S12CRGV6 Register Summary

                                    MC9S12XDP512 Data Sheet, Rev. 2.17

84                                                                                       Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.1 CRG Synthesizer Register (SYNR)
The SYNR register controls the multiplication factor of the PLL. If the PLL is on, the count in the loop
divider (SYNR) register effectively multiplies up the PLL clock (PLLCLK) from the reference frequency
by 2 x (SYNR + 1). PLLCLK will not be below the minimum VCO frequency (fSCM).

           PLLCLK = 2xOSCCLKx(---(R--S---E-Y---F--N--D--R---V---+--+---1--1--)--)

                                                           NOTE
                  If PLL is selected (PLLSEL=1), Bus Clock = PLLCLK / 2
                  Bus Clock must not exceed the maximum operating system frequency.

       7                 6  5               4           3           2            1             0

R      0                 0  SYN5            SYN4    SYN3        SYN2         SYN1          SYN0
                                                       0           0            0             0
W

Reset  0                 0  0               0

               = Unimplemented or Reserved

                            Figure 2-4. CRG Synthesizer Register (SYNR)

Read: Anytime

Write: Anytime except if PLLSEL = 1

                                                   NOTE

          Write to this register initializes the lock detector bit and the track detector
          bit.

2.3.2.2 CRG Reference Divider Register (REFDV)

The REFDV register provides a finer granularity for the PLL multiplier steps. The count in the reference
divider divides OSCCLK frequency by REFDV + 1.

       7                 6  5               4       3           2            1                   0

R      0                 0  REFDV5          REFDV4  REFDV3      REFDV2       REFDV1        REFDV0
                                                                                                0
W

Reset  0                 0  0               0       0           0            0

               = Unimplemented or Reserved

                         Figure 2-5. CRG Reference Divider Register (REFDV)

Read: Anytime

Write: Anytime except when PLLSEL = 1

                                                   NOTE

          Write to this register initializes the lock detector bit and the track detector
          bit.

                            MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                             85
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.3 Reserved Register (CTFLG)
This register is reserved for factory testing of the CRG module and is not available in normal modes.

            7     6      5                       4       3                                 2   1       0

    R       0     0      0                       0       0                             0       0       0

    W

    Reset   0     0      0                       0       0                             0       0       0

                  = Unimplemented or Reserved

                         Figure 2-6. Reserved Register (CTFLG)

Read: Always reads 0x_00 in normal modes

Write: Unimplemented in normal modes

                                                        NOTE

               Writing to this register when in special mode can alter the CRG
               fucntionality.

2.3.2.4 CRG Flags Register (CRGFLG)
This register provides CRG status bits and flags.

         R     7      6     5                         4      3                              2       1     0
         W
    Reset   RTIF  PORF   LVRF                    LOCKIF  LOCK                          TRACK   SCMIF   SCM
              0                                      0                                            0
                      1     2                               0                              0             0

            1. PORF is set to 1 when a power on reset occurs. Unaffected by system reset.

            2. LVRF is set to 1 when a low-voltage reset occurs. Unaffected by system reset.

                  = Unimplemented or Reserved

                         Figure 2-7. CRG Flags Register (CRGFLG)

Read: Anytime

Write: Refer to each bit for individual write conditions

                                                 Table 2-2. CRGFLG Field Descriptions

    Field                                                                    Description
       7
            Real Time Interrupt Flag -- RTIF is set to 1 at the end of the RTI period. This flag can only be cleared by writing
    RTIF    a 1. Writing a 0 has no effect. If enabled (RTIE = 1), RTIF causes an interrupt request.
            0 RTI time-out has not yet occurred.
       6    1 RTI time-out has occurred.
    PORF
            Power on Reset Flag -- PORF is set to 1 when a power on reset occurs. This flag can only be cleared by writing
            a 1. Writing a 0 has no effect.
            0 Power on reset has not occurred.
            1 Power on reset has occurred.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

86                                                                                             Freescale Semiconductor
                         Chapter 2 Clocks and Reset Generator (S12CRGV6)

                         Table 2-2. CRGFLG Field Descriptions (continued)

Field                                                                   Description
    5
        Low Voltage Reset Flag -- If low voltage reset feature is not available (see device specification) LVRF always
LVRF   reads 0. LVRF is set to 1 when a low voltage reset occurs. This flag can only be cleared by writing a 1. Writing
        a 0 has no effect.
    4   0 Low voltage reset has not occurred.
LOCKIF  1 Low voltage reset has occurred.

    3   PLL Lock Interrupt Flag -- LOCKIF is set to 1 when LOCK status bit changes. This flag can only be cleared
LOCK   by writing a 1. Writing a 0 has no effect.If enabled (LOCKIE = 1), LOCKIF causes an interrupt request.
        0 No change in LOCK bit.
    2   1 LOCK bit has changed.
TRACK
        Lock Status Bit -- LOCK reflects the current state of PLL lock condition. This bit is cleared in self clock mode.
    1   Writes have no effect.
SCMIF   0 PLL VCO is not within the desired tolerance of the target frequency.
        1 PLL VCO is within the desired tolerance of the target frequency.
    0
  SCM   Track Status Bit -- TRACK reflects the current state of PLL track condition. This bit is cleared in self clock mode.
        Writes have no effect.
        0 Acquisition mode status.
        1Tracking mode status.

        Self Clock Mode Interrupt Flag -- SCMIF is set to 1 when SCM status bit changes. This flag can only be
        cleared by writing a 1. Writing a 0 has no effect. If enabled (SCMIE = 1), SCMIF causes an interrupt request.
        0 No change in SCM bit.
        1 SCM bit has changed.

        Self Clock Mode Status Bit -- SCM reflects the current clocking mode. Writes have no effect.
        0 MCU is operating normally with OSCCLK available.
        1 MCU is operating in self clock mode with OSCCLK in an unknown state. All clocks are derived from PLLCLK

           running at its minimum frequency fSCM.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                    87
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.5 CRG Interrupt Enable Register (CRGINT)
This register enables CRG interrupt requests.

                7     6  5                       4       3     2       1      0

         R   RTIE  ILAF  0                       LOCKIE  0     0       SCMIE  0
         W     0
    Reset             1  0                       0       0     0       0      0

            1. ILAF is set to 1 when an illegal address reset occurs. Unaffected by system reset. Cleared by power on or low
               voltage reset.

                   = Unimplemented or Reserved

                   Figure 2-8. CRG Interrupt Enable Register (CRGINT)

Read: Anytime

Write: Anytime

                         Table 2-3. CRGINT Field Descriptions

      Field                                                                   Description
        7
             Real Time Interrupt Enable Bit
      RTIE   0 Interrupt requests from RTI are disabled.
             1 Interrupt will be requested whenever RTIF is set.
        6
      ILAF   Illegal Address Reset Flag -- ILAF is set to 1 when an illegal address reset occurs. Refer to S12XMMC Block
             Guide for details. This flag can only be cleared by writing a 1. Writing a 0 has no effect.
        4    0 Illegal address reset has not occurred.
    LOCKIE   1 Illegal address reset has occurred.

        1    Lock Interrupt Enable Bit
    SCMIE    0 LOCK interrupt requests are disabled.
             1 Interrupt will be requested whenever LOCKIF is set.

             Self ClockMmode Interrupt Enable Bit
             0 SCM interrupt requests are disabled.
             1 Interrupt will be requested whenever SCMIF is set.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

88                                                                     Freescale Semiconductor
                                                        Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.6 CRG Clock Select Register (CLKSEL)
This register controls CRG clock selection. Refer to Figure 2-17 for more details on the effect of each bit.

               7         6  5                     4  3                                 2       1        0

     R   PLLSEL                                0  0  PLLWAI                            0  RTIWAI  COPWAI
     W       0           PSTP                                                                 0        0
Reset
                         0  0                     0  0                                 0

                  = Unimplemented or Reserved

                            Figure 2-9. CRG Clock Select Register (CLKSEL)

Read: Anytime

Write: Refer to each bit for individual write conditions

                                                 Table 2-4. CLKSEL Field Descriptions

  Field                                                                   Description
     7
         PLL Select Bit -- Write anytime. Writing a1 when LOCK = 0 and AUTO = 1, or TRACK = 0 and AUTO = 0 has
PLLSEL   no effect This prevents the selection of an unstable PLLCLK as SYSCLK. PLLSEL bit is cleared when the MCU
         enters self clock mode, Stop mode or wait mode with PLLWAI bit set.
     6   0 System clocks are derived from OSCCLK (Bus Clock = OSCCLK / 2).
  PSTP   1 System clocks are derived from PLLCLK (Bus Clock = PLLCLK / 2).

     3   Pseudo Stop Bit
PLLWAI   Write: Anytime
         This bit controls the functionality of the oscillator during stop mode.
     1   0 Oscillator is disabled in stop mode.
RTIWAI   1 Oscillator continues to run in stop mode (pseudo stop).
         Note: Pseudo stop mode allows for faster STOP recovery and reduces the mechanical stress and aging of the
     0
COPWAI           resonator in case of frequent STOP conditions at the expense of a slightly increased power consumption.

         PLL Stops in Wait Mode Bit
         Write: Anytime
         If PLLWAI is set, the CRG will clear the PLLSEL bit before entering wait mode. The PLLON bit remains set during
         wait mode, but the PLL is powered down. Upon exiting wait mode, the PLLSEL bit has to be set manually if PLL
         clock is required.
         While the PLLWAI bit is set, the AUTO bit is set to 1 in order to allow the PLL to automatically lock on the selected
         target frequency after exiting wait mode.
         0 PLL keeps running in wait mode.
         1 PLL stops in wait mode.

         RTI Stops in Wait Mode Bit
         Write: Anytime
         0 RTI keeps running in wait mode.
         1 RTI stops and initializes the RTI dividers whenever the part goes into wait mode.

         COP Stops in Wait Mode Bit
         Normal modes: Write once
         Special modes: Write anytime
         0 COP keeps running in wait mode.
         1 COP stops and initializes the COP counter whenever the part goes into wait mode.

                            MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                    89
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.7 CRG PLL Control Register (PLLCTL)
This register controls the PLL functionality.

         R      7       6      5                    4         3                           2     1      0
         W
    Reset    CME   PLLON   AUTO                  ACQ   FSTWKP                          PRE   PCE   SCME
               1                                                                               0      1
                   1       1                     1     0                               0

                      Figure 2-10. CRG PLL Control Register (PLLCTL)

Read: Anytime

Write: Refer to each bit for individual write conditions

                                                 Table 2-5. PLLCTL Field Descriptions

      Field                                                                   Description
         7
             Clock Monitor Enable Bit -- CME enables the clock monitor. Write anytime except when SCM = 1.
      CME    0 Clock monitor is disabled.
             1 Clock monitor is enabled. Slow or stopped clocks will cause a clock monitor reset sequence or self clock
         6
     PLLON      mode.
             Note: Operating with CME = 0 will not detect any loss of clock. In case of poor clock quality, this could cause
         5
      AUTO           unpredictable operation of the MCU!

         4   Note: In stop mode (PSTP = 0) the clock monitor is disabled independently of the CME bit setting and any loss
       ACQ           of external clock will not be detected. Also after wake-up from stop mode (PSTP = 0) with fast wake-up
                     enabled (FSTWKP = 1) the clock monitor is disabled independently of the CME bit setting and any loss of
         3           external clock will not be detected.
    FSTWKP
             Phase Lock Loop On Bit -- PLLON turns on the PLL circuitry. In self clock mode, the PLL is turned on, but the
             PLLON bit reads the last latched value. Write anytime except when PLLSEL = 1.
             0 PLL is turned off.
             1 PLL is turned on. If AUTO bit is set, the PLL will lock automatically.

             Automatic Bandwidth Control Bit -- AUTO selects either the high bandwidth (acquisition) mode or the low
             bandwidth (tracking) mode depending on how close to the desired frequency the VCO is running. Write anytime
             except when PLLWAI = 1, because PLLWAI sets the AUTO bit to 1.
             0 Automatic mode control is disabled and the PLL is under software control, using ACQ bit.
             1 Automatic mode control is enabled and ACQ bit has no effect.

             Acquisition Bit
             Write anytime. If AUTO=1 this bit has no effect.
             0 Low bandwidth filter is selected.
             1 High bandwidth filter is selected.

             Fast Wake-up from Full Stop Bit -- FSTWKP enables fast wake-up from full stop mode. Write anytime. If
             self-clock mode is disabled (SCME = 0) this bit has no effect.
             0 Fast wake-up from full stop mode is disabled.
             1 Fast wake-up from full stop mode is enabled.

                When waking up from full stop mode the system will immediately resume operation i self-clock mode (see
                Section 2.4.1.4, "Clock Quality Checker"). The SCMIF flag will not be set. The system will remain in self-clock
                mode with oscillator and clock monitor disabled until FSTWKP bit is cleared. The clearing of FSTWKP will
                start the oscillator, the clock monitor and the clock quality check. If the clock quality check is successful, the
                CRG will switch all system clocks to OSCCLK. The SCMIF flag will be set. See application examples in
                Figure 2-23 and Figure 2-24.

                           MC9S12XDP512 Data Sheet, Rev. 2.17

90                                                                                           Freescale Semiconductor
Field                                                                                                  Chapter 2 Clocks and Reset Generator (S12CRGV6)
   2
                                Table 2-5. PLLCTL Field Descriptions (continued)
PRE
                                                                           Description
   1
PCE      RTI Enable during Pseudo Stop Bit -- PRE enables the RTI during pseudo stop mode. Write anytime.
          0 RTI stops running during pseudo stop mode.
   0      1 RTI continues running during pseudo stop mode.
SCME      Note: If the PRE bit is cleared the RTI dividers will go static while pseudo stop mode is active. The RTI dividers

                  will not initialize like in wait mode with RTIWAI bit set.

          COP Enable during Pseudo Stop Bit -- PCE enables the COP during pseudo stop mode. Write anytime.
          0 COP stops running during pseudo stop mode
          1 COP continues running during pseudo stop mode
          Note: If the PCE bit is cleared, the COP dividers will go static while pseudo stop mode is active. The COP

                  dividers will not initialize like in wait mode with COPWAI bit set.

          Self Clock Mode Enable Bit
          Normal modes: Write once
          Special modes: Write anytime
          SCME can not be cleared while operating in self clock mode (SCM = 1).
          0 Detection of crystal clock failure causes clock monitor reset (see Section 2.5.2, "Clock Monitor Reset").
          1 Detection of crystal clock failure forces the MCU in self clock mode (see Section 2.4.2.2, "Self Clock Mode").

2.3.2.8 CRG RTI Control Register (RTICTL)
This register selects the timeout period for the real time interrupt.

     R         7             6      5      4      3                        2        1      0
     W
Reset     RTDEC          RTR6   RTR5   RTR4   RTR3                     RTR2     RTR1   RTR0
              0                                                                    0      0
                         0      0      0      0                        0

                                Figure 2-11. CRG RTI Control Register (RTICTL)

Read: Anytime

Write: Anytime

                                                   NOTE
          A write to this register initializes the RTI counter.

                                Table 2-6. RTICTL Field Descriptions

  Field                                                                    Description

     7    Decimal or Binary Divider Select Bit -- RTDEC selects decimal or binary based prescaler values.
RTDEC     0 Binary based divider value. See Table 2-7
          1 Decimal based divider value. See Table 2-8
   64
RTR[6:4]  Real Time Interrupt Prescale Rate Select Bits -- These bits select the prescale rate for the RTI. See Table 2-7
          and Table 2-8.
   30
RTR[3:0]  Real Time Interrupt Modulus Counter Select Bits -- These bits select the modulus counter target value to
          provide additional granularity.Table 2-7 and Table 2-8 show all possible divide values selectable by the RTICTL
          register. The source clock for the RTI is OSCCLK.

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                       91
Chapter 2 Clocks and Reset Generator (S12CRGV6)

                       Table 2-7. RTI Frequency Divide Rates for RTDEC = 0

                                                             RTR[6:4] =

    RTR[3:0]     000   001     010                    011     100        101     110     111
                (OFF)  (210)   (211)                  (212)   (213)      (214)   (215)   (216)

    0000 (1)   OFF*   210                       211  212     213        214     215     216

    0001 (2)   OFF    2x210   2x211                  2x212   2x213      2x214   2x215   2x216

    0010 (3)   OFF    3x210   3x211                  3x212   3x213      3x214   3x215   3x216

    0011 (4)   OFF    4x210   4x211                  4x212   4x213      4x214   4x215   4x216

    0100 (5)   OFF    5x210   5x211                  5x212   5x213      5x214   5x215   5x216

    0101 (6)   OFF    6x210   6x211                  6x212   6x213      6x214   6x215   6x216

    0110 (7)   OFF    7x210   7x211                  7x212   7x213      7x214   7x215   7x216

    0111 (8)   OFF    8x210   8x211                  8x212   8x213      8x214   8x215   8x216

    1000 (9)   OFF    9x210   9x211                  9x212   9x213      9x214   9x215   9x216

    1001 (10)  OFF    10x210  10x211                 10x212  10x213     10x214  10x215  10x216

    1010 (11)  OFF    11x210  11x211                 11x212  11x213     11x214  11x215  11x216

    1011 (12)  OFF    12x210  12x211                 12x212  12x213     12x214  12x215  12x216

    1100 (13)  OFF    13x210  13x211                 13x212  13x213     13x214  13x215  13x216

    1101 (14)  OFF    14x210  14x211                 14x212  14x213     14x214  14x215  14x216

    1110 (15)  OFF    15x210  15x211                 15x212  15x213     15x214  15x215  15x216

    1111 (16)  OFF    16x210  16x211                 16x212  16x213     16x214  16x215  16x216

* Denotes the default value out of reset.This value should be used to disable the RTI to ensure future backwards compatibility.

                               MC9S12XDP512 Data Sheet, Rev. 2.17

92                                                                               Freescale Semiconductor
                                                     Chapter 2 Clocks and Reset Generator (S12CRGV6)

                         Table 2-8. RTI Frequency Divide Rates for RTDEC = 1

                                                     RTR[6:4] =

RTR[3:0]     000          001      010       011       100              101        110        111
            (1x103)      (2x103)  (5x103)  (10x103)  (20x103)         (50x103)  (100x103)  (200x103)
0000 (1)    1x103        2x103    5x103    10x103    20x103           50x103    100x103    200x103
0001 (2)    2x103        4x103   10x103    20x103    40x103          100x103    200x103    400x103
0010 (3)    3x103        6x103   15x103    30x103    60x103          150x103    300x103    600x103
0011 (4)    4x103        8x103   20x103    40x103    80x103          200x103    400x103    800x103
0100 (5)    5x103       10x103   25x103    50x103   100x103          250x103    500x103
0101 (6)    6x103       12x103   30x103    60x103   120x103          300x103    600x103     1x106
0110 (7)    7x103       14x103   35x103    70x103   140x103          350x103    700x103    1.2x106
0111 (8)    8x103       16x103   40x103    80x103   160x103          400x103    800x103    1.4x106
1000 (9)    9x103       18x103   45x103    90x103   180x103          450x103    900x103    1.6x106
1001 (10)  10 x103      20x103   50x103   100x103   200x103          500x103               1.8x106
1010 (11)  11 x103      22x103   55x103   110x103   220x103          550x103     1x106      2x106
1011 (12)  12x103       24x103   60x103   120x103   240x103          600x103    1.1x106    2.2x106
1100 (13)  13x103       26x103   65x103   130x103   260x103          650x103    1.2x106    2.4x106
1101 (14)  14x103       28x103   70x103   140x103   280x103          700x103    1.3x106    2.6x106
1110 (15)  15x103       30x103   75x103   150x103   300x103          750x103    1.4x106    2.8x106
1111 (16)  16x103       32x103   80x103   160x103   320x103          800x103    1.5x106     3x106
                                                                                 1.6x106    3.2x106

                                  MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                               93
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.9 CRG COP Control Register (COPCTL)
This register controls the COP (computer operating properly) watchdog.

            7     6      5                       4  3                   2                    1    0

    R       WCOP  RSBCK  0                       0  0                                      CR1  CR0
                                                                     CR2
    W                    WRTMASK

    Reset1        0      0                       0  0

1. Refer to Device User Guide (Section: CRG) for reset values of WCOP, CR2, CR1, and CR0.

                  = Unimplemented or Reserved

                     Figure 2-12. CRG COP Control Register (COPCTL)

Read: Anytime

Write:
    1. RSBCK: Anytime in special modes; write to "1" but not to "0" in all other modes
    2. WCOP, CR2, CR1, CR0:
         -- Anytime in special modes
         -- Write once in all other modes
             Writing CR[2:0] to "000" has no effect, but counts for the "write once" condition.
             Writing WCOP to "0" has no effect, but counts for the "write once" condition.

The COP time-out period is restarted if one these two conditions is true:
    1. Writing a nonzero value to CR[2:0] (anytime in special modes, once in all other modes) with
         WRTMASK = 0.
                 or
    2. Changing RSBCK bit from "0" to "1".

                                                 Table 2-9. COPCTL Field Descriptions

     Field                                                                   Description
        7
            Window COP Mode Bit -- When set, a write to the ARMCOP register must occur in the last 25% of the selected
    WCOP    period. A write during the first 75% of the selected period will reset the part. As long as all writes occur during
            this window, 0x_55 can be written as often as desired. Once 0x_AA is written after the 0x_55, the time-out logic
        6   restarts and the user must wait until the next window before writing to ARMCOP. Table 2-10 shows the duration
    RSBCK   of this window for the seven available COP rates.
            0 Normal COP operation
            1 Window COP operation

            COP and RTI Stop in Active BDM Mode Bit
            0 Allows the COP and RTI to keep running in active BDM mode.
            1 Stops the COP and RTI counters whenever the part is in active BDM mode.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

94                                                                                         Freescale Semiconductor
                                                Chapter 2 Clocks and Reset Generator (S12CRGV6)

                         Table 2-9. COPCTL Field Descriptions (continued)

Field                              Description

      5  Write Mask for WCOP and CR[2:0] Bit -- This write-only bit serves as a mask for the WCOP and CR[2:0] bits
WRTMASK  while writing the COPCTL register. It is intended for BDM writing the RSBCK without touching the contents of
         WCOP and CR[2:0].
         0 Write of WCOP and CR[2:0] has an effect with this write of COPCTL
         1 Write of WCOP and CR[2:0] has no effect with this write of COPCTL. (Does not count for "write once".)

  20    COP Watchdog Timer Rate Select -- These bits select the COP time-out rate (see Table 2-10). The COP
CR[1:0]  time-out period is OSCCLK period divided by CR[2:0] value. Writing a nonzero value to CR[2:0] enables the
         COP counter and starts the time-out period. A COP counter time-out causes a system reset. This can be
         avoided by periodically (before time-out) reinitializing the COP counter via the ARMCOP register.

         While all of the following four conditions are true the CR[2:0], WCOP bits are ignored and the COP operates at
         highest time-out period (2 24 cycles) in normal COP mode (Window COP mode disabled):

             1) COP is enabled (CR[2:0] is not 000)
             2) BDM mode active
             3) RSBCK = 0
             4) Operation in emulation or special modes

                              Table 2-10. COP Watchdog Rates1

                         CR2  CR1  CR0         OSCCLK
                                        Cycles to Time-out

                         0    0    0            COP disabled

                         0    0    1                              214

                         0    1    0                              216

                         0    1    1                              218

                         1    0    0                              220

                         1    0    1                              222

                         1    1    0                              223

                         1    1    1                              224

                         1 OSCCLK cycles are referenced from the previous COP time-out reset
                            (writing 0x_55/0x_AA to the ARMCOP register)

                              MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                       95
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.10   Reserved Register (FORBYP)

                                                      NOTE
            This reserved register is designed for factory test purposes only, and is not
            intended for general user access. Writing to this register when in special
            modes can alter the CRG's functionality.

           7  6               5                  4  3                  2  1                  0

    R      0  0               0                  0  0                  0  0                  0

    W

    Reset  0  0               0                  0  0                  0  0                  0

              = Unimplemented or Reserved

                              Figure 2-13. Reserved Register (FORBYP)

Read: Always read 0x_00 except in special modes

Write: Only in special modes

2.3.2.11   Reserved Register (CTCTL)

                                                      NOTE
            This reserved register is designed for factory test purposes only, and is not
            intended for general user access. Writing to this register when in special test
            modes can alter the CRG's functionality.

           7  6               5                  4  3                  2  1                  0

    R      1  0               0                  0  0                  0  0                  0

    W

    Reset  0  0               0                  0  0                  0  0                  0

              = Unimplemented or Reserved

                              Figure 2-14. Reserved Register (CTCTL)

Read: always read 0x_80 except in special modes

Write: only in special modes

                              MC9S12XDP512 Data Sheet, Rev. 2.17

96                                                                        Freescale Semiconductor
                                              Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.3.2.12 CRG COP Timer Arm/Reset Register (ARMCOP)
This register is used to restart the COP time-out period.

     R    7                6      5      4      3                       2             1      0
     W
Reset     0                0      0      0      0                       0             0      0
        Bit 7            Bit 6  Bit 5  Bit 4  Bit 3                   Bit 2         Bit 1  Bit 0

          0                0      0      0      0                       0             0      0

                                Figure 2-15. ARMCOP Register Diagram

Read: Always reads 0x_00

Write: Anytime

When the COP is disabled (CR[2:0] = "000") writing to this register has no effect.

When the COP is enabled by setting CR[2:0] nonzero, the following applies:

         Writing any value other than 0x_55 or 0x_AA causes a COP reset. To restart the COP time-out
         period you must write 0x_55 followed by a write of 0x_AA. Other instructions may be executed
         between these writes but the sequence (0x_55, 0x_AA) must be completed prior to COP end of
         time-out period to avoid a COP reset. Sequences of 0x_55 writes or sequences of 0x_AA writes
         are allowed. When the WCOP bit is set, 0x_55 and 0x_AA writes must be done in the last 25% of
         the selected time-out period; writing any value in the first 75% of the selected period will cause a
         COP reset.

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                           97
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.4 Functional Description

2.4.1 Functional Blocks

2.4.1.1 Phase Locked Loop (PLL)

The PLL is used to run the MCU from a different time base than the incoming OSCCLK. For increased
flexibility, OSCCLK can be divided in a range of 1 to 16 to generate the reference frequency. This offers
a finer multiplication granularity. The PLL can multiply this reference clock by a multiple of 2, 4, 6,...
126,128 based on the SYNR register.

                                               PLLCLK = 2 OSCCLK [---[R--S---E-Y---F--N--D--R---V---+--+---1--1--]--]

                                                        CAUTION
                  Although it is possible to set the two dividers to command a very high clock
                  frequency, do not exceed the specified bus frequency limit for the MCU.
                  If (PLLSEL = 1), Bus Clock = PLLCLK / 2

The PLL is a frequency generator that operates in either acquisition mode or tracking mode, depending on
the difference between the output frequency and the target frequency. The PLL can change between
acquisition and tracking modes either automatically or manually.

The VCO has a minimum operating frequency, which corresponds to the self clock mode frequency fSCM.

                                                    REFDV <5:0>   REFERENCE                             LOCK
                                                                                            LOCK
    EXTAL
    XTAL                                                                FEEDBACK DETECTOR

              REDUCED                                 REFERENCE                                                VDDPLL/VSSPLL
           CONSUMPTION OSCCLK                       PROGRAMMABLE

            OSCILLATOR                                   DIVIDER

                                                                      PDET                          UP  CPUMP  VCO
                                                                     PHASE                        DOWN
                                                                   DETECTOR

                                           CRYSTAL         LOOP                  VDDPLL
                                          MONITOR   PROGRAMMABLE
                                                                   LOOP
    supplied by:                                         DIVIDER   FILTER

                 VDDPLL/VSSPLL                          SYN <5:0>                                XFC
                 VDD/VSS                                                                          PIN

                                                                                                               PLLCLK

                               Figure 2-16. PLL Functional Diagram

                                                    MC9S12XDP512 Data Sheet, Rev. 2.17

98                                                                                                            Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.4.1.1.1 PLL Operation

The oscillator output clock signal (OSCCLK) is fed through the reference programmable divider and is
divided in a range of 1 to 64 (REFDV + 1) to output the REFERENCE clock. The VCO output clock,
(PLLCLK) is fed back through the programmable loop divider and is divided in a range of 2 to 128 in
increments of [2 x (SYNR + 1)] to output the FEEDBACK clock. Figure 2-16.

The phase detector then compares the FEEDBACK clock, with the REFERENCE clock. Correction pulses
are generated based on the phase difference between the two signals. The loop filter then slightly alters the
DC voltage on the external filter capacitor connected to XFC pin, based on the width and direction of the
correction pulse. The filter can make fast or slow corrections depending on its mode, as described in the
next subsection. The values of the external filter network and the reference frequency determine the speed
of the corrections and the stability of the PLL.

The minimum VCO frequency is reached with the XFC pin forced to VDDPLL. This is the self clock mode
frequency.

2.4.1.1.2 Acquisition and Tracking Modes

The lock detector compares the frequencies of the FEEDBACK clock, and the REFERENCE clock.
Therefore, the speed of the lock detector is directly proportional to the final reference frequency. The
circuit determines the mode of the PLL and the lock condition based on this comparison.

The PLL filter can be manually or automatically configured into one of two possible operating modes:

    Acquisition mode
         In acquisition mode, the filter can make large frequency corrections to the VCO. This mode is used
         at PLL start-up or when the PLL has suffered a severe noise hit and the VCO frequency is far off
         the desired frequency. When in acquisition mode, the TRACK status bit is cleared in the CRGFLG
         register.

    Tracking mode
         In tracking mode, the filter makes only small corrections to the frequency of the VCO. PLL jitter
         is much lower in tracking mode, but the response to noise is also slower. The PLL enters tracking
         mode when the VCO frequency is nearly correct and the TRACK bit is set in the CRGFLG register.

The PLL can change the bandwidth or operational mode of the loop filter manually or automatically.

In automatic bandwidth control mode (AUTO = 1), the lock detector automatically switches between
acquisition and tracking modes. Automatic bandwidth control mode also is used to determine when the
PLL clock (PLLCLK) is safe to use as the source for the system and core clocks. If PLL LOCK interrupt
requests are enabled, the software can wait for an interrupt request and then check the LOCK bit. If
interrupt requests are disabled, software can poll the LOCK bit continuously (during PLL start-up, usually)
or at periodic intervals. In either case, only when the LOCK bit is set, is the PLLCLK clock safe to use as
the source for the system and core clocks. If the PLL is selected as the source for the system and core clocks
and the LOCK bit is clear, the PLL has suffered a severe noise hit and the software must take appropriate
action, depending on the application.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      99
Chapter 2 Clocks and Reset Generator (S12CRGV6)

The following conditions apply when the PLL is in automatic bandwidth control mode (AUTO = 1):

    The TRACK bit is a read-only indicator of the mode of the filter.
    The TRACK bit is set when the VCO frequency is within a certain tolerance, trk, and is clear when

         the VCO frequency is out of a certain tolerance, unt.
    The LOCK bit is a read-only indicator of the locked state of the PLL.
    The LOCK bit is set when the VCO frequency is within a certain tolerance, Lock, and is cleared

         when the VCO frequency is out of a certain tolerance, unl.
    Interrupt requests can occur if enabled (LOCKIE = 1) when the lock condition changes, toggling

         the LOCK bit.

The PLL can also operate in manual mode (AUTO = 0). Manual mode is used by systems that do not
require an indicator of the lock condition for proper operation. Such systems typically operate well below
the maximum system frequency (fsys) and require fast start-up. The following conditions apply when in
manual mode:

    ACQ is a writable control bit that controls the mode of the filter. Before turning on the PLL in
         manual mode, the ACQ bit should be asserted to configure the filter in acquisition mode.

    After turning on the PLL by setting the PLLON bit software must wait a given time (tacq) before
         entering tracking mode (ACQ = 0).

    After entering tracking mode software must wait a given time (tal) before selecting the PLLCLK
         as the source for system and core clocks (PLLSEL = 1).

2.4.1.2 System Clocks Generator

                                    PLLSEL or SCM

       PHASE         PLLCLK         1                          STOP
       LOCK                                        SYSCLK
       LOOP                                                                                                     CORE CLOCK

                                    0

                                                                                               2  CLOCK PHASE  BUS CLOCK
                                       SCM                                                          GENERATOR
                                                                                                                OSCILLATOR
                                                         WAIT(RTIWAI),                                  RTI     CLOCK

                                                   STOP(PSTP,PRE),                                     COP

EXTAL                               1              RTI ENABLE

                            OSCCLK  0              WAIT(COPWAI),
       OSCILLATOR

                                                   STOP(PSTP,PCE),

XTAL                                               COP ENABLE

                      CLOCK                        STOP
                     MONITOR

        GATING
       CONDITION

       = CLOCK GATE

                                    Figure 2-17. System Clocks Generator

                                    MC9S12XDP512 Data Sheet, Rev. 2.17

100                                                                                                Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

The clock generator creates the clocks used in the MCU (see Figure 2-17). The gating condition placed on
top of the individual clock gates indicates the dependencies of different modes (STOP, WAIT) and the
setting of the respective configuration bits.

The peripheral modules use the bus clock. Some peripheral modules also use the oscillator clock. The
memory blocks use the bus clock. If the MCU enters self clock mode (see Section 2.4.2.2, "Self Clock
Mode") oscillator clock source is switched to PLLCLK running at its minimum frequency fSCM. The bus
clock is used to generate the clock visible at the ECLK pin. The core clock signal is the clock for the CPU.
The core clock is twice the bus clock as shown in Figure 2-18. But note that a CPU cycle corresponds to
one bus clock.

PLL clock mode is selected with PLLSEL bit in the CLKSEL registerr. When selected, the PLL output
clock drives SYSCLK for the main system including the CPU and peripherals. The PLL cannot be turned
off by clearing the PLLON bit, if the PLL clock is selected. When PLLSEL is changed, it takes a maximum
of 4 OSCCLK plus 4 PLLCLK cycles to make the transition. During the transition, all clocks freeze and
CPU activity ceases.

                         CORE CLOCK

BUS CLOCK / ECLK

                         Figure 2-18. Core Clock and Bus Clock Relationship

2.4.1.3 Clock Monitor (CM)

If no OSCCLK edges are detected within a certain time, the clock monitor within the oscillator block
generates a clock monitor fail event. The CRG then asserts self clock mode or generates a system reset
depending on the state of SCME bit. If the clock monitor is disabled or the presence of clocks is detected
no failure is indicated by the oscillator block.The clock monitor function is enabled/disabled by the CME
control bit.

2.4.1.4 Clock Quality Checker

The clock monitor performs a coarse check on the incoming clock signal. The clock quality checker
provides a more accurate check in addition to the clock monitor.

A clock quality check is triggered by any of the following events:
    Power on reset (POR)
    Low voltage reset (LVR)
    Wake-up from full stop mode (exit full stop)
    Clock monitor fail indication (CM fail)

A time window of 50,000 VCO clock cycles1 is called check window.

1. VCO clock cycles are generated by the PLL when running at minimum frequency fSCM.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                            101
Chapter 2 Clocks and Reset Generator (S12CRGV6)

A number greater equal than 4096 rising OSCCLK edges within a check window is called osc ok. Note that
osc ok immediately terminates the current check window. See Figure 2-19 as an example.

                                                                               check window

                              1        2  3                                          49999       50000

                 VCO

                 Clock

                                 12345                   4096

                 OSCCLK

                                                              4095
                                                                           osc ok

                                 Figure 2-19. Check Window Example

The sequence for clock quality check is shown in Figure 2-20.

     Clock OK                 CM fail

                              exit full stop                                                    no

     POR            SCME = 1 & yes num = 0                Enter SCM                         FSTWKP = 0
            LVR     FSTWKP = 1                           Clock Monitor Reset                       ?

                           ?                                                                   yes
                       no

     num = 50                                                       Enter SCM               no          num = 0
                                                                                yes
                                                                                      SCM
                                          num=num1                                  active?
                                                   yes
     check window                                               no

                                            num > 0                                         yes
                                                  ?
                 osc ok   no                                                         SCME=1         no

                 ?                                                                   ?

                 yes

                 SCM      yes          Switch to OSCCLK
                                            Exit SCM
                 active?

                 no

                          Figure 2-20. Sequence for Clock Quality Check

                                 MC9S12XDP512 Data Sheet, Rev. 2.17

102                                                                                                 Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

                                                           NOTE
                  Remember that in parallel to additional actions caused by self clock mode
                  or clock monitor reset1 handling the clock quality checker continues to
                  check the OSCCLK signal.

                  The clock quality checker enables the PLL and the voltage regulator
                  (VREG) anytime a clock check has to be performed. An ongoing clock
                  quality check could also cause a running PLL (fSCM) and an active VREG
                  during pseudo stop mode or wait mode.

2.4.1.5 Computer Operating Properly Watchdog (COP)

The COP (free running watchdog timer) enables the user to check that a program is running and
sequencing properly. When the COP is being used, software is responsible for keeping the COP from
timing out. If the COP times out it is an indication that the software is no longer being executed in the
intended sequence; thus a system reset is initiated (see Section 2.4.1.5, "Computer Operating Properly
Watchdog (COP)"). The COP runs with a gated OSCCLK. Three control bits in the COPCTL register
allow selection of seven COP time-out periods.

When COP is enabled, the program must write 0x_55 and 0x_AA (in this order) to the ARMCOP register
during the selected time-out period. Once this is done, the COP time-out period is restarted. If the program
fails to do this and the COP times out, the part will reset. Also, if any value other than 0x_55 or 0x_AA is
written, the part is immediately reset.

Windowed COP operation is enabled by setting WCOP in the COPCTL register. In this mode, writes to
the ARMCOP register to clear the COP timer must occur in the last 25% of the selected time-out period.
A premature write will immediately reset the part.

If PCE bit is set, the COP will continue to run in pseudo stop mode.

2.4.1.6 Real Time Interrupt (RTI)

The RTI can be used to generate a hardware interrupt at a fixed periodic rate. If enabled (by setting
RTIE = 1), this interrupt will occur at the rate selected by the RTICTL register. The RTI runs with a gated
OSCCLK. At the end of the RTI time-out period the RTIF flag is set to 1 and a new RTI time-out period
starts immediately.

A write to the RTICTL register restarts the RTI time-out period.

If the PRE bit is set, the RTI will continue to run in pseudo stop mode.

2.4.2 Operating Modes

2.4.2.1 Normal Mode

The CRG block behaves as described within this specification in all normal modes.

1. A Clock Monitor Reset will always set the SCME bit to logical 1.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                              103
Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.4.2.2 Self Clock Mode

The VCO has a minimum operating frequency, fSCM. If the external clock frequency is not available due
to a failure or due to long crystal start-up time, the bus clock and the core clock are derived from the VCO
running at minimum operating frequency; this mode of operation is called self clock mode. This requires
CME = 1 and SCME = 1. If the MCU was clocked by the PLL clock prior to entering self clock mode, the
PLLSEL bit will be cleared. If the external clock signal has stabilized again, the CRG will automatically
select OSCCLK to be the system clock and return to normal mode. Section 2.4.1.4, "Clock Quality
Checker" for more information on entering and leaving self clock mode.

                                                           NOTE

                  In order to detect a potential clock loss the CME bit should be always
                  enabled (CME = 1)!

                  If CME bit is disabled and the MCU is configured to run on PLL clock
                  (PLLCLK), a loss of external clock (OSCCLK) will not be detected and will
                  cause the system clock to drift towards the VCO's minimum frequency
                  fSCM. As soon as the external clock is available again the system clock
                  ramps up to its PLL target frequency. If the MCU is running on external
                  clock any loss of clock will cause the system to go static.

2.4.3 Low Power Options

This section summarizes the low power options available in the CRG.

2.4.3.1 Run Mode
The RTI can be stopped by setting the associated rate select bits to 0.
The COP can be stopped by setting the associated rate select bits to 0.

2.4.3.2 Wait Mode

The WAI instruction puts the MCU in a low power consumption stand-by mode depending on setting of
the individual bits in the CLKSEL register. All individual wait mode configuration bits can be superposed.
This provides enhanced granularity in reducing the level of power consumption during wait mode.
Table 2-11 lists the individual configuration bits and the parts of the MCU that are affected in wait mode

             .

                                         Table 2-11. MCU Configuration During Wait Mode

                        PLLWAI  RTIWAI   COPWAI

                   PLL Stopped  --                                       --

                   RTI  --      Stopped                                  --

                   COP  --      --       Stopped

After executing the WAI instruction the core requests the CRG to switch MCU into wait mode. The CRG
then checks whether the PLLWAI bit is asserted (Figure 2-21). Depending on the configuration, the CRG
switches the system and core clocks to OSCCLK by clearing the PLLSEL bit and disables the PLL. As
soon as all clocks are switched off wait mode is active.

                        MC9S12XDP512 Data Sheet, Rev. 2.17

104                                                                          Freescale Semiconductor
                                                                Chapter 2 Clocks and Reset Generator (S12CRGV6)

CPU Req's
Wait Mode.

                      No
PLLWAI=1

      ?
         Yes

Clear PLLSEL,
Disable PLL

                                                   Enter        CME=1       No                 No
                                                Wait Mode
                                                                ?                           INT
                                  Wait Mode left                                             ?
                          due to external reset                    Yes
                                                                                               Yes
                                              Exit Wait w.
                                               ext.RESET        CM Fail     No

                                                                ?

                                                                   Yes

                          Exit Wait w.                      No  SCME=1
                                                                     ?
                          CMRESET
                                                                       Yes

                                                                SCMIE=1     No                  Exit
                                                                                            Wait Mode

                                                                ?

                                        Generate                   Yes
                                  SCM Interrupt
                          (Wakeup from Wait)                                                SCM=1      No

                                                                    Exit                    ?
                                                                Wait Mode

                                                                                               Yes

                                                                Enter                       Enter
                                                                SCM                         SCM

                                                                               Continue w.
                                                                                Normal OP

                          Figure 2-21. Wait Mode Entry/Exit Sequence

                          MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                    105
Chapter 2 Clocks and Reset Generator (S12CRGV6)

There are four different scenarios for the CRG to restart the MCU from wait mode:

    External reset
    Clock monitor reset
    COP reset
    Any interrupt

If the MCU gets an external reset or COP reset during wait mode active, the CRG asynchronously restores
all configuration bits in the register space to its default settings and starts the reset generator. After
completing the reset sequence processing begins by fetching the normal or COP reset vector. Wait mode
is left and the MCU is in run mode again.

If the clock monitor is enabled (CME = 1) the MCU is able to leave wait mode when loss of
oscillator/external clock is detected by a clock monitor fail. If the SCME bit is not asserted the CRG
generates a clock monitor fail reset (CMRESET). The CRG's behavior for CMRESET is the same
compared to external reset, but another reset vector is fetched after completion of the reset sequence. If the
SCME bit is asserted the CRG generates a SCM interrupt if enabled (SCMIE = 1). After generating the
interrupt the CRG enters self-clock mode and starts the clock quality checker (Section 2.4.1.4, "Clock
Quality Checker"). Then the MCU continues with normal operation.If the SCM interrupt is blocked by
SCMIE = 0, the SCMIF flag will be asserted and clock quality checks will be performed but the MCU will
not wake-up from wait-mode.

If any other interrupt source (e.g., RTI) triggers exit from wait mode, the MCU immediately continues with
normal operation. If the PLL has been powered-down during wait mode, the PLLSEL bit is cleared and
the MCU runs on OSCCLK after leaving wait mode. The software must manually set the PLLSEL bit
again, in order to switch system and core clocks to the PLLCLK.

If wait mode is entered from self-clock mode the CRG will continue to check the clock quality until clock
check is successful. The PLL and voltage regulator (VREG) will remain enabled.

Table 2-12 summarizes the outcome of a clock loss while in wait mode.

2.4.3.3 System Stop Mode

All clocks are stopped in STOP mode, dependent of the setting of the PCE, PRE, and PSTP bit. The
oscillator is disabled in STOP mode unless the PSTP bit is set. All counters and dividers remain frozen but
do not initialize. If the PRE or PCE bits are set, the RTI or COP continues to run in pseudo stop mode. In
addition to disabling system and core clocks the CRG requests other functional units of the MCU (e.g.,
voltage-regulator) to enter their individual power saving modes (if available). This is the main difference
between pseudo stop mode and wait mode.

If the PLLSEL bit is still set when entering stop mode, the CRG will switch the system and core clocks to
OSCCLK by clearing the PLLSEL bit. Then the CRG disables the PLL, disables the core clock and finally
disables the remaining system clocks. As soon as all clocks are switched off, stop mode is active.

If pseudo stop mode (PSTP = 1) is entered from self-clock mode, the CRG will continue to check the clock
quality until clock check is successful. The PLL and the voltage regulator (VREG) will remain enabled. If
full stop mode (PSTP = 0) is entered from self-clock mode, an ongoing clock quality check will be
stopped. A complete timeout window check will be started when stop mode is left again.

Wake-up from stop mode also depends on the setting of the PSTP bit.

     MC9S12XDP512 Data Sheet, Rev. 2.17

106                                      Freescale Semiconductor
                                                                   Chapter 2 Clocks and Reset Generator (S12CRGV6)

                         Table 2-12. Outcome of Clock Loss in Wait Mode

CME  SCME  SCMIE                                                   CRG Actions
  0     X
  1     0  X             Clock failure -->
                              No action, clock loss not detected.
  1     1
           X             Clock failure -->
  1     1                     CRG performs Clock Monitor Reset immediately

                         Clock failure -->

                         Scenario 1: OSCCLK recovers prior to exiting wait mode.

                         MCU remains in wait mode,

                         VREG enabled,

                         PLL enabled,

                         SCM activated,

                         Start clock quality check,

                         Set SCMIF interrupt flag.

                         Some time later OSCCLK recovers.

                         CM no longer indicates a failure,

                         4096 OSCCLK cycles later clock quality check indicates clock o.k.,

                         SCM deactivated,

                         PLL disabled depending on PLLWAI,

                         VREG remains enabled (never gets disabled in wait mode).

                         MCU remains in wait mode.

                         Some time later either a wakeup interrupt occurs (no SCM interrupt)

                         Exit wait mode using OSCCLK as system clock (SYSCLK),

           0                  Continue normal operation.
                         or an External Reset is applied.

                         Exit wait mode using OSCCLK as system clock,

                         Start reset sequence.

                         Scenario 2: OSCCLK does not recover prior to exiting wait mode.

                         MCU remains in wait mode,

                         VREG enabled,

                         PLL enabled,

                         SCM activated,

                         Start clock quality check,

                         Set SCMIF interrupt flag,

                         Keep performing clock quality checks (could continue infinitely) while in wait mode.

                         Some time later either a wakeup interrupt occurs (no SCM interrupt)

                         Exit wait mode in SCM using PLL clock (fSCM) as system clock,
                         Continue to perform additional clock quality checks until OSCCLK is o.k. again.

                         or an External RESET is applied.

                         Exit wait mode in SCM using PLL clock (fSCM) as system clock,
                         Start reset sequence,

                         Continue to perform additional clock quality checks until OSCCLKis o.k.again.

                         Clock failure -->

                         VREG enabled,

                         PLL enabled,

                         SCM activated,

           1             Start clock quality check,

                         SCMIF set.

                         SCMIF generates self clock mode wakeup interrupt.

                         Exit wait mode in SCM using PLL clock (fSCM) as system clock,
                         Continue to perform a additional clock quality checks until OSCCLK is o.k. again.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                     107
Chapter 2 Clocks and Reset Generator (S12CRGV6)

                                                                     Core req's
                                                                     Stop Mode.

                                                                     Clear PLLSEL,
                                                                      Disable PLL

                             Exit Stop w.         Stop Mode left        Enter
                             ext.RESET        due to external reset  Stop Mode

                             No                          No                         Yes                                    No                         No
                                                                                                                                   INT
                                              INT                    PSTP=1              CME=1
                                                                                                                                     ?
                                              ?                      ?                   ?                                             Yes

                                                 Yes                                                                               Exit
                                                                                                                      Yes      Stop Mode

                                              SCME=1 & Yes                                                  No                                     No
                                              FSTWKP=1                                   CM fail                                SCM=1

                                                    ?                                       ?                                       ?
                                              No                                                                                      Yes
                                                                                              Yes
                                                                                                                                  Enter
                                          No  Clock                  Exit Stop w.   no   SCME=1                                   SCM
                                               OK                                             ?
                      SCME=1                    ?                    CMRESET                    Yes
                           ?
     Exit Stop w. No          Yes                Yes                                                         No
     CMRESET                                                                             SCMIE=1
                          Exit
                      Stop Mode                              Exit                             ?
                                                         Stop Mode                              Yes

                                                  Exit             Generate                  Exit
                                              Stop Mode         SCM Interrupt            Stop Mode
                                                            (Wakeup from Stop)

                      Enter                              Enter SCM                       Enter
                      SCM                                SCMIF not                       SCM

                                                             set!

                                                                            Continue w.
                                                                            normal OP

                                 Figure 2-22. Stop Mode Entry/Exit Sequence

                                              MC9S12XDP512 Data Sheet, Rev. 2.17

108                                                                                                                            Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.4.3.3.1 Wake-up from Pseudo Stop Mode (PSTP=1)

Wake-up from pseudo stop mode is the same as wake-up from wait mode. There are also four different
scenarios for the CRG to restart the MCU from pseudo stop mode:

    External reset
    Clock monitor fail
    COP reset
    Wake-up interrupt

If the MCU gets an external reset or COP reset during pseudo stop mode active, the CRG asynchronously
restores all configuration bits in the register space to its default settings and starts the reset generator. After
completing the reset sequence processing begins by fetching the normal or COP reset vector. pseudo stop
mode is left and the MCU is in run mode again.

If the clock monitor is enabled (CME = 1), the MCU is able to leave pseudo stop mode when loss of
oscillator/external clock is detected by a clock monitor fail. If the SCME bit is not asserted the CRG
generates a clock monitor fail reset (CMRESET). The CRG's behavior for CMRESET is the same
compared to external reset, but another reset vector is fetched after completion of the reset sequence. If the
SCME bit is asserted the CRG generates a SCM interrupt if enabled (SCMIE = 1). After generating the
interrupt the CRG enters self-clock mode and starts the clock quality checker (Section 2.4.1.4, "Clock
Quality Checker"). Then the MCU continues with normal operation. If the SCM interrupt is blocked by
SCMIE=0, the SCMIF flag will be asserted but the CRG will not wake-up from pseudo stop mode.

If any other interrupt source (e.g., RTI) triggers exit from pseudo stop mode, the MCU immediately
continues with normal operation. Because the PLL has been powered-down during stop mode, the
PLLSEL bit is cleared and the MCU runs on OSCCLK after leaving stop mode. The software must set the
PLLSEL bit again, in order to switch system and core clocks to the PLLCLK.

Table 2-13 summarizes the outcome of a clock loss while in pseudo stop mode.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      109
Chapter 2 Clocks and Reset Generator (S12CRGV6)

              Table 2-13. Outcome of Clock Loss in Pseudo Stop Mode

CME  SCME  SCMIE                                            CRG Actions
  0     X
  1     0  X      Clock failure -->
                       No action, clock loss not detected.
  1     1
           X      Clock failure -->
  1     1              CRG performs Clock Monitor Reset immediately

                  Clock Monitor failure -->

                  Scenario 1: OSCCLK recovers prior to exiting pseudo stop mode.

                   MCU remains in pseudo stop mode,

                   VREG enabled,

                   PLL enabled,

                   SCM activated,

                   Start clock quality check,

                   Set SCMIF interrupt flag.

                  Some time later OSCCLK recovers.

                   CM no longer indicates a failure,

                   4096 OSCCLK cycles later clock quality check indicates clock o.k.,

                   SCM deactivated,

                   PLL disabled,

                   VREG disabled.

                   MCU remains in pseudo stop mode.

                  Some time later either a wakeup interrupt occurs (no SCM interrupt)

                   Exit pseudo stop mode using OSCCLK as system clock (SYSCLK),

                   Continue normal operation.

           0      or an External Reset is applied.

                   Exit pseudo stop mode using OSCCLK as system clock,

                   Start reset sequence.

                  Scenario 2: OSCCLK does not recover prior to exiting pseudo stop mode.

                   MCU remains in pseudo stop mode,

                   VREG enabled,

                   PLL enabled,

                   SCM activated,

                   Start clock quality check,

                   Set SCMIF interrupt flag,

                   Keep performing clock quality checks (could continue infinitely) while

                  in pseudo stop mode.

                  Some time later either a wakeup interrupt occurs (no SCM interrupt)

                   Exit pseudo stop mode in SCM using PLL clock (fSCM) as system clock
                   Continue to perform additional clock quality checks until OSCCLK is o.k. again.

                  or an External RESET is applied.

                   Exit pseudo stop mode in SCM using PLL clock (fSCM) as system clock
                   Start reset sequence,

                   Continue to perform additional clock quality checks until OSCCLK is o.k.again.

                  Clock failure -->

                   VREG enabled,

                   PLL enabled,

                   SCM activated,

           1       Start clock quality check,

                   SCMIF set.

                  SCMIF generates self clock mode wakeup interrupt.

                   Exit pseudo stop mode in SCM using PLL clock (fSCM) as system clock,
                   Continue to perform a additional clock quality checks until OSCCLK is o.k. again.

                  MC9S12XDP512 Data Sheet, Rev. 2.17

110                                                                      Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.4.3.3.2 Wake-up from Full Stop (PSTP = 0)

The MCU requires an external interrupt or an external reset in order to wake-up from stop-mode.

If the MCU gets an external reset during full stop mode active, the CRG asynchronously restores all
configuration bits in the register space to its default settings and will perform a maximum of 50 clock
check_windows (see Section 2.4.1.4, "Clock Quality Checker"). After completing the clock quality check
the CRG starts the reset generator. After completing the reset sequence processing begins by fetching the
normal reset vector. Full stop-mode is left and the MCU is in run mode again.

If the MCU is woken-up by an interrupt and the fast wake-up feature is disabled (FSTWKP = 0 or
SCME = 0), the CRG will also perform a maximum of 50 clock check_windows (see Section 2.4.1.4,
"Clock Quality Checker"). If the clock quality check is successful, the CRG will release all system and
core clocks and will continue with normal operation. If all clock checks within the Timeout-Window are
failing, the CRG will switch to self-clock mode or generate a clock monitor reset (CMRESET) depending
on the setting of the SCME bit.

If the MCU is woken-up by an interrupt and the fast wake-up feature is enabled (FSTWKP = 1 and
SCME = 1), the system will immediately resume operation in self-clock mode (see Section 2.4.1.4, "Clock
Quality Checker"). The SCMIF flag will not be set. The system will remain in self-clock mode with
oscillator disabled until FSTWKP bit is cleared. The clearing of FSTWKP will start the oscillator and the
clock quality check. If the clock quality check is successful, the CRG will switch all system clocks to
oscillator clock. The SCMIF flag will be set. See application examples in Figure 2-23 and Figure 2-24.

Because the PLL has been powered-down during stop-mode the PLLSEL bit is cleared and the MCU runs
on OSCCLK after leaving stop-mode. The software must manually set the PLLSEL bit again, in order to
switch system and core clocks to the PLLCLK.

                                                           NOTE
                  In full stop mode or self-clock mode caused by the fast wake-up feature, the
                  clock monitor and the oscillator are disabled.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      111
Chapter 2 Clocks and Reset Generator (S12CRGV6)

                       CPU resumes program execution immediately

Instruction                   IRQ Service STOP                        IRQ Service STOP         IRQ Service
FSTWKP=1 SCME=1 STOP  Interrupt                              Interrupt                    Interrupt

Oscillator Clock                                     Power Saving

PLL Clock                                        Oscillator Disabled
Core Clock                                                                Self-Clock Mode

                               Figure 2-23. Fast Wake-up from Full Stop Mode: Example 1

.

                  CPU resumes program execution immediately

Instruction            IRQ Service FSTWKP=0 SCMIE=1               Freq. Uncritical         Freq. Critical
FSTWKP=1 SCME=1 STOP                                              Instructions            Instr. Possible

                       IRQ Interrupt                                                       SCM Interrupt

Oscillator Clock                                              Clock Quality Check

                       Oscillator Disabled       OSC Startup

PLL Clock                                        Self-Clock Mode
Core Clock

                  Figure 2-24. Fast Wake-up from Full Stop Mode: Example 2

                       MC9S12XDP512 Data Sheet, Rev. 2.17

112                                                                                        Freescale Semiconductor
                                                Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.5 Resets

This section describes how to reset the CRG, and how the CRG itself controls the reset of the MCU. It
explains all special reset requirements. Since the reset generator for the MCU is part of the CRG, this
section also describes all automatic actions that occur during or as a result of individual reset conditions.
The reset values of registers and signals are provided in Section 2.3, "Memory Map and Register
Definition". All reset sources are listed in Table 2-14. Refer to MCU specification for related vector
addresses and priorities.

                                                        Table 2-14. Reset Summary

                              Reset Source                 Local Enable
                             Power on Reset                      None
                           Low Voltage Reset                     None
                             External Reset                      None
                         Illegal Address Reset                   None
                          Clock Monitor Reset
                         COP Watchdog Reset     PLLCTL (CME = 1, SCME = 0)
                                                  COPCTL (CR[2:0] nonzero)

2.5.1 Description of Reset Operation

The reset sequence is initiated by any of the following events:

    Low level is detected at the RESET pin (external reset)
    Power on is detected
    Low voltage is detected
    Illegal Address Reset is detected (see S12XMMC Block Guide for details)
    COP watchdog times out
    Clock monitor failure is detected and self-clock mode was disabled (SCME=0)

Upon detection of any reset event, an internal circuit drives the RESET pin low for 128 SYSCLK cycles
(see Figure 2-25). Since entry into reset is asynchronous, it does not require a running SYSCLK. However,
the internal reset circuit of the CRG cannot sequence out of current reset condition without a running
SYSCLK. The number of 128 SYSCLK cycles might be increased by n = 3 to 6 additional SYSCLK cycles
depending on the internal synchronization latency. After 128 + n SYSCLK cycles the RESET pin is
released. The reset generator of the CRG waits for additional 64 SYSCLK cycles and then samples the
RESET pin to determine the originating source. Table 2-15 shows which vector will be fetched.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                     113
Chapter 2 Clocks and Reset Generator (S12CRGV6)

                        Table 2-15. Reset Vector Selection

Sampled RESET Pin    Clock Monitor               COP                                 Vector Fetch
       (64 cycles
                     Reset Pending Reset Pending            POR / LVR / Illegal Address Reset / External Reset
     after release)                                                             Clock Monitor Reset
                     0                           0                                    COP Reset
             1
             1       1                           X          POR / LVR / Illegal Address Reset / External Reset
             1                                                                with rise of RESET pin
             0       0                           1

                     X                           X

                                                           NOTE

                  External circuitry connected to the RESET pin should not include a large
                  capacitance that would interfere with the ability of this signal to rise to a
                  valid logic 1 within 64 SYSCLK cycles after the low drive is released.

The internal reset of the MCU remains asserted while the reset generator completes the 192 SYSCLK long
reset sequence. The reset generator circuitry always makes sure the internal reset is deasserted
synchronously after completion of the 192 SYSCLK cycles. In case the RESET pin is externally driven
low for more than these 192 SYSCLK cycles (external reset), the internal reset remains asserted too.

      RESET                         )(                )(
     SYSCLK
                        CRG drives RESET pin low                   RESET pin
                                                                   released

                                                      )            )          )

                                                         (            (          (

                                                  128 + n cycles   64 cycles

                        Possibly                 With n being                 Possibly
                        SYSCLK                   min 3 / max 6                RESET
                        not                      cycles depending             driven low
                        running                  on internal                  externally
                                                 synchronization
                                                 delay

                                    Figure 2-25. RESET Timing

                        MC9S12XDP512 Data Sheet, Rev. 2.17

114                                                                                       Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.5.2 Clock Monitor Reset

The CRG generates a clock monitor reset in case all of the following conditions are true:
    Clock monitor is enabled (CME = 1)
    Loss of clock is detected
    Self-clock mode is disabled (SCME = 0).

The reset event asynchronously forces the configuration registers to their default settings (see Section 2.3,
"Memory Map and Register Definition"). In detail the CME and the SCME are reset to logical `1' (which
doesn't change the state of the CME bit, because it has already been set). As a consequence the CRG
immediately enters self clock mode and starts its internal reset sequence. In parallel the clock quality check
starts. As soon as clock quality check indicates a valid oscillator clock the CRG switches to OSCCLK and
leaves self clock mode. Since the clock quality checker is running in parallel to the reset generator, the
CRG may leave self clock mode while still completing the internal reset sequence. When the reset
sequence is finished, the CRG checks the internally latched state of the clock monitor fail circuit. If a clock
monitor fail is indicated, processing begins by fetching the clock monitor reset vector.

2.5.3 Computer Operating Properly Watchdog (COP) Reset

When COP is enabled, the CRG expects sequential write of 0x_55 and 0x_AA (in this order) to the
ARMCOP register during the selected time-out period. Once this is done, the COP time-out period restarts.
If the program fails to do this the CRG will generate a reset. Also, if any value other than 0x_55 or 0x_AA
is written, the CRG immediately generates a reset. In case windowed COP operation is enabled writes
(0x_55 or 0x_AA) to the ARMCOP register must occur in the last 25% of the selected time-out period. A
premature write the CRG will immediately generate a reset.

As soon as the reset sequence is completed the reset generator checks the reset condition. If no clock
monitor failure is indicated and the latched state of the COP timeout is true, processing begins by fetching
the COP vector.

2.5.4 Power On Reset, Low Voltage Reset

The on-chip voltage regulator detects when VDD to the MCU has reached a certain level and asserts power
on reset or low voltage reset or both. As soon as a power on reset or low voltage reset is triggered the CRG
performs a quality check on the incoming clock signal. As soon as clock quality check indicates a valid
oscillator clock signal, the reset sequence starts using the oscillator clock. If after 50 check windows the
clock quality check indicated a non-valid oscillator clock, the reset sequence starts using self-clock mode.

Figure 2-26 and Figure 2-27 show the power-up sequence for cases when the RESET pin is tied to VDD
and when the RESET pin is held low.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      115
Chapter 2 Clocks and Reset Generator (S12CRGV6)

     RESET                                       Clock Quality Check
                                                 (no Self-Clock Mode)

                                                   )(

       Internal POR                              )(
     Internal RESET
                                                 128 SYSCLK

                                                 )(      64 SYSCLK

     Figure 2-26. RESET Pin Tied to VDD (by a pull-up resistor)

     RESET                                       Clock Quality Check
                                                 (no Self Clock Mode)

                                                       )(

       Internal POR                                 )(
     Internal RESET                              128 SYSCLK

                                                     )(  64 SYSCLK

                     Figure 2-27. RESET Pin Held Low Externally

2.6 Interrupts

The interrupts/reset vectors requested by the CRG are listed in Table 2-16. Refer to MCU specification for
related vector addresses and priorities.

                                                    Table 2-16. CRG Interrupt Vectors

                Interrupt Source                 CCR            Local Enable
                                                 Mask
                Real time interrupt                            CRGINT (RTIE)
                  LOCK interrupt                  I bit      CRGINT (LOCKIE)
                   SCM interrupt                  I bit      CRGINT (SCMIE)
                                                  I bit

2.6.1 Real Time Interrupt

The CRG generates a real time interrupt when the selected interrupt time period elapses. RTI interrupts are
locally disabled by setting the RTIE bit to 0. The real time interrupt flag (RTIF) is set to1 when a timeout
occurs, and is cleared to 0 by writing a 1 to the RTIF bit.

The RTI continues to run during pseudo stop mode if the PRE bit is set to 1. This feature can be used for
periodic wakeup from pseudo stop if the RTI interrupt is enabled.

                     MC9S12XDP512 Data Sheet, Rev. 2.17

116                                                                           Freescale Semiconductor
                                                                                                                    Chapter 2 Clocks and Reset Generator (S12CRGV6)

2.6.2 PLL Lock Interrupt

The CRG generates a PLL Lock interrupt when the LOCK condition of the PLL has changed, either from
a locked state to an unlocked state or vice versa. Lock interrupts are locally disabled by setting the
LOCKIE bit to 0. The PLL Lock interrupt flag (LOCKIF) is set to1 when the LOCK condition has
changed, and is cleared to 0 by writing a 1 to the LOCKIF bit.

2.6.3 Self Clock Mode Interrupt

The CRG generates a self clock mode interrupt when the SCM condition of the system has changed, either
entered or exited self clock mode. SCM conditions can only change if the self clock mode enable bit
(SCME) is set to 1. SCM conditions are caused by a failing clock quality check after power on reset (POR)
or low voltage reset (LVR) or recovery from full stop mode (PSTP = 0) or clock monitor failure. For details
on the clock quality check refer to Section 2.4.1.4, "Clock Quality Checker". If the clock monitor is
enabled (CME = 1) a loss of external clock will also cause a SCM condition (SCME = 1).

SCM interrupts are locally disabled by setting the SCMIE bit to 0. The SCM interrupt flag (SCMIF) is set
to1 when the SCM condition has changed, and is cleared to 0 by writing a 1 to the SCMIF bit.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      117
Chapter 2 Clocks and Reset Generator (S12CRGV6)

     MC9S12XDP512 Data Sheet, Rev. 2.17

118                                              Freescale Semiconductor
Chapter 3
Pierce Oscillator (S12XOSCLCPV1)

3.1 Introduction

The Pierce oscillator (XOSC) module provides a robust, low-noise and low-power clock source. The
module will be operated from the VDDPLL supply rail (2.5 V nominal) and require the minimum number
of external components. It is designed for optimal start-up margin with typical crystal oscillators.

3.1.1 Features

The XOSC will contain circuitry to dynamically control current gain in the output amplitude. This ensures
a signal with low harmonic distortion, low power and good noise immunity.

    High noise immunity due to input hysteresis
    Low RF emissions with peak-to-peak swing limited dynamically
    Transconductance (gm) sized for optimum start-up margin for typical oscillators
    Dynamic gain control eliminates the need for external current limiting resistor
    Integrated resistor eliminates the need for external bias resistor
    Low power consumption:

         -- Operates from 2.5 V (nominal) supply
         -- Amplitude control limits power
    Clock monitor

3.1.2 Modes of Operation

Two modes of operation exist:
    1. Loop controlled Pierce oscillator
    2. External square wave mode featuring also full swing Pierce without internal feedback resistor

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      119
Chapter 3 Pierce Oscillator (S12XOSCLCPV1)                                           Monitor_Failure

3.1.3 Block Diagram

Figure 3-1 shows a block diagram of the XOSC.

                                                                             Clock
                                                                            Monitor

                                                                                     OSCCLK

       Peak    Gain Control
     Detector                         VDDPLL = 2.5 V

     EXTAL     Rf
                                         XTAL

                                                    Figure 3-1. XOSC Block Diagram

3.2 External Signal Description

This section lists and describes the signals that connect off chip

3.2.1 VDDPLL and VSSPLL -- Operating and Ground Voltage Pins

Theses pins provides operating voltage (VDDPLL) and ground (VSSPLL) for the XOSC circuitry. This
allows the supply voltage to the XOSC to be independently bypassed.

3.2.2 EXTAL and XTAL -- Input and Output Pins

These pins provide the interface for either a crystal or a CMOS compatible clock to control the internal
clock generator circuitry. EXTAL is the external clock input or the input to the crystal oscillator amplifier.
XTAL is the output of the crystal oscillator amplifier. The MCU internal system clock is derived from the

               MC9S12XDP512 Data Sheet, Rev. 2.17

120                                                                                                   Freescale Semiconductor
                                                                                                                             Chapter 3 Pierce Oscillator (S12XOSCLCPV1)

EXTAL input frequency. In full stop mode (PSTP = 0), the EXTAL pin is pulled down by an internal
resistor of typical 200 k.

                                                           NOTE
                  Freescale recommends an evaluation of the application board and chosen
                  resonator or crystal by the resonator or crystal supplier.

                  Loop controlled circuit is not suited for overtone resonators and crystals.

                                    EXTAL

                         MCU                           C1

                                                 Crystal or
                                             Ceramic Resonator

                                    XTAL

                                             C2
                                                          VSSPLL

Figure 3-2. Loop Controlled Pierce Oscillator Connections (XCLKS = 1)

                                         NOTE

Full swing Pierce circuit is not suited for overtone resonators and crystals
without a careful component selection.

                         EXTAL

                                             C1

                         MCU             RB      Crystal or
                              XTAL  RS*      Ceramic Resonator

                                                                                         C2
                                                                                                      VSSPLL

                         * Rs can be zero (shorted) when use with higher frequency crystals.
                          Refer to manufacturer's data.

Figure 3-3. Full Swing Pierce Oscillator Connections (XCLKS = 0)

                            EXTAL                           CMOS Compatible
                         MCU                                External Oscillator

                              XTAL                            (VDDPLL Level)

                                             Not Connected

                         Figure 3-4. External Clock Connections (XCLKS = 0)

                                    MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                                       121
Chapter 3 Pierce Oscillator (S12XOSCLCPV1)

3.2.3 XCLKS -- Input Signal

The XCLKS is an input signal which controls whether a crystal in combination with the internal loop
controlled (low power) Pierce oscillator is used or whether full swing Pierce oscillator/external clock
circuitry is used. Refer to the Device Overview chapter for polarity and sampling conditions of the XCLKS
pin. Table 3-1 lists the state coding of the sampled XCLKS signal.

             .

                                             Table 3-1. Clock Selection Based on XCLKS

     XCLKS                                  Description

     1      Loop controlled Pierce oscillator selected

     0      Full swing Pierce oscillator/external clock selected

3.3 Memory Map and Register Definition

The CRG contains the registers and associated bits for controlling and monitoring the oscillator module.

3.4 Functional Description

The XOSC module has control circuitry to maintain the crystal oscillator circuit voltage level to an optimal
level which is determined by the amount of hysteresis being used and the maximum oscillation range.

The oscillator block has two external pins, EXTAL and XTAL. The oscillator input pin, EXTAL, is
intended to be connected to either a crystal or an external clock source. The selection of loop controlled
Pierce oscillator or full swing Pierce oscillator/external clock depends on the XCLKS signal which is
sampled during reset. The XTAL pin is an output signal that provides crystal circuit feedback.

A buffered EXTAL signal becomes the internal clock. To improve noise immunity, the oscillator is
powered by the VDDPLL and VSSPLL power supply pins.

3.4.1 Gain Control

A closed loop control system will be utilized whereby the amplifier is modulated to keep the output
waveform sinusoidal and to limit the oscillation amplitude. The output peak to peak voltage will be kept
above twice the maximum hysteresis level of the input buffer. Electrical specification details are provided
in the Electrical Characteristics appendix.

3.4.2 Clock Monitor

The clock monitor circuit is based on an internal RC time delay so that it can operate without any MCU
clocks. If no OSCCLK edges are detected within this RC time delay, the clock monitor indicates failure
which asserts self-clock mode or generates a system reset depending on the state of SCME bit. If the clock
monitor is disabled or the presence of clocks is detected no failure is indicated.The clock monitor function
is enabled/disabled by the CME control bit, described in the CRG block description chapter.

            MC9S12XDP512 Data Sheet, Rev. 2.17

122                                                               Freescale Semiconductor
                                         Chapter 3 Pierce Oscillator (S12XOSCLCPV1)

3.4.3 Wait Mode Operation

During wait mode, XOSC is not impacted.

3.4.4 Stop Mode Operation

XOSC is placed in a static state when the part is in stop mode except when pseudo-stop mode is enabled.
During pseudo-stop mode, XOSC is not impacted.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      123
Chapter 3 Pierce Oscillator (S12XOSCLCPV1)

     MC9S12XDP512 Data Sheet, Rev. 2.17

124                                         Freescale Semiconductor
Chapter 4
Analog-to-Digital Converter (ATD10B16CV4)
Block Description

4.1 Introduction

The ATD10B16C is a 16-channel, 10-bit, multiplexed input successive approximation analog-to-digital
converter. Refer to the Electrical Specifications chapter for ATD accuracy.

4.1.1 Features

    8-/10-bit resolution
    7 s, 10-bit single conversion time
    Sample buffer amplifier
    Programmable sample time
    Left/right justified, signed/unsigned result data
    External trigger control
    Conversion completion interrupt generation
    Analog input multiplexer for 16 analog input channels
    Analog/digital input pin multiplexing
    1 to 16 conversion sequence lengths
    Continuous conversion mode
    Multiple channel scans
    Configurable external trigger functionality on any AD channel or any of four additional trigger

         inputs. The four additional trigger inputs can be chip external or internal. Refer to device
         specification for availability and connectivity
    Configurable location for channel wrap around (when converting multiple channels in a sequence)

4.1.2 Modes of Operation

There is software programmable selection between performing single or continuous conversion on a
single channel or multiple channels.

4.1.3 Block Diagram

Refer to Figure 4-1 for a block diagram of the ATD0B16C block.

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      125
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

     Bus Clock                    Clock                ATD clock                                    ATD10B16C
                                Prescaler
                                                                                             Sequence Complete
                 ETRIG0                       Trigger               Mode and                          Interrupt
                 ETRIG1                         Mux               Timing Control
                 ETRIG2
                 ETRIG3         ATDCTL1 ATDDIEN
     (see Device Overview
      chapter for availability
        and connectivity)

     VDDA                       PORTAD                                            Results
     VSSA
       VRH                                        Successive                         ATD 0
                                                Approximation                        ATD 1
       VRL                                     Register (SAR)                        ATD 2
     AN15                                                                            ATD 3
     AN14                                          and DAC                           ATD 4
     AN13                                                                            ATD 5
     AN12                                                                            ATD 6
     AN11                                                                            ATD 7
     AN10                                                                            ATD 8
                                                                                     ATD 9
      AN9                                                                            ATD 10
      AN8                                                                            ATD 11
                                                                                     ATD 12
      AN7                                                                            ATD 13
      AN6                                                                            ATD 14
      AN5                                                                            ATD 15
      AN4
      AN3                                               1              Sample & Hold            +
                                                                                          1
      AN2                       Analog                                                          -
      AN1                         MUX                                                        Comparator
      AN0

                                Figure 4-1. ATD10B16C Block Diagram

                                MC9S12XDP512 Data Sheet, Rev. 2.17

126                                                                                          Freescale Semiconductor
                                                                                      Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

4.2 External Signal Description

This section lists all inputs to the ATD10B16C block.

4.2.1 ANx (x = 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0) -- Analog Input
            Channel x Pins

This pin serves as the analog input channel x. It can also be configured as general-purpose digital input
and/or external trigger for the ATD conversion.

4.2.2 ETRIG3, ETRIG2, ETRIG1, ETRIG0 -- External Trigger Pins

These inputs can be configured to serve as an external trigger for the ATD conversion.
Refer to the Device Overview chapter for availability and connectivity of these inputs.

4.2.3 VRH, VRL -- High Reference Voltage Pin, Low Reference Voltage Pin

VRH is the high reference voltage, VRL is the low reference voltage for ATD conversion.

4.2.4 VDDA, VSSA -- Analog Circuitry Power Supply Pins

These pins are the power supplies for the analog circuitry of the ATD10B16CV4 block.

4.3 Memory Map and Register Definition

This section provides a detailed description of all registers accessible in the ATD10B16C.

4.3.1 Module Memory Map

Table 4-1 gives an overview of all ATD10B16C registers

                         MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                      127
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

.

                                              Table 4-1. ATD10B16CV4 Memory Map

     Address Offset                                          Use                 Access
                                                                                   R/W
     0x0000          ATD Control Register 0 (ATDCTL0)                              R/W
                                                                                   R/W
     0x0001          ATD Control Register 1 (ATDCTL1)                              R/W
                                                                                   R/W
     0x0002          ATD Control Register 2 (ATDCTL2)                              R/W
                                                                                   R/W
     0x0003          ATD Control Register 3 (ATDCTL3)
                                                                                     R
     0x0004          ATD Control Register 4 (ATDCTL4)                              R/W

     0x0005          ATD Control Register 5 (ATDCTL5)                                R
                                                                                     R
     0x0006          ATD Status Register 0 (ATDSTAT0)                              R/W
                                                                                   R/W
     0x0007                      Unimplemented                                       R
     0x0008          ATD Test Register 0 (ATDTEST0)1                                 R
                                                                                   R/W
     0x0009          ATD Test Register 1 (ATDTEST1)                                R/W
                                                                                   R/W
     0x000A          ATD Status Register 2 (ATDSTAT2)                              R/W
                                                                                   R/W
     0x000B          ATD Status Register 1 (ATDSTAT1)                              R/W
                                                                                   R/W
     0x000C          ATD Input Enable Register 0 (ATDDIEN0)                        R/W
                                                                                   R/W
     0x000D          ATD Input Enable Register 1 (ATDDIEN1)                        R/W
                                                                                   R/W
     0x000E          Port Data Register 0 (PORTAD0)                                R/W
                                                                                   R/W
     0x000F          Port Data Register 1 (PORTAD1)                                R/W
                                                                                   R/W
     0x0010, 0x0011  ATD Result Register 0 (ATDDR0H, ATDDR0L)                      R/W

     0x0012, 0x0013  ATD Result Register 1 (ATDDR1H, ATDDR1L)

     0x0014, 0x0015  ATD Result Register 2 (ATDDR2H, ATDDR2L)

     0x0016, 0x0017  ATD Result Register 3 (ATDDR3H, ATDDR3L)

     0x0018, 0x0019  ATD Result Register 4 (ATDDR4H, ATDDR4L)

     0x001A, 0x001B  ATD Result Register 5 (ATDDR5H, ATDDR5L)

     0x001C, 0x001D  ATD Result Register 6 (ATDDR6H, ATDDR6L)

     0x001E, 0x001F  ATD Result Register 7 (ATDDR7H, ATDDR7L)

     0x0020, 0x0021  ATD Result Register 8 (ATDDR8H, ATDDR8L)

     0x0022, 0x0023  ATD Result Register 9 (ATDDR9H, ATDDR9L)

     0x0024, 0x0025  ATD Result Register 10 (ATDDR10H, ATDDR10L)

     0x0026, 0x0027  ATD Result Register 11 (ATDDR11H, ATDDR11L)

     0x0028, 0x0029  ATD Result Register 12 (ATDDR12H, ATDDR12L)

     0x002A, 0x002B  ATD Result Register 13 (ATDDR13H, ATDDR13L)

     0x002C, 0x002D  ATD Result Register 14 (ATDDR14H, ATDDR14L)

     0x002E, 0x002F  ATD Result Register 15 (ATDDR15H, ATDDR15L)

     1 ATDTEST0 is intended for factory test purposes only.

                                              NOTE

     Register Address = Base Address + Address Offset, where the Base Address
     is defined at the MCU level and the Address Offset is defined at the module
     level.

                     MC9S12XDP512 Data Sheet, Rev. 2.17

128                                                                              Freescale Semiconductor
                                          Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

4.3.2 Register Descriptions

This section describes in address order all the ATD10B16C registers and their individual bits.

Register                 Bit 7  6      5      4              3          2               1       Bit 0
Name

0x0000    R              0      0      0      0              WRAP3 WRAP2 WRAP1 WRAP0

ATDCTL0   W

0x0001    R                     0      0      0
              ETRIGSEL                               ETRIGCH3 ETRIGCH2 ETRIGCH1 ETRIGCH0
ATDCTL1   W

0x0002   R                     AFFC   AWAI ETRIGLE ETRIGP ETRIGE ASCIE                         ASCIF
ATDCTL2          ADPU

          W

0x0003    R              0      S8C    S4C    S2C            S1C        FIFO            FRZ1    FRZ0

ATDCTL3   W

0x0004   R                     SMP1   SMP0   PRS4           PRS3       PRS2            PRS1    PRS0
ATDCTL4          SRES8

          W

0x0005   R                     DSGN   SCAN   MULT           CD         CC              CB      CA
ATDCTL5           DJM                                        CC3        CC2             CC1     CC0

          W

0x0006    R                     0
                   SCF                 ETORF FIFOR
ATDSTAT0  W

0x0007    R

Unimplemented W

0x0008    R                                   Unimplemented

ATDTEST0 W

0x0009    R                                   Unimplemented                                      SC
                                                                                                CCF8
ATDTEST1 W

  0x000A  R CCF15               CCF14  CCF13 CCF12 CCF11 CCF10                          CCF9
ATDSTAT2  W

  0x000B  R CCF7                CCF6   CCF5   CCF4           CCF3       CCF2            CCF1    CCF0
ATDSTAT1  W

  0x000C  R                     IEN14  IEN13  IEN12          IEN11      IEN10           IEN9    IEN8
ATDDIEN0         IEN15

          W

                                = Unimplemented or Reserved             u = Unaffected
                                      Figure 4-2. ATD Register Summary

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                              129
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

      Register             Bit 7    6         5          4                  3          2            1        Bit 0
        Name       R              IEN6      IEN5       IEN4               IEN3       IEN2         IEN1       IEN0
                                                                                                            PTAD8
       0x000D              IEN7
     ATDDIEN1      W                                                                                        PTAD0

      0x000E       R PTAD15       PTAD14    PTAD13     PTAD12             PTAD11  PTAD10          PTAD9      BIT 2
     PORTAD0       W                                                                                         BIT 0

      0x000F       R PTAD7        PTAD6     PTAD5      PTAD4              PTAD3      PTAD2        PTAD1        0
     PORTAD1       W                                                                                           0

                   R BIT 9 MSB    BIT 8     BIT 7      BIT 6              BIT 5      BIT 4        BIT 3
                       BIT 7 MSB  BIT 6     BIT 5      BIT 4              BIT 3      BIT 2        BIT 1

0x00100x002F W       BIT 1       BIT 0       0          0                  0          0            0
        ATDDRxH        u           u         0          0                  0          0            0
          ATDDRxL R

                   W

                                  = Unimplemented or Reserved                     u = Unaffected

                                  Figure 4-2. ATD Register Summary (continued)

4.3.2.1 ATD Control Register 0 (ATDCTL0)
Writes to this register will abort current conversion sequence but will not start a new sequence.

                7     6                  5          4                  3          2              1            0

     R          0     0                  0          0                                       WRAP1        WRAP0
                                                                                                1            1
                                                                       WRAP3      WRAP2

     W

     Reset      0     0                  0          0                  1          1

                      = Unimplemented or Reserved

                                  Figure 4-3. ATD Control Register 0 (ATDCTL0)

Read: Anytime
Write: Anytime

                                  Table 4-2. ATDCTL0 Field Descriptions

     Field                                             Description

     3:0    Wrap Around Channel Select Bits -- These bits determine the channel for wrap around when doing

WRAP[3:0] multi-channel conversions. The coding is summarized in Table 4-3.

                                  MC9S12XDP512 Data Sheet, Rev. 2.17

130                                                                                         Freescale Semiconductor
                                              Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

                            Table 4-3. Multi-Channel Wrap Around Coding

                WRAP3       WRAP2  WRAP1      WRAP0   Multiple Channel Conversions
                                                     (MULT = 1) Wrap Around to AN0
                    0           0      0          0
                    0           0      0          1             after Converting
                    0           0      1          0
                    0           0      1          1                  Reserved
                    0           1      0          0                     AN1
                    0           1      0          1                     AN2
                    0           1      1          0                     AN3
                    0           1      1          1                     AN4
                    1           0      0          0                     AN5
                    1           0      0          1                     AN6
                    1           0      1          0                     AN7
                    1           0      1          1                     AN8
                    1           1      0          0                     AN9
                    1           1      0          1                     AN10
                    1           1      1          0                     AN11
                    1           1      1          1                     AN12
                                                                        AN13
                                                                        AN14
                                                                        AN15

4.3.2.2 ATD Control Register 1 (ATDCTL1)
Writes to this register will abort current conversion sequence but will not start a new sequence.

          7              6         5          4      3                 2                 1         0

R                        0         0          0

       ETRIGSEL                                      ETRIGCH3 ETRIGCH2 ETRIGCH1 ETRIGCH0

W

Reset     0              0         0          0      1                 1                 1         1

                 = Unimplemented or Reserved

                            Figure 4-4. ATD Control Register 1 (ATDCTL1)

Read: Anytime

Write: Anytime

                            Table 4-4. ATDCTL1 Field Descriptions

Field                                            Description

      7   External Trigger Source Select -- This bit selects the external trigger source to be either one of the AD
ETRIGSEL  channels or one of the ETRIG[3:0] inputs. See device specification for availability and connectivity of
          ETRIG[3:0] inputs. If ETRIG[3:0] input option is not available, writing a 1 to ETRISEL only sets the bit but has
          no effect, that means one of the AD channels (selected by ETRIGCH[3:0]) remains the source for external
          trigger. The coding is summarized in Table 4-5.

3:0       External Trigger Channel Select -- These bits select one of the AD channels or one of the ETRIG[3:0] inputs

ETRIGCH[3:0] as source for the external trigger. The coding is summarized in Table 4-5.

                                   MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                               131
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

           Table 4-5. External Trigger Channel Select Coding

     ETRIGSEL ETRIGCH3 ETRIGCH2 ETRIGCH1 ETRIGCH0                         External Trigger Source

     0  0  0  0                                                        0  AN0

     0  0  0  0                                                        1  AN1

     0  0  0  1                                                        0  AN2

     0  0  0  1                                                        1  AN3

     0  0  1  0                                                        0  AN4

     0  0  1  0                                                        1  AN5

     0  0  1  1                                                        0  AN6

     0  0  1  1                                                        1  AN7

     0  1  0  0                                                        0  AN8

     0  1  0  0                                                        1  AN9

     0  1  0  1                                                        0  AN10

     0  1  0  1                                                        1  AN11

     0  1  1  0                                                        0  AN12

     0  1  1  0                                                        1  AN13

     0  1  1  1                                                        0  AN14

     0  1  1  1                                                        1    AN15
                                                                          ETRIG01
     1  0  0  0                                                        0  ETRIG11
                                                                          ETRIG21
     1  0  0  0                                                        1  ETRIG31

     1  0  0  1                                                        0

     1  0  0  1                                                        1

     1  0  1  X                                                        X  Reserved

     1  1  X  X                                                        X  Reserved

     1 Only if ETRIG[3:0] input option is available (see device specification), else ETRISEL is ignored, that means
        external trigger source remains on one of the AD channels selected by ETRIGCH[3:0]

4.3.2.3 ATD Control Register 2 (ATDCTL2)

This register controls power down, interrupt and external trigger. Writes to this register will abort current
conversion sequence but will not start a new sequence.

           MC9S12XDP512 Data Sheet, Rev. 2.17

132                                                                       Freescale Semiconductor
                                             Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

     R       7               6     5                4        3            2       1      0
     W
Reset    ADPU            AFFC   AWAI         ETRIGLE   ETRIGP       ETRIGE    ASCIE  ASCIF
            0                                                                    0
                         0      0            0         0               0                0

                = Unimplemented or Reserved

                                Figure 4-5. ATD Control Register 2 (ATDCTL2)

Read: Anytime
Write: Anytime

                                Table 4-6. ATDCTL2 Field Descriptions

  Field                                                                  Description
     7
         ATD Power Down -- This bit provides on/off control over the ATD10B16C block allowing reduced MCU power
  ADPU   consumption. Because analog electronic is turned off when powered down, the ATD requires a recovery time
         period after ADPU bit is enabled.
     6   0 Power down ATD
  AFFC   1 Normal ATD functionality

     5   ATD Fast Flag Clear All
  AWAI   0 ATD flag clearing operates normally (read the status register ATDSTAT1 before reading the result register

     4      to clear the associate CCF flag).
ETRIGLE  1 Changes all ATD conversion complete flags to a fast clear sequence. Any access to a result register will

     3      cause the associate CCF flag to clear automatically.
ETRIGP
         ATD Power Down in Wait Mode -- When entering Wait Mode this bit provides on/off control over the
     2   ATD10B16C block allowing reduced MCU power. Because analog electronic is turned off when powered down,
ETRIGE   the ATD requires a recovery time period after exit from Wait mode.
         0 ATD continues to run in Wait mode
     1   1 Halt conversion and power down ATD during Wait mode
ASCIE
            After exiting Wait mode with an interrupt conversion will resume. But due to the recovery time the result of
     0      this conversion should be ignored.
  ASCIF
         External Trigger Level/Edge Control -- This bit controls the sensitivity of the external trigger signal. See
         Table 4-7 for details.

         External Trigger Polarity -- This bit controls the polarity of the external trigger signal. See Table 4-7 for
         details.

         External Trigger Mode Enable -- This bit enables the external trigger on one of the AD channels or one of
         the ETRIG[3:0] inputs as described in Table 4-5. If external trigger source is one of the AD channels, the digital
         input buffer of this channel is enabled. The external trigger allows to synchronize the start of conversion with
         external events.
         0 Disable external trigger
         1 Enable external trigger

         ATD Sequence Complete Interrupt Enable
         0 ATD Sequence Complete interrupt requests are disabled.
         1 ATD Interrupt will be requested whenever ASCIF = 1 is set.

         ATD Sequence Complete Interrupt Flag -- If ASCIE = 1 the ASCIF flag equals the SCF flag (see
         Section 4.3.2.7, "ATD Status Register 0 (ATDSTAT0)"), else ASCIF reads zero. Writes have no effect.
         0 No ATD interrupt occurred
         1 ATD sequence complete interrupt pending

                                MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                     133
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

     Table 4-7. External Trigger Configurations

     ETRIGLE  ETRIGP  External Trigger Sensitivity
          0       0              Falling Edge
          0       1               Ring Edge
          1       0               Low Level
          1       1               High Level

              MC9S12XDP512 Data Sheet, Rev. 2.17

134                                                                    Freescale Semiconductor
                                                                                      Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

4.3.2.4 ATD Control Register 3 (ATDCTL3)
This register controls the conversion sequence length, FIFO for results registers and behavior in Freeze
Mode. Writes to this register will abort current conversion sequence but will not start a new sequence.

       7                   6    5              4    3                   2      1     0

R      0                 S8C  S4C            S2C  S1C                FIFO   FRZ1  FRZ0
                                                                              0     0
W

Reset  0                 0    1              0    0                  0

                = Unimplemented or Reserved

                              Figure 4-6. ATD Control Register 3 (ATDCTL3)

Read: Anytime
Write: Anytime

                              Table 4-8. ATDCTL3 Field Descriptions

Field                                                                  Description
  6
       Conversion Sequence Length -- This bit controls the number of conversions per sequence. Table 4-9 shows
S8C    all combinations. At reset, S4C is set to 1 (sequence length is 4). This is to maintain software continuity to HC12
       Family.
  5
S4C    Conversion Sequence Length -- This bit controls the number of conversions per sequence. Table 4-9 shows
       all combinations. At reset, S4C is set to 1 (sequence length is 4). This is to maintain software continuity to HC12
  4    Family.
S2C
       Conversion Sequence Length -- This bit controls the number of conversions per sequence. Table 4-9 shows
  3    all combinations. At reset, S4C is set to 1 (sequence length is 4). This is to maintain software continuity to HC12
S1C    Family.

       Conversion Sequence Length -- This bit controls the number of conversions per sequence. Table 4-9 shows
       all combinations. At reset, S4C is set to 1 (sequence length is 4). This is to maintain software continuity to HC12
       Family.

                              MC9S12XDP512 Data Sheet, Rev. 2.17

Freescale Semiconductor                                                                 135
Chapter 4 Analog-to-Digital Converter (ATD10B16CV4) Block Description

             Table 4-8. ATDCTL3 Field Descriptions (continued)

  Field                                                                   Description
     2
          Result Register FIFO Mode --If this bit is zero (non-FIFO mode), the A/D conversion results map into the
  FIFO    result registers based on the conversion sequence; the result of the first conversion appears in the first result
          register, the second result in the second result register, and so on.
   1:0    If this bit is one (FIFO mode) the conversion counter is not reset at the beginning or ending of a conversion
FRZ[1:0]  sequence; sequential conversion results are placed in consecutive result registers. In a continuously scanning
          conversion sequence, the result register counter will wrap around when it reaches the end of the result register
          file. The conversion counter value (CC3-0 in ATDSTAT0) can be used to determine where in the result register
          file, the current conversion result will be placed.
          Aborting a conversion or starting a new conversion by write to an ATDCTL register (ATDCTL5-0) clears the
          conversion counter even if FIFO=1. So the first result of a new conversion sequence, started by writing to
          ATDCTL5, will always be place in the first result register (ATDDDR0). Intended usage of FIFO mode is
          continuos conversion (SCAN=1) or triggered conversion (ETRIG=1).

          Finally, which result registers hold valid data can be tracked using the conversion complete flags. Fast flag clear
          mode may or may not be useful in a particular application to track valid data.
          0 Conversion results are placed in the corresponding result register up to the selected sequence length.
          1 Conversion results are placed in consecutive result registers (wrap around at end).

          Background Debug Freeze Enable -- When debugging an application, it is useful in many cases to have the
          ATD pause when a breakpoint (Freeze Mode) is encountered. These 2 bits determine how the ATD will respond
          to a breakpoint as shown in Table 4-10. Leakage onto the storage node and comparator reference capacitors
          may compromise the accuracy of an immediately frozen conversion depending on the length of the freeze
          period.

             Table 4-9. Conversion Sequence Length Coding

          S8C S4C S2C S1C  Number of Conversions
                                  per Sequence
          0  0  0  0