HYNIX SEMICONDUCTOR INC. 8-BIT SINGLE-CHIP MICROCONTROLLERS HMS99C51 HMS99C52 User’s Manual (Ver. 1.0) Version 1.0 Published by MCU Application Team 2002 Hynix semiconductor All right reserved. Additional information of this manual may be served by Hynix semiconductor offices in Korea or Distributors and Representatives listed at address directory. Hynix semiconductor reserves the right to make changes to any information here in at any time without notice. The information, diagrams and other data in this manual are correct and reliable; however, Hynix semiconductor is in no way responsible for any violations of patents or other rights of the third party generated by the use of this manual. Device Naming Structure XX FLASH version Hynix semiconductor MCU HMS99X5X Package Type Blank: 40PDIP PL: 44PLCC Q: 44MQFP ROM size 1: 4k bytes 2: 8k bytes Operating Voltage C: 4.5~5.5V HMS99C5X Series Selection Guide Operating Voltage (V) 4.5~5.5 ROM size (bytes) FLASH RAM size (bytes) 4K 8K 128 256 Device Name HMS99C51 HMS99C52 Operating Frequency (MHz) 40 40 HMS99C5X Series HMS99C51 • Fully compatible to standard MCS-51 microcontroller • Wide operating frequency up to 40MHz (for more detail, see “HMS99C5X Series Selection Guide”) • X2 Speed Improvement capability ( X2 Mode : 6 clocks/machine cycle) 20MHz @5V (Equivalent to 40MHz @5V) • 4K bytes FLASH ROM • 128 × 8Bit RAM • 64K external program memory space • 64K external data memory space • Four 8-bit ports • Two 16-bit Timers / Counters • USART • Programmable ALE pin enable / disable (Low EMI) • Five interrupt sources, two priority levels • Power saving Idle and power down mode • P-DIP-40, P-LCC-44, P-MQFP-44 package • Temperature Ranges : -40°C ~ 85°C Block Diagram RAM 128 × 8 T0 CPU T1 FLASH ROM 4K × 8 0 8-BIT USART PORT 0 I/O PORT 1 I/O PORT 2 I/O PORT 3 I/O Jan. 2003 Ver 1.0 HMS99C5X Series HMS99C52 • Fully compatible to standard MCS-51 microcontroller • Wide operating frequency up to 40MHz (for more detail, see “HMS99C5X Series Selection Guide”) • X2 Speed Improvement capability ( X2 Mode : 6 clocks/machine cycle) 20MHz @5V (Equivalent to 40MHz @5V) • 8K bytes FLASH ROM • 256 × 8Bit RAM • 64K external program memory space • 64K external data memory space • Four 8-bit ports • Three 16-bit Timers / Counters (Timer2 with up/down counter feature) • USART • One clock output port • Programmable ALE pin enable / disable (Low EMI) • Six interrupt sources, two priority levels • Power saving Idle and power down mode • P-DIP-40, P-LCC-44, P-MQFP-44 package • Temperature Ranges : -40°C ~ 85°C Block Diagram RAM 256 × 8 T0 CPU T2 8-BIT USART T1 FLASH ROM 8K × 8 Jan. 2003 Ver 1.0 PORT 0 I/O PORT 1 I/O PORT 2 I/O PORT 3 I/O 1 HMS99C5X Series PIN CONFIGURATION P0.1 / AD1 P0.2 / AD2 P0.3 / AD3 41 40 N.C.* 42 P1.0 / T2 1 VCC P1.1 / T2EX 2 P0.0 / AD0 P1.2 3 43 P1.3 4 44 P1.4 5 INDEX CORNER 6 44-PLCC Pin Configuration (top view) PSEN INT1 / P3.3 15 31 P2.7 / A15 T0 / P3.4 16 30 P2.6 / A14 T1 / P3.5 17 29 P2.5 / A13 28 32 P2.4 / A12 14 27 ALE / PROG INT0 / P3.2 26 33 P2.2 / A10 13 P2.3 / A11 N.C.* TxD / P3.1 25 34 P2.1 / A9 12 24 EA / VPP N.C.* P2.0 / A8 35 23 11 N.C.* P0.7 / AD7 RxD / P3.0 22 36 VSS 10 21 P0.6 / AD6 RESET XTAL1 37 20 9 XTAL2 P0.5 / AD5 P1.7 19 P0.4 / AD4 38 18 39 8 RD / P3.7 7 P1.6 WR / P3.6 P1.5 N.C.: Do not connect. 2 Jan. 2003 Ver 1.0 HMS99C5X Series 40-PDIP Pin Configuration (top view) Jan. 2003 Ver 1.0 T2 / P1.0 1 40 VCC T2EX / P1.1 2 39 P0.0 / AD0 P1.2 3 38 P0.1 / AD1 P1.3 4 37 P0.2 / AD2 P1.4 5 36 P0.3 / AD3 P1.5 6 35 P0.4 / AD4 P1.6 7 34 P0.5 / AD5 P1.7 8 33 P0.6 / AD6 RESET 9 32 P0.7 / AD7 RxD / P3.0 10 31 EA / VPP TxD / P3.1 11 30 ALE / PROG INT0 / P3.2 12 29 PSEN INT1 / P3.3 13 28 P2.7 / A15 T0 / P3.4 14 27 P2.6 / A14 T1 / P3.5 15 26 P2.5 / A13 WR / P3.6 16 25 P2.4 / A12 RD / P3.7 17 24 P2.3 / A11 XTAL2 18 23 P2.2 / A10 XTAL1 19 22 P2.1 / A9 VSS 20 21 P2.0 / A8 3 HMS99C5X Series P1.4 P1.3 P1.2 P1.1 / T2EX P1.0 / T2 N.C.* VCC P0.0 / AD0 P0.1 / AD1 P0.2 / AD2 P0.3 / AD3 44 43 42 41 40 39 38 37 36 35 34 44-MQFP Pin Configuration (top view) PSEN INT1 / P3.3 9 25 P2.7 / A15 T0 / P3.4 10 24 P2.6 / A14 T1 / P3.5 11 23 P2.5 / A13 22 26 P2.4 / A12 8 21 ALE / PROG INT0 / P3.2 P2.3 / A11 27 20 7 P2.2 / A10 N.C.* TxD / P3.1 19 28 P2.1 / A9 6 18 EA / VPP N.C.* P2.0 / A8 29 17 5 N.C.* P0.7 / AD7 RxD / P3.0 16 30 VSS 4 15 P0.6 / AD6 RESET XTAL1 31 14 3 XTAL2 P0.5 / AD5 P1.7 13 P0.4 / AD4 32 12 33 2 RD / P3.7 1 P1.6 WR / P3.6 P1.5 N.C.: Do not connect. 4 Jan. 2003 Ver 1.0 HMS99C5X Series Logic Symbol VCC XTAL1 XTAL2 RESET VSS Port 0 8-bit Digital I/O Port 1 8-bit Digital I/O Port 2 8-bit Digital I/O EA/VPP ALE/PROG Port 3 8-bit Digital I/O PSEN Jan. 2003 Ver 1.0 5 HMS99C5X Series PIN DEFINITIONS AND FUNCTIONS Pin Number Symbol P1.0-P1.7 P3.0-P3.7 XTAL2 6 Input/ Output Function PLCC44 PDIP40 MQFP44 2-9 1-8 40-44, 1-3 2 3 1 2 40 41 2 1 40 11, 13-19 10-17 5, 7-13 11 10 5 P3.0 / RxD 13 11 7 P3.1 / TxD 14 15 16 17 18 12 13 14 15 16 8 9 10 11 12 P3.2 /INT0 P3.3 / INT1 P3.4 /T0 P3.5 /T1 P3.6 / WR 19 17 13 P3.7 /RD 20 18 14 I/O Port1 Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. Port 1 pins that have 1s written to them are pulled high by the internal pull-up resistors and can be used as inputs. As inputs, port 1 pins that are externally pulled low will source current because of the pulls-ups (IIL, in the DC characteristics). Pins P1.0 and P1.1 also. Port1 also receives the low-order address byte during program memory verification. Port1 also serves alternate functions of Timer 2. P1.0 / T2 :Timer/counter 2 external count input P1.1 / T2EX :Timer/counter 2 trigger input In HMS99C52: P1.0 / T2, Clock Out : Timer/counter 2 external count input, Clock Out I/O O Port 3 Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. Port 3 pins that have 1s written to them are pulled high by the internal pull-up resistors and can be used as inputs. As inputs, port 3 pins that are externally pulled low will source current because of the pulls-ups (IIL, in the DC characteristics). Port 3 also serves the special features of the 80C51 family, as listed below. receiver data input (asynchronous) or data input output(synchronous) of serial interface 0 transmitter data output (asynchronous) or clock output (synchronous) of the serial interface 0 interrupt 0 input/timer 0 gate control interrupt 1 input/timer 1 gate control counter 0 input counter 1 input the write control signal latches the data byte from port 0 into the external data memory the read control signal enables the external data memory to port 0 XTAL2 Output of the inverting oscillator amplifier. Jan. 2003 Ver 1.0 HMS99C5X Series Pin Number Symbol Input/ Output Function PLCC44 PDIP40 MQFP44 XTAL1 21 19 15 I XTAL1 Input to the inverting oscillator amplifier and input to the internal clock generator circuits.To drive the device from an external clock source, XTAL1 should be driven, while XTAL2 is left unconnected. There are no requirements on the duty cycle of the external clock signal, since the input to the internal clocking circuitry is divided down by a divide-by-two flip-flop. Minimum and maximum high and low times as well as rise fall times specified in the AC characteristics must be observed. P2.0-P2.7 24-31 21-28 18-25 I/O Port 2 Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. Port 2 pins that have 1s written to them are pulled high by the internal pull-up resistors and can be used as inputs. As inputs, port 2 pins that are externally pulled low will source current because of the pulls-ups (IIL, in the DC characteristics).Port 2 emits the high-order address byte during fetches from external program memory and during accesses to external data memory that use 16-bit addresses (MOVX @DPTR). In this application it uses strong internal pull-ups when emitting 1s. During accesses to external data memory that use 8-bit addresses (MOVX @Ri), port 2 emits the contents of the P2 special function register. PSEN 32 29 26 O The Program Store Enable The read strobe to external program memory when the device is executing code from the external program memory. PSEN is activated twice each machine cycle, except that two PSEN activations are skipped during each access to external data memory. PSEN is not activated during fetches from internal program memory. RESET 10 9 4 I RESET A high level on this pin for two machine cycles while the oscillator is running resets the device. An internal diffused resistor to VSS permits power-on reset using only an external capacitor to VCC. Jan. 2003 Ver 1.0 7 HMS99C5X Series Pin Number Symbol ALE / PROG PLCC44 PDIP40 MQFP44 33 30 27 Input/ Output O Function The Address Latch Enable / Program pulse Output pulse for latching the low byte of the address during an access to external memory. In normal operation, ALE is emitted at a constant rate of 1/6 the oscillator frequency, and can be used for external timing or clocking. Note that one ALE pulse is skipped during each access to external data memory. This pin is also the program pulse input (PROG) during EPROM programming. If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With this bit set, the pin is weakly pulled high. The ALE disable feature will be terminated by reset. Setting the ALE-disable bit has no affect if the microcontroller is in external execution mode. EA / VPP 35 31 29 I External Access Enable / Program Supply Voltage EA must be external held low to enable the device to fetch code from external program memory locations 0000H to FFFFH. If EA is held high, the device executes from internal program memory unless the program counter contains an address greater than its internal memory size. This pin also receives the 12.75V programming supply voltage (VPP) during EPROM programming. Note; 8 however, that if any of the Lock bits are programmed, EA will be internally latched on reset. P0.0-P0.7 36-43 32-39 30-37 I/O Port 0 Port 0 is an 8-bit open-drain bidirectional I/O port. Port 0 pins that have 1s written to them float and can be used as high-impedance inputs. Port 0 is also the multiplexed low-order address and data bus during accesses to external program and data memory. In this application it uses strong internal pull-ups when emitting 1s. Port 0 also outputs the code bytes during program verification in the GMS97X5X. External pull-up resistors are required during program verification. VSS 22 20 16 - Circuit ground potential VCC 44 40 38 - Supply terminal for all operating modes N.C. 1,12 23,34 - 6,17 28,39 - No connection Jan. 2003 Ver 1.0 HMS99C5X Series FUNCTIONAL DESCRIPTION The HMS99C5X series is fully compatible to the standard 8051 microcontroller family. It is compatible with the general 8051 family. While maintaining all architectural and operational characteristics of the general 8051 family. Figure 1 shows a block diagram of the HMS99C5X series XTAL1 RAM OSC & TIMING XTAL2 RESET CPU EA/VPP Timer 0 128/256×8 ALE/PROG PSEN FRASH 4K/8K Port 0 Port 0 8-bit Digit. I/O Port 1 Port 1 8-bit Digit. I/O Port 2 Port 2 8-bit Digit. I/O Port 3 Port 3 8-bit Digit. I/O Timer 1 Timer 2 Interrupt Unit Serial Channel Figure 1. Block Diagram of the HMS99C5X series Jan. 2003 Ver 1.0 9 HMS99C5X Series CPU The HMS99C5X series is efficient both as a controller and as an arithmetic processor. It has extensive facilities for binary and BCD arithmetic and excels in its bit-handling capabilities. Efficient use of program memory results from an instruction set consisting of 44% one-byte, 41% two-byte, and 15% three-byte instructions. With a 12 MHz crystal, 58% of the instructions are executed in 1.0µs (40MHz: 300ns). Special Function Register PSW Bit No. Addr. D0H LSB MSB 7 6 CY AC 5 4 3 2 F0 RS1 RS0 OV Bit 1 0 F1 P Function CY Carry Flag AC Auxiliary Carry Flag (for BCD operations) F0 General Purpose Flag RS1 0 0 1 1 PSW RS0 0 1 0 1 Register Bank select control bits Bank 0 selected, data address 00H - 07H Bank 1 selected, data address 08H - 0FH Bank 2 selected, data address 10H - 17H Bank 3 selected, data address 18H - 1FH OV Overflow Flag F1 General Purpose Flag P Parity Flag Set/cleared by hardware each instruction cycle to indicate an odd/even number of "one" bits in the accumulator, i.e. even parity. Reset value of PSW is 00H. 10 Jan. 2003 Ver 1.0 HMS99C5X Series SPECIAL FUNCTION REGISTERS All registers, except the program counter and the four general purpose register banks, reside in the special function register area. The 28 special function registers (SFR) include pointers and registers that provide an interface between the CPU and the other on-chip peripherals. There are also 128 directly addressable bits within the SFR area. All SFRs are listed in Table 1, Table 2, and Table 3. In Table 1 they are organized in numeric order of their addresses. In Table 2 they are organized in groups which refer to the functional blocks of the HMS99C5X series. Table 3 illustrates the contents of the SFRs Table 1. Special Function Registers in Numeric Order of their Addresses (cont’d) Address Register Contents after Reset Address Register Contents after Reset 80H 81H 82H 83H 84H 85H 86H 87H P0 1) SP DPL DPH reserved reserved reserved PCON FFH 07H 00H 00H XXH 2) XXH 2) XXH 2) 0XXX0000B 2) 88H 89H 8AH 8BH 8CH 8DH 8EH 8FH TCON 1) TMOD TL0 TL1 TH0 TH1 AUXR0 CKCON 00H 00H 00H 00H 00H 00H XXH 2) XXXXXXX0B 2) 90H 91H 92H 93H 94H 95H 96H 97H P1 1) reserved reserved reserved reserved reserved reserved reserved FFH 00H XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) 98H 99H 9AH 9BH 9CH 9DH 9EH 9FH SCON 1) SBUF reserved reserved reserved reserved reserved reserved 00H XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) A0H A1H A2H A3H A4H A5H A6H A7H P2 3) reserved reserved reserved reserved reserved reserved reserved FFH XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) A8H A9H AAH ABH ACH ADH AEH AFH IE 1) reserved reserved reserved reserved reserved reserved reserved 0X000000B 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) B0H B1H B2H B3H B4H B5H B6H B7H P3 1) reserved reserved reserved reserved reserved reserved reserved FFH XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) B8H B9H BAH BBH BCH BDH BEH BFH IP 1) reserved reserved reserved reserved reserved reserved reserved XX000000B 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) Jan. 2003 Ver 1.0 11 HMS99C5X Series Table 1. Special Function Registers in Numeric Order of their Addresses (cont’d) Address Register Contents after Reset Address Register Contents after Reset C0H C1H C2H C3H C4H C5H C6H C7H reserved reserved reserved reserved reserved reserved reserved reserved XXH XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) C8H 3) C9H 4) CAH 3) CBH 3) CCH 3) CDH 3) CEH CFH T2CON 1) T2MOD RC2L RC2H TL2 TH2 reserved reserved 00H XXXXXX00B 2) 00H 00H 00H 00H XXH 2) XXH 2) D0H D1H D2H D3H D4H D5H D6H D7H PSW 1) reserved reserved reserved reserved reserved reserved reserved FFH XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) D8H D9H DAH DBH DCH DDH DEH DFH reserved reserved reserved reserved reserved reserved reserved reserved XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) E0H E1H E2H E3H E4H E5H E6H E7H ACC 1) reserved reserved reserved reserved reserved reserved reserved 00H XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) E8H E9H EAH EBH ECH EDH EEH EFH reserved reserved reserved reserved reserved reserved reserved reserved XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) F0H F1H F2H F3H F4H F5H F6H F7H B 1) reserved reserved reserved reserved reserved reserved reserved 00H XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) F8H F9H FAH FBH FCH FDH FEH FFH reserved reserved reserved reserved reserved reserved reserved reserved XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) XXH 2) 1) Bit-addressable Special Function Register. 2) X means that the value is indeterminate and the location is reserved. 3) Bit-addressable Special Function Register. 4) These Registers are in the HMS99C52 only. 12 Jan. 2003 Ver 1.0 HMS99C5X Series Table 2. Special Function Registers - Functional Blocks Block Symbol Name Address Contents after Reset CPU ACC B DPH DPL PSW SP Accumulator B-Register Data Pointer, High Byte Data Pointer, Low Byte Program Status Word Register Stack Pointer E0H 1) F0H 1) 83H 82H D0H 1) 81H 00H 00H 00H 00H 00H 07H Interrupt System IE IP Interrupt Enable Register Interrupt Priority Register A8H 1) B8H 1) 0X000000B 2) XX000000B 2) Ports P0 P1 P2 P3 Port 0 Port 1 Port 2 Port 3 80H 1) 90H 1) A0H 1) B0H 1) FFH FFH FFH FFH Serial Channels PCON 3) SBUF SCON Power Control Register Serial Channel Buffer Reg. Serial Channel 0 Control Reg. 87H 99H 98H 1) 0XXX0000B 2) XXH 2) 00H Timer 0/ Timer 1 TCON TH0 TH1 TL0 TL1 TMOD Timer 0/1 Control Register Timer 0, High Byte Timer 1, High Byte Timer 0, Low Byte Timer 1, Low Byte Timer Mode Register 88H 1) 8CH 8DH 8AH 8BH 89H 00H 00H 00H 00H 00H 00H Timer 2 T2CON T2MOD RC2H RC2L TH2 TL2 AUXR0 Timer 2 Control Register Timer 2 Mode Register Timer 2 Reload Capture Reg., High Byte Timer 2 Reload Capture Reg., Low Byte Timer 2, High Byte Timer 2, Low Byte Aux. Register 0 C8H 1) C9H CBH CAH CDH CCH 8EH 00H 00H 00H 00H 00H 00H XXXXXXX0B 2) PCON 3) Power Control Register 87H 0XXX0000B 2) Power Modes Saving 1) Bit-addressable Special Function register 2) X means that the value is indeterminate and the location is reserved 3) This special function register is listed repeatedly since some bit of it also belong to other functional blocks Table 3. Contents of SFRs, SFRs in Numeric Order Address Register 80H P0 Jan. 2003 Ver 1.0 Bit 7 6 5 4 3 2 1 0 13 HMS99C5X Series Table 3. Contents of SFRs, SFRs in Numeric Order Address Register 81H SP 82H DPL 83H DPH 87H Bit 7 6 5 4 3 2 1 0 PCON SMOD - - - GF1 GF0 PDE IDLE 88H TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 89H TMOD GATE C/T M1 MT GATE C/T M1 M0 8AH TL0 8BH TL1 8CH TH0 8DH TH1 8EH AUXR0 - - - - - - - A0 8FH CKCON - - - - - - - X2 90H P1 98H SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 99H SBUF A0H P2 A8H IE EA - ET2 ES ET1 EX1 ET0 EX0 B0H P3 B8H IP - - PT2 PS PT1 PX1 PT0 PX0 SFR bit and byte addressable SFR not bit addressable - : this bit location is reserved 14 Jan. 2003 Ver 1.0 HMS99C5X Series Table 3. Contents of SFRs, SFRs in Numeric Order (cont’d) Address Register Bit 7 6 5 4 3 2 1 0 C8H T2CON TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2 C9H T2MOD - - - - - - T2OE † DCEN CAH RC2L CBH RC2H CCH TL2 CDH TH2 D0H PSW CY AC F0 RS1 RS0 OV F1 P E0H ACC F0H B † indicates resident in the HMS99C52, not in HMS99C51. A0 8EH A0 : ALE Signal Disable bit 0 : Enable ALE Signal (Generated ALE Signal) 1 : Disable ALE Signal (Not Generated ALE Signal) X2 8FH X2 : CPU & Peripheral Clock Select bit 0 : Select 12 clock periods per machine cycle 1 : Select 6 clock periods per machine cycle † C9H T2OE T2OE : Timer2 Output Enable bit 0 : Disable Timer2 Output 1 : Enable Timer2 Output SFR bit and byte addressable SFR not bit addressable - : this bit location is reserved Jan. 2003 Ver 1.0 15 HMS99C5X Series X2 MODE The HMS99C5X core needs only 6 clock periods per machine cycle. This feature called ”X2” provides the following advantages: • Divide frequency crystals by 2 (cheaper crystals) while keeping same CPU power. • Save power consumption while keeping same CPU power (oscillator power saving). • Save power consumption by dividing dynamically operating frequency by 2 in operating and idle modes. • Increase CPU power by 2 while keeping same crystal frequency. In order to keep the original C51 compatibility, a divider by 2 is inserted between the XTAL1 signal and the main clock input of the core (phase generator). This divider may be disabled by software. X2 Mode Description The clock for the whole circuit and peripheral is first divided by two before being used by the CPU core and peripherals. This allows any cyclic ratio to be accepted on XTAL1 input. In X2 mode, as this divider is bypassed, the signals on XTAL1 must have a cyclic ratio between 40 to 60%. Figure 2. shows the clock generation block diagram. X2 bit is validated on XTAL1÷2 rising edge to avoid glitches when switching from X2 to STD mode. Figure 3.shows the mode switching waveforms: XTAL1 fOSC ÷2 0 State Machine: 6 clokc cyles CPU control 1 X2 CKCON Register Figure 2. Clock Generation Diagram The X2 bit in the CKCON register allows to switch from 12 clock cycles per instruction to 6 clock cycles and vice versa. At reset, the standard speed is activated (STD mode). Setting this bit activates the X2 feature(X2 mode). CAUTION In order to prevent any incorrect operation while operating in X2 mode, user must be aware that all peripherals using clock frequency as time reference (UART, timers) will have their time reference divided by two. For example a free running timer generating an interrupt every 30 ms will then generate an interrupt every 15 ms. UART with 2400 baud rate will have 4800 baud rate. 16 Jan. 2003 Ver 1.0 HMS99C5X Series XTAL1 XTAL1:2 X2 bit CPU Clock STD Mode X2 Mode STD Mode Figure 3. Mode Swithcing Waveforms . Jan. 2003 Ver 1.0 17 HMS99C5X Series TIMER / COUNTER 0 AND 1 Timer/Counter 0 and 1 can be used in four operating modes as listed in Table 4: Table 4. Timer/Counter 0 and 1 Operating Modes TMOD Mode Input Clock Description Gate C/T M1 M0 internal external (Max.) 0 8-bit timer/counter with a divide-by-32 prescaler X X 0 0 fOSC ÷(12×32) fOSC ÷(24×32) 1 16-bit timer/counter X X 0 1 fOSC ÷12 fOSC ÷24 2 8-bit timer/counter with 8-bit auto-reload X X 1 0 fOSC ÷12 fOSC ÷24 3 Timer/counter 0 used as one 8-bit timer/counter and one 8-bit timer Timer 1 stops X X 1 1 fOSC ÷12 fOSC ÷24 In the "timer" function (C/T = "0") the register is incremented every machine cycle. Therefore the count rate is fOSC/12. In the "counter" function the register is incremented in response to a 1-to-0 transition at its corresponding external input pin (P3.4/T0, P3.5/T1). Since it takes two machine cycles to detect a falling edge the max. count rate is fOSC/24. External inputs INT0 and INT1 (P3.2, P3.3) can be programmed to function as a gate to facilitate pulse width measurements. Figure 4 illustrates the input clock logic. ÷ 12 fOSC fOSC ÷ 12 C/T TMOD 0 Timer 0/1 Input Clock P3.4/T0 P3.5/T1 Max. fOSC/24 1 TR0 / 1 TCON Gate & =1 TMOD ≥1 P3.2 / INT0 P3.3 / INT1 Figure 4. Timer/Counter 0 and 1 Input Clock Logic 18 Jan. 2003 Ver 1.0 HMS99C5X Series TIMER 2 Timer 2 is a 16-bit timer/Counter with an up/down count feature. It can operate either as timer or as an event counter which is selected by bit C/T2 (T2CON.1). It has three operating modes as shown in Table 5. Table 5. Timer/Counter 2 Operating Modes T2CON Mode 16-bit AutoReload 16-bit Capture Baud Rate Generator Off Note: ↓ = RCLK or CP/RL2 TCLK T2MOD T2CON TR2 DCEN EXEN2 P1.1/ T2EX 0 0 1 0 0 X 0 0 1 0 1 ↓ 0 0 0 0 1 1 1 1 X X 0 1 0 1 1 X 0 X 0 1 1 X 1 ↓ 1 X 1 X 0 X 1 X 1 X 1 ↓ X X 0 X X X Input Clock Remarks internal external (P1.0/T2) reload upon overflow reload trigger (falling edge) Down counting Up counting fOSC ÷ 12 Max. fOSC ÷24 16 bit Timer/ Counter (only up-counting) capture TH2,TL2 → RC2H,RC2L fOSC ÷ 12 Max. fOSC ÷ 24 no overflow interrupt request (TF2) extra external interrupt ("Timer 2") fOSC ÷ 12 Max. fOSC ÷ 24 - - Timer 2 stops falling edge Jan. 2003 Ver 1.0 19 HMS99C5X Series SERIAL INTERFACE (USART) The serial port is full duplex and can operate in four modes (one synchronous mode, three asynchronous modes) as illustrated in Table 6. The possible baud rates can be calculated using the formulas given in Table 7. Table 6. USART Operating Modes SCON Mode Baudrate SM0 SM1 0 0 0 fOSC -----------12 1 0 1 Timer 1/2 overflow rate 2 1 0 f OSC or fOSC ----------------------64 32 3 1 1 Timer 1/2 overflow rate Description Serial data enters and exits through RxD. TxD outputs the shift clock. 8-bit are transmitted/received (LSB first) 8-bit UART 10 bits are transmitted (through TxD) or received (RxD) 9-bit UART 11 bits are transmitted (TxD) or received (RxD) 9-bit UART Like mode 2 except the variable baud rate Table 7. Formulas for Calculating Baud rates Baud Rate derived from Interface Mode Baudrate 0 f OSC -----------12 2 2 ------------------ × fOSC 64 1,3 2 ------------------ × ( Timer 1 overflow ) 32 1,3 SMOD fOSC 2 ------------------ × --------------------------------------------------32 12 × [ 256 Ð ( TH1 ) ] 1,3 f OSC ---------------------------------------------------------------------------------32 × [ 65536 Ð ( RC2H, RC2L ) ] Oscillator SMOD SMOD Timer 1 (16-bit timer) (8-bit timer with 8-bit auto reload) Timer 2 20 Jan. 2003 Ver 1.0 HMS99C5X Series INTERRUPT SYSTEM The HMS99C5X series provides 5 (4K bytes ROM version) or 6 (above 8K bytes ROM version) interrupt sources with two priority levels. Figure 5 gives a general overview of the interrupt sources and illustrates the request and control flags. High Priority Timer 0 Overflow TF0 TCON.5 ET0 PT0 IE.1 IP.1 ET1 PT1 IE.3 IP.3 EXF2 ET2 PT2 T2CON.6 IE.5 IP.5 Timer 1 Overflow Low Priority TF1 TCON.7 Timer 2 Overflow TF2 ≥1 T2CON.7 P1.1/ T2EX EXEN2 T2CON.3 UART RI ≥1 SCON.0 TI ES PS SCON.1 IE.4 IP.4 IT0 EX0 PX0 TCON.0 IE.0 IP.0 P3.2/ INT0 IE0 TCON.1 P3.3/ INT1 IE1 TCON.3 IT1 EX1 EA PX1 TCON.2 IE.2 IE.7 IP.2 : Low level triggered : Falling edge triggered Figure 5. Interrupt Request Sources Jan. 2003 Ver 1.0 21 HMS99C5X Series Table 8. Interrupt Sources and their Corresponding Interrupt Vectors Source (Request Flags) RESET IE0 TF0 IE1 TF1 RI + TI TF2 + EXF2 Vectors Vector Address RESET External interrupt 0 Timer 0 interrupt External interrupt 1 Timer 1 interrupt Serial port interrupt Timer 2 interrupt 0000H 0003H 000BH 0013H 001BH 0023H 002BH A low-priority interrupt can itself be interrupted by a high-priority interrupt, but not by another low priority interrupt. A high-priority interrupt cannot be interrupted by any other interrupt source. If two requests of different priority level are received simultaneously, the request of higher priority is serviced. If requests of the same priority are received simultaneously, an internal polling sequence determines which request is serviced. Thus within each priority level there is a second priority structure determined by the polling sequence as shown in Table 9. Table 9. Interrupt Priority-Within-Level Interrupt Source External Interrupt 0 Timer 0 Interrupt External Interrupt 1 Timer 1 Interrupt Serial Channel Timer 2 Interrupt 22 IE0 TF0 IE1 TF1 RI + TI TF2 + EXF2 Priority High ↓ ↓ ↓ ↓ Low Jan. 2003 Ver 1.0 HMS99C5X Series Power Saving Modes Two power down modes are available, the Idle Mode and Power Down Mode. The bits PDE and IDLE of the register PCON select the Power Down mode or the Idle mode, respectively. If the Power Down mode and the Idle mode are set at the same time, the Power Down mode takes precedence. Table 10 gives a general overview of the power saving modes. Table 10. Power Saving Modes Overview Mode Entering Instruction Example Idle mode ORL PCON, #01H - Enabled interrupt - Hardware Reset CPU is gated off CPU status registers maintain their data. Peripherals are active Power-Down mode ORL PCON, #02H Hardware Reset Oscillator is stopped, contents of onchip RAM and SFR’s are maintained (leaving Power Down Mode means redefinition of SFR contents). Leaving by Remarks In the Power Down mode of operation, VCC can be reduced to minimize power consumption. It must be ensured, however, that VCC is not reduced before the Power Down mode is invoked, and that VCC is restored to its normal operating level, before the Power Down mode is terminated. The reset signal that terminates the Power Down mode also restarts the oscillator. The reset should not be activated before VCC is restored to its normal operating level and must be held active long enough to allow the oscillator to restart and stabilize (similar to power-on reset). Jan. 2003 Ver 1.0 23 HMS99C5X Series ELECTRICAL CHARACTERISTICS Absolute Maximum Ratings Ambient temperature under bias (TA)...................................................................................... -40 to + 85 °C Storage temperature (TST)...................................................................................................... -65 to + 150 °C Voltage on VCC pins with respect to ground (VSS) ................................................................. -0.5V to 6.5V Voltage on any pin with respect to ground (VSS) ..........................................................-0.5V to VCC + 0.5V Input current on any pin during overload condition............................................................-10mA to +10mA Absolute sum of all input currents during overload condition...........................................................|100mA| Power dissipation ............................................................................................................................... 200mW Note: Stresses above those listed under "Absolute Maximum Ratings" may cause permanent damage of the device. This is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied. Exposure to absolute maximum rating conditions for longer periods may affect device reliability. During overload conditions (VIN > VCC or VIN < VSS) the Voltage on VCC pins with respect to ground (VSS) must not exceed the values defined by the absolute maximum ratings. 24 Jan. 2003 Ver 1.0 HMS99C5X Series DC Characteristics DC Characteristics for HMS99C51/52 VCC= 5V + 10%, -15%; VSS=0V; TA= -40°C to 85°C Parameter Symbol Limit Values Min. Max. Un it Test Conditions Input low voltage (except EA, RESET) VIL -0.5 0.2VCC - 0.1 V VCC= 5.5V Input low voltage (EA) VIL1 -0.5 0.2VCC - 0.1 V VCC= 5.5V Input low voltage (RESET) VIL2 -0.5 0.2VCC + 0.1 V VCC= 5.5V Input high voltage (except XTAL1, EA, RESET) VIH 0.2VCC + 0.9 VCC + 0.5 V VCC= 4.5V Input high voltage to XTAL1 VIH1 0.7VCC VCC + 0.5 V VCC= 4.5V Input high voltage to EA, RESET VIH2 0.6VCC VCC + 0.5 V VCC= 4.5V Output low voltage (ports 1, 2, 3) VOL - 0.45 V VCC= 5.5V, IOL= 1.6mA 1) Output low voltage (port 0, ALE, PSEN) VOL1 - 0.45 V VCC= 5.5V, IOL= 3.2mA 1) Output high voltage (ports 1, 2, 3) VOH 2.4 0.9VCC - V VCC= 4.5V, IOH= -80µA VCC= 4.5V, IOH= -10µA Output high voltage (port 0 in external bus mode, ALE, PSEN) VOH1 2.4 0.9VCC - V VCC= 4.5V, IOH= -800µA 2) VCC= 4.5V, IOH= -80µA 2) Logic 0 input current (ports 1, 2, 3) IIL -10 -65 µA VIN= 0.45V Logical 1-to-0 transition current (ports 1, 2, 3) ITL -65 -650 µA VIN= 2.0V Input leakage current (port 0, EA) ILI - ±1 µA 0.45 < VIN < VCC CIO - 10 pF fC= 1MHz TA= 25°C Pin capacitance Power supply current: Active mode, 4MHz 3) Idle mode, 4MHz 4) Active mode, 24 MHz 4) Idle mode, 24MHz 4) Active mode, 40 MHz 4) Idle mode, 40 MHz 4) Power Down Mode 4) Jan. 2003 Ver 1.0 ICC ICC ICC ICC ICC ICC IPD - 8 4 25 10 30 15 50 mA A mA mA mA mA mA µA VCC= 5V 4) VCC= 5V 5) VCC= 5V 7) VCC= 5V 8) VCC= 5V 7) VCC= 5V 8) VCC= 5V 6) 25 HMS99C5X Series 1) Capacitive loading on ports 0 and 2 may cause spurious noise pulses to be superimposed on the VOL of ALE and port 3. The noise is due to external bus capacitance discharging into the port 0 and port 2 pins when these pins make 1-to-0 transitions during bus operation. In the worst case (capacitive loading: > 50pF at 3.3V, > 100pF at 5V), the noise pulse on ALE line may exceed 0.8V. In such cases it may be desirable to qualify ALE with a schmitt-trigger, or use an address latch with a schmitt-trigger strobe input. 2) Capacitive loading on ports 0 and 2 may cause the VOH on ALE and PSEN to momentarily fall below the 0.9VCC specification when the address lines are stabilizing. 3) ICC Max at other frequencies is given by: active mode: ICC = 1.27 × fOSC + 5.73 idle mode: ICC = 0.28 × fOSC + 1.45 (except OTP devices) where fOSC is the oscillator frequency in MHz. ICC values are given in mA and measured at VCC = 5V. 4) ICC (active mode) is measured with: XTAL1 driven with tCLCH, tCHCL = 5ns, VIL = VSS + 0.5V, VIH = VCC - 0.5V; XTAL2 = N.C.; EA = Port0 = RESET = VCC; all other pins are disconnected. ICC would be slightly higher if a crystal oscillator is used (appr. 1mA). 5) ICC (Idle mode) is measured with all output pins disconnected and with all peripherals disabled; XTAL1 driven with tCLCH, tCHCL = 5ns, VIL = VSS + 0.5V, VIH = VCC - 0.5V; XTAL2 = N.C.; RESET = EA = VSS; Port0 = VCC; all other pins are disconnected; 6) IPD (Power Down Mode) is measured under following conditions: EA = Port0 = VCC; RESET = VSS; XTAL2 = N.C.; XTAL1 = VSS; all other pins are disconnected. 26 Jan. 2003 Ver 1.0 HMS99C5X Series AC Characteristics Explanation of the AC Symbols Each timing symbol has 5 characters. The first character is always a ‘t’ (stand for time). The other characters, depending on their positions, stand for the name of a signal or the logical status of that signal. The following is a list of all the characters and what they stand for. A: Address C: Clock D: Input Data H: Logic level HIGH I: Instruction (program memory contents) L: Logic level LOW, or ALE P: PSEN Q: Output Data R: RD signal T: Time V: Valid W: WR signal X: No longer a valid logic level Z: Float For example, tAVLL = Time from Address Valid to ALE Low tLLPL = Time from ALE Low to PSEN Low AC Characteristics for HMS99C5X series (12MHz version) VCC= 5V : VCC= 5V + 10%, − 15%; VSS= 0V; TA= -40°C to 85°C (CL for port 0. ALE and PSEN outputs = 100pF; CL for all other outputs = 80pF) Variable clock : Vcc = 5V : 1/tCLCL = 3.5 MHz to 12 MHz External Program Memory Characteristics 12 MHz Oscillator Parameter Symbol Variable Oscillator 1/tCLCL = 3.5 to 12MHz Min. Max. Min. Max. Unit ALE pulse width tLHLL 127 - 2tCLCL-40 - ns Address setup to ALE tAVLL 43 - tCLCL-40 - ns Address hold after ALE tLLAX 30 - tCLCL-53 - ns ALE low to valid instruction in tLLIV - 233 - 4tCLCL-100 ns ALE to PSEN tLLPL 58 - tCLCL-25 - ns PSEN pulse width tPLPH 215 - 3tCLCL-35 - ns PSEN to valid instruction in tPLIV - 150 - 3tCLCL-100 ns Input instruction hold after PSEN tPXIX 0 - 0 - ns Input instruction float after PSEN tPXIZ † - 63 - tCLCL-20 ns 75 - tCLCL-8 - ns † Address valid after PSEN tPXAV Address to valid instruction in tAVIV - 302 - 5tCLCL-115 ns Address float to PSEN tAZPL 0 - 0 - ns † Interfacing the HMS99C5X series to devices with float times up to 75 ns is permissible. This limited bus contention will not cause any damage to port 0 Drivers. Jan. 2003 Ver 1.0 27 HMS99C5X Series AC Characteristics for HMS99C5X series (12MHz) External Data Memory Characteristics 12 MHz Oscillator Parameter Symbol Variable Oscillator 1/tCLCL = 3.5 to 12MHz Min. Max. Min. Max. Unit RD pulse width tRLRH 400 - 6tCLCL-100 - ns WR pulse width tWLWH 400 - 6tCLCL-100 - ns Address hold after ALE tLLAX2 53 - tCLCL-30 - ns RD to valid data in tRLDV - 252 - 5tCLCL-165 ns Data hold after RD tRHDX 0 - 0 - ns Data float after RD tRHDZ - 97 - 2tCLCL-70 ns ALE to valid data in tLLDV - 517 - 8tCLCL-150 ns Address to valid data in tAVDV - 585 - 9tCLCL-165 ns ALE to WR or RD tLLWL 200 300 3tCLCL-50 3tCLCL+50 ns Address valid to WR or RD tAVWL 203 - 4tCLCL-130 - ns WR or RD high to ALE high tWHLH 43 123 tCLCL-40 tCLCL+40 ns Data valid to WR transition tQVWX 33 - tCLCL-50 - ns Data setup before WR tQVWH 433 - 7tCLCL-150 - ns Data hold after WR tWHQX 33 - tCLCL-50 - ns Address float after RD tRLAZ - 0 - 0 ns Advance Information (12MHz) External Clock Drive Parameter Symbol Variable Oscillator (Freq. = 3.5 to 12MHz) Unit Min. Max. Oscillator period (VCC=5V) tCLCL 83.3 285.7 ns High time tCHCX 20 tCLCL - tCLCX ns Low time tCLCX 20 tCLCL - tCHCX ns Rise time tCLCH - 20 ns Fall time tCHCL - 20 ns 28 Jan. 2003 Ver 1.0 HMS99C5X Series AC Characteristics for HMS99C5X series (24MHz version) VCC= 5V + 10%, −15%; VSS= 0V; TA= -40°C to 85°C (CL for port 0. ALE and PSEN outputs = 100pF; CL for all other outputs = 80pF) External Program Memory Characteristics 24 MHz Oscillator Parameter Symbol Variable Oscillator 1/tCLCL = 3.5 to 24MHz Min. Max. Min. Max. Unit ALE pulse width tLHLL 43 - 2tCLCL-40 - ns Address setup to ALE tAVLL 17 - tCLCL-25 - ns Address hold after ALE tLLAX 17 - tCLCL-25 - ns ALE low to valid instruction in tLLIV - 80 - 4tCLCL-87 ns ALE to PSEN tLLPL 22 - tCLCL-20 - ns PSEN pulse width tPLPH 95 - 3tCLCL-30 - ns PSEN to valid instruction in tPLIV - 60 - 3tCLCL-65 ns Input instruction hold after PSEN tPXIX 0 - 0 - ns - 32 - tCLCL-10 ns 37 - tCLCL-5 - ns † Input instruction float after PSEN tPXIZ Address valid after PSEN tPXAV † Address to valid instruction in tAVIV - 148 - 5tCLCL-60 ns Address float to PSEN tAZPL 0 - 0 - ns † Interfacing the HMS99C5X series to devices with float times up to 35 ns is permissible. This limited bus contention will not cause any damage to port 0 Drivers. Jan. 2003 Ver 1.0 29 HMS99C5X Series AC Characteristics for HMS99C5X series (24MHz) External Data Memory Characteristics 24 MHz Oscillator Parameter Symbol Variable Oscillator 1/tCLCL = 3.5 to 24MHz Min. Max. Min. Max. Unit RD pulse width tRLRH 180 - 6tCLCL-70 - ns WR pulse width tWLWH 180 - 6tCLCL-70 - ns Address hold after ALE tLLAX2 15 - tCLCL-27 - ns RD to valid data in tRLDV - 118 - 5tCLCL-90 ns Data hold after RD tRHDX 0 - 0 - ns Data float after RD tRHDZ - 63 - 2tCLCL-20 ns ALE to valid data in tLLDV - 200 - 8tCLCL-133 ns Address to valid data in tAVDV - 220 - 9tCLCL-155 ns ALE to WR or RD tLLWL 75 175 3tCLCL-50 3tCLCL+50 ns Address valid to WR or RD tAVWL 67 - 4tCLCL-97 - ns WR or RD high to ALE high tWHLH 17 67 tCLCL-25 tCLCL+25 ns Data valid to WR transition tQVWX 5 - tCLCL-37 - ns Data setup before WR tQVWH 170 - 7tCLCL-122 - ns Data hold after WR tWHQX 15 - tCLCL-27 - ns Address float after RD tRLAZ - 0 - 0 ns Advance Information (24MHz) External Clock Drive Parameter Symbol Variable Oscillator (Freq. = 3.5 to 24MHz) Unit Min. Max. Oscillator period tCLCL 41.7 285.7 ns High time tCHCX 12 tCLCL - tCLCX ns Low time tCLCX 12 tCLCL - tCHCX ns Rise time tCLCH - 12 ns Fall time tCHCL - 12 ns 30 Jan. 2003 Ver 1.0 HMS99C5X Series AC Characteristics for HMS99C5X series (40MHz version) VCC= 5V + 10%, − 15%; VSS= 0V; TA= -40°C to 85°C (CL for port 0. ALE and PSEN outputs = 100pF; CL for all other outputs = 80pF) External Program Memory Characteristics 40 MHz Oscillator Parameter Symbol Variable Oscillator 1/tCLCL = 3.5 to 40MHz Min. Max. Min. Max. Unit ALE pulse width tLHLL 40 - 2tCLCL−20 - ns Address setup to ALE tAVLL 10 - tCLCL−20 - ns Address hold after ALE tLLAX 10 - tCLCL−20 - ns ALE low to valid instruction in tLLIV - 56 - 4tCLCL−65 ns ALE to PSEN tLLPL 15 - tCLCL−15 - ns PSEN pulse width tPLPH 80 - 3tCLCL−20 - ns PSEN to valid instruction in tPLIV - 35 - 3tCLCL−55 ns Input instruction hold after PSEN tPXIX 0 - 0 - ns - 20 - tCLCL−10 ns 25 - tCLCL−5 - ns † Input instruction float after PSEN tPXIZ Address valid after PSEN tPXAV † Address to valid instruction in tAVIV - 91 - 5tCLCL−60 ns Address float to PSEN tAZPL 0 - 0 - ns † Interfacing the HMS99C5X series to devices with float times up to 20 ns is permissible. This limited bus contention will not cause any damage to port 0 Drivers. Jan. 2003 Ver 1.0 31 HMS99C5X Series AC Characteristics for HMS99C5X series (40MHz) External Data Memory Characteristics at 40 MHz Clock Parameter Symbol Variable Clock 1/tCLCL = 3.5 to 40MHz Min. Max. Min. Max. Unit RD pulse width tRLRH 132 - 6tCLCL-50 - ns WR pulse width tWLWH 132 - 6tCLCL-50 - ns Address hold after ALE tLLAX2 10 - tCLCL-20 - ns RD to valid data in tRLDV - 81 - 5tCLCL-70 ns Data hold after RD tRHDX 0 - 0 - ns Data float after RD tRHDZ - 46 - 2tCLCL-15 ns ALE to valid data in tLLDV - 153 - 8tCLCL-90 ns Address to valid data in tAVDV - 183 - 9tCLCL-90 ns ALE to WR or RD tLLWL 71 111 3tCLCL-20 3tCLCL+20 ns Address valid to WR or RD tAVWL 66 - 4tCLCL-55 - ns WR or RD high to ALE high tWHLH 10 40 tCLCL-20 tCLCL+20 ns Data valid to WR transition tQVWX 5 - tCLCL-25 - ns Data setup before WR tQVWH 142 - 7tCLCL-70 - ns Data hold after WR tWHQX 10 - tCLCL-20 - ns Address float after RD tRLAZ - 0 - 0 ns Advance Information (40MHz) External Clock Drive Parameter Symbol Variable Oscillator (Freq. = 3.5 to 40MHz) Unit Min. Max. Oscillator period tCLCL 30.3 285.7 ns High time tCHCX 11.5 tCLCL - tCLCX ns Low time tCLCX 11.5 tCLCL - tCHCX ns Rise time tCLCH - 5 ns Fall time tCHCL - 5 ns 32 Jan. 2003 Ver 1.0 HMS99C5X Series tLHLL ALE tLLPL tAVLL tPLPH tLLIV tPLIV PSEN tPXAV tPXIZ tPXIX tAZPL tLLAX PORT 0 INSTR. IN A0-A7 A0-A7 tAVIV PORT 2 A8-A15 A8-A15 Figure 6. External Program Memory Read Cycle Jan. 2003 Ver 1.0 33 HMS99C5X Series ALE tLHLL tWHLH PSEN tLLDV tLLWL tRLRH RD tAVLL tRHDZ tRLDV tLLAX2 tRHDX tRLAZ A0-A7 from RI or DPL PORT 0 DATA IN A0-A7 from PCL INSTR. IN tAVWL tAVDV PORT 2 P2.0-P2.7 or A8-A15 from DPH A8-A15 from PCH Figure 7. External Data Memory Read Cycle ALE tLHLL tWHLH PSEN tLLWL tWLWH WR tAVLL PORT 0 tQVWX tLLAX2 A0-A7 from RI or DPL tWHQX tQVWH DATA OUT A0-A7 from PCL INSTR. IN tAVWL PORT 2 P2.0-P2.7 or A8-A15 from DPH A8-A15 from PCH Figure 8. External Data Memory Write Cycle 34 Jan. 2003 Ver 1.0 HMS99C5X Series VCC−0.5V 0.2VCC + 0.9 Test Points 0.2VCC − 0.1 0.45V AC Inputs during testing are driven at VCC−0.5V for a logic ‘1’ and 0.45V for a logic ‘0’. Timing measurements are made a VIHmin for a logic ‘1’ and VILmax for a logic ‘0’. Figure 9. AC Testing: Input, Output Waveforms VLOAD + 0.1 VOH − 0.1 Timing Reference Points VLOAD VLOAD − 0.1 0.2VCC − 0.1 VOL + 0.1 For timing purposes a port pin is no longer floating when a 100mV change from load voltage occurs and begins to float when a 100mV change from the loaded VOH / VOL level occurs. IOL / IOH ≥ 20mA. Figure 10. Float Waveforms tCLCL VCC−0.5V 0.45V 0.7 VCC 0.2 VCC −0.1 tCHCX tCHCL tCLCX tCLCH Figure 11. External Clock Cycle Jan. 2003 Ver 1.0 35 HMS99C5X Series OSCILLATOR CIRCUIT CRYSTAL OSCILLATOR MODE C2 DRIVING FROM EXTERNAL SOURCE N.C. XTAL2 P-LCC-44/Pin 20 P-DIP-40/Pin 18 M-QFP-44/Pin 14 C1 XTAL1 P-LCC-44/Pin 21 P-DIP-40/Pin 19 M-QFP-44/Pin 15 External Oscillator Signal XTAL2 P-LCC-44/Pin 20 P-DIP-40/Pin 18 M-QFP-44/Pin 14 XTAL1 P-LCC-44/Pin 21 P-DIP-40/Pin 19 M-QFP-44/Pin 15 C1, C2 = 30pF ±10pF for Crystals For Ceramic Resonators, contact resonator manufacturer. Figure 12. Recommended Oscillator Circuits Oscillation circuit is designed to be used either with a ceramic resonator or crystal oscillator. Since each crystal and ceramic resonator have their own characteristics, the user should consult the crystal manufacturer for appropriate values of external components. 36 Jan. 2003 Ver 1.0 HMS99C5X Series Plastic Package P-LCC-44 (Plastic Leaded Chip-Carrier) 44PLCC UNIT: INCH 0.695 0.685 0.012 0.0075 0.021 0.013 0.032 0.026 0.656 0.650 0.695 0.685 0.050 BSC 0.630 0.590 min. 0.020 0.656 0.650 0.120 0.090 0.180 0.165 Jan. 2003 Ver 1.0 37 HMS99C5X Series Plastic Package P-DIP-40 (Plastic Dual in-Line Package) 40DIP UNIT: INCH 0.065 0.045 0.100 BSC 0.140 0.120 0.022 0.015 38 0.600 BSC min. 0.015 0.200 max. 2.075 2.045 0.550 0.530 0-15° 0.012 0.008 Jan. 2003 Ver 1.0 HMS99C5X Series Plastic Package P-MPQF-44 (Plastic Metric Quad Flat Package) 44MQFP 13.45 12.95 UNIT: MM 0-7° 0.25 0.10 SEE DETAIL "A" 2.35 max. 0.45 0.30 0.80 BSC 0.23 0.13 2.10 1.95 10.10 9.90 13.45 12.95 10.10 9.90 1.03 0.73 1.60 REF DETAIL "A" Jan. 2003 Ver 1.0 39