MC68HC908QY MC68HC908QT MC68HC908QY MC68HC908QT MC68HC908QY1 MC68HC908QT1 Data Sheet M68HC08 Microcontrollers MC68HC908QY/D Rev. 6 0/010 freescale.com
MC68HC908QY MC68HC908QT MC68HC908QY MC68HC908QT MC68HC908QY1 MC68HC908QT1 Data Sheet 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/ Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. This product incorporates SuperFlash technology licensed from SST. Freescale Semiconductor, Inc., 00 010. All rights reserved. Freescale Semiconductor
Revision History The following revision history table summarizes changes contained in this document. For your convenience, the page number designators have been linked to the appropriate location. Revision History (Sheet 1 of ) Date September, 00 December, 00 January, 00 Revision Level Description Page Number(s) N/A Initial release N/A 0.1 1. Features Added 8-pin dual flat no lead (DFN) packages to features list. 19 Figure 1-. MCU Pin Assignments Figure updated to include DFN packages. 1 Figure -1. Memory Map Clarified illegal address and unimplemented memory. 7 Figure -. Control, Status, and Data Registers Corrected bit definitions for Port A Data Register (PTA) and Data Direction Register A (DDRA). 7 Table 1-. Interrupt Sources Corrected vector addresses for keyboard interrupt and ADC conversion complete interrupt. 118 Chapter 1 System Integration Module (SIM) Removed reference to break status register as it is duplicated in break module. 11 11..1 Internal Oscillator and 11..1.1 Internal Oscillator Trimming Clarified oscillator trim option ordering information and what to expect with untrimmed 9 device. Figure 11-. Oscillator Trim Register (OSCTRIM) Bit 1 designation corrected. 98 Figure 1-1. Monitor Mode Circuit (Internal Clock, No High Voltage) Diagram updated for clarity. 10 Figure 1-1. I/O Port Register Summary Corrected bit definitions for PTA7, DDRA7, and DDRA6. 99 Figure 1-. Port A Data Register (PTA) Corrected bit definition for PTA7. 100 Figure 1-. Data Direction Register A (DDRA) Corrected bit definitions for DDRA7 and DDRA6. 101 Figure 1-6. Port B Data Register (PTB) Corrected bit definition for PTB1 10 Chapter 9 Keyboard Interrupt Module (KBI) Section reworked after deletion of auto wakeup for clarity. 8 Chapter Auto Wakeup Module (AWU) New section added for clarity. 9 Figure 10-1. LVI Module Block Diagram Corrected LVI stop representation. 87 Chapter 16 Electrical Specifications Extensive changes made to electrical specifications. 169 17. 8-Pin Dual Flat No Lead (DFN) Package (Case #1) Added case outline drawing for DFN package. 177 Chapter 17 Ordering Information and Mechanical Specifications Added ordering information for DFN package. 18 0.. Features Corrected third bulleted item. 9 Freescale Semiconductor
Revision History (Sheet of ) Date August, 00 October, 00 January, 00 Revision Level 1.0.0.0 Description Reformatted to meet latest M68HC08 documentation standards Page Number(s) Figure 1-1. Block Diagram Diagram redrawn to include keyboard interrupt module and TCLK pin designator. 0 Figure 1-. MCU Pin Assignments Added TCLK pin designator. 1 Table 1-. Pin Functions Added TCLK pin description. Table 1-. Function Priority in Shared Pins Revised table for clarity and to add TCLK. Figure -1. Memory Map Corrected names for the IRQ status and control register (INTSCR) bits 0. 6.7. ADC Input Clock Register Clarified bit description for the ADC clock prescaler bits. 7. Functional Description Updated periodic wakeup request values. 1 Figure 6-1. COP Block Diagram Reworked for clarity 9 Chapter 8 External Interrupt (IRQ) Corrected bit names for MODE, IRQF, ACK, and IMASK 77 79 Chapter 1 Timer Interface Module (TIM) Added TCLK function. 11 19 1. Monitor Module (MON) Updated with additional data. 17 Chapter 16 Electrical Specifications Updated with additional data. 169 17 Figure -. Control, Status, and Data Registers Deleted unimplemented areas from $FFB0 $FFBD and $FFC $FFCF as they are actually available. 7 Also corrected $FFBF designation from unimplemented to reserved. Figure 6-1. COP Block Diagram Reworked for clarity 9 6.. STOP Instruction Added subsection 60 1.. Active Resets from Internal Sources Reworked notes for clarity. 111 Table 1-. Reset Recovery Timing Replaced previous table with new information. 11 Chapter 1 Timer Interface Module (TIM) Updated with additional data. 11 Figure 1-. Break I/O Register Summary Corrected bit designators for the BRKAR register 1 1. Monitor Module (MON) Clarified seventh bullet. 17 Table 17-1. MC Order Numbers Corrected temperature and package designators. 17 Figure -. Control, Status, and Data Registers Corrected reset state for the FLASH Block Protect Register at address location $FFBE and the Internal Oscillator Trim Value at $FFC0. Figure -. FLASH Block Protect Register (FLBPR) Restated reset state for clarity. 8 N/A Freescale Semiconductor
Revision History Revision History (Sheet of ) Date November, 00 July, 00 March, 010 Revision Level Description Reformatted to meet current documentation standards Throughout 6..1 BUSCLKX Clarified description of BUSCLKX 8 Chapter 7 Central Processor Unit (CPU) In 7.7 Instruction Set Summary: Reworked definitions for STOP instruction Added WAIT instruction Page Number(s).0 1.8.1 SIM Reset Status Register Clarified SRSR flag setting 117 1.9.1 TIM Status and Control Register Added information to TSTOP note 17 16.8 -V Oscillator Characteristics Added values for deviation from trimmed inernal oscillator 1 16.1 -V Oscillator Characteristics Added values for deviation from trimmed inernal oscillator 18 Figure -. Configuration Register 1 (CONFIG1) Clarified bit definitions for COPRS. Chapter 8 External Interrupt (IRQ) Reworked for clarification. 7.0 11.. RC Oscillator Improved RC oscillator wording. 9 1.1 Introduction Added note pertaining to non-bonded port pins. 97 17. Package Dimensions Updated package information. 16 6, 7, 1, 6.0 Clarify internal oscillator trim register information.,, 8, 91, 96 70 71 6 Freescale Semiconductor
List of Chapters Chapter 1 General Description................................................17 Chapter Memory.......................................................... Chapter Analog-to-Digital Converter (ADC)....................................1 Chapter Auto Wakeup Module (AWU)........................................9 Chapter Configuration Register (CONFIG).................................... Chapter 6 Computer Operating Properly (COP)..................................7 Chapter 7 Central Processor Unit (CPU)........................................61 Chapter 8 External Interrupt (IRQ).............................................7 Chapter 9 Keyboard Interrupt Module (KBI).....................................79 Chapter 10 Low-Voltage Inhibit (LVI)...........................................8 Chapter 11 Oscillator Module (OSC)...........................................89 Chapter 1 Input/Output Ports (PORTS)........................................97 Chapter 1 System Integration Module (SIM)...................................10 Chapter 1 Timer Interface Module (TIM)......................................119 Chapter 1 Development Support............................................1 Chapter 16 Electrical Specifications..........................................19 Chapter 17 Ordering Information and Mechanical Specifications..................16 Freescale Semiconductor 7
List of Chapters 8 Freescale Semiconductor
Table of Contents Chapter 1 General Description 1.1 Introduction................................................................ 17 1. Features................................................................... 17 1. MCU Block Diagram......................................................... 19 1. Pin Assignments............................................................ 19 1. Pin Functions............................................................... 1.6 Pin Function Priority.......................................................... Chapter Memory.1 Introduction................................................................. Unimplemented Memory Locations............................................... Reserved Memory Locations.................................................... Input/Output (I/O) Section..................................................... 7. Random-Access Memory (RAM).................................................6 FLASH Memory (FLASH)......................................................6.1 FLASH Control Register.....................................................6. FLASH Page Erase Operation................................................6. FLASH Mass Erase Operation................................................6. FLASH Program Operation..................................................6. FLASH Protection........................................................ 6.6.6 FLASH Block Protect Register............................................... 8.6.7 Wait Mode.............................................................. 9.6.8 Stop Mode.............................................................. 9 Chapter Analog-to-Digital Converter (ADC).1 Introduction................................................................ 1. Features................................................................... 1. Functional Description........................................................ 1..1 ADC Port I/O Pins........................................................ 1.. Voltage Conversion......................................................... Conversion Time........................................................... Continuous Conversion...................................................... Accuracy and Precision..................................................... Interrupts................................................................... Low-Power Modes.............................................................1 Wait Mode................................................................ Stop Mode.............................................................. Freescale Semiconductor 9
Table of Contents.6 Input/Output Signals..........................................................7 Input/Output Registers.........................................................7.1 ADC Status and Control Register.............................................7. ADC Data Register........................................................ 7.7. ADC Input Clock Register.................................................. 7 Chapter Auto Wakeup Module (AWU).1 Introduction................................................................ 9. Features................................................................... 9. Functional Description........................................................ 9. Wait Mode................................................................. 0. Stop Mode................................................................. 0.6 Input/Output Registers........................................................ 1.6.1 Port A I/O Register........................................................ 1.6. Keyboard Status and Control Register......................................... 1.6. Keyboard Interrupt Enable Register........................................... Chapter Configuration Register (CONFIG).1 Introduction................................................................. Functional Description........................................................ Chapter 6 Computer Operating Properly (COP) 6.1 Introduction................................................................ 7 6. Functional Description........................................................ 7 6. I/O Signals................................................................. 8 6..1 BUSCLKX............................................................. 8 6.. STOP Instruction......................................................... 8 6.. COPCTL Write........................................................... 8 6.. Power-On Reset.......................................................... 8 6.. Internal Reset............................................................ 8 6..6 COPD (COP Disable)...................................................... 8 6..7 COPRS (COP Rate Select)................................................. 9 6. COP Control Register........................................................ 9 6. Interrupts.................................................................. 9 6.6 Monitor Mode............................................................... 9 6.7 Low-Power Modes........................................................... 9 6.7.1 Wait Mode.............................................................. 9 6.7. Stop Mode.............................................................. 9 6.8 COP Module During Break Mode............................................... 9 10 Freescale Semiconductor
Chapter 7 Central Processor Unit (CPU) 7.1 Introduction................................................................ 61 7. Features................................................................... 61 7. CPU Registers.............................................................. 61 7..1 Accumulator............................................................. 6 7.. Index Register........................................................... 6 7.. Stack Pointer............................................................ 6 7.. Program Counter......................................................... 6 7.. Condition Code Register................................................... 6 7. Arithmetic/Logic Unit (ALU).................................................... 6 7. Low-Power Modes........................................................... 6 7..1 Wait Mode.............................................................. 6 7.. Stop Mode.............................................................. 6 7.6 CPU During Break Interrupts................................................... 6 7.7 Instruction Set Summary...................................................... 66 7.8 Opcode Map............................................................... 71 Chapter 8 External Interrupt (IRQ) 8.1 Introduction................................................................ 7 8. Features................................................................... 7 8. Functional Description........................................................ 7 8..1 MODE = 1.............................................................. 7 8.. MODE = 0.............................................................. 7 8. Interrupts.................................................................. 76 8. Low-Power Modes........................................................... 76 8..1 Wait Mode.............................................................. 76 8.. Stop Mode.............................................................. 76 8.6 IRQ Module During Break Interrupts............................................. 76 8.7 I/O Signals................................................................. 76 8.7.1 IRQ Input Pins (IRQ)...................................................... 77 8.8 Registers.................................................................. 77 Chapter 9 Keyboard Interrupt Module (KBI) 9.1 Introduction................................................................ 79 9. Features................................................................... 79 9. Functional Description........................................................ 79 9..1 Keyboard Operation....................................................... 79 9.. Keyboard Initialization..................................................... 8 9. Wait Mode................................................................. 8 9. Stop Mode................................................................. 8 9.6 Keyboard Module During Break Interrupts......................................... 8 Freescale Semiconductor 11
Table of Contents 9.7 Input/Output Registers........................................................ 8 9.7.1 Keyboard Status and Control Register......................................... 8 9.7. Keyboard Interrupt Enable Register........................................... 8 Chapter 10 Low-Voltage Inhibit (LVI) 10.1 Introduction................................................................ 8 10. Features................................................................... 8 10. Functional Description........................................................ 8 10..1 Polled LVI Operation...................................................... 86 10.. Forced Reset Operation.................................................... 86 10.. Voltage Hysteresis Protection............................................... 86 10.. LVI Trip Selection......................................................... 86 10. LVI Status Register.......................................................... 87 10. LVI Interrupts............................................................... 87 10.6 Low-Power Modes........................................................... 87 10.6.1 Wait Mode.............................................................. 87 10.6. Stop Mode.............................................................. 87 Chapter 11 Oscillator Module (OSC) 11.1 Introduction................................................................ 89 11. Features................................................................... 89 11. Functional Description........................................................ 89 11..1 Internal Oscillator......................................................... 90 11..1.1 Internal Oscillator Trimming............................................... 91 11..1. Internal to External Clock Switching......................................... 91 11.. External Oscillator........................................................ 91 11.. XTAL Oscillator.......................................................... 9 11.. RC Oscillator............................................................ 9 11. Oscillator Module Signals..................................................... 9 11..1 Crystal Amplifier Input Pin (OSC1)............................................ 9 11.. Crystal Amplifier Output Pin (OSC/PTA/BUSCLKX)........................... 9 11.. Oscillator Enable Signal (SIMOSCEN)........................................ 9 11.. XTAL Oscillator Clock (XTALCLK)............................................ 9 11.. RC Oscillator Clock (RCCLK)............................................... 9 11..6 Internal Oscillator Clock (INTCLK)............................................ 9 11..7 Oscillator Out (BUSCLKX)............................................... 9 11..8 Oscillator Out (BUSCLKX)................................................. 9 11. Low Power Modes........................................................... 9 11..1 Wait Mode.............................................................. 9 11.. Stop Mode.............................................................. 9 11.6 Oscillator During Break Mode.................................................. 9 11.7 CONFIG Options........................................................... 9 11.8 Input/Output (I/O) Registers.................................................... 9 11.8.1 Oscillator Status Register................................................... 96 11.8. Oscillator Trim Register (OSCTRIM).......................................... 96 1 Freescale Semiconductor
Chapter 1 Input/Output Ports (PORTS) 1.1 Introduction................................................................ 97 1. Port A..................................................................... 97 1..1 Port A Data Register...................................................... 98 1.. Data Direction Register A................................................... 98 1.. Port A Input Pullup Enable Register........................................... 99 1. Port B.................................................................... 100 1..1 Port B Data Register..................................................... 100 1.. Data Direction Register B.................................................. 101 1.. Port B Input Pullup Enable Register.......................................... 10 Chapter 1 System Integration Module (SIM) 1.1 Introduction............................................................... 10 1. RST and IRQ Pins Initialization................................................ 10 1. SIM Bus Clock Control and Generation.......................................... 10 1..1 Bus Timing............................................................. 10 1.. Clock Start-Up from POR.................................................. 10 1.. Clocks in Stop Mode and Wait Mode......................................... 10 1. Reset and System Initialization................................................ 10 1..1 External Pin Reset....................................................... 106 1.. Active Resets from Internal Sources......................................... 106 1...1 Power-On Reset....................................................... 107 1... Computer Operating Properly (COP) Reset.................................. 108 1... Illegal Opcode Reset................................................... 108 1... Illegal Address Reset................................................... 108 1... Low-Voltage Inhibit (LVI) Reset........................................... 108 1. SIM Counter............................................................... 108 1..1 SIM Counter During Power-On Reset........................................ 108 1.. SIM Counter During Stop Mode Recovery..................................... 109 1.. SIM Counter and Reset States............................................. 109 1.6 Exception Control........................................................... 109 1.6.1 Interrupts.............................................................. 109 1.6.1.1 Hardware Interrupts.................................................... 111 1.6.1. SWI Instruction........................................................ 11 1.6. Interrupt Status Registers................................................. 11 1.6..1 Interrupt Status Register 1............................................... 11 1.6.. Interrupt Status Register............................................... 11 1.6.. Interrupt Status Register............................................... 11 1.6. Reset................................................................. 11 1.6. Break Interrupts......................................................... 11 1.6. Status Flag Protection in Break Mode........................................ 11 1.7 Low-Power Modes.......................................................... 11 1.7.1 Wait Mode............................................................. 11 1.7. Stop Mode............................................................. 11 Freescale Semiconductor 1
Table of Contents 1.8 SIM Registers............................................................. 116 1.8.1 SIM Reset Status Register................................................. 117 1.8. Break Flag Control Register................................................ 118 Chapter 1 Timer Interface Module (TIM) 1.1 Introduction............................................................... 119 1. Features.................................................................. 119 1. Pin Name Conventions...................................................... 119 1. Functional Description....................................................... 11 1..1 TIM Counter Prescaler.................................................... 1 1.. Input Capture........................................................... 1 1.. Output Compare......................................................... 1 1...1 Unbuffered Output Compare............................................. 1 1... Buffered Output Compare............................................... 1 1.. Pulse Width Modulation (PWM)............................................. 1 1...1 Unbuffered PWM Signal Generation....................................... 1 1... Buffered PWM Signal Generation......................................... 1 1... PWM Initialization...................................................... 1 1. Interrupts................................................................. 1 1.6 Wait Mode................................................................ 16 1.7 TIM During Break Interrupts................................................... 16 1.8 Input/Output Signals........................................................ 16 1.8.1 TIM Clock Pin (PTA/TCLK)............................................... 16 1.8. TIM Channel I/O Pins (PTA0/TCH0 and PTA1/TCH1)............................ 16 1.9 Input/Output Registers....................................................... 16 1.9.1 TIM Status and Control Register............................................ 17 1.9. TIM Counter Registers................................................... 18 1.9. TIM Counter Modulo Registers............................................. 19 1.9. TIM Channel Status and Control Registers.................................... 19 1.9. TIM Channel Registers................................................... 1 Chapter 1 Development Support 1.1 Introduction............................................................... 1 1. Break Module (BRK)........................................................ 1 1..1 Functional Description.................................................... 1 1..1.1 Flag Protection During Break Interrupts..................................... 1 1..1. TIM During Break Interrupts.............................................. 1 1..1. COP During Break Interrupts............................................. 1 1.. Break Module Registers................................................... 1 1...1 Break Status and Control Register......................................... 16 1... Break Address Registers................................................ 16 1... Break Auxiliary Register................................................. 17 1... Break Status Register................................................... 17 1... Break Flag Control Register............................................. 18 1.. Low-Power Modes....................................................... 18 1 Freescale Semiconductor
1. Monitor Module (MON)...................................................... 18 1..1 Functional Description.................................................... 19 1..1.1 Normal Monitor Mode................................................... 1 1..1. Forced Monitor Mode................................................... 1 1..1. Monitor Vectors....................................................... 1 1..1. Data Format.......................................................... 1 1..1. Break Signal.......................................................... 1 1..1.6 Baud Rate............................................................ 1 1..1.7 Commands........................................................... 1 1.. Security............................................................... 18 Chapter 16 Electrical Specifications 16.1 Introduction............................................................... 19 16. Absolute Maximum Ratings................................................... 19 16. Functional Operating Range.................................................. 10 16. Thermal Characteristics...................................................... 10 16. -V DC Electrical Characteristics............................................... 11 16.6 Typical -V Output Drive Characteristics......................................... 1 16.7 -V Control Timing.......................................................... 1 16.8 -V Oscillator Characteristics.................................................. 1 16.9 -V DC Electrical Characteristics............................................... 1 16.10 Typical.0-V Output Drive Characteristics....................................... 16 16.11 -V Control Timing.......................................................... 17 16.1 -V Oscillator Characteristics.................................................. 18 16.1 Supply Current Characteristics................................................ 19 16.1 Analog-to-Digital Converter Characteristics....................................... 161 16.1 Timer Interface Module Characteristics.......................................... 16 16.16 Memory Characteristics...................................................... 16 Chapter 17 Ordering Information and Mechanical Specifications 17.1 Introduction............................................................... 16 17. MC Order Numbers......................................................... 16 17. Package Dimensions........................................................ 16 Freescale Semiconductor 1
Table of Contents 16 Freescale Semiconductor
Chapter 1 General Description 1.1 Introduction The MC68HC908QY is a member of the low-cost, high-performance M68HC08 Family of 8-bit microcontroller units (MCUs). The M68HC08 Family is a Complex Instruction Set Computer (CISC) with a Von Neumann architecture. All MCUs in the family use the enhanced M68HC08 central processor unit (CPU08) and are available with a variety of modules, memory sizes and types, and package types. Device 0. Table 1-1. Summary of Device Variations FLASH Memory Size Analog-to-Digital Converter Pin Count MC68HC908QT1 16 bytes 8 pins MC68HC908QT 16 bytes ch, 8 bit 8 pins MC68HC908QT 096 bytes ch, 8 bit 8 pins MC68HC908QY1 16 bytes 16 pins MC68HC908QY 16 bytes ch, 8 bit 16 pins MC68HC908QY 096 bytes ch, 8 bit 16 pins 1. Features Features include: High-performance M68HC08 CPU core Fully upward-compatible object code with M68HC0 Family -V and -V operating voltages (V DD ) 8-MHz internal bus operation at V, -MHz at V Trimmable internal oscillator. MHz internal bus operation 8-bit trim capability allows 0.% accuracy (1) ± % untrimmed Auto wakeup from STOP capability Configuration (CONFIG) register for MCU configuration options, including: Low-voltage inhibit (LVI) trip point In-system FLASH programming FLASH security () 1. The oscillator frequency is guaranteed to ±% over temperature and voltage range after trimming.. No security feature is absolutely secure. However, Freescale s strategy is to make reading or copying the FLASH difficult for unauthorized users. Freescale Semiconductor 17
General Description On-chip in-application programmable FLASH memory (with internal program/erase voltage generation) MC68HC908QY and MC68HC908QT 096 bytes MC68HC908QY, MC68HC908QY1, MC68HC908QT, and MC68HC908QT1 16 bytes 18 bytes of on-chip random-access memory (RAM) -channel, 16-bit timer interface module (TIM) -channel, 8-bit analog-to-digital converter (ADC) on MC68HC908QY, MC68HC908QY, MC68HC908QT, and MC68HC908QT or 1 bidirectional input/output (I/O) lines and one input only: Six shared with keyboard interrupt function and ADC Two shared with timer channels One shared with external interrupt (IRQ) Eight extra I/O lines on 16-pin package only High current sink/source capability on all port pins Selectable pullups on all ports, selectable on an individual bit basis Three-state ability on all port pins 6-bit keyboard interrupt with wakeup feature (KBI) Low-voltage inhibit (LVI) module features: Software selectable trip point in CONFIG register System protection features: Computer operating properly (COP) watchdog Low-voltage detection with reset Illegal opcode detection with reset Illegal address detection with reset External asynchronous interrupt pin with internal pullup (IRQ) shared with general-purpose input pin Master asynchronous reset pin (RST) shared with general-purpose input/output (I/O) pin Power-on reset Internal pullups on IRQ and RST to reduce external components Memory mapped I/O registers Power saving stop and wait modes MC68HC908QY, MC68HC908QY, and MC68HC908QY1 are available in these packages: 16-pin plastic dual in-line package (PDIP) 16-pin small outline integrated circuit (SOIC) package 16-pin thin shrink small outline package (TSSOP) MC68HC908QT, MC68HC908QT, and MC68HC908QT1 are available in these packages: 8-pin PDIP 8-pin SOIC 8-pin dual flat no lead (DFN) package 18 Freescale Semiconductor
MCU Block Diagram Features of the CPU08 include the following: Enhanced HC0 programming model Extensive loop control functions 16 addressing modes (eight more than the HC0) 16-bit index register and stack pointer Memory-to-memory data transfers Fast 8 8 multiply instruction Fast 16/8 divide instruction Binary-coded decimal (BCD) instructions Optimization for controller applications Efficient C language support 1. MCU Block Diagram Figure 1-1 shows the structure of the MC68HC908QY. 1. Pin Assignments The MC68HC908QT, MC68HC908QT, and MC68HC908QT1 are available in 8-pin packages and the MC68HC908QY, MC68HC908QY, and MC68HC908QY1 in 16-pin packages. Figure 1- shows the pin assignment for these packages. Freescale Semiconductor 19
General Description PTA0/AD0/TCH0/KBI0 PTA1/AD1/TCH1/KBI1 PTA/IRQ/KBI/TCLK PTA/RST/KBI PTA DDRA CLOCK GENERATOR (OSCILLATOR) PTA/OSC/AD/KBI PTA/OSC1/AD/KBI PTB0 PTB1 PTB PTB PTB PTB PTB6 PTB7 PTB DDRB M68HC08 CPU SYSTEM INTEGRATION MODULE SINGLE INTERRUPT MODULE BREAK MODULE POWER-ON RESET MODULE 8-BIT ADC 18 BYTES RAM MC68HC908QY AND MC68HC908QT 096 BYTES MC68HC908QY, MC68HC908QY1, MC68HC908QT, AND MC68HC908QT1: 16 BYTES USER FLASH KEYBOARD INTERRUPT MODULE 16-BIT TIMER MODULE COP MODULE POWER SUPPLY V DD V SS MONITOR ROM RST, IRQ: Pins have internal (about 0K Ohms) pull up PTA[0:]: High current sink and source capability PTA[0:]: Pins have programmable keyboard interrupt and pull up PTB[0:7]: Not available on 8-pin devices MC68HC908QT1, MC68HC908QT, and MC68HC908QT (see note in 1.1 Introduction) ADC: Not available on the MC68HC908QY1 and MC68HC908QT1 Figure 1-1. Block Diagram 0 Freescale Semiconductor
Pin Assignments V DD 1 8 V SS V DD 1 8 V SS PTA/OSC1/KBI 7 PTA0/TCH0/KBI0 PTA/OSC1/AD/KBI 7 PTA0/AD0/TCH0/KBI0 PTA/OSC/KBI 6 PTA1/TCH1/KBI1 PTA/OSC/AD/KBI 6 PTA1/AD1/TCH1/KBI1 PTA/RST/KBI PTA/IRQ/KBI/TCLK PTA/RST/KBI PTA/IRQ/KBI/TCLK 8-PIN ASSIGNMENT MC68HC908QT1 PDIP/SOIC 8-PIN ASSIGNMENT MC68HC908QT AND MC68HC908QT PDIP/SOIC V DD 1 16 V SS V DD 1 16 V SS PTB7 1 PTB0 PTB7 1 PTB0 PTB6 1 PTB1 PTB6 1 PTB1 PTA/OSC1/KBI 1 PTA0/TCH0/KBI0 PTA/OSC1/AD/KBI 1 PTA0/AD0/TCH0/KBI0 PTA/OSC/KBI 1 PTA1/TCH1/KBI1 PTA/OSC/AD/KBI 1 PTA1/AD1/TCH1/KBI1 PTB 6 11 PTB PTB 6 11 PTB PTB 7 10 PTB PTB 7 10 PTB PTA/RST/KBI 8 9 PTA/IRQ/KBI/TCLK PTA/RST/KBI 8 9 PTA/IRQ/KBI/TCLK 16-PIN ASSIGNMENT MC68HC908QY1 PDIP/SOIC 16-PIN ASSIGNMENT MC68HC908QY AND MC68HC908QY PDIP/SOIC PTA0/TCH0/KBI0 PTB1 PTB0 V SS V DD PTB7 PTB6 PTA/OSC1/KBI 1 6 7 8 16 1 1 1 1 11 10 9 PTA1/TCH1/KBI1 PTB PTB PTA/IRQ/KBI/TCLK PTA/RST/KBI PTB PTB PTA/OSC/KBI PTA0/AD0/TCH0/KBI0 PTB1 PTB0 V SS V DD PTB7 PTB6 PTA/OSC1/AD/KBI 1 6 7 8 16 1 1 1 1 11 10 9 PTA1/AD1/TCH1/KBI1 PTB PTB PTA/IRQ/KBI/TCLK PTA/RST/KBI PTB PTB PTA/OSC/AD/KBI 16-PIN ASSIGNMENT MC68HC908QY1 TSSOP 16-PIN ASSIGNMENT MC68HC908QY AND MC68HC908QY TSSOP PTA0/TCH0/KBI0 1 8 PTA1/TCH1/KBI1 PTA0/AD0/TCH0/KBI0 1 8 PTA1/AD1/TCH1/KBI1 V SS 7 PTA/IRQ/KBI/TCLK V SS 7 PTA/IRQ/KBI/TCLK V DD 6 PTA/RST/KBI V DD 6 PTA/RST/KBI PTA/OSC1/KB1 PTA/OSC/KBI PTA//OSC1/AD/KB1 PTA/OSC/AD/KBI 8-PIN ASSIGNMENT MC68HC908QT1 DFN 8-PIN ASSIGNMENT MC68HC908QT AND MC68HC908QT DFN Figure 1-. MCU Pin Assignments Freescale Semiconductor 1
General Description 1. Pin Functions Table 1- provides a description of the pin functions. Table 1-. Pin Functions Pin Name Description Input/Output V DD Power supply Power V SS Power supply ground Power PTA0 PTA1 PTA PTA PTA PTA PTA0 General purpose I/O port AD0 A/D channel 0 input TCH0 Timer Channel 0 I/O KBI0 Keyboard interrupt input 0 PTA1 General purpose I/O port AD1 A/D channel 1 input TCH1 Timer Channel 1 I/O KBI1 Keyboard interrupt input 1 PTA General purpose input-only port IRQ External interrupt with programmable pullup and Schmitt trigger input KBI Keyboard interrupt input TCLK Timer clock input PTA General purpose I/O port RST Reset input, active low with internal pullup and Schmitt trigger KBI Keyboard interrupt input PTA General purpose I/O port OSC XTAL oscillator output (XTAL option only) RC or internal oscillator output (OSCEN = 1 in PTAPUE register) AD A/D channel input KBI Keyboard interrupt input PTA General purpose I/O port OSC1 XTAL, RC, or external oscillator input AD A/D channel input KBI Keyboard interrupt input Input/Output Input Input/Output Input Input/Output Input Input/Output Input Input Input Input Input Input/Output Input Input Input/Output Output Output Input Input Input/Output Input Input Input PTB[0:7] (1) 8 general-purpose I/O ports Input/Output 1. The PTB pins are not available on the 8-pin packages (see note in 1.1 Introduction). Freescale Semiconductor
1.6 Pin Function Priority Table 1- is meant to resolve the priority if multiple functions are enabled on a single pin. NOTE Upon reset all pins come up as input ports regardless of the priority table. Table 1-. Function Priority in Shared Pins Pin Function Priority Pin Name PTA0 PTA1 PTA PTA PTA PTA Highest-to-Lowest Priority Sequence AD0 TCH0 KBI0 PTA0 AD1 TCH1 KBI1 PTA1 IRQ KBI TCLK PTA RST KBI PTA OSC AD KBI PTA OSC1 AD KBI PTA Freescale Semiconductor
General Description Freescale Semiconductor
Chapter Memory.1 Introduction The central processor unit (CPU08) can address 6 Kbytes of memory space. The memory map, shown in Figure -1, includes: 096 bytes of user FLASH for MC68HC908QT and MC68HC908QY 16 bytes of user FLASH for MC68HC908QT, MC68HC908QT1, MC68HC908QY, and MC68HC908QY1 18 bytes of random access memory (RAM) 8 bytes of user-defined vectors, located in FLASH 16 bytes of monitor read-only memory (ROM) 16 bytes of FLASH program and erase routines, located in ROM. Unimplemented Memory Locations Accessing an unimplemented location can have unpredictable effects on MCU operation. In Figure -1 and in register figures in this document, unimplemented locations are shaded.. Reserved Memory Locations Accessing a reserved location can have unpredictable effects on MCU operation. In Figure -1 and in register figures in this document, reserved locations are marked with the word Reserved or with the letter R. Freescale Semiconductor
Memory $0000 $00F $000 $007F $0080 $00FF $0100 $7FF $800 $DFF $E00 $EDFF $EE00 $FDFF $FE00 $FE01 $FE0 $FE0 $FE0 $FE0 $FE06 $FE07 $FE08 $FE09 I/O REGISTERS 6 BYTES RESERVED (1) 6 BYTES RAM 18 BYTES UNIMPLEMENTED (1) 998 BYTES AUXILIARY ROM 16 BYTES UNIMPLEMENTED (1) 91 BYTES FLASH MEMORY MC68HC908QT AND MC68HC908QY 096 BYTES BREAK STATUS REGISTER (BSR) RESET STATUS REGISTER (SRSR) BREAK AUXILIARY REGISTER (BRKAR) BREAK FLAG CONTROL REGISTER (BFCR) INTERRUPT STATUS REGISTER 1 (INT1) INTERRUPT STATUS REGISTER (INT) INTERRUPT STATUS REGISTER (INT) RESERVED FOR FLASH TEST CONTROL REGISTER (FLTCR) FLASH CONTROL REGISTER (FLCR) BREAK ADDRESS HIGH REGISTER (BRKH) $FE0A BREAK ADDRESS LOW REGISTER (BRKL) $FE0B BREAK STATUS AND CONTROL REGISTER (BRKSCR) $FE0C LVISR $FE0D RESERVED FOR FLASH TEST BYTES $FE0F $FE10 MONITOR ROM 16 BYTES $FFAF $FFB0 FLASH 1 BYTES $FFBD $FFBE FLASH BLOCK PROTECT REGISTER (FLBPR) $FFBF RESERVED FLASH $FFC0 INTERNAL OSCILLATOR TRIM VALUE (VDD =.0 V) $FFC1 INTERNAL OSCILLATOR TRIM VALUE (VDD =.0 V) $FFC $FFCF $FFD0 $FFFF FLASH 1 BYTES USER VECTORS 8 BYTES Figure -1. Memory Map Note 1. Attempts to execute code from addresses in this range will generate an illegal address reset. UNIMPLEMENTED 171 BYTES FLASH MEMORY 16 BYTES MC68HC908QT1, MC68HC908QT, MC68HC908QY1, and MC68HC908QY Memory Map $E00 $F7FF $F800 $FDFF 6 Freescale Semiconductor
Input/Output (I/O) Section. Input/Output (I/O) Section Addresses $0000 $00F, shown in Figure -, contain most of the control, status, and data registers. Additional I/O registers have these addresses: $FE00 Break status register, BSR $FE01 Reset status register, SRSR $FE0 Break auxiliary register, BRKAR $FE0 Break flag control register, BFCR $FE0 Interrupt status register 1, INT1 $FE0 Interrupt status register, INT $FE06 Interrupt status register, INT $FE07 Reserved $FE08 FLASH control register, FLCR $FE09 Break address register high, BRKH $FE0A Break address register low, BRKL $FE0B Break status and control register, BRKSCR $FE0C LVI status register, LVISR $FE0D Reserved $FFBE FLASH block protect register, FLBPR $FFC0 Internal OSC trim value (factory programmed, VDD =.0 V) $FFC1 Internal OSC trim value (factory programmed, VDD =.0 V) $FFFF COP control register, COPCTL Addr. Register Name Bit 7 6 1 Bit 0 Port A Data Register Read: AWUL PTA R PTA PTA PTA PTA1 PTA0 $0000 (PTA) Write: See page 98. Reset: Unaffected by reset Port B Data Register Read: PTB7 PTB6 PTB PTB PTB PTB PTB1 PTB0 $0001 (PTB) Write: See page 100. Reset: Unaffected by reset $000 Unimplemented $000 Unimplemented $000 $000 Data Direction Register A (DDRA) See page 98. Data Direction Register B (DDRB) See page 101. Read: 0 R R DDRA DDRA DDRA Write: DDRA1 DDRA0 Reset: 0 0 0 0 0 0 0 0 Read: Write: DDRB7 DDRB6 DDRB DDRB DDRB DDRB DDRB1 DDRB0 Reset: 0 0 0 0 0 0 0 0 = Unimplemented R = Reserved U = Unaffected Figure -. Control, Status, and Data Registers (Sheet 1 of ) Freescale Semiconductor 7
Memory Addr. Register Name Bit 7 6 1 Bit 0 $0006 $000A Unimplemented Unimplemented $000B $000C $000D $0019 Port A Input Pullup Enable Register (PTAPUE) See page 99. Port B Input Pullup Enable Register (PTBPUE) See page 10. Unimplemented Read: 0 OSCEN Write: PTAPUE PTAPUE PTAPUE PTAPUE PTAPUE1 PTAPUE0 Reset: 0 0 0 0 0 0 0 0 Read: Write: PTBPUE7 PTBPUE6 PTBPUE PTBPUE PTBPUE PTBPUE PTBPUE1 PTBPUE0 Reset: 0 0 0 0 0 0 0 0 $001A $001B Keyboard Status and Control Register (KBSCR) See page 8. Keyboard Interrupt Enable Register (KBIER) See page 8. $001C Unimplemented Read: 0 0 0 0 KEYF 0 IMASKK MODEK Write: ACKK Reset: 0 0 0 0 0 0 0 0 Read: 0 AWUIE KBIE KBIE KBIE KBIE KBIE1 KBIE0 Write: Reset: 0 0 0 0 0 0 0 0 $001D $001E $001F $000 $001 IRQ Status and Control Register (INTSCR) See page 77. Configuration Register (CONFIG) (1) See page. Configuration Register 1 (CONFIG1) (1) See page. TIM Status and Control Register (TSC) See page 17. TIM Counter Register High (TCNTH) See page 18. Read: 0 0 0 0 IRQF 0 Write: ACK IMASK Reset: 0 0 0 0 0 0 0 0 Read: Write: MODE IRQPUD IRQEN R OSCOPT1 OSCOPT0 R R RSTEN Reset: 0 0 0 0 0 0 0 0 () 1. One-time writable register after each reset.. RSTEN reset to 0 by a power-on reset (POR) only. Read: Write: COPRS LVISTOP LVIRSTD LVIPWRD LVIOR SSREC STOP COPD Reset: 0 0 0 0 0 () 0 0 0 1. One-time writable register after each reset.. LVIOR reset to 0 by a power-on reset (POR) only. Read: TOF 0 0 TOIE TSTOP Write: 0 TRST PS PS1 PS0 Reset: 0 0 1 0 0 0 0 0 Read: Bit 1 Bit 1 Bit 1 Bit 1 Bit 11 Bit 10 Bit 9 Bit 8 Write: Reset: 0 0 0 0 0 0 0 0 = Unimplemented R = Reserved U = Unaffected Figure -. Control, Status, and Data Registers (Sheet of ) 8 Freescale Semiconductor
Input/Output (I/O) Section Addr. Register Name Bit 7 6 1 Bit 0 $00 $00 $00 $00 $006 $007 $008 $009 $00A $00B $00 TIM Counter Register Low (TCNTL) See page 18. TIM Counter Modulo Register High (TMODH) See page 19. TIM Counter Modulo Register Low (TMODL) See page 19. TIM Channel 0 Status and Control Register (TSC0) See page 10. TIM Channel 0 Register High (TCH0H) See page 1. TIM Channel 0 Register Low (TCH0L) See page 1. TIM Channel 1 Status and Control Register (TSC1) See page 10. TIM Channel 1 Register High (TCH1H) See page 1. TIM Channel 1 Register Low (TCH1L) See page 1. Unimplemented Read: Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 Write: Reset: 0 0 0 0 0 0 0 0 Read: Write: Bit 1 Bit 1 Bit 1 Bit 1 Bit 11 Bit 10 Bit 9 Bit 8 Reset: 1 1 1 1 1 1 1 1 Read: Write: Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 Reset: 1 1 1 1 1 1 1 1 Read: CH0F Write: 0 CH0IE MS0B MS0A ELS0B ELS0A TOV0 CH0MAX Reset: 0 0 0 0 0 0 0 0 Read: Write: Reset: Read: Write: Reset: Read: Bit 1 Bit 1 Bit 1 Bit 1 Bit 11 Bit 10 Bit 9 Bit 8 Indeterminate after reset Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 CH1F Write: 0 CH1IE 0 Indeterminate after reset MS1A ELS1B ELS1A TOV1 CH1MAX Reset: 0 0 0 0 0 0 0 0 Read: Write: Reset: Read: Write: Reset: Bit 1 Bit 1 Bit 1 Bit 1 Bit 11 Bit 10 Bit 9 Bit 8 Indeterminate after reset Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 Indeterminate after reset $006 Oscillator Status Register (OSCSTAT) See page 96. Read: Write: $007 Unimplemented Read: R R R R R R ECGON Reset: 0 0 0 0 0 0 0 0 ECGST $008 Oscillator Trim Register (OSCTRIM) See page 96. Read: Write: TRIM7 TRIM6 TRIM TRIM TRIM TRIM TRIM1 TRIM0 Reset: 1 0 0 0 0 0 0 0 = Unimplemented R = Reserved U = Unaffected Figure -. Control, Status, and Data Registers (Sheet of ) Freescale Semiconductor 9
Memory Addr. Register Name Bit 7 6 1 Bit 0 $009 $00B Unimplemented $00C ADC Status and Control Register (ADSCR) See page. $00D Unimplemented Read: COCO AIEN ADCO CH CH CH CH1 CH0 Write: R Reset: 0 0 0 1 1 1 1 1 $00E $00F $FE00 ADC Data Register (ADR) See page 7. ADC Input Clock Register (ADICLK) See page 7. Break Status Register (BSR) See page 17. Read: Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 Write: Reset: Indeterminate after reset Read: 0 0 0 0 0 ADIV ADIV1 ADIV0 Write: Reset: 0 0 0 0 0 0 0 0 Read: SBSW R R R R R R R Write: See note 1 Reset: 0 1. Writing a 0 clears SBSW. $FE01 $FE0 $FE0 $FE0 $FE0 $FE06 SIM Reset Status Register (SRSR) See page 117. Break Auxiliary Register (BRKAR) See page 17. Break Flag Control Register (BFCR) See page 18. Interrupt Status Register 1 (INT1) See page 77. Interrupt Status Register (INT) See page 77. Interrupt Status Register (INT) See page 77. Read: POR PIN COP ILOP ILAD MODRST LVI 0 Write: POR: 1 0 0 0 0 0 0 0 Read: 0 0 0 0 0 0 0 Write: Reset: 0 0 0 0 0 0 0 0 Read: Write: Reset: 0 BCFE R R R R R R R Read: 0 IF IF IF 0 IF1 0 0 Write: R R R R R R R R Reset: 0 0 0 0 0 0 0 0 Read: IF1 0 0 0 0 0 0 0 Write: R R R R R R R R Reset: 0 0 0 0 0 0 0 0 BDCOP Read: 0 0 0 0 0 0 0 IF1 Write: R R R R R R R R Reset: 0 0 0 0 0 0 0 0 $FE07 Reserved R R R R R R R R = Unimplemented R = Reserved U = Unaffected Figure -. Control, Status, and Data Registers (Sheet of ) 0 Freescale Semiconductor
Input/Output (I/O) Section Addr. Register Name Bit 7 6 1 Bit 0 $FE08 $FE09 $FE0A $FE0B $FE0C $FE0D $FE0F FLASH Control Register (FLCR) See page. Break Address High Register (BRKH) See page 16. Break Address low Register (BRKL) See page 16. Break Status and Control Register (BRKSCR) See page 16. LVI Status Register (LVISR) See page 87. Read: 0 0 0 0 Write: HVEN MASS ERASE PGM Reset: 0 0 0 0 0 0 0 0 Read: Write: Bit 1 Bit 1 Bit 1 Bit 1 Bit 11 Bit 10 Bit 9 Bit 8 Reset: 0 0 0 0 0 0 0 0 Read: Write: Bit 7 Bit 6 Bit Bit Bit Bit Bit 1 Bit 0 Reset: 0 0 0 0 0 0 0 0 Read: Write: BRKE BRKA 0 0 0 0 0 0 Reset: 0 0 0 0 0 0 0 0 Read: LVIOUT 0 0 0 0 0 0 R Write: Reset: 0 0 0 0 0 0 0 0 Reserved for FLASH Test R R R R R R R R $FFBE FLASH Block Protect Register (FLBPR) See page 9. Read: Write: Reset: BPR7 BPR6 BPR BPR BPR BPR BPR1 BPR0 Unaffected by reset $FFBF Reserved R R R R R R R R $FFC0 $FFC1 Internal Oscillator Trim (Factory Programmed, VDD =.0 V) Internal Oscillator Trim (Factory Programmed, VDD =.0 V) Read: Write: Reset: Read: Write: Reset: TRIM7 TRIM6 TRIM TRIM TRIM TRIM TRIM1 TRIM0 Unaffected by reset TRIM7 TRIM6 TRIM TRIM TRIM TRIM TRIM1 TRIM0 Unaffected by reset $FFFF COP Control Register (COPCTL) See page 9. Read: Write: Reset: LOW BYTE OF RESET VECTOR WRITING CLEARS COP COUNTER (ANY VALUE) Unaffected by reset = Unimplemented R = Reserved U = Unaffected Figure -. Control, Status, and Data Registers (Sheet of ) Freescale Semiconductor 1
Memory. Table -1. Vector Addresses Vector Priority Vector Address Vector Lowest $FFDE ADC conversion complete vector (high) IF1 $FFDF ADC conversion complete vector (low) IF1 $FFE0 Keyboard vector (high) $FFE1 Keyboard vector (low) IF1 IF6 Not used IF $FFF TIM overflow vector (high) $FFF TIM overflow vector (low) IF $FFF TIM Channel 1 vector (high) $FFF TIM Channel 1 vector (low) IF $FFF6 TIM Channel 0 vector (high) $FFF7 TIM Channel 0 vector (low) IF Not used IF1 $FFFA IRQ vector (high) $FFFB IRQ vector (low) $FFFC SWI vector (high) $FFFD SWI vector (low) $FFFE Reset vector (high) Highest $FFFF Reset vector (low). Random-Access Memory (RAM) Addresses $0080 $00FF are RAM locations. The location of the stack RAM is programmable. The 16-bit stack pointer allows the stack to be anywhere in the 6-Kbyte memory space. NOTE For correct operation, the stack pointer must point only to RAM locations. Before processing an interrupt, the central processor unit (CPU) uses five bytes of the stack to save the contents of the CPU registers. NOTE For M680, M1680, and M68HC0 compatibility, the H register is not stacked. During a subroutine call, the CPU uses two bytes of the stack to store the return address. The stack pointer decrements during pushes and increments during pulls. NOTE Be careful when using nested subroutines. The CPU may overwrite data in the RAM during a subroutine or during the interrupt stacking operation. Freescale Semiconductor
FLASH Memory (FLASH).6 FLASH Memory (FLASH) This subsection describes the operation of the embedded FLASH memory. The FLASH memory can be read, programmed, and erased from a single external supply. The program and erase operations are enabled through the use of an internal charge pump. The FLASH memory consists of an array of 096 or 16 bytes with an additional 8 bytes for user vectors. The minimum size of FLASH memory that can be erased is 6 bytes; and the maximum size of FLASH memory that can be programmed in a program cycle is bytes (a row). Program and erase operations are facilitated through control bits in the FLASH control register (FLCR). Details for these operations appear later in this section. The address ranges for the user memory and vectors are: $EE00 $FDFF; user memory, 096 bytes: MC68HC908QY and MC68HC908QT $F800 $FDFF; user memory, 16 bytes: MC68HC908QY, MC68HC908QT, MC68HC908QY1 and MC68HC908QT1 $FFD0 $FFFF; user interrupt vectors, 8 bytes. NOTE An erased bit reads as a 1 and a programmed bit reads as a 0. A security feature prevents viewing of the FLASH contents. (1).6.1 FLASH Control Register The FLASH control register (FLCR) controls FLASH program and erase operations. Address: $FE08 Bit 7 6 1 Bit 0 Read: 0 0 0 0 Write: HVEN MASS ERASE PGM Reset: 0 0 0 0 0 0 0 0 = Unimplemented Figure -. FLASH Control Register (FLCR) HVEN High Voltage Enable Bit This read/write bit enables high voltage from the charge pump to the memory for either program or erase operation. It can only be set if either PGM =1 or ERASE =1 and the proper sequence for program or erase is followed. 1 = High voltage enabled to array and charge pump on 0 = High voltage disabled to array and charge pump off MASS Mass Erase Control Bit This read/write bit configures the memory for mass erase operation. 1 = Mass erase operation selected 0 = Mass erase operation unselected 1. No security feature is absolutely secure. However, Freescale s strategy is to make reading or copying the FLASH difficult for unauthorized users. Freescale Semiconductor