Freescale MC68HC705K1 Hcmos microcontroller unit Datasheet

Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
MC68HC705K1/D
Rev. 2.0
HC 5
MC68HC705K1
HCMOS Microcontroller Unit
TECHNICAL DATA
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Technical Data
Technical Data
MC68HC705K1 — Rev. 2.0
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
List of Sections
Section 1. General Description . . . . . . . . . . . . . . . . . . . . 15
Freescale Semiconductor, Inc...
Section 2. Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Section 3. Central Processor Unit (CPU) . . . . . . . . . . . . 31
Section 4. Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Section 5. Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Section 6. Low-Power Modes. . . . . . . . . . . . . . . . . . . . . . 57
Section 7. Parallel Input/Output (I/O). . . . . . . . . . . . . . . . 63
Section 8. Multifunction Timer . . . . . . . . . . . . . . . . . . . . . 75
Section 9. EPROM/OTPROM . . . . . . . . . . . . . . . . . . . . . . 83
Section 10. Personality EPROM (PEPROM) . . . . . . . . . . 91
Section 11. Instruction Set . . . . . . . . . . . . . . . . . . . . . . . . 99
Section 12. Electrical Specifications . . . . . . . . . . . . . . . 117
Section 13. Mechanical Specifications . . . . . . . . . . . . . 133
Section 13. Ordering Information . . . . . . . . . . . . . . . . . 137
MC68HC705K1 — Rev. 2.0
Technical Data
List of Sections
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
List of Sections
Technical Data
MC68HC705K1 — Rev. 2.0
List of Sections
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Table of Contents
Freescale Semiconductor, Inc...
Section 1. General Description
1.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
1.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
1.3
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
1.4
Mask Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
1.5
MCU Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
1.6
Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
1.6.1
VDD and VSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
1.6.2
OSC1 and OSC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
1.6.2.1
Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
1.6.2.2
Ceramic Resonator . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
1.6.2.3
2-Pin RC Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
1.6.2.4
3-Pin RC Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
1.6.2.5
External Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
1.6.3
RESET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.4
IRQ/VPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.5
PA7–PA0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.6
PB1/OSC3 and PB0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
Section 2. Memory
2.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.3
Memory Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.4
Input/Output Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
2.5
Random-Access Memory (RAM) . . . . . . . . . . . . . . . . . . . . . . .26
MC68HC705K1 — Rev. 2.0
Technical Data
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
2.6
EPROM/OTPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
2.7
Personality EPROM/OTPROM . . . . . . . . . . . . . . . . . . . . . . . . .30
Section 3. Central Processor Unit (CPU)
3.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
3.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
Freescale Semiconductor, Inc...
3.3
CPU Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
3.3.1
Accumulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.3.2
Index Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.3.3
Stack Pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
3.3.4
Program Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
3.3.5
Condition Code Register . . . . . . . . . . . . . . . . . . . . . . . . . . .36
3.4
Arithmetic/Logic Unit (ALU) . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Section 4. Interrupts
4.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
4.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
4.3
Interrupt Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.1
Software Interrupt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.2
External Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.2.1
IRQ/VPP Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
4.3.2.2
PA3–PA0 Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
4.3.2.3
IRQ Status and Control Register . . . . . . . . . . . . . . . . . . .45
4.3.3
Timer Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
4.3.3.1
Timer Overflow Interrupt . . . . . . . . . . . . . . . . . . . . . . . . .46
4.3.3.2
Real-Time Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
4.4
Interrupt Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
Section 5. Resets
5.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
5.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
Technical Data
MC68HC705K1 — Rev. 2.0
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
5.3
Reset Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.1
Power-On Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.2
External Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.3
Computer Operating Properly (COP) Reset . . . . . . . . . . . . .54
5.3.4
Illegal Address Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
5.3.5
Low-Voltage Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
Freescale Semiconductor, Inc...
5.4
Reset States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.4.1
CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.4.2
I/O Port Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.4.3
Multifunction Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.4.4
COP Watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
Section 6. Low-Power Modes
6.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
6.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
6.3
Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
6.4
Wait Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
6.5
Halt Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
6.6
Data-Retention Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
Section 7. Parallel Input/Output (I/O)
7.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
7.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
7.3
I/O Port Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
7.4
Port A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
7.4.1
Port A Data Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
7.4.2
Data Direction Register A. . . . . . . . . . . . . . . . . . . . . . . . . . .65
7.4.3
Pulldown Register A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
7.4.4
Port A External Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . .67
7.4.5
Port A Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
MC68HC705K1 — Rev. 2.0
Technical Data
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
7.5
Port B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
7.5.1
Port B Data Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
7.5.2
Data Direction Register B. . . . . . . . . . . . . . . . . . . . . . . . . . .70
7.5.3
Pulldown Register B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
7.5.4
Port B Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
Freescale Semiconductor, Inc...
Section 8. Multifunction Timer
8.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75
8.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75
8.3
Timer Status and Control Register . . . . . . . . . . . . . . . . . . . . . .77
8.4
Timer Counter Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
8.5
COP Watchdog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
Section 9. EPROM/OTPROM
9.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
9.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
9.3
EPROM Programming Register . . . . . . . . . . . . . . . . . . . . . . . .84
9.4
EPROM/OTPROM Programming . . . . . . . . . . . . . . . . . . . . . . .85
9.5
EPROM Erasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
9.6
Mask Option Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
Section 10. Personality EPROM (PEPROM)
10.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
10.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
10.3 PEPROM Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
10.3.1 PEPROM Bit Select Register . . . . . . . . . . . . . . . . . . . . . . . .93
10.3.2 PEPROM Status and Control Register. . . . . . . . . . . . . . . . .95
10.4
PEPROM Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
10.5
PEPROM Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
10.6
PEPROM Erasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Technical Data
MC68HC705K1 — Rev. 2.0
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
Section 11. Instruction Set
11.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99
11.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
Freescale Semiconductor, Inc...
11.3 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
11.3.1 Inherent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.2 Immediate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.3 Direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.4 Extended . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.5 Indexed, No Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.6 Indexed, 8-Bit Offset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.7 Indexed, 16-Bit Offset. . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.8 Relative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
11.4 Instruction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
11.4.1 Register/Memory Instructions. . . . . . . . . . . . . . . . . . . . . . .104
11.4.2 Read-Modify-Write Instructions . . . . . . . . . . . . . . . . . . . . .105
11.4.3 Jump/Branch Instructions. . . . . . . . . . . . . . . . . . . . . . . . . .106
11.4.4 Bit Manipulation Instructions . . . . . . . . . . . . . . . . . . . . . . .108
11.4.5 Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
11.5
Instruction Set Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
11.6
Opcode Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
Section 12. Electrical Specifications
12.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
12.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
12.3
Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
12.4
Operating Temperature Range. . . . . . . . . . . . . . . . . . . . . . . .118
12.5
Thermal Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
12.6
Power Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
12.7
Equivalent Pin Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
12.8
5.0-Volt DC Electrical Characteristics. . . . . . . . . . . . . . . . . . .121
MC68HC705K1 — Rev. 2.0
Technical Data
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Table of Contents
12.9
3.3-Volt DC Electrical Characteristics. . . . . . . . . . . . . . . . . . .122
12.10 5.0-Volt Control Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126
12.11 3.3-Volt Control Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
12.12 Typical Oscillator Characteristics . . . . . . . . . . . . . . . . . . . . . .130
Freescale Semiconductor, Inc...
Section 13. Mechanical Specifications
13.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
13.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
13.3
Plastic Dual In-Line Package (Case 648) . . . . . . . . . . . . . . . .134
13.4
Small Outline Integrated Circuit (Case 751) . . . . . . . . . . . . . .134
13.5
Ceramic Dual In-Line Package (Case 620) . . . . . . . . . . . . . .135
Section 13. Ordering Information
13.1
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
13.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
13.3
MCU Order Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
Technical Data
MC68HC705K1 — Rev. 2.0
Table of Contents
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
List of Figures
Freescale Semiconductor, Inc...
Figure
Title
Page
1-1
1-2
1-3
1-4
1-5
1-6
1-7
1-8
1-9
MC68HC705K1 Block Diagram . . . . . . . . . . . . . . . . . . . . . . .18
Pin Assignments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Bypassing Layout Recommendation . . . . . . . . . . . . . . . . . . .19
Crystal Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
2-Pin Ceramic Resonator Connections . . . . . . . . . . . . . . . . .21
3-Pin Ceramic Resonator Connections . . . . . . . . . . . . . . . . .22
2-Pin RC Oscillator Connections . . . . . . . . . . . . . . . . . . . . . .22
3-Pin RC Oscillator Connections . . . . . . . . . . . . . . . . . . . . . .23
External Clock Connections . . . . . . . . . . . . . . . . . . . . . . . . . .24
2-1
2-2
Memory Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
I/O Register Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
3-1
3-2
3-3
3-4
3-5
3-6
Programming Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
Accumulator (A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
Index Register (X). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
Stack Pointer (SP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
Program Counter (PC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
Condition Code Register (CCR) . . . . . . . . . . . . . . . . . . . . . . .36
4-1
4-2
4-3
4-4
External Interrupt Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
IRQ Status and Control Register (ISCR) . . . . . . . . . . . . . . . .45
Interrupt Stacking Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
Interrupt Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
5-1
5-2
Reset Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53
COP Register (COPR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
6-1
Stop/Wait/Halt Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
MC68HC705K1 — Rev. 2.0
Technical Data
List of Figures
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
List of Figures
Freescale Semiconductor, Inc...
Figure
Title
Page
7-1
7-2
7-3
7-4
7-5
7-6
7-7
7-8
Port A Data Register (PORTA). . . . . . . . . . . . . . . . . . . . . . . .64
Data Direction Register A (DDRA) . . . . . . . . . . . . . . . . . . . . .65
Pulldown Register A (PDRA) . . . . . . . . . . . . . . . . . . . . . . . . .66
Port A I/O Circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
Port B Data Register (PORTB). . . . . . . . . . . . . . . . . . . . . . . .69
Data Direction Register B (DDRB) . . . . . . . . . . . . . . . . . . . . .70
Pulldown Register B (PDRB) . . . . . . . . . . . . . . . . . . . . . . . . .71
Port B I/O Circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
8-1
8-2
8-3
8-4
Multifunction Timer Block Diagram. . . . . . . . . . . . . . . . . . . . .76
Timer Status and Control Register (TSCR) . . . . . . . . . . . . . .77
Timer Counter Register (TCNTR). . . . . . . . . . . . . . . . . . . . . .79
COP Register (COPR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
9-1
9-2
9-3
EPROM Programming Register (EPROG) . . . . . . . . . . . . . . .84
Programming Circuit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
Mask Option Register (MOR) . . . . . . . . . . . . . . . . . . . . . . . . .87
10-1
10-2
10-3
Personality EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92
PEPROM Bit Select Register (PEBSR) . . . . . . . . . . . . . . . . .93
PEPROM Status and Control Register (PESCR) . . . . . . . . . .95
12-1
12-2
12-3
12-4
12-5
12-6
12-7
12-8
12-9
12-10
12-11
12-12
12-13
12-14
Equivalent Test Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
Typical High-Side Driver Characteristics . . . . . . . . . . . . . . .123
Typical Low-Side Driver Characteristics. . . . . . . . . . . . . . . .123
Run IDD versus Internal Clock Frequency . . . . . . . . . . . . . .124
Wait IDD versus Internal Clock Frequency . . . . . . . . . . . . . .124
Stop IDD versus Temperature. . . . . . . . . . . . . . . . . . . . . . . .125
External Interrupt Timing . . . . . . . . . . . . . . . . . . . . . . . . . . .128
Stop Mode Recovery Timing . . . . . . . . . . . . . . . . . . . . . . . .128
Power-On Reset Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
External Reset Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
2-Pin RC Oscillator R versus Frequency (VDD = 5.0 V) . . . .131
3-Pin RC Oscillator R versus Frequency (VDD = 5.0 V) . . . .131
2-Pin Oscillator R versus Frequency (VDD = 3.0 V) . . . . . . .132
3-Pin Oscillator R versus Frequency (VDD = 3.0 V) . . . . . . .132
Technical Data
MC68HC705K1 — Rev. 2.0
List of Figures
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
List of Tables
Freescale Semiconductor, Inc...
Table
Title
Page
4-1
Reset/Interrupt Vector Addresses . . . . . . . . . . . . . . . . . . . . .48
7-1
7-2
7-3
Port A Pin Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
PB0 Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
PB1/OSC3 Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
8-1
8-2
Real-Time Interrupt Rate Selection . . . . . . . . . . . . . . . . . . . .78
COP Watchdog Recommendations . . . . . . . . . . . . . . . . . . . .81
10-1
PEPROM Bit Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94
11-1
11-2
11-3
11-4
11-5
11-6
11-7
Register/Memory Instructions. . . . . . . . . . . . . . . . . . . . . . . .104
Read-Modify-Write Instructions . . . . . . . . . . . . . . . . . . . . . .105
Jump and Branch Instructions . . . . . . . . . . . . . . . . . . . . . . .107
Bit Manipulation Instructions. . . . . . . . . . . . . . . . . . . . . . . . .108
Control Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
Instruction Set Summary . . . . . . . . . . . . . . . . . . . . . . . . . . .110
Opcode Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116
13-1
MC68HC705K1 Order Numbers. . . . . . . . . . . . . . . . . . . . . .137
MC68HC705K1 — Rev. 2.0
Technical Data
List of Tables
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
List of Tables
Technical Data
MC68HC705K1 — Rev. 2.0
List of Tables
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 1. General Description
Freescale Semiconductor, Inc...
1.1 Contents
1.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
1.3
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
1.4
Mask Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
1.5
MCU Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
1.6
Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
1.6.1
VDD and VSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
1.6.2
OSC1 and OSC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
1.6.2.1
Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
1.6.2.2
Ceramic Resonator . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
1.6.2.3
2-Pin RC Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
1.6.2.4
3-Pin RC Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
1.6.2.5
External Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
1.6.3
RESET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.4
IRQ/VPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.5
PA7–PA0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.6.6
PB1/OSC3 and PB0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
1.2 Introduction
The MC68HC705K1 is a member of the low-cost, high-performance
M68HC05 Family of 8-bit microcontroller units (MCU). The M68HC05
Family is based on the customer-specified integrated circuit (CSIC)
design strategy. All MCUs in the family use the popular M68HC05
central processor unit (CPU) and are available with a variety of
subsystems, memory sizes and types, and package types.
MC68HC705K1 — Rev. 2.0
Technical Data
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
On-chip memory of the MC68HC705K1 includes 504 bytes of erasable,
programmable read-only memory (EPROM). In packages without the
transparent window for EPROM erasure, the 504 EPROM bytes serve
as one-time programmable read-only memory (OTPROM).
1.3 Features
Freescale Semiconductor, Inc...
Features of the MCU include:
•
Popular M68HC05 CPU
•
Memory-mapped input/output (I/O) registers
•
504 bytes of EPROM/OTPROM, including eight user vector
locations
•
32 bytes of user random-access memory (RAM)
•
64-bit personality EPROM
•
10 bidirectional I/O pins with these features:
– Software programmable pulldown devices
– Four I/O pins with 8-mA current sinking capability
– Four I/O pins with maskable external interrupt capability
•
Hardware mask and flag for external interrupts
•
Fully static operation with no minimum clock speed
•
On-chip oscillator with connections for:
– Crystal or ceramic resonator
– Mask-optional 2-pin or 3-pin resistor-capacitor (RC) oscillator
•
Computer operating properly (COP) watchdog
•
15-bit multifunction timer with real-time interrupt circuit
•
Power-saving stop, wait, halt, and data-retention modes
•
8 × 8 unsigned multiply instruction
•
Illegal address reset
•
Low-voltage reset
Technical Data
MC68HC705K1 — Rev. 2.0
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
Mask Options
•
16-pin plastic dual in-line package (PDIP)
•
16-pin small outline integrated circuit package (SOIC)
•
16-pin ceramic DIP (cerdip)
1.4 Mask Options
Freescale Semiconductor, Inc...
These MC68HC705K1 options are programmable in the mask option
register (MOR):
•
Enabled or disabled COP watchdog
•
Edge-triggered or edge- and level-triggered external interrupt pins
•
Enabled or disabled port A external interrupt function
•
Enabled or disabled low-voltage reset function
•
Enabled or disabled STOP instruction
•
Oscillator driven by crystal or ceramic resonator or oscillator
driven by RC circuit
•
2-pin RC-driven oscillator or 3-pin RC-driven oscillator
•
Enabled or disabled port A and port B programmable pulldown
devices
The mask option register is an EPROM/OTPROM byte at location
$0017. Section 9. EPROM/OTPROM describes the mask option
register and the EPROM/OTPROM programming procedure.
1.5 MCU Structure
Figure 1-1 shows the structure of the MC68HC705K1 MCU.
MC68HC705K1 — Rev. 2.0
Technical Data
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
USER EPROM/OTPROM
504 BYTES
MASK OPTION REGISTER
EPROM/OTPROM
PERSONALITY EPROM/OTPROM
64 BITS
IRQ/VPP
ARITHMETIC/LOGIC
UNIT
CPU CONTROL
PA6*
PA5*
PA4*
PA3**
PA2**
PA1**
PA0**
*8-mA sink capability
**External interrupt capability
M68HC05
MCU
RESET
INDEX REGISTER
STACK POINTER
0 0 0 0 0 0 0 0 1 1 1
PROGRAM COUNTER
0 0 0 0 0 0
CONDITION CODE REGISTER
1 1 1 H I N C Z
PB0
TIMER
CLOCK
LOW-VOLTAGE
DETECT
PB1/OSC3
MULTIFUNCTION
TIMER
COP WATCHDOG
AND
ILLEGAL ADDRESS
DETECT
VDD
PORT B
RESET
DATA DIRECTION REGISTER B
ACCUMULATOR
CPU
CLOCK
Freescale Semiconductor, Inc...
USER RAM
32 BYTES
PORT A
DATA DIRECTION REGISTER A
PA7*
VSS
OSC1
OSC2
INTERNAL
OSCILLATOR
DIVIDE
BY TWO
Figure 1-1. MC68HC705K1 Block Diagram
Technical Data
MC68HC705K1 — Rev. 2.0
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
Pin Assignments
1.6 Pin Assignments
Freescale Semiconductor, Inc...
Figure 1-2 shows the MC68HC705K1 pin assignments.
RESET
1
16
OSC1
PB1/OSC3
2
15
OSC2
PB0
3
14
VSS
IRQ/VPP
4
13
VDD
PA0
5
12
PA7
PA1
6
11
PA6
PA2
7
10
PA5
PA3
8
9
PA4
Figure 1-2. Pin Assignments
1.6.1 VDD and VSS
VDD and VSS are the power supply and ground pins. The MCU operates
from a single 5-volt power supply.
Very fast signal transitions occur on the MCU pins, placing high
short-duration current demands on the power supply. To prevent noise
problems, take special care to provide good power supply bypassing at
the MCU. Place bypass capacitors as close to the MCU as possible, as
Figure 1-3 shows.
V+
OSC1
VDD
OSC2
+
MCU
C1
C2
VSS
C1 C2
VSS
VDD
Figure 1-3. Bypassing Layout Recommendation
MC68HC705K1 — Rev. 2.0
Technical Data
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
1.6.2 OSC1 and OSC2
•
Crystal
•
Ceramic resonator
•
Resistor-capacitor network
•
External clock signal
The frequency of the internal oscillator is fOSC. The MCU divides the
internal oscillator output by two to produce the internal clock with a
frequency of fOP.
1.6.2.1 Crystal
The circuit in Figure 1-4 shows a typical crystal oscillator circuit for an
AT-cut, parallel resonant crystal. Follow the crystal supplier’s
recommendations, as the crystal parameters determine the external
component values required to provide reliable start-up and maximum
stability. The load capacitance values used in the oscillator circuit design
should include all stray layout capacitances. To minimize output
distortion, mount the crystal and capacitors as close as possible to
the pins.
VSS
C3
MCU
2 MΩ
OSC1
XTAL
OSC2
OSC1
OSC2
C4
Freescale Semiconductor, Inc...
The OSC1, OSC2, and PB1/OSC3 pins are the control connections for
the 2-pin or 3-pin on-chip oscillator. The oscillator can be driven by any
of these:
VSS
XTAL
C3
27 pF
C4
27 pF
C1 C2
VDD
Figure 1-4. Crystal Connections
Technical Data
MC68HC705K1 — Rev. 2.0
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
Pin Assignments
NOTE:
Use an AT-cut crystal and not a strip or tuning fork crystal. The MCU may
overdrive or have the wrong characteristic impedance for a strip or
tuning fork crystal.
1.6.2.2 Ceramic Resonator
To reduce cost, use a ceramic resonator in place of the crystal. Use the
circuit in Figure 1-5 for a 2-pin ceramic resonator or Figure 1-6 for a
3-pin ceramic resonator, and follow the resonator manufacturer’s
recommendations. The resonator parameters determine the external
component values required for maximum stability and reliable starting.
The load capacitance values used in the oscillator circuit design should
include all stray layout capacitances. To minimize output distortion,
mount the resonator and capacitors as close as possible to the pins.
VSS
C3
MCU
2 MΩ
OSC1
CER.
RES.
OSC2
OSC1
OSC2
C4
Freescale Semiconductor, Inc...
To use the crystal-driven oscillator, the RC and PIN3 bits in the mask
option register must be clear. See 9.6 Mask Option Register. Clearing
the RC bit connects an internal 2-MΩ startup resistor between OSC1
and OSC2.
C3
27 pF
CERAMIC
RESONATOR
VSS
C4
27 pF
C1 C2
VDD
Figure 1-5. 2-Pin Ceramic Resonator Connections
MC68HC705K1 — Rev. 2.0
Technical Data
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
VSS
MCU
2 MΩ
OSC2
OSC1
OSC1
CER.
RES.
OSC2
VSS
C1 C2
VDD
Figure 1-6. 3-Pin Ceramic Resonator Connections
To use the resonator-driven oscillator, the RC bit in the mask option
register must be clear. See 9.6 Mask Option Register. Clearing the RC
bit connects an internal 2-MΩ startup resistor between OSC1 and
OSC2.
1.6.2.3 2-Pin RC Oscillator
For maximum cost reduction, use the 2-pin RC oscillator configuration
shown in Figure 1-7. The OSC2 signal is a square wave, and the signal
on OSC1 is a triangular wave. The optimum frequency for the 2-pin
oscillator configuration is 2 MHz.
VSS
MCU
R
OSC2
OSC1
OSC1
Freescale Semiconductor, Inc...
CERAMIC
RESONATOR
C3
R C3
OSC2
VSS
C1 C2
VDD
Figure 1-7. 2-Pin RC Oscillator Connections
To use the 2-pin RC oscillator configuration, the RC bit in the mask
option register must be programmed to a logic 1. Setting the RC bit
Technical Data
MC68HC705K1 — Rev. 2.0
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
Pin Assignments
disconnects the internal startup resistor. The PIN3 bit in the mask option
register must remain erased (logic 0). The PIN3 bit selects the 3-pin RC
oscillator configuration. See 9.6 Mask Option Register.
Another low-cost option is the 3-pin RC oscillator configuration shown in
Figure 1-8. The 3-pin oscillator is more stable than the 2-pin oscillator.
The OSC2 and PB1/OSC3 signals are square waves, and the signal on
OSC1 is a triangular wave. The 3-pin RC oscillator configuration is
recommended for frequencies of 1 MHz and less.
VSS
C3
MCU
R
R
PB1/OSC3
OSC2
OSC1
OSC1
Freescale Semiconductor, Inc...
1.6.2.4 3-Pin RC Oscillator
+
PB1/OSC3
C3
OSC2
VSS
C1 C2
VDD
Figure 1-8. 3-Pin RC Oscillator Connections
To use the 3-pin RC oscillator configuration, both the RC and PIN3 bits
in the mask option register must be programmed to logic 1s. See
9.6 Mask Option Register.
NOTE:
In 3-pin RC oscillator configurations, the personality EPROM
(PEPROM) cannot be programmed by user software. If the voltage on
IRQ/VPP is raised above VDD, the oscillator will revert to a 2-pin oscillator
configuration and device operation will be disrupted.
1.6.2.5 External Clock
An external clock from another CMOS-compatible device can drive the
OSC1 input, with the OSC2 pin unconnected, as Figure 1-9 shows.
MC68HC705K1 — Rev. 2.0
Technical Data
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
General Description
OSC2
OSC1
MCU
EXTERNAL
CMOS CLOCK
Freescale Semiconductor, Inc...
Figure 1-9. External Clock Connections
1.6.3 RESET
A logic 0 on the RESET pin forces the MCU to a known startup state.
See 5.3.2 External Reset for more information.
1.6.4 IRQ/VPP
The IRQ/VPP pin has these functions:
•
Applying asynchronous external interrupt signals,
see 4.3.2 External Interrupts
•
Applying the EPROM/OTPROM programming voltage,
see 9.4 EPROM/OTPROM Programming
1.6.5 PA7–PA0
PA7–PA0 are the pins of port A, a general-purpose, bidirectional I/O
port. See 7.4 Port A.
1.6.6 PB1/OSC3 and PB0
PB1/OSC3 and PB0 are the pins of port B, a general-purpose,
bidirectional I/O port. See 7.5 Port B.
Technical Data
MC68HC705K1 — Rev. 2.0
General Description
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 2. Memory
Freescale Semiconductor, Inc...
2.1 Contents
2.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.3
Memory Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
2.4
Input/Output Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
2.5
Random-Access Memory (RAM) . . . . . . . . . . . . . . . . . . . . . . .26
2.6
EPROM/OTPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
2.7
Personality EPROM/OTPROM . . . . . . . . . . . . . . . . . . . . . . . . .30
2.2 Introduction
This section describes the organization of the on-chip memory.
2.3 Memory Map
The central processor unit (CPU) can address 1 Kbyte of memory space.
The program counter typically advances one address at a time through
the memory, reading the program instructions and data. The erasable,
programmable read-only memory (EPROM) portion of memory holds
the program instructions, fixed data, user-defined vectors, and interrupt
service routines. The random-access memory (RAM) portion of memory
holds variable data. Input/output (I/O) registers are memory-mapped so
that the CPU can access their locations in the same way that it accesses
all other memory locations.
Figure 2-1 is a memory map of the microcontroller unit (MCU). Refer to
Figure 2-2 for a more detailed memory map of the 32-byte I/O register
section.
MC68HC705K1 — Rev. 2.0
Technical Data
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Memory
2.4 Input/Output Section
The first 32 addresses of the memory space, $0001–$001F, are the I/O
section. These are the addresses of the I/O control registers, status
registers, and data registers. See Figure 2-2.
2.5 Random-Access Memory (RAM)
Freescale Semiconductor, Inc...
The 32 addresses from $00E0 to $00FF serve as both the user RAM and
the stack RAM. The CPU uses five RAM bytes to save all CPU register
contents before processing an interrupt. During a subroutine call, the
CPU uses two bytes to store the return address. The stack pointer
decrements during pushes and increments during pulls.
NOTE:
Be careful when using nested subroutines or multiple interrupt levels.
The CPU may overwrite data in the RAM during a subroutine or during
the interrupt stacking operation.
Technical Data
MC68HC705K1 — Rev. 2.0
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Memory
Random-Access Memory (RAM)
$0000
I/O REGISTERS
32 BYTES
$001F
$0020
Freescale Semiconductor, Inc...
$00DF
$00E0
UNUSED
192 BYTES
USER
STACK
RAM
RAM
32 BYTES 32 BYTES
$00FF
$0100
$01FF
$0200
UNUSED
256 BYTES
USER EPROM
496 BYTES
$03EF
$03F0
$03F7
$03F8
$03FF
TEST ROM AND
COP REGISTER
(8 BYTES)
USER VECTORS (EPROM)
8 BYTES
PORT A DATA REGISTER
PORT B DATA REGISTER
UNUSED
UNUSED
PORT A DATA DIRECTION REGISTER
PORT B DATA DIRECTION REGISTER
UNUSED
UNUSED
TIMER STATUS AND CONTROL REGISTER
TIMER COUNTER REGISTER
IRQ STATUS AND CONTROL REGISTER
UNUSED
UNUSED
UNUSED
PEPROM BIT SELECT REGISTER
PEPROM STATUS AND CONTROL REGISTER
PULLDOWN REGISTER A
PULLDOWN REGISTER B
UNUSED
UNUSED
UNUSED
UNUSED
UNUSED
MASK OPTION REGISTER
EPROM PROGRAMMING REGISTER
UNUSED
UNUSED
UNUSED
UNUSED
UNUSED
UNUSED
TEST
$0000
$0001
$0002
$0003
$0004
$0005
$0006
$0007
$0008
$0009
$000A
$000B
$000C
$000D
$000E
$000F
$0010
$0011
$0012
$0013
$0014
$0015
$0016
$0017
$0018
$0019
$001A
$001B
$001C
$001D
$001E
$001F
COP REGISTER *
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED
TIMER VECTOR (HIGH BYTE)
TIMER VECTOR (LOW BYTE)
EXTERNAL INTERRUPT VECTOR (HIGH BYTE)
EXTERNAL INTERRUPT VECTOR (LOW BYTE)
SOFTWARE INTERRUPT VECTOR (HIGH BYTE)
SOFTWARE INTERRUPT VECTOR (LOW BYTE)
RESET VECTOR (LOW BYTE)
RESET VECTOR (LOW BYTE)
$03F0
$03F1
$03F2
$03F3
$03F4
$03F5
$03F6
$03F7
$03F8
$03F9
$03FA
$03FB
$03FC
$03FD
$03FE
$03FF
* Writing to bit 0 of $03F0 clears the COP watchdog.
Reading $03F0 returns ROM data.
Figure 2-1. Memory Map
MC68HC705K1 — Rev. 2.0
Technical Data
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Memory
Addr.
Register Name
Read:
Port A Data Register
(PORTA) Write:
See page 64.
Reset:
$0000
Read:
Port B Data Register
(PORTB) Write:
See page 69.
Reset:
Freescale Semiconductor, Inc...
$0001
$0002
Unimplemented
$0003
Unimplemented
$0004
$0005
Bit 7
6
5
4
3
2
1
Bit 0
PA7
PA6
PA5
PA4
PA3
PA2
PA1
PA0
0
PB1/
OSC3
PB0
Unaffected by reset
0
0
0
0
Unaffected by reset
Read:
Data Direction Register A
DDRA7
(DDRA) Write:
See page 65.
Reset:
0
Read:
Data Direction Register B
(DDRB) Write:
See page 70.
Reset:
0
0
DDRA6
DDRA5
DDRA4
DDRA3
DDRA2
DDRA1
DDRA0
0
0
0
0
0
0
0
0
0
0
0
0
DDRB1
DDRB0
0
0
RT1
RT0
0
0
RTIF
0
0
TOIE
RTIE
0
0
TOFR
RTIFR
$0006
Unimplemented
$0007
Unimplemented
TOF
$0008
Read:
Timer Status and Control
Register (TSCR) Write:
See page 77.
Reset:
0
0
0
0
U
U
1
1
Read:
Timer Counter Register
(TCNTR) Write:
See page 79.
Reset:
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
0
0
0
0
0
0
0
0
IRQE
0
0
0
$0009
$000A
Read:
IRQ Status and Control
Register (ISCR) Write:
See page 45.
Reset:
IRQF
0
0
IRQR
1
0
0
= Unimplemented
0
0
R
= Reserved
0
U
0
U = Unaffected
Figure 2-2. I/O Register Summary (Sheet 1 of 3)
Technical Data
MC68HC705K1 — Rev. 2.0
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Memory
Random-Access Memory (RAM)
Addr.
Register Name
$000B
Unimplemented
Bit 7
6
5
4
3
2
1
Bit 0
PEB7
PEB6
PEB5
PEB4
PEB3
PEB2
PEB1
PEB0
0
0
0
0
0
0
0
0
0
PEPGM
0
0
0
0
0
0
0
0
0
0
1
PDIA6
PDIA5
PDIA4
PDIA3
PDIA2
PDIA1
PDIA0
0
0
0
0
0
0
0
0
0
0
0
0
0
PDIB1
PDIB0
0
0
0
0
0
0
0
0
PIN3
RC
SWAIT
LVRE
PIRQ
LEVEL
COPEN
↓
$000D
Freescale Semiconductor, Inc...
$000E
$000F
$0010
$0011
$0012
Unimplemented
Read:
PEPROM Bit Select Register
(PEBSR) Write:
See page 93.
Reset:
Read: PEDATA
PEPROM Status and Control
Register (PESCR) Write:
See page 95.
Reset:
U
Read:
Pulldown Register A
(PDRA) Write: PDIA7
See page 66.
Reset:
0
Read:
Pulldown Register B
(PDRB) Write:
See page 71.
Reset:
PEPRZF
Unimplemented
↓
$0016
$0017
$0018
Unimplemented
Read:
Mask Option Register
SWPDI
(MOR) Write:
See page 87.
Reset:
Read:
EPROM Programming
Register (EPROG) Write:
See page 84.
Reset:
Unaffected by reset
R
R
R
R
R
ELAT
MPGM
EPGM
U
U
U
U
U
0
0
0
= Unimplemented
R
= Reserved
U = Unaffected
Figure 2-2. I/O Register Summary (Sheet 2 of 3)
MC68HC705K1 — Rev. 2.0
Technical Data
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Memory
Addr.
Register Name
$0019
Unimplemented
Bit 7
6
5
4
3
2
1
Bit 0
↓
$001E
Unimplemented
Read:
LVRF
$001F
Test Register Write:
Freescale Semiconductor, Inc...
Reset:
U
U
U
U
U
U
0
U
↓
$03F0
Read:
COP Register
(COPR) Write:
See page 54.
Reset:
COPC
U
U
U
U
U
= Unimplemented
R
= Reserved
U
U
0
U = Unaffected
Figure 2-2. I/O Register Summary (Sheet 3 of 3)
2.6 EPROM/OTPROM
An MCU with a quartz window has 504 bytes of erasable, programmable
ROM (EPROM). The quartz window allows EPROM erasure with
ultraviolet light. In an MCU without the quartz window, the EPROM
cannot be erased and serves as 504 bytes of one-time programmable
ROM (OTPROM). Addresses $0020–$03EF contain 496 bytes of user
EPROM/OTPROM. The eight addresses from $03F8 to $03FF are
EPROM/OTPROM locations reserved for interrupt vectors and reset
vectors.
2.7 Personality EPROM/OTPROM
An MCU with a quartz window has a 64-bit array of erasable,
programmable ROM (EPROM) to serve as a personality EPROM. The
quartz window allows EPROM erasure with ultraviolet light. In an MCU
without the quartz window, the personality EPROM cannot be erased
and serves as a 64-bit array of OTPROM.
Technical Data
MC68HC705K1 — Rev. 2.0
Memory
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 3. Central Processor Unit (CPU)
3.1 Contents
Freescale Semiconductor, Inc...
3.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
3.3
CPU Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
3.3.1
Accumulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.3.2
Index Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.3.3
Stack Pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
3.3.4
Program Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
3.3.5
Condition Code Register . . . . . . . . . . . . . . . . . . . . . . . . . . .36
3.4
Arithmetic/Logic Unit (ALU) . . . . . . . . . . . . . . . . . . . . . . . . . . .37
3.2 Introduction
This section describes the central processor unit (CPU) registers.
MC68HC705K1 — Rev. 2.0
Technical Data
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
3.3 CPU Registers
Figure 3-1 shows the five CPU registers. CPU registers and are not part
of the memory map.
7
6
5
4
3
2
1
0
ACCUMULATOR (A)
7
6
5
4
3
2
1
0
Freescale Semiconductor, Inc...
INDEX
REGISTER (X)
15
14
13
12
11
10
9
8
7
6
5
0
0
0
0
0
0
0
0
1
1
1
15
14
13
12
11
10
9
8
7
6
5
0
0
0
0
0
0
4
3
2
1
0
STACK
POINTER (SP)
4
3
2
1
0
PROGRAM
COUNTER (PC)
7
6
5
4
3
2
1
0
1
1
1
H
I
N
Z
C
CONDITION CODE
REGISTER (CCR)
HALF-CARRY FLAG
INTERRUPT MASK
NEGATIVE FLAG
ZERO FLAG
CARRY/BORROW FLAG
Figure 3-1. Programming Model
Technical Data
MC68HC705K1 — Rev. 2.0
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
CPU Registers
3.3.1 Accumulator
The accumulator (A) shown in Figure 3-2 is a general-purpose 8-bit
register. The CPU uses the accumulator to hold operands and results of
arithmetic and non-arithmetic operations.
Bit 7
6
5
4
3
2
1
Bit 0
Read:
Freescale Semiconductor, Inc...
Write:
Reset:
Unaffected by reset
Figure 3-2. Accumulator (A)
3.3.2 Index Register
In the indexed addressing modes, the CPU uses the byte in the index
register (X) shown in Figure 3-3 to determine the conditional address of
the operand. See 11.3.5 Indexed, No Offset, 11.3.6 Indexed, 8-Bit
Offset, and 11.3.7 Indexed, 16-Bit Offset for more information on
indexed addressing.
The 8-bit index register also can serve as a temporary data storage
location.
Bit 7
6
5
4
3
2
1
Bit 0
Read:
Write:
Reset:
Unaffected by reset
Figure 3-3. Index Register (X)
MC68HC705K1 — Rev. 2.0
Technical Data
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
3.3.3 Stack Pointer
Freescale Semiconductor, Inc...
The stack pointer (SP) shown in Figure 3-4 is a 16-bit register that
contains the address of the next free location on the stack. During a
reset or after the reset stack pointer (RSP) instruction, the stack pointer
initializes to $00FF. The address in the stack pointer decrements as data
is pushed onto the stack and increments as data is pulled from the stack.
The 11 most significant bits of the stack pointer are fixed permanently at
00000000111, so the stack pointer produces addresses from $00E0 to
$00FF. If subroutines and interrupts use more than 32 stack locations,
the stack pointer wraps around to address $00FF and begins writing
over the previously stored data. A subroutine uses two stack locations.
An interrupt uses five locations.
Read:
Bit
15
14
13
12
11
10
9
8
7
6
5
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
1
1
4
3
2
1
Bit
0
1
1
1
1
1
Write:
Reset:
= Unimplemented
Figure 3-4. Stack Pointer (SP)
Technical Data
MC68HC705K1 — Rev. 2.0
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
CPU Registers
3.3.4 Program Counter
Freescale Semiconductor, Inc...
The program counter (PC) shown in Figure 3-5 is a 16-bit register that
contains the address of the next instruction or operand to be fetched.
The six most significant bits of the program counter are ignored internally
and appear as 000000.
Normally, the address in the program counter automatically increments
to the next sequential memory location every time an instruction or
operand is fetched. Jump, branch, and interrupt operations load the
program counter with an address other than that of the next sequential
location.
Read:
Write:
Reset:
Bit
15
14
13
12
11
10
0
0
0
0
0
0
0
0
0
0
0
0
9
8
7
6
5
4
3
2
1
Bit
0
Loaded with vector from $03FE and $03FF
Figure 3-5. Program Counter (PC)
MC68HC705K1 — Rev. 2.0
Technical Data
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
3.3.5 Condition Code Register
The condition code register (CCR) shown in Figure 3-6 is an 8-bit
register whose three most significant bits are permanently fixed at 111.
The condition code register contains the interrupt mask and four flags
that indicate the results of prior instructions.
Freescale Semiconductor, Inc...
Read:
Bit 7
6
5
1
1
1
4
3
2
1
Bit 0
H
I
N
Z
C
U
1
U
U
U
Write:
Reset:
1
1
1
= Unimplemented
U = Unaffected
Figure 3-6. Condition Code Register (CCR)
H — Half-Carry Flag
The CPU sets the half-carry flag when a carry occurs between bits 3
and 4 of the accumulator during an add without carry (ADD) or add
with carry (ADC) operation. The half-carry bit is required for
binary-coded decimal (BCD) arithmetic operations. Reset has no
affect on the half-carry flag.
I — Interrupt Mask Flag
Setting the interrupt mask (I) disables interrupts. If an interrupt
request occurs while the interrupt mask is a logic 0, the CPU saves
the CPU registers on the stack, sets the interrupt mask, and then
fetches the interrupt vector. If an interrupt request occurs while the
interrupt mask is set, the interrupt request is latched. The CPU
processes the latched interrupt as soon as the interrupt mask is
cleared again.
A return-from-interrupt (RTI) instruction pulls the CPU registers from
the stack, restoring the interrupt mask to its cleared state. After a
reset, the interrupt mask is set and can be cleared only by a clear
interrupt mask bit (CLI), STOP, or WAIT instruction.
Technical Data
MC68HC705K1 — Rev. 2.0
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Central Processor Unit (CPU)
Arithmetic/Logic Unit (ALU)
N — Negative Flag
The CPU sets the negative flag when an arithmetic operation, logical
operation, or data manipulation produces a negative result (bit 7 in the
results is a logic 1). Reset has no effect on the negative flag.
Z — Zero Flag
Freescale Semiconductor, Inc...
The CPU sets the zero flag when an arithmetic operation, logical
operation, or data manipulation produces a result of $00. Reset has
no effect on the zero flag.
C — Carry/Borrow Flag
The CPU sets the carry/borrow flag when an addition operation
produces a carry out of bit 7 of the accumulator or when a subtraction
operation requires a borrow. Some logical operations and data
manipulation instructions also clear or set the carry/borrow bit. Reset
has no effect on the carry/borrow flag.
3.4 Arithmetic/Logic Unit (ALU)
The arithmetic/logic unit (ALU) performs the arithmetic and logical
operations defined by the instruction set. The binary arithmetic circuits
decode instructions and set up the ALU for the selected operation. Most
binary arithmetic is based on the addition algorithm, carrying out
subtraction as negative addition. Multiplication is not performed as a
discrete operation but as a chain of addition and shift operations within
the ALU. The multiply instruction requires 11 internal clock cycles to
complete this chain of operations.
MC68HC705K1 — Rev. 2.0
Technical Data
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Central Processor Unit (CPU)
Technical Data
MC68HC705K1 — Rev. 2.0
Central Processor Unit (CPU)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 4. Interrupts
4.1 Contents
Freescale Semiconductor, Inc...
4.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
4.3
Interrupt Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.1
Software Interrupt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.2
External Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4.3.2.1
IRQ/VPP Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
4.3.2.2
PA3–PA0 Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
4.3.2.3
IRQ Status and Control Register . . . . . . . . . . . . . . . . . . .45
4.3.3
Timer Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
4.3.3.1
Timer Overflow Interrupt . . . . . . . . . . . . . . . . . . . . . . . . .46
4.3.3.2
Real-Time Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
4.4
Interrupt Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
4.2 Introduction
This section describes how interrupts temporarily change the normal
processing sequence.
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
4.3 Interrupt Types
Freescale Semiconductor, Inc...
These conditions generate interrupts:
•
SWI instruction (software interrupt)
•
A logic 0 applied to the IRQ/VPP pin (external interrupt)
•
A logic 1 applied to one of the PA3–PA0 pins when port A external
interrupts are enabled (external interrupt)
•
A timer overflow (timer interrupt)
•
Expiration of the real-time interrupt period (timer interrupt)
An interrupt temporarily stops normal program execution to process a
particular event. An interrupt does not stop the execution of the
instruction in progress, but takes effect when the current instruction
completes its execution. Interrupt processing automatically saves the
central processor unit (CPU) registers on the stack and loads the
program counter with a user-defined vector address.
4.3.1 Software Interrupt
The software interrupt (SWI) instruction causes a non-maskable
interrupt.
4.3.2 External Interrupts
These sources can generate external interrupts:
•
IRQ/VPP pin
•
PA3–PA0 pins when port A external interrupts are enabled
Setting the I bit in the condition code register or clearing the IRQE bit in
the interrupt status and control register disables external interrupts.
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Interrupt Types
4.3.2.1 IRQ/VPP Pin
An interrupt signal on the IRQ/VPP pin latches an external interrupt
Freescale Semiconductor, Inc...
request. After completing the current instruction, the CPU tests these
bits:
•
IRQ latch
•
IRQE bit in the interrupt status and control register
•
I bit in the condition code register
If both the IRQ latch and the IRQE bit are set, and the I bit is clear, the
CPU then begins the interrupt sequence. The CPU clears the IRQ latch
while it fetches the interrupt vector, so that another external interrupt
request can be latched during the interrupt service routine. As soon as
the I bit is cleared during the return from interrupt, the CPU can
recognize the new interrupt request. Figure 4-1 shows the logic for
external interrupts.
The IRQ/VPP pin is negative edge-triggered only or negative edge- and
low-level-triggered, depending on the state of the LEVEL bit in the mask
option register (MOR). See 9.6 Mask Option Register.
Programming the LEVEL bit to a logic 1 selects the edge- and
level-sensitive trigger option. When LEVEL = 1:
•
A falling edge or a low level on the IRQ/VPP pin latches an external
interrupt request.
•
As long as the IRQ/VPP is low, an external interrupt request is
present, and the CPU continues to execute the interrupt service
routine. The edge- and level-sensitive trigger option allows
connection to the IRQ/VPP pin of multiple wired-OR interrupt
sources.
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Programming the LEVEL bit to a logic 0 selects the edge-sensitive-only
trigger option. When LEVEL = 0:
A falling edge on the IRQ/VPP pin latches an external interrupt
request.
•
A subsequent interrupt request can be latched only after the
voltage level on the IRQ/VPP pin returns to logic 1 and then falls
again to logic 0.
If the IRQ/VPP pin is not in use, connect it to the VDD pin.
TO BIH & BIL
INSTRUCTION
PROCESSING
IRQ/VPP
PA3
VDD
PA2
IRQ
LATCH
EXTERNAL
INTERRUPT
REQUEST
R
IRQF
PA1
PA0
IRQR
IRQE
LEVEL
RST
IRQ VECTOR FETCH
PIRQ
Freescale Semiconductor, Inc...
NOTE:
•
MASK OPTION REGISTER
IRQ STATUS/CONTROL REGISTER
INTERNAL DATA BUS
Figure 4-1. External Interrupt Logic
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Interrupt Types
4.3.2.2 PA3–PA0 Pins
Freescale Semiconductor, Inc...
Programming the PIRQ bit in the mask option register to a logic 1
enables pins PA3–PA0 to serve as additional external interrupt sources.
See 9.6 Mask Option Register. An interrupt signal on a PA3–PA0 pin
latches an external interrupt request. After completing the current
instruction, the CPU tests these bits:
•
IRQ latch
•
IRQE bit in the IRQ status and control register
•
I bit in the condition code register.
If both the IRQ latch and the IRQE bit are set, and the I bit is clear, the
CPU then begins the interrupt sequence. The CPU clears the IRQ latch
while it fetches the interrupt vector, so that another external interrupt
request can be latched during the interrupt service routine. As soon as
the I bit is cleared during the return from interrupt, the CPU can
recognize the new interrupt request.
The PA3–PA0 pins are edge-triggered only or both edge- and
level-triggered, depending on the state of the LEVEL bit in the MOR.
Programming the LEVEL bit to a logic 1 selects the edge- and
level-sensitive trigger option. When LEVEL = 1:
•
A rising edge or a high level on a PA3–PA0 pin latches an external
interrupt request if and only if all other PA3–PA0 pins are low and
the IRQ/VPP pin is high.
•
A falling edge or a low level on the IRQ/VPP pin latches an external
interrupt request if and only if all of the PA3–PA0 pins are low.
•
As long as any PA3–PA0 pin is high or the IRQ/VPP pin is low, an
external interrupt request is present, and the CPU continues to
execute the interrupt service routine.
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Freescale Semiconductor, Inc...
Programming the LEVEL bit to a logic 0 selects the edge-sensitive only
trigger option. When LEVEL = 0:
•
A rising edge on a PA3–PA0 pin latches an external interrupt
request if and only if all other PA3–PA0 pins are low and the
IRQ/VPP pin is high.
•
A falling edge on the IRQ/VPP pin latches an external interrupt
request if and only if all of the PA3–PA0 pins are low.
•
A subsequent PA3–PA0 pin interrupt request can be latched only
after the voltage level of the previous PA3–PA0 interrupt signal
returns to a logic 0 and then rises again to a logic 1.
•
A subsequent IRQ/VPP pin interrupt request can be latched only
after the voltage level of the previous IRQ/VPP interrupt signal
returns to a logic 1 and then falls again to a logic 0.
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Interrupt Types
4.3.2.3 IRQ Status and Control Register
The IRQ status and control register (ISCR) contains an external interrupt
mask, an external interrupt flag, and a flag reset bit. Unused bits read as
logic 0s.
Address:
$000A
Bit 7
6
5
4
IRQE
0
0
0
Read:
3
2
Freescale Semiconductor, Inc...
Bit 0
IRQF
0
0
IRQR
Write:
Reset:
1
1
0
0
= Unimplemented
0
0
0
U
0
U = Unaffected
Figure 4-2. IRQ Status and Control Register (ISCR)
IRQE — External Interrupt Request Enable Bit
This read/write bit enables external interrupts. Reset sets the IRQE
bit.
1 = External interrupt processing enabled
0 = External interrupt processing disabled
IRQF — External Interrupt Request Flag
The IRQF bit is a clearable, read-only flag that is set when an external
interrupt request is pending. Reset clears the IRQF bit.
1 = Interrupt request pending
0 = No interrupt request pending
These conditions set the IRQF bit:
a. An external interrupt signal on the IRQ/VPP pin
b. An external interrupt signal on pin PA3, PA2, PA1, or PA0
when PA3–PA0 are enabled to serve as external interrupt
sources
The CPU clears the IRQF bit when fetching the interrupt vector.
Writing to the IRQF bit has no effect. Writing a logic 1 to the IRQR bit
clears the IRQF bit.
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
IRQR — Interrupt Request Reset Bit
Writing a logic 1 to this write-only bit clears the IRQF bit. Writing a
logic 0 to IRQR has no effect. Reset has no effect on IRQR.
1 = IRQF bit cleared
0 = No effect
4.3.3 Timer Interrupts
Freescale Semiconductor, Inc...
The multifunction timer can generate these interrupts:
•
Timer overflow interrupt
•
Real-time interrupt
Setting the I bit in the condition code register disables all timer interrupts.
4.3.3.1 Timer Overflow Interrupt
A timer overflow interrupt request occurs if the timer overflow flag, TOF,
becomes set while the timer overflow interrupt enable bit, TOIE, is also
set. See 8.3 Timer Status and Control Register.
4.3.3.2 Real-Time Interrupt
A real-time interrupt request occurs if the real-time interrupt flag, RTIF,
becomes set while the real-time interrupt enable bit, RTIE, is also set.
See 8.3 Timer Status and Control Register.
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Interrupt Processing
4.4 Interrupt Processing
Freescale Semiconductor, Inc...
The CPU does these things to begin servicing an interrupt:
•
Stores the CPU registers on the stack in the order shown in
Figure 4-3
•
Sets the I bit in the condition code register to prevent further
interrupts
•
Loads the program counter with the contents of the appropriate
interrupt vector locations:
– $03FC and $03FD (software interrupt vector)
– $03FA and $03FB (external interrupt vector)
– $03F8 and $03F9 (timer interrupt vector)
The return-from-interrupt (RTI) instruction causes the CPU to recover
the CPU registers from the stack as shown in Figure 4-3.
$00E0 (BOTTOM OF STACK)
$00E1
$00E2
UNSTACKING
ORDER
•
•
•
•
•
•
5
1
CONDITION CODE REGISTER
4
2
ACCUMULATOR
3
3
INDEX REGISTER
2
4
PROGRAM COUNTER (HIGH BYTE)
1
5
PROGRAM COUNTER (LOW BYTE)
STACKING
ORDER
•
•
•
•
•
•
$00FD
$00FE
$00FF (TOP OF STACK)
Figure 4-3. Interrupt Stacking Order
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Table 4-1 summarizes the reset and interrupt sources and vector
assignments.
Table 4-1. Reset/Interrupt Vector Addresses
Freescale Semiconductor, Inc...
Function
Reset
Software
interrupt
(SWI)
External
interrupts
Timer
interrupts
Local
Mask
Source
Global
Mask
MOR
Control
Bit
Power-on logic
None
RESET pin
None
COP watchdog
None
None
LVIE(2)
Illegal address logic
None
None
None
None
IRQ/VPP pin
None
PA3 pin
PIRQ(3)
PA2 pin
IRQE bit
I bit
PIRQ3
PA0 pin
PIRQ3
TOFE bit
RTIF bit
RTIE bit
I bit
1
$03FE–$03FF
Same priority
as instruction
$03FC–$03FD
2
$03FA–$03FB
3
$03F8–$03F9
PIRQ3
PA1 pin
TOF bit
Vector
Address
COPEN(1)
Low voltage detect
User code
Priority
(1 = Highest)
None
1. COPEN enables the COP watchdog.
2. LVIE enables low-voltage resets.
3. PIRQ enables port A external interrupts.
NOTE:
If more than one interrupt request is pending, the CPU fetches the vector
of the higher priority interrupt first. A higher priority interrupt does not
interrupt a lower priority interrupt service routine unless the lower priority
interrupt service routine clears the I bit.
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Interrupts
Interrupt Processing
Figure 4-4 shows the sequence of events caused by an interrupt.
FROM
RESET
YES
I BIT SET?
Freescale Semiconductor, Inc...
NO
EXTERNAL
INTERRUPT?
YES
CLEAR IRQ LATCH
NO
TIMER
INTERRUPT?
YES
STACK PCL, PCH, X, A, CCR
SET I BIT
LOAD PC WITH INTERRUPT VECTOR
NO
FETCH NEXT
INSTRUCTION
SWI
INSTRUCTION?
YES
NO
RTI
INSTRUCTION?
YES
UNSTACK CCR, A, X, PCH, PCL
NO
EXECUTE INSTRUCTION
Figure 4-4. Interrupt Flowchart
MC68HC705K1 — Rev. 2.0
Technical Data
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Interrupts
Technical Data
MC68HC705K1 — Rev. 2.0
Interrupts
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 5. Resets
Freescale Semiconductor, Inc...
5.1 Contents
5.3
Reset Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.1
Power-On Reset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.2
External Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
5.3.3
Computer Operating Properly (COP) Reset . . . . . . . . . . . . .54
5.3.4
Illegal Address Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
5.3.5
Low-Voltage Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.4
Reset States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.4.1
CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
5.4.2
I/O Port Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.4.3
Multifunction Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.4.4
COP Watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
5.2 Introduction
This section describes the five reset sources and how they initialize the
microcontroller unit (MCU).
MC68HC705K1 — Rev. 2.0
Technical Data
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Resets
5.3 Reset Types
Freescale Semiconductor, Inc...
A reset immediately stops the operation of the instruction being
executed, initializes certain control bits, and loads the program counter
with a user-defined reset vector address. These conditions produce a
reset:
•
Initial power-up (power-on reset)
•
A logic 0 applied to the RESET pin (external reset)
•
Timeout of the computer operating properly (COP) watchdog
(COP reset)
•
An opcode fetch from an address not in the memory map (illegal
address reset)
•
VDD voltage below nominal 3.5 volts (low-voltage reset)
5.3.1 Power-On Reset
A positive transition on the VDD pin generates a power-on reset. The
power-on reset is strictly for power-up conditions and cannot be used to
detect drops in power supply voltage.
A 4064 tCYC (internal clock cycle) delay after the oscillator becomes
active allows the clock generator to stabilize. If the RESET pin is at
logic 0 at the end of 4064 tCYC, the MCU remains in the reset condition
until the signal on the RESET pin goes to logic 1.
5.3.2 External Reset
A logic 0 applied to the RESET pin for one and one-half tCYC generates
an external reset. A Schmitt trigger senses the logic level at the RESET
pin.
A COP reset or an illegal address reset pulls the RESET pin low for one
internal clock cycle. A low-voltage reset pulls the RESET pin low for as
long as the low-voltage condition exists.
Technical Data
MC68HC705K1 — Rev. 2.0
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Resets
Reset Types
COPEN
LVRE
MASK OPTION REGISTER
COP WATCHDOG
LOW-VOLTAGE RESET
Freescale Semiconductor, Inc...
IRQ/VPP
POWER-ON RESET
ILLEGAL ADDRESS RESET
INTERNAL ADDRESS BUS
RESET
INTERNAL
CLOCK
S
D
RESET
LATCH
RST
TO CPU AND
SUBSYSTEMS
R
Figure 5-1. Reset Sources
NOTE:
To avoid overloading some power supply designs, do not connect the
RESET pin directly to VDD. Use a pullup resistor of 10 kΩ or more.
MC68HC705K1 — Rev. 2.0
Technical Data
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Resets
5.3.3 Computer Operating Properly (COP) Reset
Freescale Semiconductor, Inc...
A timeout of the COP watchdog generates a COP reset. The COP
watchdog is part of a software error detection system and must be
cleared periodically to start a new timeout period. (See 8.5 COP
Watchdog.) To clear the COP watchdog and prevent a COP reset, write
a logic 0 to bit 0 (COPC) of the COP register at location $03F0. The COP
register is a write-only register that returns the contents of a ROM
location when read.
Address:
$03F0
Bit 7
6
5
4
3
2
1
Bit 0
Read:
COPC
Write:
Reset:
U
U
U
= Unimplemented
U
U
U
U
0
U = Unaffected
Figure 5-2. COP Register (COPR)
COPC — COP Clear Bit
COPC is a write-only bit. Periodically writing a logic 0 to COPC
prevents the COP watchdog from resetting the MCU. Writing a logic 1
has no effect. Reset clears the COPC bit.
5.3.4 Illegal Address Reset
An opcode fetch from an address that is not in the erasable,
programmable read-only memory (EPROM) (locations $0200–$03FF)
or the random-access memory (RAM) (locations $00E0–$00FF)
generates an illegal address reset. An illegal address reset pulls the
RESET pin low for one cycle of the internal clock.
Technical Data
MC68HC705K1 — Rev. 2.0
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Resets
Reset States
5.3.5 Low-Voltage Reset
The low-voltage reset circuit generates a reset signal if the voltage on
the VDD pin falls below 3.5 V (nominal). VDD must be set at 5 V ±10%
while the low-voltage reset circuit is enabled.
Freescale Semiconductor, Inc...
Programming the LVRE bit to a logic 1 enables the low-voltage reset
function. When erased, the LVRE bit in the mask option register disables
the low-voltage reset circuit. See 9.6 Mask Option Register.
A low-voltage reset pulls the RESET pin low for as long as the
low-voltage condition exists.
The state of the low-voltage reset circuit is readable in the test register
at location $001F. Bit 1 of the test register is the low-voltage reset flag
(LVRF). Regardless of the LVRE bit in the mask option register, the
low-voltage reset circuit is active in all modes except stop mode.
5.4 Reset States
This subsection describes how resets initialize the MCU.
5.4.1 CPU
A reset has these effects on the central processor unit (CPU):
•
Loads the stack pointer with $FF
•
Sets the I bit in the condition code register, inhibiting interrupts
•
Sets the IRQE bit in the interrupt status and control register
•
Loads the program counter with the user-defined reset vector from
locations $03FE and $03FF
•
Clears the stop latch, enabling the CPU clock
•
Clears the wait latch, waking the CPU from the wait mode
MC68HC705K1 — Rev. 2.0
Technical Data
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Resets
5.4.2 I/O Port Registers
Freescale Semiconductor, Inc...
A reset has these effects on input/output (I/O) port registers:
•
Clears bits DDRA7–DDRA0 in data direction register A so that
port A pins are inputs
•
Clears bits PDIA7–PDIA0 in pulldown register A so that port A
pulldown devices are enabled (if the SWPDI bit in the mask option
register is programmed to a logic 0)
•
Clears bits DDRB1 and DDRB0 in data direction register B so that
port B pins are inputs (if the SWPDI bit in the mask option register
is programmed to logic 0)
•
Clears bits PDIB1 and PDIB0 in pulldown register B so that port B
pulldown devices are enabled
•
Has no effect on port A or port B data registers
5.4.3 Multifunction Timer
A reset has these effects on the multifunction timer:
•
Clears the timer status and control register
•
Clears the timer counter register
5.4.4 COP Watchdog
A reset clears the COP watchdog timeout counter.
Technical Data
MC68HC705K1 — Rev. 2.0
Resets
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 6. Low-Power Modes
Freescale Semiconductor, Inc...
6.1 Contents
6.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
6.3
Stop Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
6.4
Wait Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
6.5
Halt Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
6.6
Data-Retention Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
6.2 Introduction
This section describes the four low-power modes:
•
Stop mode
•
Wait mode
•
Halt mode
•
Data-retention mode
6.3 Stop Mode
If the SWAIT bit in the mask option register (MOR) is programmed to a
logic 0, the STOP instruction puts the microcontroller unit (MCU) in its
lowest power-consumption mode and has these effects on the MCU:
•
Clears TOF and RTIF, the timer interrupt flags in the timer status
and control register, removing any pending timer interrupts
•
Clears TOIE and RTIE, the timer interrupt enable bits in the timer
status and control register, disabling further timer interrupts
•
Clears the multifunction timer counter register
MC68HC705K1 — Rev. 2.0
Technical Data
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Low-Power Modes
•
Sets the IRQE bit in the IRQ status and control register to enable
external interrupts
•
Clears the I bit in the condition code register, enabling interrupts
•
Stops the internal oscillator, turning off the central processor unit
(CPU) clock and the timer clock, including the computer operating
properly (COP) watchdog
Freescale Semiconductor, Inc...
The STOP instruction does not affect any other registers or any
input/output (I/O) lines.
These conditions bring the MCU out of stop mode:
•
An external interrupt signal on the IRQ/VPP pin — A high-to-low
transition on the IRQ/VPP pin loads the program counter with the
contents of locations $03FA and $03FB.
•
An external interrupt signal on a port A external interrupt pin — If
the PIRQ bit in the mask option register is programmed to a
logic 1, a low-to-high transition on a PA3–PA0 pin loads the
program counter with the contents of locations $03FA and $03FB.
•
External reset — A logic 0 on the RESET pin resets the MCU and
loads the program counter with the contents of locations $03FE
and $03FF.
When the MCU exits stop mode, processing resumes after a
stabilization delay of 4064 oscillator cycles.
6.4 Wait Mode
The WAIT instruction puts the MCU in an intermediate
power-consumption mode and has these effects on the MCU:
•
Clears the I bit in the condition code register, enabling interrupts
•
Sets the IRQE bit in the IRQ status and control register, enabling
external interrupts
•
Stops the CPU clock, but allows the internal oscillator and timer
clock to continue to run
The WAIT instruction does not affect any other registers or any I/O lines.
Technical Data
MC68HC705K1 — Rev. 2.0
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Low-Power Modes
Halt Mode
Freescale Semiconductor, Inc...
These conditions restart the CPU clock and bring the MCU out of wait
mode:
•
An external interrupt signal on the IRQ/VPP pin — A high-to-low
transition on the IRQ/VPP pin loads the program counter with the
contents of locations $03FA and $03FB.
•
An external interrupt signal on a port A external interrupt pin — If
the PIRQ bit in the mask option register is programmed to a
logic 1, a low-to-high transition on a PA3–PA0 pin loads the
program counter with the contents of locations $03FA and $03FB.
•
A timer interrupt — A timer overflow or a real-time interrupt request
loads the program counter with the contents of locations $03F8
and $03F9.
•
A COP watchdog reset — A timeout of the COP watchdog resets
the MCU and loads the program counter with the contents of
locations $03FE and $03FF. Software can enable real-time
interrupts so that the MCU can periodically exit wait mode to reset
the COP watchdog.
•
External reset — A logic 0 on the RESET pin resets the MCU and
loads the program counter with the contents of locations $03FE
and $03FF.
6.5 Halt Mode
The STOP instruction puts the MCU in halt mode if the SWAIT bit in the
mask option register is programmed to a logic 1. Halt mode is identical
to wait mode, except that a recovery delay of 1–4064 internal clock
cycles occurs when the MCU exits halt mode. When the SWAIT bit is set,
the COP watchdog cannot be inadvertently turned off by a STOP
instruction.
Figure 6-1 shows the sequence of events in stop, wait, and halt modes.
MC68HC705K1 — Rev. 2.0
Technical Data
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Low-Power Modes
STOP
YES
SWAIT
BIT SET?
HALT
WAIT
CLEAR I BIT IN CCR
SET IRQE BIT IN ISCR
TURN OFF CPU CLOCK
TIMER CLOCK ACTIVE
CLEAR I BIT IN CCR
SET IRQE BIT IN ISCR
TURN OFF CPU CLOCK
TIMER CLOCK ACTIVE
NO
Freescale Semiconductor, Inc...
CLEAR I BIT IN CCR
SET IRQE BIT IN ISCR
CLEAR TOF, RTIF, TOIE, AND RTIE BITS IN TSCR
TURN OFF INTERNAL OSCILLATOR
YES
EXTERNAL
RESET?
YES
EXTERNAL
RESET?
YES
NO
EXTERNAL
RESET?
NO
NO
YES
EXTERNAL
INTERRUPT?
YES
EXTERNAL
INTERRUPT?
YES
NO
EXTERNAL
INTERRUPT?
NO
NO
YES
TIMER
INTERRUPT?
YES
TIMER
INTERRUPT?
TURN ON INTERNAL OSCILLATOR
RESET STABILIZATION TIMER
NO
YES
END OF
STABILIZATION
DELAY?
YES
COP
RESET?
NO
NO
YES
COP
RESET?
NO
NO
TURN ON CPU CLOCK
1. LOAD PC WITH RESET VECTOR
OR
2. SERVICE INTERRUPT
a. SAVE CPU REGISTERS ON STACK
b. SET I BIT IN CCR
c. LOAD PC WITH INTERRUPT VECTOR
Figure 6-1. Stop/Wait/Halt Flowchart
Technical Data
MC68HC705K1 — Rev. 2.0
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Low-Power Modes
Data-Retention Mode
6.6 Data-Retention Mode
In data-retention mode, the MCU retains random-access memory (RAM)
contents and CPU register contents at VDD voltages as low as 2.0 Vdc.
Data-retention mode allows the MCU to remain in a low
power-consumption state during which it retains data, but the CPU
cannot execute instructions.
To put the MCU in data-retention mode:
Freescale Semiconductor, Inc...
1. Drive the RESET pin to a logic 0.
2. Lower the VDD voltage. The RESET pin must remain low
continuously during data-retention mode.
To take the MCU out of data-retention mode:
1. Return VDD to normal operating voltage.
2. Return the RESET pin to a logic 1.
MC68HC705K1 — Rev. 2.0
Technical Data
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Low-Power Modes
Technical Data
MC68HC705K1 — Rev. 2.0
Low-Power Modes
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 7. Parallel Input/Output (I/O)
Freescale Semiconductor, Inc...
7.1 Contents
7.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
7.3
I/O Port Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
7.4
Port A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
7.4.1
Port A Data Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
7.4.2
Data Direction Register A. . . . . . . . . . . . . . . . . . . . . . . . . . . .2
7.4.3
Pulldown Register A (PDRA) . . . . . . . . . . . . . . . . . . . . . . . . .3
7.4.4
Port A External Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
7.4.5
Port A Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
7.5
Port B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
7.5.1
Port B Data Register (PORTB). . . . . . . . . . . . . . . . . . . . . . . .6
7.5.2
Data Direction Register B (DDRB) . . . . . . . . . . . . . . . . . . . . .8
7.5.3
Pulldown Register B (PDRB) . . . . . . . . . . . . . . . . . . . . . . . . .8
7.5.4
Port B Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
7.2 Introduction
This section describes the two bidirectional input/output (I/O) ports:
•
Port A
•
Port B
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
7.3 I/O Port Function
The 10 bidirectional input/output (I/O) pins form two parallel I/O ports.
Each I/O pin is programmable as an input or an output. The contents of
the data direction registers determine the data direction of each I/O pin.
All 10 I/O pins have software-programmable pulldown devices.
Freescale Semiconductor, Inc...
7.4 Port A
Port A is an 8-bit, general-purpose, bidirectional I/O port with these
features:
•
Programmable pulldown devices
•
8-mA current sinking capability (pins PA7–PA4)
•
External interrupt capability (pins PA3–PA0)
7.4.1 Port A Data Register
The port A data register (PORTA) contains a bit for each of the port A
pins. When a port A pin is programmed to be an output, the state of its
data register bit determines the state of the output pin. When a port A pin
is programmed to be an input, reading the port A data register returns
the logic state of the pin.
Address:
$0000
Bit 7
6
5
4
3
2
1
Bit 0
PA7
PA6
PA5
PA4
PA3
PA2
PA1
PA0
Read:
Write:
Reset:
Unaffected by reset
Figure 7-1. Port A Data Register (PORTA)
PA7–PA0 — Port A Data Bits
These read/write bits are software-programmable. Data direction of
each bit is under the control of the corresponding bit in data direction
register A. Reset has no effect on port A data.
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Port A
7.4.2 Data Direction Register A
The contents of data direction register A (DDRA) determine whether
each port A pin is an input or an output. Writing a logic 1 to a DDRA bit
enables the output buffer for the associated port A pin; a logic 0 disables
the output buffer. A reset initializes all DDRA bits to logic 0s, configuring
all port A pins as inputs. If the pulldown devices are enabled, setting a
DDRA bit to a logic 1 turns off the pulldown device for that pin.
Freescale Semiconductor, Inc...
Address:
$0004
Bit 7
6
5
4
3
2
1
Bit 0
DDRA7
DDRA6
DDRA5
DDRA4
DDRA3
DDRA2
DDRA1
DDRA0
0
0
0
0
0
0
0
0
Read:
Write:
Reset:
Figure 7-2. Data Direction Register A (DDRA)
DDRA7–DDRA0 — Port A Data Direction Bits
These read/write bits control port A data direction. Reset clears bits
DDRA7–DDRA0.
1 = Corresponding port A pin configured as output
0 = Corresponding port A pin configured as input
NOTE:
Avoid glitches on port A pins by writing to the port A data register before
changing DDRA bits from logic 0 to logic 1.
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
7.4.3 Pulldown Register A
Programming the SWPDI bit in the mask option register to a logic 0
enables the port A and port B pulldown devices. The port A pulldown
devices sink approximately 100 µA and are under the control of the
PDIA7–PDIA0 bits in pulldown register A (PDRA).
Freescale Semiconductor, Inc...
Clearing the PDIA7–PDIA0 bits turns on the pulldown devices of the port
A pins that are configured as inputs. A pulldown device can be turned on
only when its pin is an input. When SWPDI is a logic 0, reset initializes
all port A pins as inputs with pulldown devices turned on.
Programming the SWPDI bit to a logic 1 disables the port A and port B
pulldown devices. Reset initializes all port A pins as inputs with pulldown
devices disabled when the SWPDI bit is programmed to a logic 1.
Address:
$0010
Bit 7
6
5
4
3
2
1
Bit 0
Write:
PDIA7
PDIA6
PDIA5
PDIA4
PDIA3
PDIA2
PDIA1
PDIA0
Reset:
0
0
0
0
0
0
0
0
Read:
= Unimplemented
Figure 7-3. Pulldown Register A (PDRA)
PDIA7–PDIA0 — Port A Pulldown Inhibit Bits 7–0
Writing logic 0s to these write-only bits turns on the port A pulldown
devices. Reading pulldown register A returns undefined data. Reset
clears bits PDIA7–PDIA0.
1 = Corresponding port A pin pulldown device turned off
0 = Corresponding port A pin pulldown device turned on
NOTE:
Avoid a floating port A input by clearing its pulldown register bit before
changing its DDRA bit from logic 1 to logic 0.
Do not use read-modify-write instructions on pulldown register A.
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Port A
7.4.4 Port A External Interrupts
NOTE:
When testing for external interrupts, the branch if interrupt pin is high
(BIH) and branch if interrupt pin is low (BIL) instructions test the voltage
on the IRQ/VPP pin, not the state of the internal IRQ signal. Therefore,
BIH and BIL cannot test the port A external interrupt pins.
7.4.5 Port A Logic
Figure 7-4 shows the port A I/O logic.
READ $0004
WRITE $0004
WRITE $0000
INTERNAL DATA BUS
DATA DIRECTION
REGISTER A
BIT DDRAx
PORT A DATA
REGISTER
BIT PAx
EXTERNAL
INTERRUPT
REQUEST
(PINS PA3–PA0)
PAx
8-mA SINK
CAPABILITY
(PINS PA7–PA4)
READ $0000
WRITE $0010
PULLDOWN
REGISTER A
BIT PDIAx
RESET
100-µA
PULLDOWN
DEVICE
SWPDI
Freescale Semiconductor, Inc...
Programming the PIRQ bit in the mask option register to a logic 1
enables the PA3–PA0 pins to serve as external interrupt pins in addition
to the IRQ/VPP pin. The active interrupt state for the PA3–PA0 pins is a
logic 1 or a rising edge. The active interrupt state for the IRQ/VPP pin is
a logic 0 or a falling edge. The state of the LEVEL bit in the mask option
register determines whether external interrupt inputs are edge-sensitive
only or both edge- and level-sensitive.
MASK OPTION REGISTER ($0017)
Figure 7-4. Port A I/O Circuit
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
When a port A pin is programmed as an output, reading the port bit
actually reads the value of the data latch and not the voltage on the pin
itself. When a port A pin is programmed as an input, reading the port bit
reads the voltage level on the pin. The data latch can always be written,
regardless of the state of its data direction register bit. Table 7-1
summarizes the operations of the port A pins.
Freescale Semiconductor, Inc...
Table 7-1. Port A Pin Functions
Pulldown
Mask
Option
PDIAx
DDRAx
No
X(1)
0
No
X
Yes
Control Bits
Accesses
to PDRA
I/O Pin
Mode
Accesses
to DDRA
Accesses
to PORTA
Read
Write
Read/Write
Read
Write
Input, hi-z
U(2)
PDIA7–PDIA0
DDRA7–DDRA0
Pin
PA7–PA0
1
Output
U
PDIA7–PDIA0
DDRA7–DDRA0
PA7-PA0
PA7–PA0
0
0
Input,
pulldown on
U
PDIA7–PDIA0
DDRA7–DDRA0
Pin
PA7–PA0
Yes
0
1
Output
U
PDIA7–PDIA0
DDRA7–DDRA0
PA7-PA0
PA7–PA0
Yes
1
0
Input, hi-z
U
PDIA7–PDIA0
DDRA7–DDRA0
Pin
PA7–PA0
Yes
1
1
Output
U
PDIA7–PDIA0
DDRA7–DDRA0
PA7-PA0
PA7–PA0
1. X = Don’t care
2. U = Undefined
7.5 Port B
Port B is a 2-bit, general-purpose, bidirectional I/O port with these
features:
•
Programmable pulldown devices
•
Oscillator output for 3-pin resistance-capacitance (RC) oscillator
configuration
7.5.1 Port B Data Register
The port B data register (PORTB) contains a bit for each of the port B
pins. When a port B pin is programmed to be an output, the state of its
data register bit determines the state of the output pin. When a port B pin
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Port B
is programmed to be an input, reading the port B data register returns
the logic state of the pin. Reset has no effect on port B data.
Address:
Read:
$0001
Bit 7
6
5
4
3
2
1
Bit 0
0
0
0
0
0
0
PB1/
OSC3
PB0
Write:
Reset:
Unaffected by reset
Freescale Semiconductor, Inc...
= Unimplemented
Figure 7-5. Port B Data Register (PORTB)
PB1/OSC3 — Port B Data Bit 1/Oscillator Output Bit
This read/write data bit is software programmable. Data direction
of PB1 bit is under the control of the DDRB1 bit in data direction
register B.
When both the RC and PIN3 bits in the mask option register are set,
PB1/OSC3 can be used as an oscillator output in the 3-pin RC
oscillator configuration. Using PB1/OSC3 as an oscillator output
affects port B in these ways:
a. Bit PB1 can be used as a read/write storage location without
affecting the oscillator. Reset has no effect on bit PB1.
b. Bit DDRB1 in data direction register B can be used as a
read/write storage location without affecting the oscillator.
Reset clears DDRB1.
c. The PB1/OSC3 pulldown device is disabled, regardless of
the state of the SWPDI bit in the mask option register.
PB0 — Port B Data Bit 0
This read/write data bit is software programmable. Data direction of
PB0 is under the control of the DDRB0 bit in data direction register B.
Bits 7–2 — Not Used
Bits 7–2 always read as logic 0s. Writes to these bits have no effect.
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
7.5.2 Data Direction Register B
The contents of data direction register B (DDRB) determine whether
each port B pin is an input or an output. Writing a logic 1 to a DDRB bit
enables the output buffer for the associated port B pin; a logic 0 disables
the output buffer. A reset initializes all DDRB bits to logic 0, configuring
all port B pins as inputs. Setting a DDRB bit to a logic 1 turns off the
pulldown device for that pin.
Freescale Semiconductor, Inc...
Address:
Read:
$0005
Bit 7
6
5
4
3
2
0
0
0
0
0
0
0
0
0
0
0
0
Write:
Reset:
1
Bit 0
DDRB1
DDRB0
0
0
= Unimplemented
Figure 7-6. Data Direction Register B (DDRB)
DDRB1 and DDRB0 — Data Direction Bits 1 and 0
These read/write bits control port B data direction.
1 = Corresponding port B pin configured as output
0 = Corresponding port B pin configured as input
Bit 7–2 — Not Used
Bits 7–2 always read as logic 0s. Writes to these bits have no effect.
NOTE:
Avoid glitches on port B pins by writing to the port B data register before
changing DDRB bits from logic 0 to logic 1.
7.5.3 Pulldown Register B
Programming the SWPDI bit in the mask option register to a logic 0
enables the port A and port B pulldown devices. The port B pulldown
devices sink approximately 100 µA and are under the control of the
PDIB1 and PDIB0 bits in pulldown register B (PDRB). Clearing PDIB1
and PDIB0 turns on the port B pulldown devices if they are configured
as inputs. A pulldown device can be turned on only when its pin is an
input. When SWPDI is a logic 0, reset initializes both port B pins as
inputs with pulldown devices turned on.
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Port B
Programming the SWPDI bit to a logic 1 disables both of the port B
pulldown devices. Reset initializes both port B pins as inputs with
pulldown devices disabled when the SWPDI bit is programmed to a
logic 1.
Address:
$0011
Bit 7
6
5
4
3
2
1
Bit 0
Write:
0
0
0
0
0
0
PDIB1
PDIB0
Reset:
0
0
0
0
0
0
0
0
Freescale Semiconductor, Inc...
Read:
= Unimplemented
Figure 7-7. Pulldown Register B (PDRB)
PDIB1 and PDIB0 — Port B Pulldown Inhibit Bits 1 and 0
Writing logic 0s to these write-only bits turns on the port B pulldown
devices. Reading pulldown register B returns undefined data. Reset
clears PDIB1 and PDIB0.
1 = Corresponding port B pin pulldown device turned off
0 = Corresponding port B pin pulldown device turned on
Bits 7–2 — Not Used
Bits 7–2 always read as logic 0s.
Programming the SWPDI bit in the mask option register to logic 1 turns
off all port A and port B pulldown devices and disables software control
of the pulldown devices. Reset has no effect on the pulldown devices
when the SWPDI bit is set to a logic 1.
NOTE:
Avoid a floating port B input by clearing its pulldown register bit before
changing its DDRB bit from logic 1 to logic 0.
Do not use read-modify-write instructions on pulldown register B.
7.5.4 Port B Logic
Figure 7-8 shows the port B I/O logic.
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
READ $0005
TO 3-PIN OSCILLATOR
WRITE $0005
DATA DIRECTION
REGISTER B
BIT DDRB1
PORT B DATA
REGISTER
BIT PB1
PB1/
OSC3
PULLDOWN
REGISTER B
BIT PDIB1
100-µA
PULLDOWN
DEVICE
SWPDI
RC
WRITE $0011
PIN3
READ $0001
INTERNAL DATA BUS
Freescale Semiconductor, Inc...
WRITE $0001
MASK OPTION REGISTER ($0017)
READ $0005
WRITE $0005
WRITE $0001
DATA DIRECTION
REGISTER B
BIT DDRB0
PORT B DATA
REGISTER
BIT PB0
PB0
READ $0001
WRITE $0011
PULLDOWN
REGISTER B
BIT PDIB0
100-µA
PULLDOWN
DEVICE
RESET
Figure 7-8. Port B I/O Circuit
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Port B
Freescale Semiconductor, Inc...
When a port B pin is programmed as an output, reading the port bit reads
the value of the data latch and not the voltage on the pin itself. When a
port B pin is programmed as an input, reading the port bit reads the
voltage level on the pin. The data latch can always be written, regardless
of the state of its DDR bit. Table 7-2 summarizes the operation of the
PB0 pin.
Programming the RC and PIN3 bits to logic 1 disables the PB1/OSC3
output buffer and pulldown device. The PB1/OSC3 bit becomes an
output from the 3-pin RC oscillator. The DDRB1 and PB1 bits are
available as read/write storage locations; reset clears DDRB1 but does
not affect PB1. Table 7-3 summarizes the operation of the PB1/OSC3
pin.
Table 7-2. PB0 Pin Functions
Control Bits
PB0
Pin Mode
SWPDI
PDIB0
DDRB0
1
X(1)
0
1
X
0
Accesses
to PDRB
Accesses
to DDRB
Accesses
to PORTB
Read
Write
Read/Write
Read
Write
Input, hi-z
U(2)
PDIB0
DDRB0
Pin
PB0
1
Output
U
PDIB0
DDRB0
PB0
PB0
0
0
Input,
pulldown on
U
PDIB0
DDRB0
Pin
PB0
0
0
1
Output
U
PDIB0
DDRB0
PB0
PB0
0
1
0
Input, hi-z
U
PDIB0
DDRB0
Pin
PB0
0
1
1
Output
U
PDIB0
DDRB0
PB0
PB0
1. X = Don’t care
2. U = Undefined
MC68HC705K1 — Rev. 2.0
Technical Data
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Parallel Input/Output (I/O)
Table 7-3. PB1/OSC3 Pin Functions
Freescale Semiconductor, Inc...
Control Bits
PB1/OSC3
Pin Mode
RC
PIN3
SWPDI
PDIB1
DDRB1
0
X(1)
1
X
0
0
X
1
X
0
X
0
0
X
0
Accesses
to PDRB
Accesses
to DDRB
Accesses
to PORTB
Read
Write
Read/Write
Read
Write
Input, hi-z
U(2)
PDIB1
DDRB1
Pin
PB1
1
Output
U
PDIB1
DDRB1
PB1
PB1
0
0
Input,
pulldown on
U
PDIB1
DDRB1
Pin
PB1
0
0
1
Output
U
PDIB1
DDRB1
PB1
PB1
X
0
1
0
Input, hi-z
U
PDIB1
DDRB1
Pin
PB1
0
X
0
1
1
Output
U
PDIB1
DDRB1
PB1
PB1
1
0
1
X
0
Input, hi-z
U
PDIB1
DDRB1
Pin
PB1
1
0
1
X
1
Output
U
PDIB1
DDRB1
PB1
PB1
1
0
0
0
0
Input,
pulldown on
U
PDIB1
DDRB1
Pin
PB1
1
0
0
0
1
Output
U
PDIB1
DDRB1
PB1
PB1
1
0
0
1
0
Input, hi-z
U
PDIB1
DDRB1
Pin
PB1
1
0
0
1
1
Output
U
PDIB1
DDRB1
PB1
PB1
1
1
X
X
X
3-pin
RC oscillator
output
U
PDIB1
DDRB1
PB1
PB1
1. X = Don’t care
2. U = Undefined
Technical Data
MC68HC705K1 — Rev. 2.0
Parallel Input/Output (I/O)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 8. Multifunction Timer
Freescale Semiconductor, Inc...
8.1 Contents
8.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75
8.3
Timer Status and Control Register . . . . . . . . . . . . . . . . . . . . . .77
8.4
Timer Counter Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
8.5
COP Watchdog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
8.2 Introduction
This section describes the operation of the multifunction timer and the
computer operating properly (COP) watchdog. Figure 8-1 shows the
organization of the timer subsystem.
MC68HC705K1 — Rev. 2.0
Technical Data
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
RESET
OVERFLOW
INTERNAL CLOCK
÷4
TIMER COUNTER REGISTER
(XTAL ÷ 2)
BITS 0–7 OF 15-STAGE
RIPPLE COUNTER
RTIFR
TOFR
RTIE
TOIE
RTIF
INTERRUPT
REQUEST
TOF
Freescale Semiconductor, Inc...
INTERNAL DATA BUS
RESET
RT0
RT1
TIMER STATUS/CONTROL REGISTER
RESET
CLEAR COP TIMER
RTI RATE SELECT
POWER-ON
RESET (POR)
÷2
÷2
÷2
÷2
÷2
÷2
BITS 8–14 OF 15-STAGE RIPPLE COUNTER
÷2
RESET
÷2
÷2
÷2
S
Q
COP RESET
R
Figure 8-1. Multifunction Timer Block Diagram
Technical Data
MC68HC705K1 — Rev. 2.0
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
Timer Status and Control Register
8.3 Timer Status and Control Register
Freescale Semiconductor, Inc...
The read/write timer status and control register (TSCR) contains these
bits:
•
Timer interrupt enable bits
•
Timer interrupt flags
•
Timer interrupt flag reset bits
•
Timer interrupt rate select bits
Address:
Read:
$0008
Bit 7
6
TOF
RTIF
5
4
TOIE
RTIE
Write:
Reset:
0
0
0
= Unimplemented
0
3
2
TOFR
RTIFR
U
U
1
Bit 0
RT1
RT0
1
1
U = Unaffected
Figure 8-2. Timer Status and Control Register (TSCR)
TOF — Timer Overflow Flag
This read-only flag becomes set when the first eight stages of the
counter roll over from $FF to $00. TOF generates a timer overflow
interrupt request if TOIE is also set. Clear TOF by writing a logic 1 to
the TOFR bit. Writing to TOF has no effect. Reset clears TOF.
RTIF — Real-Time Interrupt Flag
This read-only flag becomes set when the selected real-time interrupt
(RTI) output becomes active. RTIF generates a real-time interrupt
request if RTIE is also set. Clear RTIF by writing a logic 1 to the
RTIFR bit. Writing to RTIF has no effect. Reset clears RTIF.
TOIE — Timer Overflow Interrupt Enable Bit
This read/write bit enables timer overflow interrupts. Reset clears
TOIE.
1 = Timer overflow interrupts enabled
0 = Timer overflow interrupts disabled
MC68HC705K1 — Rev. 2.0
Technical Data
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
RTIE — Real-Time Interrupt Enable Bit
This read/write bit enables real-time interrupts. Reset clears RTIE.
1 = Real-time interrupts enabled
0 = Real-time interrupts disabled
TOFR — Timer Overflow Flag Reset
Writing a logic 1 to this write-only bit clears the TOF bit. TOFR always
reads as a logic 0. Reset does not affect TOFR.
Freescale Semiconductor, Inc...
RTIFR — Real-Time Interrupt Flag Reset
Writing a logic 1 to this write-only bit clears the RTIF bit. RTIFR
always reads as a logic 0. Reset does not affect RTIFR.
RT1 and RT0 — Real-Time Interrupt Select Bits 1 and 0
These read/write bits select one of four real-time interrupt rates, as
shown in Table 8-1. Because the selected RTI output drives the COP
watchdog, changing the real-time interrupt rate also changes the
counting rate of the COP watchdog. Reset sets RT1 and RT0,
selecting the longest COP timeout period and RTI period.
NOTE:
Changing RT1 and RT0 when a COP timeout is imminent or uncertain
may cause an RTI request to be missed or an additional RTI request to
be generated. Clear the COP timer just before changing RT1 and RT0.
Table 8-1. Real-Time Interrupt Rate Selection
RT1:RT0
Number
of Cycles
to RTI
RTI
Period(1)
Number
of Cycles
to COP Reset
COP Timeout
Period(1)
00
214 = 16,384
8.2 ms
217 = 131,072
65.5 ms
01
215 = 32,768
16.4 ms
218 = 262,144
131.1 ms
10
216 = 65,536
32.8 ms
219 = 524,288
262.1 ms
11
217 = 131,072
65.5 ms
220 = 1,048,576
524.3 ms
1. At 2-MHz bus, 4-MHz XTAL, 0.5 µs per cycle
Technical Data
MC68HC705K1 — Rev. 2.0
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
Timer Counter Register
8.4 Timer Counter Register
A 15-stage ripple counter is the core of the timer. The value of the first
eight stages is readable at any time from the read-only timer counter
register (TCNTR).
Address:
Freescale Semiconductor, Inc...
Read:
$0009
Bit 7
6
5
4
3
2
1
Bit 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
Write:
Reset:
= Unimplemented
Figure 8-3. Timer Counter Register (TCNTR)
Power-on clears the entire counter chain and begins clocking the
counter. After 4064 cycles, the power-on reset circuit is released,
clearing the counter again and allowing the MCU to come out of reset.
A timer overflow function at the eighth counter stage allows a timer
interrupt every 1024 internal clock cycles.
Each count of the timer counter register takes eight oscillator cycles or
four cycles of the internal clock.
MC68HC705K1 — Rev. 2.0
Technical Data
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
8.5 COP Watchdog
Four counter stages at the end of the timer make up the mask-optional
computer operating properly (COP) watchdog. The COP watchdog is a
software error detection system that automatically times out and resets
the MCU if not cleared periodically by a program sequence. Writing a
logic 0 to bit 0 of the COP register clears the COP watchdog and
prevents a COP reset.
Freescale Semiconductor, Inc...
Address:
$03F0
Bit 7
6
5
4
3
2
1
Bit 0
Read:
COPC
Write:
Reset:
U
U
U
= Unimplemented
U
U
U
U
0
U = Unaffected
Figure 8-4. COP Register (COPR)
COPC — COP Clear Bit
This write-only bit resets the COP watchdog. Reading address $03F0
returns the read-only memory (ROM) data at that address.
The COP watchdog is active in the run, wait, and halt modes of
operation if the COPEN bit in the mask option register is set.
The STOP instruction disables the COP watchdog by clearing the
counter and turning off its clock source. In applications that depend
on the COP watchdog, the STOP instruction can be disabled by
programming the SWAIT bit to a logic 1 in the mask option register. In
applications that have wait cycles longer than the COP timeout
period, the COP watchdog can be disabled by not programming the
COPEN bit to a logic 1 in the mask option register.
NOTE:
If the voltage on the IRQ/VPP pin exceeds 2 × VDD, the COP watchdog
turns off and remains off until the IRQ/VPP voltage falls below 2 × VDD.
Technical Data
MC68HC705K1 — Rev. 2.0
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Multifunction Timer
COP Watchdog
Table 8-2 summarizes recommended conditions for enabling and
disabling the COP watchdog.
Freescale Semiconductor, Inc...
Table 8-2. COP Watchdog Recommendations
Voltage on
IRQ/VPP Pin
SWAIT
Bit(1)
Wait/Halt Time
Recommended
COP Watchdog
Condition
Less than 2 × VDD
1
Less than COP timeout period
Enabled(2)
Less than 2 × VDD
1
Greater than COP timeout period
Disabled
Less than 2 × VDD
0
More than 2 × VDD
X
(3)
X
X
Disabled
Automatically
disabled
1. The SWAIT bit in the mask option register converts STOP instructions to HALT instructions.
2. Reset the COP watchdog immediately before executing the WAIT/HALT instruction.
3. X = Don’t care
MC68HC705K1 — Rev. 2.0
Technical Data
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Multifunction Timer
Technical Data
MC68HC705K1 — Rev. 2.0
Multifunction Timer
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 9. EPROM/OTPROM
Freescale Semiconductor, Inc...
9.1 Contents
9.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
9.3
EPROM Programming Register . . . . . . . . . . . . . . . . . . . . . . . .84
9.4
EPROM/OTPROM Programming . . . . . . . . . . . . . . . . . . . . . . .85
9.5
EPROM Erasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
9.6
Mask Option Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
9.2 Introduction
This section describes how to program the 504-byte erasable,
programmable read-only memory (EPROM)/one-time programmable
read-only memory (OTPROM).
NOTE:
In packages with no quartz window, the 504 bytes of EPROM function
as an OTPROM.
MC68HC705K1 — Rev. 2.0
Technical Data
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
9.3 EPROM Programming Register
The EPROM programming register (EPROG) contains the control bits
for programming the EPROM/OTPROM. In normal operation, the
EPROM programming register is a read-only register that contains all
logic 0s.
Address:
$0018
Bit 7
6
5
4
3
2
1
Bit 0
R
R
R
R
R
ELAT
MPGM
EPGM
U
U
U
U
U
0
0
0
R
= Reserved
Freescale Semiconductor, Inc...
Read:
Write:
Reset:
U = Unaffected
Figure 9-1. EPROM Programming Register (EPROG)
ELAT — EPROM Bus Latch Bit
This read/write bit configures address and data buses for
programming the EPROM/OTPROM array. EPROM/OTPROM data
cannot be read when ELAT is set. Clearing the ELAT bit also clears
the EPGM bit. Reset clears ELAT.
1 = Address and data buses configured for EPROM/OTPROM
programming
0 = Address and data buses configured for normal operation
MPGM — Mask Option Register (MOR) Programming Bit
This read/write bit applies programming power from the IRQ/VPP pin
to the MOR. Reset clears MPGM.
1 = MOR programming power switched on
0 = MOR programming power switched off
EPGM — EPROM Programming Bit
This read/write bit applies the voltage from the IRQ/VPP pin to the
EPROM/OTPROM. To write the EPGM bit, the ELAT bit must already
be set. Reset clears EPGM.
1 = EPROM/OTPROM programming power switched on
0 = EPROM/OTPROM programming power switched off
Technical Data
MC68HC705K1 — Rev. 2.0
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
EPROM/OTPROM Programming
NOTE:
Writing logic 1s to both the ELAT and EPGM bits with a single instruction
sets ELAT and clears EPGM. ELAT must be set first by a separate
instruction.
Bits 7–3 — Reserved
Bits 7–3 are factory test bits that always read as logic 0s.
9.4 EPROM/OTPROM Programming
Freescale Semiconductor, Inc...
The MC68HC705K1 does not contain built-in bootloader ROM code. To
program this device, use an external programming system such as the
M68HC705KICS evaluation module (EVM) or an M68HC705K1GANG
programmer.
Factory-provided software for programming the EPROM/OTPROM is
available through the Motorola web site at:
htt://mcu.motsps.com
The programming software copies to the 496-byte space located at
EPROM/OTPROM addresses $0200–$03EF, to the 8-byte space at
addresses $03F8–$03FF, and to the mask option register at address
$0017.
Figure 9-2 shows the circuit used to download to the on-chip
EPROM/OTPROM using the factory-provided programming software.
This sequence shows the steps in programming a byte of
EPROM/OTPROM:
1. Switch S1 powers up the MC68HC705K1.
2. Software synchronizes the external oscillator to the internal clock.
3. Switch S2 applies VPP to the IRQ/VPP pin.
4. Software sets the ELAT bit.
5. Software writes to an EPROM/OTPROM address.
6. Software sets the EPGM bit for a time tEPGM to apply the
programming voltage.
7. Software clears the ELAT bit.
NOTE:
To program the EPROM/OTPROM, VDD must be greater than 4.5 Vdc.
MC68HC705K1 — Rev. 2.0
Technical Data
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
VCC
2.2 kΩ
VCC
Freescale Semiconductor, Inc...
2.2 kΩ
1
14
2
15
3
16
4
17
5
18
6
19
7
20
8
21
9
22
10
23
11
24
12
25
13
STROBE
220 Ω
MC68HC705K1
1
2
3
4
5
6
7
8
D0
D1
INIT
D2
D3
RESET
PB1
PB0
IRQ/VPP
PA0
PA1
PA2
PA3
OSC1
OSC2
VSS
VDD
PA7
PA6
PA5
PA4
16
15
14
13
12
11
10
9
0.1µF
VCC
DIP SOCKET
D4
D5
D6
D7
MC68HC705K1
1
2
3
4
5
6
7
8
ACK
PE
0.1 µF
RESET
PB1
PB0
IRQ/VPP
PA0
PA1
PA2
PA3
OSC1
OSC2
VSS
VDD
PA7
PA6
PA5
PA4
16
15
14
13
12
11
10
9
SOIC SOCKET
170 µH
5V
VCC
330 Ω
4.7 Ω
S1
10 µF
+
10 µF
+
IN5817
8
1
DR COL
SW COL
7
2
SENSE
SW EMIT
6
3
VCC
CAP
5
4
COMPARE
GND
0.1 µF
5 kΩ
100 pF
MC34063
100 Ω
15 kΩ
VPP
1.5 kΩ
OPTIONAL VPP GENERATOR
S2
10 µH
0.1 µF
100 Ω
10 µF
+
0.1 µF
10 µF
+
Figure 9-2. Programming Circuit
Technical Data
MC68HC705K1 — Rev. 2.0
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
EPROM Erasing
9.5 EPROM Erasing
MCUs with windowed packages permit EPROM erasure with ultraviolet
light. Erase the EPROM by exposing it to 15 Ws/cm2 of ultraviolet light
with a wave length of 2537 angstroms. Position the ultraviolet light
source 1 inch from the window. Do not use a shortwave filter. The erased
state of an EPROM bit is a logic 0.
Freescale Semiconductor, Inc...
9.6 Mask Option Register
The mask option register (MOR) is an EPROM/OTPROM byte that
controls these options:
•
Port A and port B programmable pulldown devices (enable or
disable)
•
Oscillator connections (2-pin or 3-pin RC oscillator)
•
Oscillator connections (RC oscillator or crystal/ceramic resonator)
•
STOP instruction (enable or disable)
•
Low-voltage reset (enable or disable)
•
Port A external interrupt function (enable or disable)
•
IRQ trigger sensitivity (edge-triggered only or both edge- and
level-triggered)
•
COP watchdog (enable or disable)
The mask option register is unaffected by reset. The erased state of the
mask option register is $0000.
Address:
$0017
Bit 7
6
5
4
3
2
1
Bit 0
SWPDI
PIN3
RC
SWAIT
LVRE
PIRQ
LEVEL
COPEN
0
0
0
Read:
Write:
Reset:
Erased:
Unaffected by reset
0
0
0
0
0
Figure 9-3. Mask Option Register (MOR)
MC68HC705K1 — Rev. 2.0
Technical Data
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
SWPDI —Software Pulldown Inhibit Bit
This EPROM bit inhibits software control of the port A and port B
pulldown devices.
1 = Software pulldown inhibited
0 = Software pulldown enabled
PIN3 — 3-Pin RC Oscillator Bit
Freescale Semiconductor, Inc...
This EPROM bit configures the on-chip oscillator as either a 3-pin
oscillator or as a 2-pin oscillator. The PIN3 bit should be cleared when
the RC bit is clear.
1 = 3-pin oscillator configured
0 = 2-pin oscillator configured
RC — RC Oscillator Bit
This EPROM bit configures the on-chip oscillator for an external RC
network.
1 = Oscillator configured for external RC network
0 = Oscillator configured for external crystal, ceramic resonator, or
clock source
SWAIT — STOP Conversion to WAIT Bit
This EPROM bit disables the STOP instruction and prevents
inadvertently turning off the COP watchdog with a STOP instruction.
When the SWAIT bit is set, a STOP instruction puts the MCU in halt
mode. Halt mode is a low-power state similar to wait mode. The
internal oscillator and timer clock continue to run, but the CPU clock
stops. When the SWAIT bit is clear, a STOP instruction stops the
internal oscillator, the internal clock, the CPU clock, and the timer
clock.
1 = STOP instruction converted to WAIT instruction
0 = STOP instruction not converted to WAIT instruction
LVRE — Low-Voltage Reset Enable Bit
This EPROM bit enables the low-voltage reset (LVR) circuit.
1 = LVR circuit enabled
0 = LVR circuit disabled
Technical Data
MC68HC705K1 — Rev. 2.0
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
EPROM/OTPROM
Mask Option Register
PIRQ — Port A IRQ Enable Bit
This EPROM bit enables the PA3–PA0 pins to function as external
interrupt sources.
1 = PA3–PA0 enabled as external interrupt sources
0 = PA3–PA0 not enabled as external interrupt sources
Freescale Semiconductor, Inc...
LEVEL — External Interrupt Sensitivity Bit
This EPROM bit makes the external interrupt inputs level-triggered as
well as edge-triggered.
1 = IRQ/VPP pin negative-edge triggered and low-level triggered;
PA3–PA0 pins positive-edge triggered and high-level triggered
0 = IRQ/VPP pin negative-edge triggered only; PA3–PA0 pins
positive-edge triggered only
COPEN — COP Watchdog Enable Bit
This EPROM bit enables the COP watchdog.
1 = COP watchdog enabled
0 = COP watchdog disabled
NOTE:
In 3-pin RC oscillator configurations, the personality EPROM
(PEPROM) cannot be programmed by user software. If the voltage on
IRQ/VPP is raised above VDD, the oscillator will revert to a 2-pin oscillator
configuration and device operation will be disrupted.
MC68HC705K1 — Rev. 2.0
Technical Data
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
EPROM/OTPROM
Technical Data
MC68HC705K1 — Rev. 2.0
EPROM/OTPROM
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 10. Personality EPROM (PEPROM)
10.1 Contents
Freescale Semiconductor, Inc...
10.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
10.3 PEPROM Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93
10.3.1 PEPROM Bit Select Register . . . . . . . . . . . . . . . . . . . . . . . .93
10.3.2 PEPROM Status and Control Register. . . . . . . . . . . . . . . . .95
10.4
PEPROM Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
10.5
PEPROM Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96
10.6
PEPROM Erasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
10.2 Introduction
This section describes how to program the 64-bit personality erasable,
programmable read-only memory (PEPROM). Figure 10-1 shows the
structure of the PEPROM subsystem.
MC68HC705K1 — Rev. 2.0
Technical Data
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
INTERNAL DATA BUS
0
0
0
0
PEPRZF
PEDATA
RESET
VPP
ROW 0
ROW 1
ROW 2
ROW 3
ROW 4
ROW 5
ROW 6
COL 7
COL 6
COL 5
COL 4
COL 3
COL 2
COL 1
COL 0
ROW 7
8-TO-1 COLUMN DECODER
AND MULTIPLEXER
VPP SWITCH
8-TO-1 ROW DECODER
AND MULTIPLEXER
VPP SWITCH
PEB0
PEB1
PEB2
PEB3
PEB4
PEB5
0
ROW ZERO
DECODER
0
Freescale Semiconductor, Inc...
SINGLE
SENSE
AMPLIFIER
PEPGM
0
PEPROM STATUS/CONTROL REGISTER
PEPROM STATUS/CONTROL REGISTER
RESET
INTERNAL DATA BUS
Figure 10-1. Personality EPROM
Technical Data
MC68HC705K1 — Rev. 2.0
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
PEPROM Registers
10.3 PEPROM Registers
Two input/output (I/O) registers control programming and reading of the
PEPROM:
•
PEPROM bit select register (PEBSR)
•
PEPROM status and control register (PESCR)
Freescale Semiconductor, Inc...
10.3.1 PEPROM Bit Select Register
The PEPROM bit select register (PEBSR) selects one of 64 bits in the
PEPROM array. Reset clears all the bits in the PEPROM bit select
register.
Address:
$000E
Bit 7
6
5
4
3
2
1
Bit 0
PEB7
PEB6
PEB5
PEB4
PEB3
PEB2
PEB1
PEB0
0
0
0
0
0
0
0
0
Read:
Write:
Reset:
Figure 10-2. PEPROM Bit Select Register (PEBSR)
PEB7 and PEB6 — Not Connected to the PEPROM Array
These read/write bits are available as storage locations. Reset clears
PEB7 and PEB6.
PEB5–PEB0 — PEPROM Bit Select Bits
These read/write bits select one of 64 bits in the PEPROM as shown
in Table 10-1. Bits PEB2–PEB0 select the PEPROM row, and bits
PEB5–PEB3 select the PEPROM column. Reset clears PEB5–PEB0,
selecting the PEPROM bit in row zero, column zero.
MC68HC705K1 — Rev. 2.0
Technical Data
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
Table 10-1. PEPROM Bit Selection
Freescale Semiconductor, Inc...
PEBSR
PEPROM Bit Selected
$00
Row 0
Column 0
$01
Row 1
Column 0
$02
Row 2
Column 0
$07
Row 7
Column 0
$08
Row 0
Column 1
$09
Row 1
Column 1
$0A
Row 2
Column 1
$0F
Row 7
Column 1
$10
Row 0
Column 2
$11
Row 1
Column 2
$12
Row 2
Column 2
$37
Row 7
Column 6
$38
Row 0
Column 7
$39
Row 1
Column 7
$3A
Row 2
Column 7
$3B
Row 3
Column 7
$3C
Row 4
Column 7
$3D
Row 5
Column 7
$3E
Row 6
Column 7
$3F
Row 7
Column 7
Technical Data
MC68HC705K1 — Rev. 2.0
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
PEPROM Registers
10.3.2 PEPROM Status and Control Register
The PEPROM status and control register (PESCR) controls the
PEPROM programming voltage. This register also transfers the
PEPROM bits to the internal data bus and contains a row zero flag.
Address:
$000F
Bit 7
6
5
4
3
2
1
0
PEPGM
0
0
0
0
0
0
0
0
0
0
Read: PEDATA
Bit 0
PEPRZF
Freescale Semiconductor, Inc...
Write:
Reset:
U
= Unimplemented
1
U = Unaffected
Figure 10-3. PEPROM Status and Control Register (PESCR)
PEDATA — PEPROM Data Bit
This read-only bit is the state of the PEPROM sense amplifier and
shows the state of the currently selected bit. Reset does not affect the
PEDATA bit.
1 = PEPROM data logic 1
0 = PEPROM data logic 0
PEPGM — PEPROM Program Control Bit
This read/write bit controls the switches that apply the programming
voltage, VPP, to the selected PEPROM cell. Reset clears PEPGM.
1 = Programming voltage applied
0 = Programming voltage not applied
PEPRZF — PEPROM Row Zero Flag
This read-only bit is set when the PEPROM bit select register selects
the first row (row zero) of the PEPROM array. Selecting any other row
clears PEPRZF. Monitoring PEPRZF can reduce the code needed to
access one byte of PEPROM. Reset sets PEPRZF.
1 = Row zero selected
0 = Row zero not selected
MC68HC705K1 — Rev. 2.0
Technical Data
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
10.4 PEPROM Programming
Factory-provided software for programming the PEPROM is available
through the Motorola web site at:
htt://mcu.motsps.com
The circuit shown in Figure 9-2. Programming Circuit can be used to
program the PEPROM with the factory-provided programming software.
Freescale Semiconductor, Inc...
NOTE:
To program the PEPROM, VDD must be greater than 4.5 Vdc.
The PEPROM can also be programmed by user software with VPP
applied to the IRQ/VPP pin. This sequence shows how to program each
PEPROM bit:
1. Select a PEPROM bit by writing to PEBSR.
2. Set the PEPGM bit in PESCR.
3. Wait 3 ms.
4. Clear the PEPGM bit.
NOTE:
While the PEPGM bit is set and VPP is applied to the IRQ/VPP pin, do not
access bits that are to be left unprogrammed (erased).
In 3-pin RC oscillator configurations, the PEPROM cannot be
programmed by user software. If the voltage on IRQ/VPP is raised above
VDD, the oscillator will revert to a 2-pin oscillator configuration and
device operation will be disrupted.
10.5 PEPROM Reading
This sequence shows how to read the PEPROM:
1. Select a bit by writing to PEBSR.
2. Read the PEDATA bit in PESCR.
3. Store the PEDATA bit in RAM or in a register.
4. Select another bit by changing PEBSR.
5. Continue reading and storing the PEDATA bits until the required
personality EPROM data is stored.
Technical Data
MC68HC705K1 — Rev. 2.0
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Personality EPROM (PEPROM)
PEPROM Erasing
Reading the PEPROM is easiest when each PEPROM column contains
one byte. Selecting a row 0 bit selects the first bit, and incrementing the
PEPROM bit select register (PEBSR) selects the next row 1 bit from the
same column. Incrementing PEBSR seven more times selects the
remaining bits of the column and selects the row 0 bit of the next column,
setting the row 0 flag, PEPRZF.
Freescale Semiconductor, Inc...
A PEPROM byte that has been read can be transferred to the
personality EPROM bit select register (PEBSR) so that subsequent
reads of the PEBSR quickly yield that PEPROM byte.
10.6 PEPROM Erasing
MCUs with windowed packages permit PEPROM erasure with
ultraviolet light. Erase the PEPROM by exposing it to 15 Ws/cm2 of
ultraviolet light with a wave length of 2537 angstroms. Position the
ultraviolet light source 1 inch from the window. Do not use a shortwave
filter. The erased state of a PEPROM bit is a logic 0.
MC68HC705K1 — Rev. 2.0
Technical Data
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Personality EPROM (PEPROM)
Technical Data
MC68HC705K1 — Rev. 2.0
Personality EPROM (PEPROM)
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 11. Instruction Set
11.1 Contents
Freescale Semiconductor, Inc...
11.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
11.3 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
11.3.1 Inherent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.2 Immediate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.3 Direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.4 Extended . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
11.3.5 Indexed, No Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.6 Indexed, 8-Bit Offset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.7 Indexed, 16-Bit Offset. . . . . . . . . . . . . . . . . . . . . . . . . . . . .102
11.3.8 Relative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
11.4 Instruction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
11.4.1 Register/Memory Instructions. . . . . . . . . . . . . . . . . . . . . . .104
11.4.2 Read-Modify-Write Instructions . . . . . . . . . . . . . . . . . . . . .105
11.4.3 Jump/Branch Instructions. . . . . . . . . . . . . . . . . . . . . . . . . .106
11.4.4 Bit Manipulation Instructions . . . . . . . . . . . . . . . . . . . . . . .108
11.4.5 Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
11.5
Instruction Set Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
11.6
Opcode Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.2 Introduction
Freescale Semiconductor, Inc...
The microcontroller unit (MCU) instruction set has 62 instructions and
uses eight addressing modes. The instructions include all those of the
M146805 CMOS Family plus one more: the unsigned multiply (MUL)
instruction. The MUL instruction allows unsigned multiplication of the
contents of the accumulator (A) and the index register (X). The
high-order product is stored in the index register, and the low-order
product is stored in the accumulator.
11.3 Addressing Modes
The central processor unit (CPU) uses eight addressing modes for
flexibility in accessing data. The addressing modes provide eight
different ways for the CPU to find the data required to execute an
instruction.
The eight addressing modes are:
•
Inherent
•
Immediate
•
Direct
•
Extended
•
Indexed, no offset
•
Indexed, 8-bit offset
•
Indexed, 16-bit offset
•
Relative
Technical Data
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Addressing Modes
11.3.1 Inherent
Inherent instructions are those that have no operand, such as return
from interrupt (RTI) and stop (STOP). Some of the inherent instructions
act on data in the CPU registers, such as set carry flag (SEC) and
increment accumulator (INCA). Inherent instructions require no operand
address and are one byte long.
Freescale Semiconductor, Inc...
11.3.2 Immediate
Immediate instructions are those that contain a value to be used in an
operation with the value in the accumulator or index register. Immediate
instructions require no operand address and are two bytes long. The
opcode is the first byte, and the immediate data value is the second byte.
11.3.3 Direct
Direct instructions can access any of the first 256 memory locations with
two bytes. The first byte is the opcode, and the second is the low byte of
the operand address. In direct addressing, the CPU automatically uses
$00 as the high byte of the operand address.
11.3.4 Extended
Extended instructions use three bytes and can access any address in
memory. The first byte is the opcode; the second and third bytes are the
high and low bytes of the operand address.
When using the Motorola assembler, the programmer does not need to
specify whether an instruction is direct or extended. The assembler
automatically selects the shortest form of the instruction.
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.3.5 Indexed, No Offset
Indexed instructions with no offset are 1-byte instructions that can
access data with variable addresses within the first 256 memory
locations. The index register contains the low byte of the effective
address of the operand. The CPU automatically uses $00 as the high
byte, so these instructions can address locations $0000–$00FF.
Freescale Semiconductor, Inc...
Indexed, no offset instructions are often used to move a pointer through
a table or to hold the address of a frequently used RAM or I/O location.
11.3.6 Indexed, 8-Bit Offset
Indexed, 8-bit offset instructions are 2-byte instructions that can access
data with variable addresses within the first 511 memory locations. The
CPU adds the unsigned byte in the index register to the unsigned byte
following the opcode. The sum is the effective address of the operand.
These instructions can access locations $0000–$01FE.
Indexed 8-bit offset instructions are useful for selecting the kth element
in an n-element table. The table can begin anywhere within the first 256
memory locations and could extend as far as location 510 ($01FE). The
k value is typically in the index register, and the address of the beginning
of the table is in the byte following the opcode.
11.3.7 Indexed, 16-Bit Offset
Indexed, 16-bit offset instructions are 3-byte instructions that can access
data with variable addresses at any location in memory. The CPU adds
the unsigned byte in the index register to the two unsigned bytes
following the opcode. The sum is the effective address of the operand.
The first byte after the opcode is the high byte of the 16-bit offset; the
second byte is the low byte of the offset.
Indexed, 16-bit offset instructions are useful for selecting the kth element
in an n-element table anywhere in memory.
As with direct and extended addressing, the Motorola assembler
determines the shortest form of indexed addressing.
Technical Data
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Types
11.3.8 Relative
Freescale Semiconductor, Inc...
Relative addressing is only for branch instructions. If the branch
condition is true, the CPU finds the effective branch destination by
adding the signed byte following the opcode to the contents of the
program counter. If the branch condition is not true, the CPU goes to the
next instruction. The offset is a signed, two’s complement byte that gives
a branching range of –128 to +127 bytes from the address of the next
location after the branch instruction.
When using the Motorola assembler, the programmer does not need to
calculate the offset, because the assembler determines the proper offset
and verifies that it is within the span of the branch.
11.4 Instruction Types
The MCU instructions fall into five categories:
•
Register/memory instructions
•
Read-modify-write instructions
•
Jump/branch instructions
•
Bit manipulation instructions
•
Control instructions
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.4.1 Register/Memory Instructions
These instructions operate on CPU registers and memory locations.
Most of them use two operands. One operand is in either the
accumulator or the index register. The CPU finds the other operand in
memory.
Table 11-1. Register/Memory Instructions
Freescale Semiconductor, Inc...
Instruction
Mnemonic
Add memory byte and carry bit to accumulator
ADC
Add memory byte to accumulator
ADD
AND memory byte with accumulator
AND
Bit test accumulator
BIT
Compare accumulator
CMP
Compare index register with memory byte
CPX
Exclusive OR accumulator with memory byte
EOR
Load accumulator with memory byte
LDA
Load Index register with memory byte
LDX
Multiply
MUL
OR accumulator with memory byte
ORA
Subtract memory byte and carry bit from
accumulator
SBC
Store accumulator in memory
STA
Store index register in memory
STX
Subtract memory byte from accumulator
SUB
Technical Data
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Types
11.4.2 Read-Modify-Write Instructions
These instructions read a memory location or a register, modify its
contents, and write the modified value back to the memory location or to
the register.
NOTE:
Do not use read-modify-write operations on write-only registers.
Table 11-2. Read-Modify-Write Instructions
Freescale Semiconductor, Inc...
Instruction
Mnemonic
Arithmetic shift left (same as LSL)
ASL
Arithmetic shift right
ASR
Bit clear
BCLR(1)
Bit set
BSET(1)
Clear register
CLR
Complement (one’s complement)
COM
Decrement
DEC
Increment
INC
Logical shift left (same as ASL)
LSL
Logical shift right
LSR
Negate (two’s complement)
NEG
Rotate left through carry bit
ROL
Rotate right through carry bit
ROR
Test for negative or zero
TST(2)
1. Unlike other read-modify-write instructions, BCLR and BSET use
only direct addressing.
2. TST is an exception to the read-modify-write sequence because it
does not write a replacement value.
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.4.3 Jump/Branch Instructions
Jump instructions allow the CPU to interrupt the normal sequence of the
program counter. The unconditional jump instruction (JMP) and the
jump-to-subroutine instruction (JSR) have no register operand. Branch
instructions allow the CPU to interrupt the normal sequence of the
program counter when a test condition is met. If the test condition is not
met, the branch is not performed.
Freescale Semiconductor, Inc...
The BRCLR and BRSET instructions cause a branch based on the state
of any readable bit in the first 256 memory locations. These 3-byte
instructions use a combination of direct addressing and relative
addressing. The direct address of the byte to be tested is in the byte
following the opcode. The third byte is the signed offset byte. The CPU
finds the effective branch destination by adding the third byte to the
program counter if the specified bit tests true. The bit to be tested and its
condition (set or clear) is part of the opcode. The span of branching is
from –128 to +127 from the address of the next location after the branch
instruction. The CPU also transfers the tested bit to the carry/borrow bit
of the condition code register.
Technical Data
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Types
Table 11-3. Jump and Branch Instructions
Freescale Semiconductor, Inc...
Instruction
Mnemonic
Branch if carry bit clear
BCC
Branch if carry bit set
BCS
Branch if equal
BEQ
Branch if half-carry bit clear
BHCC
Branch if half-carry bit set
BHCS
Branch if higher
BHI
Branch if higher or same
BHS
Branch if IRQ pin high
BIH
Branch if IRQ pin low
BIL
Branch if lower
BLO
Branch if lower or same
BLS
Branch if interrupt mask clear
BMC
Branch if minus
BMI
Branch if interrupt mask set
BMS
Branch if not equal
BNE
Branch if plus
BPL
Branch always
BRA
Branch if bit clear
Branch never
Branch if bit set
BRCLR
BRN
BRSET
Branch to subroutine
BSR
Unconditional jump
JMP
Jump to subroutine
JSR
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.4.4 Bit Manipulation Instructions
The CPU can set or clear any writable bit in the first 256 bytes of
memory, which includes I/O registers and on-chip RAM locations. The
CPU can also test and branch based on the state of any bit in any of the
first 256 memory locations.
Table 11-4. Bit Manipulation Instructions
Instruction
Freescale Semiconductor, Inc...
Bit clear
Mnemonic
BCLR
Branch if bit clear
BRCLR
Branch if bit set
BRSET
Bit set
Technical Data
BSET
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Types
11.4.5 Control Instructions
These instructions act on CPU registers and control CPU operation
during program execution.
Table 11-5. Control Instructions
Freescale Semiconductor, Inc...
Instruction
Mnemonic
Clear carry bit
CLC
Clear interrupt mask
CLI
No operation
NOP
Reset stack pointer
RSP
Return from interrupt
RTI
Return from subroutine
RTS
Set carry bit
SEC
Set interrupt mask
SEI
Stop oscillator and enable IRQ pin
STOP
Software interrupt
SWI
Transfer accumulator to index register
TAX
Transfer index register to accumulator
TXA
Stop CPU clock and enable interrupts
WAIT
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
11.5 Instruction Set Summary
ADD #opr
ADD opr
ADD opr
ADD opr,X
ADD opr,X
ADD ,X
AND #opr
AND opr
AND opr
AND opr,X
AND opr,X
AND ,X
ASL opr
ASLA
ASLX
ASL opr,X
ASL ,X
↕
IMM
DIR
EXT
IX2
IX1
IX
A9 ii
2
B9 dd 3
C9 hh ll 4
D9 ee ff 5
E9 ff
4
F9
3
↕
IMM
DIR
EXT
IX2
IX1
IX
AB ii
2
BB dd 3
CB hh ll 4
DB ee ff 5
EB ff
4
FB
3
↕ —
IMM
DIR
EXT
IX2
IX1
IX
A4 ii
2
B4 dd 3
C4 hh ll 4
D4 ee ff 5
E4 ff
4
F4
3
38
48
58
68
78
dd
↕
DIR
INH
INH
IX1
IX
DIR
INH
INH
IX1
IX
37
47
57
67
77
dd
REL
24
rr
3
11
13
15
17
19
1B
1D
1F
dd
dd
dd
dd
dd
dd
dd
dd
5
5
5
5
5
5
5
5
H I N Z C
A ← (A) + (M) + (C)
Add with Carry
A ← (A) + (M)
Add without Carry
Arithmetic Shift Left (Same as LSL)
C
BCC rel
Branch if Carry Bit Clear
— — ↕
0
b7
Arithmetic Shift Right
↕ — ↕
A ← (A) ∧ (M)
Logical AND
ASR opr
ASRA
ASRX
ASR opr,X
ASR ,X
↕ — ↕
— — ↕
↕
↕
↕
b0
C
b7
— — ↕
↕
↕
b0
PC ← (PC) + 2 + rel ? C = 0
Mn ← 0
— — — — —
DIR (b0)
DIR (b1)
DIR (b2)
DIR (b3)
— — — — —
DIR (b4)
DIR (b5)
DIR (b6)
DIR (b7)
ff
ff
Cycles
Description
Opcode
ADC #opr
ADC opr
ADC opr
ADC opr,X
ADC opr,X
ADC ,X
Operation
Effect
on CCR
Address
Mode
Freescale Semiconductor, Inc...
Source
Form
Operand
Table 11-6. Instruction Set Summary (Sheet 1 of 6)
5
3
3
6
5
5
3
3
6
5
BCLR n opr
Clear Bit n
BCS rel
Branch if Carry Bit Set (Same as BLO)
PC ← (PC) + 2 + rel ? C = 1
— — — — —
REL
25
rr
3
BEQ rel
Branch if Equal
PC ← (PC) + 2 + rel ? Z = 1
— — — — —
REL
27
rr
3
BHCC rel
Branch if Half-Carry Bit Clear
PC ← (PC) + 2 + rel ? H = 0
— — — — —
REL
28
rr
3
BHCS rel
Branch if Half-Carry Bit Set
PC ← (PC) + 2 + rel ? H = 1
— — — — —
REL
29
rr
3
PC ← (PC) + 2 + rel ? C ∨ Z = 0 — — — — —
BHI rel
Branch if Higher
BHS rel
Branch if Higher or Same
PC ← (PC) + 2 + rel ? C = 0
Technical Data
— — — — —
REL
22
rr
3
REL
24
rr
3
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Set Summary
Address
Mode
Opcode
Operand
Cycles
Table 11-6. Instruction Set Summary (Sheet 2 of 6)
BIH rel
Branch if IRQ Pin High
PC ← (PC) + 2 + rel ? IRQ = 1
— — — — —
REL
2F
rr
3
BIL rel
Branch if IRQ Pin Low
PC ← (PC) + 2 + rel ? IRQ = 0
— — — — —
REL
2E
rr
3
— — ↕
IMM
DIR
EXT
IX2
IX1
IX
A5 ii
2
B5 dd 3
C5 hh ll 4
D5 ee ff 5
E5 ff
4
F5
3
Freescale Semiconductor, Inc...
Source
Form
Operation
Description
BIT #opr
BIT opr
BIT opr
BIT opr,X
BIT opr,X
BIT ,X
Bit Test Accumulator with Memory Byte
BLO rel
Branch if Lower (Same as BCS)
BLS rel
Branch if Lower or Same
BMC rel
Branch if Interrupt Mask Clear
PC ← (PC) + 2 + rel ? I = 0
BMI rel
Branch if Minus
PC ← (PC) + 2 + rel ? N = 1
(A) ∧ (M)
PC ← (PC) + 2 + rel ? C = 1
Effect
on CCR
H I N Z C
↕ —
— — — — —
REL
25
rr
3
PC ← (PC) + 2 + rel ? C ∨ Z = 1 — — — — —
REL
23
rr
3
— — — — —
REL
2C
rr
3
— — — — —
REL
2B
rr
3
BMS rel
Branch if Interrupt Mask Set
PC ← (PC) + 2 + rel ? I = 1
— — — — —
REL
2D
rr
3
BNE rel
Branch if Not Equal
PC ← (PC) + 2 + rel ? Z = 0
— — — — —
REL
26
rr
3
BPL rel
Branch if Plus
PC ← (PC) + 2 + rel ? N = 0
— — — — —
REL
2A
rr
3
BRA rel
Branch Always
PC ← (PC) + 2 + rel ? 1 = 1
— — — — —
REL
20
rr
3
DIR (b0)
DIR (b1)
DIR (b2)
DIR (b3)
— — — — ↕
DIR (b4)
DIR (b5)
DIR (b6)
DIR (b7)
01
03
05
07
09
0B
0D
0F
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
5
5
5
5
5
5
5
5
— — — — —
BRCLR n opr rel Branch if Bit n Clear
BRN rel
Branch Never
BRSET n opr rel Branch if Bit n Set
BSET n opr
Set Bit n
PC ← (PC) + 2 + rel ? Mn = 0
PC ← (PC) + 2 + rel ? 1 = 0
21
rr
3
PC ← (PC) + 2 + rel ? Mn = 1
DIR (b0)
DIR (b1)
DIR (b2)
DIR (b3)
— — — — ↕
DIR (b4)
DIR (b5)
DIR (b6)
DIR (b7)
REL
00
02
04
06
08
0A
0C
0E
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
dd rr
5
5
5
5
5
5
5
5
Mn ← 1
DIR (b0)
DIR (b1)
DIR (b2)
DIR (b3)
— — — — —
DIR (b4)
DIR (b5)
DIR (b6)
DIR (b7)
10
12
14
16
18
1A
1C
1E
dd
dd
dd
dd
dd
dd
dd
dd
5
5
5
5
5
5
5
5
PC ← (PC) + 2; push (PCL)
SP ← (SP) – 1; push (PCH)
SP ← (SP) – 1
PC ← (PC) + rel
— — — — —
REL
AD
rr
6
BSR rel
Branch to Subroutine
CLC
Clear Carry Bit
C←0
— — — — 0
INH
98
2
CLI
Clear Interrupt Mask
I←0
— 0 — — —
INH
9A
2
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
CMP #opr
CMP opr
CMP opr
CMP opr,X
CMP opr,X
CMP ,X
COM opr
COMA
COMX
COM opr,X
COM ,X
CPX #opr
CPX opr
CPX opr
CPX opr,X
CPX opr,X
CPX ,X
DEC opr
DECA
DECX
DEC opr,X
DEC ,X
EOR #opr
EOR opr
EOR opr
EOR opr,X
EOR opr,X
EOR ,X
INC opr
INCA
INCX
INC opr,X
INC ,X
JMP opr
JMP opr
JMP opr,X
JMP opr,X
JMP ,X
DIR
INH
INH
IX1
IX
3F
4F
5F
6F
7F
dd
↕
IMM
DIR
EXT
IX2
IX1
IX
A1 ii
2
B1 dd 3
C1 hh ll 4
D1 ee ff 5
E1 ff
4
F1
3
↕ 1
DIR
INH
INH
IX1
IX
33
43
53
63
73
↕
IMM
DIR
EXT
IX2
IX1
IX
A3 ii
2
B3 dd 3
C3 hh ll 4
D3 ee ff 5
E3 ff
4
F3
3
↕ —
DIR
INH
INH
IX1
IX
3A
4A
5A
6A
7A
↕ —
IMM
DIR
EXT
IX2
IX1
IX
A8 ii
2
B8 dd 3
C8 hh ll 4
D8 ee ff 5
E8 ff
4
F8
3
↕ —
DIR
INH
INH
IX1
IX
3C
4C
5C
6C
7C
DIR
EXT
IX2
IX1
IX
BC dd 2
CC hh ll 3
DC ee ff 4
EC ff
3
FC
2
Effect
on CCR
H I N Z C
M ← $00
A ← $00
X ← $00
M ← $00
M ← $00
Clear Byte
Compare Accumulator with Memory Byte
Complement Byte (One’s Complement)
Compare Index Register with Memory Byte
EXCLUSIVE OR Accumulator with Memory
Byte
Unconditional Jump
M ← (M) = $FF – (M)
A ← (A) = $FF – (A)
X ← (X) = $FF – (X)
M ← (M) = $FF – (M)
M ← (M) = $FF – (M)
(X) – (M)
M ← (M) – 1
A ← (A) – 1
X ← (X) – 1
M ← (M) – 1
M ← (M) – 1
Decrement Byte
Increment Byte
(A) – (M)
A ← (A) ⊕ (M)
M ← (M) + 1
A ← (A) + 1
X ← (X) + 1
M ← (M) + 1
M ← (M) + 1
PC ← Jump Address
Technical Data
— — 0 1 —
— — ↕
— — ↕
— — ↕
— — ↕
— — ↕
— — ↕
↕
↕
— — — — —
ff
dd
ff
dd
ff
dd
ff
Cycles
Description
Operand
Freescale Semiconductor, Inc...
CLR opr
CLRA
CLRX
CLR opr,X
CLR ,X
Operation
Opcode
Source
Form
Address
Mode
Table 11-6. Instruction Set Summary (Sheet 3 of 6)
5
3
3
6
5
5
3
3
6
5
5
3
3
6
5
5
3
3
6
5
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Instruction Set Summary
LDA #opr
LDA opr
LDA opr
LDA opr,X
LDA opr,X
LDA ,X
LDX #opr
LDX opr
LDX opr
LDX opr,X
LDX opr,X
LDX ,X
LSL opr
LSLA
LSLX
LSL opr,X
LSL ,X
PC ← (PC) + n (n = 1, 2, or 3)
Push (PCL); SP ← (SP) – 1
Push (PCH); SP ← (SP) – 1
PC ← Effective Address
Jump to Subroutine
A ← (M)
Load Accumulator with Memory Byte
X ← (M)
Load Index Register with Memory Byte
Logical Shift Left (Same as ASL)
— — ↕
↕ —
IMM
DIR
EXT
IX2
IX1
IX
A6 ii
2
B6 dd 3
C6 hh ll 4
D6 ee ff 5
E6 ff
4
F6
3
↕ —
IMM
DIR
EXT
IX2
IX1
IX
AE ii
2
BE dd 3
CE hh ll 4
DE ee ff 5
EE ff
4
FE
3
38
48
58
68
78
dd
↕
DIR
INH
INH
IX1
IX
0
DIR
INH
INH
IX1
IX
34
44
54
64
74
dd
MUL
Unsigned Multiply
0
C
b7
0 — — — 0
INH
42
— — ↕
DIR
INH
INH
IX1
IX
30
40
50
60
70
Negate Byte (Two’s Complement)
NOP
No Operation
— — — — —
INH
9D
— — ↕
↕ —
IMM
DIR
EXT
IX2
IX1
IX
AA ii
2
BA dd 3
CA hh ll 4
DA ee ff 5
EA ff
4
FA
3
M ← –(M) = $00 – (M)
A ← –(A) = $00 – (A)
X ← –(X) = $00 – (X)
M ← –(M) = $00 – (M)
M ← –(M) = $00 – (M)
A ← (A) ∨ (M)
Logical OR Accumulator with Memory
↕
DIR
INH
INH
IX1
IX
39
49
59
69
79
Rotate Byte Left through Carry Bit
C
— — 0 ↕
— — ↕
b7
↕
↕
b0
X : A ← (X) × (A)
NEG opr
NEGA
NEGX
NEG opr,X
NEG ,X
— — ↕
b0
b0
MC68HC705K1 — Rev. 2.0
↕
↕
↕
ff
ff
Cycles
BD dd 5
CD hh ll 6
DD ee ff 7
ED ff
6
FD
5
— — ↕
C
b7
Logical Shift Right
ROL opr
ROLA
ROLX
ROL opr,X
ROL ,X
— — — — —
DIR
EXT
IX2
IX1
IX
H I N Z C
LSR opr
LSRA
LSRX
LSR opr,X
LSR ,X
ORA #opr
ORA opr
ORA opr
ORA opr,X
ORA opr,X
ORA ,X
Description
Opcode
Freescale Semiconductor, Inc...
JSR opr
JSR opr
JSR opr,X
JSR opr,X
JSR ,X
Operation
Effect
on CCR
Address
Mode
Source
Form
Operand
Table 11-6. Instruction Set Summary (Sheet 4 of 6)
5
3
3
6
5
5
3
3
6
5
1
1
dd
ff
5
3
3
6
5
2
dd
ff
5
3
3
6
5
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Opcode
Operand
DIR
INH
INH
IX1
IX
36
46
56
66
76
dd
— — — — —
INH
9C
2
Return from Interrupt
SP ← (SP) + 1; Pull (CCR)
SP ← (SP) + 1; Pull (A)
SP ← (SP) + 1; Pull (X)
SP ← (SP) + 1; Pull (PCH)
SP ← (SP) + 1; Pull (PCL)
↕
↕
INH
80
9
Return from Subroutine
SP ← (SP) + 1; Pull (PCH)
SP ← (SP) + 1; Pull (PCL)
— — — — —
INH
81
6
— — ↕
↕
IMM
DIR
EXT
IX2
IX1
IX
A2 ii
2
B2 dd 3
C2 hh ll 4
D2 ee ff 5
E2 ff
4
F2
3
Freescale Semiconductor, Inc...
Source
Form
Operation
Effect
on CCR
Description
H I N Z C
ROR opr
RORA
RORX
ROR opr,X
ROR ,X
Rotate Byte Right through Carry Bit
RSP
Reset Stack Pointer
SP ← $00FF
RTI
RTS
C
b7
— — ↕
↕
↕
b0
↕
↕
↕
ff
Cycles
Address
Mode
Table 11-6. Instruction Set Summary (Sheet 5 of 6)
5
3
3
6
5
SBC #opr
SBC opr
SBC opr
SBC opr,X
SBC opr,X
SBC ,X
Subtract Memory Byte and Carry Bit from
Accumulator
SEC
Set Carry Bit
C←1
— — — — 1
INH
99
2
SEI
Set Interrupt Mask
I←1
— 1 — — —
INH
9B
2
— — ↕
↕ —
DIR
EXT
IX2
IX1
IX
B7 dd 4
C7 hh ll 5
D7 ee ff 6
E7 ff
5
F7
4
— 0 — — —
INH
8E
— — ↕
↕ —
DIR
EXT
IX2
IX1
IX
BF dd 4
CF hh ll 5
DF ee ff 6
EF ff
5
FF
4
↕
↕
IMM
DIR
EXT
IX2
IX1
IX
A0 ii
2
B0 dd 3
C0 hh ll 4
D0 ee ff 5
E0 ff
4
F0
3
PC ← (PC) + 1; Push (PCL)
SP ← (SP) – 1; Push (PCH)
SP ← (SP) – 1; Push (X)
SP ← (SP) – 1; Push (A)
— 1 — — —
SP ← (SP) – 1; Push (CCR)
SP ← (SP) – 1; I ← 1
PCH ← Interrupt Vector High Byte
PCL ← Interrupt Vector Low Byte
INH
83
1
0
INH
97
2
STA opr
STA opr
STA opr,X
STA opr,X
STA ,X
Store Accumulator in Memory
STOP
Stop Oscillator and Enable IRQ Pin
STX opr
STX opr
STX opr,X
STX opr,X
STX ,X
SUB #opr
SUB opr
SUB opr
SUB opr,X
SUB opr,X
SUB ,X
Store Index Register In Memory
Subtract Memory Byte from Accumulator
SWI
Software Interrupt
TAX
Transfer Accumulator to Index Register
A ← (A) – (M) – (C)
M ← (A)
M ← (X)
A ← (A) – (M)
X ← (A)
Technical Data
— — ↕
↕
— — — — —
2
MC68HC705K1 — Rev. 2.0
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Instruction Set
Opcode Map
Freescale Semiconductor, Inc...
Description
3D
4D
5D
6D
7D
dd
Test Memory Byte for Negative or Zero
TXA
Transfer Index Register to Accumulator
— — — — —
INH
9F
2
WAIT
Stop CPU Clock and Enable Interrupts
— 0 — — —
INH
8F
2
Accumulator
Carry/borrow flag
Condition code register
Direct address of operand
Direct address of operand and relative offset of branch instruction
Direct addressing mode
High and low bytes of offset in indexed, 16-bit offset addressing
Extended addressing mode
Offset byte in indexed, 8-bit offset addressing
Half-carry flag
High and low bytes of operand address in extended addressing
Interrupt mask
Immediate operand byte
Immediate addressing mode
Inherent addressing mode
Indexed, no offset addressing mode
Indexed, 8-bit offset addressing mode
Indexed, 16-bit offset addressing mode
Memory location
Negative flag
Any bit
— — ↕
(M) – $00
A ← (X)
opr
PC
PCH
PCL
REL
rel
rr
SP
X
Z
#
∧
∨
⊕
()
–( )
←
?
:
↕
—
↕ —
ff
Cycles
DIR
INH
INH
IX1
IX
Effect
on CCR
H I N Z C
TST opr
TSTA
TSTX
TST opr,X
TST ,X
A
C
CCR
dd
dd rr
DIR
ee ff
EXT
ff
H
hh ll
I
ii
IMM
INH
IX
IX1
IX2
M
N
n
Operand
Operation
Opcode
Source
Form
Address
Mode
Table 11-6. Instruction Set Summary (Sheet 6 of 6)
4
3
3
5
4
Operand (one or two bytes)
Program counter
Program counter high byte
Program counter low byte
Relative addressing mode
Relative program counter offset byte
Relative program counter offset byte
Stack pointer
Index register
Zero flag
Immediate value
Logical AND
Logical OR
Logical EXCLUSIVE OR
Contents of
Negation (two’s complement)
Loaded with
If
Concatenated with
Set or cleared
Not affected
11.6 Opcode Map
See Table 11-7.
MC68HC705K1 — Rev. 2.0
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
Technical Data
Instruction Set
For More Information On This Product,
Go to: www.freescale.com
F
E
D
C
B
A
9
8
7
6
5
4
3
2
1
0
MSB
LSB
1
DIR
2
REL
Branch
3
DIR
4
5
INH
6
IX1
Read-Modify-Write
INH
7
IX
INH = Inherent
IMM = Immediate
DIR = Direct
EXT = Extended
REL = Relative
IX = Indexed, No Offset
IX1 = Indexed, 8-Bit Offset
IX2 = Indexed, 16-Bit Offset
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
EOR
IMM 2
2
ADC
IMM 2
2
ORA
IMM 2
2
ADD
IMM 2
2
2
SUB
IMM 2
2
CMP
IMM 2
2
SBC
IMM 2
2
CPX
IMM 2
2
AND
IMM 2
2
BIT
IMM 2
2
LDA
IMM 2
A
IMM
MSB
0
LSB
0
5
SUB
IX2 2
5
CMP
IX2 2
5
SBC
IX2 2
5
CPX
IX2 2
5
AND
IX2 2
5
BIT
IX2 2
5
LDA
IX2 2
6
STA
IX2 2
5
EOR
IX2 2
5
ADC
IX2 2
5
ORA
IX2 2
5
ADD
IX2 2
4
JMP
IX2 2
7
JSR
IX2 2
5
LDX
IX2 2
6
STX
IX2 2
D
IX2
4
SUB
IX1 1
4
CMP
IX1 1
4
SBC
IX1 1
4
CPX
IX1 1
4
AND
IX1 1
4
BIT
IX1 1
4
LDA
IX1 1
5
STA
IX1 1
4
EOR
IX1 1
4
ADC
IX1 1
4
ORA
IX1 1
4
ADD
IX1 1
3
JMP
IX1 1
6
JSR
IX1 1
4
LDX
IX1 1
5
STX
IX1 1
E
IX1
MSB of Opcode in Hexadecimal
4
SUB
EXT 3
4
CMP
EXT 3
4
SBC
EXT 3
4
CPX
EXT 3
4
AND
EXT 3
4
BIT
EXT 3
4
LDA
EXT 3
5
STA
EXT 3
4
EOR
EXT 3
4
ADC
EXT 3
4
ORA
EXT 3
4
ADD
EXT 3
3
JMP
EXT 3
6
JSR
EXT 3
4
LDX
EXT 3
5
STX
EXT 3
C
EXT
Register/Memory
3
SUB
DIR 3
3
CMP
DIR 3
3
SBC
DIR 3
3
CPX
DIR 3
3
AND
DIR 3
3
BIT
DIR 3
3
LDA
DIR 3
4
STA
DIR 3
3
EOR
DIR 3
3
ADC
DIR 3
3
ORA
DIR 3
3
ADD
DIR 3
2
JMP
DIR 3
5
JSR
DIR 3
3
LDX
DIR 3
4
STX
DIR 3
B
DIR
5 Number of Cycles
BRSET0 Opcode Mnemonic
3
DIR Number of Bytes/Addressing Mode
2
6
BSR
REL 2
2
LDX
2
IMM 2
2
TAX
INH
2
CLC
INH 2
2
SEC
INH 2
2
CLI
INH 2
2
SEI
INH 2
2
RSP
INH
2
NOP
INH 2
9
2
STOP
INH
2
2
TXA
WAIT
INH 1
INH
10
SWI
INH
9
RTI
INH
6
RTS
INH
8
INH
Control
INH
LSB of Opcode in Hexadecimal
5
5
3
5
3
3
6
5
BRSET0
BRA
BSET0
NEG
NEGA
NEGX
NEG
NEG
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX 1
5
5
3
BRCLR0
BRN
BCLR0
3
1
DIR 2
DIR 2
REL
5
11
5
3
BRSET1
MUL
BHI
BSET1
3
1
DIR 2
INH
DIR 2
REL
5
5
3
5
3
3
6
5
BRCLR1
BLS
BCLR1
COM
COMA
COMX
COM
COM
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX 1
5
5
3
5
3
3
6
5
BRSET2
BCC
BSET2
LSR
LSRA
LSRX
LSR
LSR
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
BRCLR2
BCLR2 BCS/BLO
3
DIR 2
DIR 2
REL
5
5
3
5
3
3
6
5
BRSET3
BNE
BSET3
ROR
RORA
RORX
ROR
ROR
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
5
3
3
6
5
BRCLR3
BEQ
BCLR3
ASR
ASRA
ASRX
ASR
ASR
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
5
3
3
6
5
BRSET4
BHCC
BSET4
ASL/LSL ASLA/LSLA ASLX/LSLX ASL/LSL ASL/LSL
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
5
3
3
6
5
BRCLR4
BHCS
BCLR4
ROL
ROLA
ROLX
ROL
ROL
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
5
3
3
6
5
BRSET5
BPL
BSET5
DEC
DECA
DECX
DEC
DEC
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
BRCLR5
BMI
BCLR5
3
DIR 2
DIR 2
REL
5
5
3
5
3
3
6
5
BRSET6
BMC
BSET6
INC
INCA
INCX
INC
INC
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
4
3
3
5
4
BRCLR6
BMS
BCLR6
TST
TSTA
TSTX
TST
TST
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX
5
5
3
BRSET7
BIL
BSET7
3
1
DIR 2
DIR 2
REL
5
5
3
5
3
3
6
5
BRCLR7
BIH
BCLR7
CLR
CLRA
CLRX
CLR
CLR
3
DIR 2
DIR 2
REL 2
DIR 1
INH 1
INH 2
IX1 1
IX 1
0
DIR
Bit Manipulation
Table 11-7. Opcode Map
Freescale Semiconductor, Inc...
STX
LDX
JSR
JMP
ADD
ORA
ADC
EOR
STA
LDA
BIT
AND
CPX
SBC
CMP
SUB
F
IX
3
IX
IX
4
IX
3
IX
5
IX
2
IX
3
IX
3
IX
3
IX
3
IX
4
IX
3
IX
3
IX
3
IX
3
IX
3
IX
3
F
E
D
C
B
A
9
8
7
6
5
4
3
2
1
0
MSB
LSB
Freescale Semiconductor, Inc.
Instruction Set
MC68HC705K1 — Rev. 2.0
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 12. Electrical Specifications
Freescale Semiconductor, Inc...
12.1 Contents
12.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
12.3
Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
12.4
Operating Temperature Range. . . . . . . . . . . . . . . . . . . . . . . .118
12.5
Thermal Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
12.6
Power Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
12.7
Equivalent Pin Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
12.8
5.0-Volt DC Electrical Characteristics. . . . . . . . . . . . . . . . . . .121
12.9
3.3-Volt DC Electrical Characteristics. . . . . . . . . . . . . . . . . . .122
12.10 5.0-Volt Control Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126
12.11 3.3-Volt Control Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
12.12 Typical Oscillator Characteristics . . . . . . . . . . . . . . . . . . . . . .130
12.2 Introduction
This section contains electrical and timing specifications.
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
12.3 Maximum Ratings
Maximum ratings are the extreme limits to which the MCU can be
exposed without permanently damaging it.
Freescale Semiconductor, Inc...
The MCU contains circuitry to protect the inputs against damage from
high static voltages; however, do not apply voltages higher than those
shown in the table here. Keep VIn and VOut within the range
VSS ≤ (VIn or VOut) ≤ VDD. Connect unused inputs to the appropriate
voltage level, either VSS or VDD.
Rating(1)
Symbol
Value
Unit
Supply voltage
VDD
–0.3 to +7.0
V
Input voltage
VIn
VSS –0.3
to VDD +0.3
V
EPROM programming voltage
VPP
VDD –0.3 to
16.0
Current drain per pin excluding
VDD and VSS
I
25
mA
TSTG
–65 to +150
°C
Storage temperature range
1. Voltages referenced to VSS
NOTE:
This device is not guaranteed to operate properly at the maximum
ratings. Refer to 12.8 5.0-Volt DC Electrical Characteristics and
12.9 3.3-Volt DC Electrical Characteristics for guaranteed operating
conditions.
12.4 Operating Temperature Range
Rating(1)
Operating temperature range(2)
MC68HC705K1P, DW, S
Symbol
Value
Unit
TA
TL to TH
–40 to +85
°C
MC68HC705K1CP, CDW, CS
1. Voltages referenced to VSS
2. P = Plastic dual in-line package (PDIP)
DW = Small outline integrated circuit (SOIC)
S = Ceramic dual in-line package (cerdip)
C = Extended temperature range (–40°C to +85°C)
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
Thermal Characteristics
12.5 Thermal Characteristics
Characteristic
Symbol
Value
Unit
Maximum junction temperature
TJ
150
°C
Thermal resistance
MC68HC705K1P(1)
MC68HC705K1DW(2)
θJA
100
140
°C/W
Freescale Semiconductor, Inc...
1. P = Plastic dual in-line package (PDIP)
2. DW = Small outline integrated circuit (SOIC)
12.6 Power Considerations
The average chip junction temperature, TJ, in °C can be obtained from:
TJ = TA + (PD x θJA)
(1)
Where:
TA = ambient temperature in °C
θJA = package thermal resistance, junction to ambient in °C/W
PD = PINT + PI/O
PINT = ICC × VCC = chip internal power dissipation
PI/O = power dissipation on input and output pins (user-determined)
For most applications, PI/O < PINT and can be neglected.
Ignoring PI/O, the relationship between PD and TJ is approximately:
K
PD =
(2)
TJ + 273°C
Solving equations (1) and (2) for K gives:
= PD x (TA + 273°C) + θJA x (PD)2
(3)
where K is a constant pertaining to the particular part. K can be
determined from equation (3) by measuring PD (at equilibrium) for a
known TA. Using this value of K, the values of PD and TJ can be obtained
by solving equations (1) and (2) iteratively for any value of TA.
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
12.7 Equivalent Pin Loading
Figure 12-1 shows the equivalent input/output (I/O) pin loading for test
purposes.
VDD
R2
Freescale Semiconductor, Inc...
TEST POINT
C
R1
PINS
VDD
PA3–PA0, PB1–PB0
4.5 V
PA7–PA4
PA3–PA0, PB1–PB0
3.0 V
R1
R2
C
3.26 kΩ
2.38 kΩ
50 pF
470 Ω
2.38 kΩ
50 pF
10.91 kΩ
6.32 kΩ
50 pF
Figure 12-1. Equivalent Test Load
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
5.0-Volt DC Electrical Characteristics
12.8 5.0-Volt DC Electrical Characteristics
Characteristic(1)
Symbol
Min
Typ(2)
Max
Unit
VOL
VOH
—
VDD – 0.1
—
—
0.1
—
V
VOH
VDD – 0.8
—
—
V
VOL
—
—
—
—
0.4
0.4
V
Input high voltage
PA7–PA0, PB1/OSC3, PB0, IRQ/VPP, RESET, OSC1
VIH
0.7 x VDD
—
VDD
V
Input low voltage
PA7–PA0, PB1/OSC3, PB0, IRQ/VPP, RESET, OSC1
VIL
VSS
—
0.2 x VDD
V
—
—
2.6
0.9
—
—
mA
mA
—
—
—
200
700
1000
—
—
—
nA
nA
nA
IOZ
—
—
±10
µA
IIL
50
75
200
µA
—
—
1.0
—
—
4.0
±1
±1
8.0
µA
µA
mA
COut
CIn
—
—
—
—
12
8
pF
VLVR
2.8
3.5
4.5
V
ROSC
1.0
2.0
3.0
MΩ
VPP
17.0
17.5
18.0
V
IPP
—
5
10
mA
Output voltage
ILoad = 10.0 µA
ILoad = –10.0 µA
Freescale Semiconductor, Inc...
Output high voltage, ILoad = –0.8 mA
PA7–PA0, PB1/OSC3, PB0
Output low voltage
ILoad = 1.6 mA, PA3–PA0, PB1/OSC3, PB0
ILoad = 8.0 mA, PC7–PC4
Supply current
Run(3)
Wait(4)
Stop(5)
25°C
0°C to +70°C (standard)
–40°C to +85°C (extended)
I/O ports hi-z leakage current
PA7–PA0, PB1/OSC3, PB0 (pulldown devices off)
Input pulldown current
PA7–PA0, PB1/OSC3, PB0 (pulldown devices on)
Input current
IRQ/VPP, OSC1
RESET (pulldown devices off)
RESET (pulldown devices on)
Capacitance
Ports (input or output)
RESET, IRQ/VPP
Low-voltage reset threshold(6)
Oscillator internal resistor (OSC1 to OSC2)
voltage(7)
Programming
Programming current
IDD
IIn
1. VDD = 5.0 V ±10%; VSS = 0 Vdc, TA = TL to TH, unless otherwise noted
2. Typical values reflect average measurements at midpoint of voltage range at 25°C.
3. Run (operating) IDD measured using external square wave clock source (fOSC = 4.2 MHz). All inputs 0.2 V from rail. No dc
loads. Less than 50 pF on all outputs. CL = 20 pF on OSC2.
4. Wait IDD measured using external square wave clock source (fOSC = 4.2 MHz). All inputs 0.2 V from rail. No dc loads. Less
than 50 pF on all outputs. CL = 20 pF on OSC2. VIL = 0.2 V, VIH = VDD – 0.2 V. OSC2 capacitance linearly affects wait IDD.
5. Stop IDD measured with OSC1 = VDD. All ports configured as inputs. VIL = 0.2 V, VIH = VDD – 0.2 V. With low-voltage reset
enabled, stop IDD can be as high as 25 µA.
6. All MCUs guaranteed to operate at VDD = 5 V ±10%. Each MCU guaranteed to operate at its VLVR.
7. Programming voltage measured at IRQ/VPP pin.
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
12.9 3.3-Volt DC Electrical Characteristics
Characteristic(1)
Symbol
Min
Typ(2)
Max
Unit
VOL
VOH
—
VDD – 0.1
—
—
0.1
—
V
Output high voltage, ILoad = –0.4 mA
PA7–PA0, PB1/OSC3, PB0
VOH
VDD – 0.3
—
—
V
Output low voltage
ILoad = 0.4 mA, PA3–PA0, PB1/OSC3, PB0
ILoad = 3.0 mA, PC7–PC4
VOL
—
—
—
—
0.3
0.3
V
Input high voltage
PA7–PA0, PB1/OSC3, PB0, IRQ/VPP, RESET, OSC1
VIH
0.7 x VDD
—
VDD
V
Input low voltage
PA7–PA0, PB1/OSC3, PB0, IRQ/VPP, RESET, OSC1
VIL
VSS
—
0.2 x VDD
V
—
—
0.7
300
—
—
mA
µA
—
—
—
50
500
1000
—
—
—
nA
nA
nA
Freescale Semiconductor, Inc...
Output voltage
ILoad = 10.0 µA
ILoad = –10.0 µA
Supply current
Run(3)
Wait(4)
Stop(5)
25°C
0°C to +70°C (standard)
–40°C to +85°C (extended)
IDD
I/O ports hi-z leakage current
PA7–PA0, PB1/OSC3, PB0 (pulldown devices off)
IOZ
—
—
±10
µA
Input pulldown current
PA7–PA0, PB1/OSC3, PB0 (pulldown devices on)
IIL
10
20
100
µA
Input current
IRQ/VPP, OSC1
RESET (pulldown devices off)
RESET (pulldown devices on)
IIn
—
—
0.2
—
—
2.0
±1
±1
4.0
µA
µA
mA
Capacitance
Ports (input or output)
RESET, IRQ/VPP
COut
CIn
—
—
—
—
12
8
pF
Oscillator internal resistor (OSC1 to OSC2)
ROSC
1.0
2.0
3.0
MΩ
1. VDD = 3.3 V ±10%; VSS = 0 Vdc, TA = TL to TH, unless otherwise noted
2. Typical values reflect average measurements at midpoint of voltage range at 25°C.
3. Run (operating) IDD measured using external square wave clock source (fOSC = 2.0 MHz). All inputs 0.2 V from rail. No dc
loads. Less than 50 pF on all outputs. CL = 20 pF on OSC2.
4. Wait IDD measured using external square wave clock source (fOSC = 2.0 MHz). All inputs 0.2 V from rail. No dc loads. Less
than 50 pF on all outputs. CL = 20 pF on OSC2. VIL = 0.2 V, VIH = VDD – 0.2 V. OSC2 capacitance linearly affects wait IDD.
5. Stop IDD measured with OSC1 = VDD. All ports configured as inputs. VIL = 0.2 V, VIH = VDD – 0.2 V. With low-voltage reset
enabled, stop IDD can be as high as 25 µA.
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
3.3-Volt DC Electrical Characteristics
VDD = 5.0 V
VDD = 3.3 V
0.8
0.8
0.6
0.6
0.5
0.5
VDD – VOH (V)
0.7
0.4
0.3
0.4
(NOTE 3)
0.3
0.2
0.2
0.1
0.1
0
0
0
–1.0
–2.0
–3.0
–4.0
–5.0
0
–1.0
–2.0
IOH (mA)
–3.0
–4.0
–5.0
IOH (mA)
Notes:
1. Shaded area indicates variation in driver characteristics due to changes in temperature and for normal processing tolerances.
Within the limited range of values shown, V versus I curves are approximately straight lines.
2. At VDD = 5.0 V, devices are specified and tested for VOL ≤ 800 mV @ IOL = –0.8 mA.
3. At VDD = 3.3 V, devices are specified and tested for VOL ≤ 300 mV @ IOL = –0.2 mA.
Figure 12-2. Typical High-Side Driver Characteristics
VDD = 5.0 V
VDD = 3.3 V
0.40
0.40
(NOTE 2)
0.35
0.35
0.30
0.30
0.25
0.25
VOL (V)
VOL (V)
Freescale Semiconductor, Inc...
VDD – VOH (V)
(NOTE 2)
0.7
0.20
0.15
0.20
0.15
0.10
0.10
0.05
0.05
0
(NOTE 3)
0
0
2.0
4.0
6.0
8.0
10.0
0
2.0
4.0
IOL (mA)
6.0
8.0
10.0
IOL (mA)
Notes:
1. Shaded area indicates variation in driver characteristics due to changes in temperature and for normal processing tolerances.
Within the limited range of values shown, V versus I curves are approximately straight lines.
2. At VDD = 5.0 V, devices are specified and tested for VOL ≤ 400 mV @ IOL = 1.6 mA.
3. At VDD = 3.3 V, devices are specified and tested for VOL ≤ 300 mV @ IOL = 0.4 mA.
Figure 12-3. Typical Low-Side Driver Characteristics
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
T = 25°C
3.0
2.5
5.5 V
4.5 V
Freescale Semiconductor, Inc...
SUPPLY CURRENT (mA)
2.0
3.6 V
3.0 V
1.5
1.0
0.5
0
0
0.5
1.0
1.5
2.0
INTERNAL CLOCK FREQUENCY (MHz)
Figure 12-4. Run IDD versus Internal Clock Frequency
T = 25°C
900
800
700
5.5 V
4.5 V
SUPPLY CURRENT (µA)
600
3.6 V
500
3.0 V
400
300
200
100
0
0
0.5
1.0
1.5
2.0
INTERNAL CLOCK FREQUENCY (MHz)
Figure 12-5. Wait IDD versus Internal Clock Frequency
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
3.3-Volt DC Electrical Characteristics
2500
2000
SUPPLY CURRENT (nA)
5.5 V
4.5 V
1500
3.6 V
3.0 V
1000
Freescale Semiconductor, Inc...
500
0
0
20
40
60
80
100
TEMPERATURE (°C)
Figure 12-6. Stop IDD versus Temperature
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
12.10 5.0-Volt Control Timing
Freescale Semiconductor, Inc...
Characteristic(1)
Symbol
Oscillator frequency
3-pin RC oscillator
2-pin RC oscillator
Crystal/ceramic resonator(2)
External clock
fOSC
Internal operating frequency (fOSC ÷ 2)
3-pin RC oscillator
2-pin RC oscillator
Crystal/ceramic resonator
External clock
fOP
Min
Max
(3)
1.2
2.4
4.0
4.0
(3)
0.500
dc
0.250
dc
0.6
1.2
2.0
2.0
(3)
(3)
Unit
MHz
MHz
2-pin RC oscillator frequency combined stability(4)
fOSC = 2.0 MHz; VDD = 5.0 Vdc ±10%; TA = –40°C to +85°C
fOSC = 2.0 MHz; VDD = 5.0 Vdc ±10%; TA = 0°C to +40°C
∆fOSC
—
—
±25
±20
%
3-pin RC oscillator frequency combined stability(4)
fOSC = 1.0 MHz; VDD = 5.0 Vdc ±10%; TA = –40°C to +85°C
fOSC = 1.0 MHz; VDD = 5.0 Vdc ±10%; TA = 0°C to +40°C
∆fOSC
—
—
±15
±10
%
tCYC
500
—
ns
RC oscillator stabilization time
tRCON
—
1
ms
Crystal oscillator startup time
tOXON
—
100
ms
Stop recovery startup time
tILCH
—
100
ms
tRL
1.5
—
tCYC
tRESL
4.0
—
tCYC
IRQ interrupt pulse width low (edge-triggered)
tILIH
250
—
ns
IRQ interrupt pulse period
tILIL
(6)
—
tCYC
PA3–PA0 interrupt pulse width high (edge-triggered)
tIHIL
250
—
ns
PA3–PA0 interrupt pulse period
tIHIH
(6)
—
tCYC
tOH, tOL
200
—
ns
tEPGM
10
15
ms
Cycle time (1 ÷ fOP)
RESET pulse width low
Timer resolution(5)
OSC1 pulse width
Programming time per byte(7)
1. VDD = 5.0 Vdc ±10%; VSS –0 Vdc; TA = TL to TH
2. Use only AT-cut crystals.
3. Minimum oscillator frequency with RC oscillator option is limited only by size of external R and C and leakage of external C.
4. Including processing tolerances and variations in temperature and supply voltage. Excluding tolerances of external R
and C.
5. The 2-bit timer prescaler is the limiting factor in determining timer resolution.
6. The minimum period, tILIL or tIHIH, should not be less than the number of cycles it takes to execute the interrupt service
routine plus 19 tCYC.
7. tEPGM is programming time per byte and may be accumulated during multiple programming passes.
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
3.3-Volt Control Timing
12.11 3.3-Volt Control Timing
Freescale Semiconductor, Inc...
Characteristic(1)
Symbol
Oscillator frequency
3-pin RC oscillator
2-pin RC oscillator
Crystal/ceramic resonator(2)
External clock
fOSC
Internal operating frequency (fOSC ÷ 2)
3-pin RC oscillator
2-pin RC oscillator
Crystal/ceramic resonator
External clock
fOP
Min
Max
(3)
1.2
2.0
2.0
2.0
(3)
0.500
dc
0.250
dc
0.6
1.0
1.0
1.0
(3)
(3)
Unit
MHz
MHz
2-pin RC oscillator frequency combined stability(4)
fOSC = 2.0 MHz; VDD = 3.3 Vdc ±10%; TA = –40°C to +85°C
fOSC = 2.0 MHz; VDD = 3.3 Vdc ±10%; TA = 0°C to +40°C
∆fOSC
—
—
±40
±30
%
3-pin RC oscillator frequency combined stability(4)
fOSC = 1.0 MHz; VDD = 3.3 Vdc ±10%; TA = –40°C to +85°C
fOSC = 1.0 MHz; VDD = 3.3 Vdc ±10%; TA = 0°C to +40°C
∆fOSC
—
—
±20
±15
%
tCYC
1000
—
ns
RC oscillator stabilization time
tRCON
—
1
ms
Crystal oscillator startup time
tOXON
—
100
ms
Stop recovery startup time
tILCH
—
100
ms
tRL
1.5
—
tCYC
tRESL
4.0
—
tCYC
IRQ interrupt pulse width low (edge-triggered)
tILIH
250
—
ns
IRQ interrupt pulse period
tILIL
(6)
—
tCYC
PA3–PA0 interrupt pulse width high (edge-triggered)
tIHIL
250
—
ns
PA3–PA0 interrupt pulse period
tIHIH
(6)
—
tCYC
tOH, tOL
200
—
ns
Cycle time (1 ÷ fOP)
RESET pulse width low
Timer resolution(5)
OSC1 pulse width
1. VDD = 3.3 Vdc ±10%; VSS –0 Vdc; TA = TL to TH
2. Use only AT-cut crystals.
3. Minimum oscillator frequency with RC oscillator option is limited only by size of external R and C and leakage of external C.
4. Including processing tolerances and variations in temperature and supply voltage. Excluding tolerances of external R
and C.
5. The 2-bit timer prescaler is the limiting factor in determining timer resolution.
6. The minimum period, tILIL or tIHIH, should not be less than the number of cycles it takes to execute the interrupt service
routine plus 19 tCYC.
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
tILIL
tILIH
IRQ/VPP PIN
tILIH
IRQ1
.
.
.
IRQn
Freescale Semiconductor, Inc...
IRQ (INTERNAL)
Figure 12-7. External Interrupt Timing
OSC (NOTE 1)
tRL
RESET
tILIH
IRQ/VPP (NOTE 2)
4064 tCYC
IRQ/VPP (NOTE 3)
INTERNAL
CLOCK
INTERNAL
ADDRESS BUS
03FE
(NOTE 4)
03FE
03FE
03FE
Notes:
1. Internal clocking from OSC1 pin.
2. Edge-triggered external interrupt mask option.
3. Edge- and level-triggered external interrupt mask option.
4. Reset vector shown as example.
03FE
03FF
RESET OR INTERRUPT
VECTOR FETCH
Figure 12-8. Stop Mode Recovery Timing
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
3.3-Volt Control Timing
VDD
(NOTE 1)
4064 tCYC
OSC1 PIN
INTERNAL
CLOCK
Freescale Semiconductor, Inc...
INTERNAL
ADDRESS BUS
03FE
03FE
03FE
03FE
03FE
03FE
INTERNAL
DATA BUS
03FF
NEW
PCH
NEW
PCL
Notes:
1. Power-on reset threshold is typically between 1 V and 2 V.
2. Internal clock, internal address bus, and internal data bus are not available externally.
Figure 12-9. Power-On Reset Timing
INTERNAL
CLOCK
INTERNAL
ADDRESS BUS
03FE
03FE
03FE
03FE
NEW
PCH
INTERNAL
DATA BUS
03FF
NEW
PCL
NEW PC
DUMMY
NEW PC
OP
CODE
tRL
Notes:
1. Internal clock, internal address bus, and internal data bus are not available externally.
2. The next rising edge of the internal clock after the rising edge of RESET initiates the reset sequence.
Figure 12-10. External Reset Timing
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
12.12 Typical Oscillator Characteristics
Parameter
Oscillator Type
Nominal Frequency
VDD = 3.0 V
VDD = 5.0 V
Units
Freescale Semiconductor, Inc...
Frequency Variation
(Part-to-Part)
2-pin RC oscillator
2 MHz
±12
±7
3-pin RC oscillator
1 MHz
±5
±4
%
Frequency Variation
with Temperature
2-pin RC oscillator
2 MHz
–2100
–1600
3-pin RC oscillator
1 MHz
–1100
–1100
ppm/°C
Frequency Variation
with Supply Voltage
2-pin RC oscillator
2 MHz
±1.0
±0.2
3-pin RC oscillator
1 MHz
±0.3
±0.1
∆f/∆V
Cumulative Frequency
Variations(1)
2-pin RC oscillator
2 MHz
±36
±20
3-pin RC oscillator
1 MHz
±16
±13
%
1. VDD ±10%; TA = –40°C to +85°C.
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
Typical Oscillator Characteristics
T = 25°C
10 pF
Freescale Semiconductor, Inc...
OSCILLATOR FREQUENCY (MHz)
4
20 pF
3
2
1
0
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
R (kΩ)
Figure 12-11. 2-Pin RC Oscillator R versus Frequency (VDD = 5.0 V)
T = 25°C
10 pF
OSCILLATOR FREQUENCY (kHz)
1000
20 pF
800
600
400
200
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
R (kΩ)
Figure 12-12. 3-Pin RC Oscillator R versus Frequency (VDD = 5.0 V)
MC68HC705K1 — Rev. 2.0
Technical Data
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Electrical Specifications
T = 25°C
10 pF
Freescale Semiconductor, Inc...
OSCILLATOR FREQUENCY (MHz)
4
20 pF
3
2
1
0
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
R (kΩ)
Figure 12-13. 2-Pin Oscillator R versus Frequency (VDD = 3.0 V)
T = 25°C
10 pF
OSCILLATOR FREQUENCY (kHz)
1000
20 pF
800
600
400
200
0
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
R (kΩ)
Figure 12-14. 3-Pin Oscillator R versus Frequency (VDD = 3.0 V)
Technical Data
MC68HC705K1 — Rev. 2.0
Electrical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 13. Mechanical Specifications
Freescale Semiconductor, Inc...
13.1 Contents
13.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
13.3
Plastic Dual In-Line Package (Case 648) . . . . . . . . . . . . . . . .134
13.4
Small Outline Integrated Circuit (Case 751) . . . . . . . . . . . . . .134
13.5
Ceramic Dual In-Line Package (Case 620) . . . . . . . . . . . . . .135
13.2 Introduction
Package dimensions available at the time of this publication for the
MC68HC705K1 are provided in this section. The packages are:
•
16-pin plastic dual in-line package (PDIP)
•
16-pin small outline integrated circuit package (SOIC)
•
16-pin ceramic DIP (cerdip)
To make sure that you have the latest case outline specifications,
contact one of the following:
•
Local Motorola Sales Office
•
Motorola Mfax
– Phone 602-244-6609
– EMAIL [email protected]
•
Worldwide Web (wwweb) at http://www.mcu.motsps.com
Follow Mfax or wwweb on-line instructions to retrieve the current
mechanical specifications.
MC68HC705K1 — Rev. 2.0
Technical Data
Mechanical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Mechanical Specifications
13.3 Plastic Dual In-Line Package (Case 648)
-A16
9
1
8
B
INCHES
DIM
F
C
A
B
C
D
F
G
H
J
K
L
M
S
L
Freescale Semiconductor, Inc...
S
-T-
SEATING
PLANE
K
H
M
J
G
D
16 PL
0.25 (0.010) M T A M
MIN
MAX
0.740
0.770
0.250
0.270
0.145
0.175
0.015
0.021
0.040
0.70
0.100 BSC
0.050 BSC
0.008
0.015
0.110
0.130
0.295
0.305
0°
10°
0.020
0.040
MILLIMETERS
MIN
MAX
18.80 19.55
6.35
6.85
3.69
4.44
0.39
0.53
1.02
1.77
2.54 BSC
1.27 BSC
0.21
0.38
2.80
3.30
7.50
7.74
0°
10°
0.51
1.01
13.4 Small Outline Integrated Circuit (Case 751)
-A16
9
-B-
8X
P
0.010 (0.25) M
1
DIM
A
B
C
D
F
G
J
K
M
P
R
B
M
8
J
D 16X
0.010 (0.25) M T A
S
B S
F
R
MILLIMETERS
INCHES
MIN
MAX
10.15
10.45
7.40
7.60
2.35
2.65
0.35
0.49
0.50
0.90
1.27 BSC
0.25
0.32
0.10
0.25
0°
7°
10.05
10.55
0.25
0.75
MIN
MAX
0.400
0.411
0.292
0.299
0.093
0.104
0.014
0.019
0.020
0.035
0.050 BSC
0.010
0.012
0.004
0.009
0°
7°
0.395
0.415
0.010
0.029
X 45
C
-TG 14X
K
SEATING
PLANE
M
Technical Data
MC68HC705K1 — Rev. 2.0
Mechanical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Mechanical Specifications
Ceramic Dual In-Line Package (Case 620)
13.5 Ceramic Dual In-Line Package (Case 620)
B
A
A
M
16
9
1
8
Freescale Semiconductor, Inc...
B
L
16X
0.25 (0.010)
E
M
J
T B
F
C
K
T
N
SEATING
PLANE
G
16X
0.25 (0.010)
M
D
T A
MC68HC705K1 — Rev. 2.0
NOTES:
1. DIMENSIONING AND TOLERANCING PER
ASME Y14.5M, 1994.
2. CONTROLLING DIMENSION: INCH.
3. DIMENSION L TO CENTER OF LEAD WHEN
FORMED PARALLEL.
4. DIMENSION F MAY NARROW TO 0.76 (0.030)
WHERE THE LEAD ENTERS THE CERAMIC
BODY.
DIM
A
B
C
D
E
F
G
H
K
L
M
N
INCHES
MIN
MAX
0.750
0.785
0.240
0.295
–––
0.200
0.015
0.020
0.050 BSC
0.055
0.065
0.100 BSC
0.008
0.015
0.125
0.170
0.300 BSC
0_
15 _
0.020
0.040
STYLE 1:
PIN 1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
MILLIMETERS
MIN
MAX
19.05
19.93
6.10
7.49
–––
5.08
0.39
0.50
1.27 BSC
1.40
1.65
2.54 BSC
0.21
0.38
3.18
4.31
7.62 BSC
0_
15 _
0.51
1.01
CATHODE
CATHODE
CATHODE
CATHODE
CATHODE
CATHODE
CATHODE
CATHODE
ANODE
ANODE
ANODE
ANODE
ANODE
ANODE
ANODE
ANODE
Technical Data
Mechanical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Mechanical Specifications
Technical Data
MC68HC705K1 — Rev. 2.0
Mechanical Specifications
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Technical Data — MC68HC705K1
Section 13. Ordering Information
Freescale Semiconductor, Inc...
13.1 Contents
13.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
13.3
MCU Order Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .137
13.2 Introduction
This section contains ordering information for the available package
types.
13.3 MCU Order Numbers
Table 13-1 lists the MC order numbers.
Table 13-1. MC68HC705K1 Order Numbers
Package Type
Temperature Range
Order Number
16-pin plastic dual in-line package (PDIP)
0°C to +70°C
MC68HC705K1P(1)
16-pin small outline integrated circuit (SOIC)
0°C to +70°C
MC68HC705K1DW(2)
16-pin ceramic dual in-line package (cerdip)
0°C to +70°C
MC68HC705K1S(3)
16-pin plastic dual in-line package (PDIP)
–40°C to +85°C
MC68HC705K1CP(4)
16-pin small outline integrated circuit (SOIC)
–40°C to +85°C
MC68HC705K1CDW
16-pin ceramic dual in-line package (cerdip)
–40°C to +85°C
MC68HC705K1CS
1. P = Plastic dual in-line package (PDIP)
2. DW = Small outline integrated circuit (SOIC)
3. S = Ceramic dual in-line package (cerdip)
4. C = Extended temperature range (–40°C to +85°C)
MC68HC705K1 — Rev. 2.0
Technical Data
Ordering Information
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc.
Freescale Semiconductor, Inc...
Ordering Information
Technical Data
MC68HC705K1 — Rev. 2.0
Ordering Information
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
Freescale Semiconductor, Inc...
Freescale Semiconductor, Inc.
Home Page:
www.freescale.com
email:
[email protected]
USA/Europe or Locations Not Listed:
Freescale Semiconductor
Technical Information Center, CH370
1300 N. Alma School Road
Chandler, Arizona 85224
(800) 521-6274
480-768-2130
[email protected]
Europe, Middle East, and Africa:
Freescale Halbleiter Deutschland GmbH
Technical Information Center
Schatzbogen 7
81829 Muenchen, Germany
+44 1296 380 456 (English)
+46 8 52200080 (English)
+49 89 92103 559 (German)
+33 1 69 35 48 48 (French)
[email protected]
Japan:
Freescale Semiconductor Japan Ltd.
Headquarters
ARCO Tower 15F
1-8-1, Shimo-Meguro, Meguro-ku
Tokyo 153-0064, Japan
0120 191014
+81 2666 8080
[email protected]
Asia/Pacific:
Freescale Semiconductor Hong Kong Ltd.
Technical Information Center
2 Dai King Street
Tai Po Industrial Estate,
Tai Po, N.T., Hong Kong
+800 2666 8080
[email protected]
For Literature Requests Only:
Freescale Semiconductor
Literature Distribution Center
P.O. Box 5405
Denver, Colorado 80217
(800) 441-2447
303-675-2140
Fax: 303-675-2150
LDCForFreescaleSemiconductor
@hibbertgroup.com
RoHS-compliant and/or Pb- free versions of Freescale products have the functionality
and electrical characteristics of their non-RoHS-compliant and/or non-Pb- free
counterparts. For further information, see http://www.freescale.com or contact your
Freescale sales representative.
For information on Freescale.s Environmental Products program, go to
http://www.freescale.com/epp.
Information in this document is provided solely to enable system and software
implementers to use Freescale Semiconductor products. There are no express or
implied copyright licenses granted hereunder to design or fabricate any integrated
circuits or integrated circuits based on the information in this document.
Freescale Semiconductor reserves the right to make changes without further notice to
any products herein. Freescale Semiconductor makes no warranty, representation or
guarantee regarding the suitability of its products for any particular purpose, nor does
Freescale Semiconductor assume any liability arising out of the application or use of
any product or circuit, and specifically disclaims any and all liability, including without
limitation consequential or incidental damages. “Typical” parameters which may be
provided in Freescale Semiconductor data sheets and/or specifications can and do
vary in different applications and actual performance may vary over time. All operating
parameters, including “Typicals” must be validated for each customer application by
customer’s technical experts. Freescale Semiconductor does not convey any license
under its patent rights nor the rights of others. Freescale Semiconductor products are
not designed, intended, or authorized for use as components in systems intended for
surgical implant into the body, or other applications intended to support or sustain life,
or for any other application in which the failure of the Freescale Semiconductor product
could create a situation where personal injury or death may occur. Should Buyer
purchase or use Freescale Semiconductor products for any such unintended or
unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor
and its officers, employees, subsidiaries, affiliates, and distributors harmless against all
claims, costs, damages, and expenses, and reasonable attorney fees arising out of,
directly or indirectly, any claim of personal injury or death associated with such
unintended or unauthorized use, even if such claim alleges that Freescale
Semiconductor was negligent regarding the design or manufacture of the part.
MC68HC705J1A/D
For More Information On This Product,
Go to: www.freescale.com
Similar pages