C505A C505CA ht Addendum to C505/C505C User's Manual 09.97 tp :/ Se /ww m w ic .s on ie du me ct ns or .d / e/ 8-Bit CMOS Microcontroller General Information C515C Edition 09.97 This edition was realized using the software system FrameMaker. Published by Siemens AG, Bereich Halbleiter, MarketingKommunikation, Balanstraße 73, 81541 München © Siemens AG 97. All Rights Reserved. Attention please! As far as patents or other rights of third parties are concerned, liability is only assumed for components, not for applications, processes and circuits implemented within components or assemblies. The information describes the type of component and shall not be considered as assured characteristics. Terms of delivery and rights to change design reserved. For questions on technology, delivery and prices please contact the Semiconductor Group Offices in Germany or the Siemens Companies and Representatives worldwide (see address list). Due to technical requirements components may contain dangerous substances. For information on the types in question please contact your nearest Siemens Office, Semiconductor Group. Siemens AG is an approved CECC manufacturer. Packing Please use the recycling operators known to you. We can also help you – get in touch with your nearest sales office. By agreement we will take packing material back, if it is sorted. You must bear the costs of transport. For packing material that is returned to us unsorted or which we are not obliged to accept, we shall have to invoice you for any costs incurred. Components used in life-support devices or systems must be expressly authorized for such purpose! Critical components1 of the Semiconductor Group of Siemens AG, may only be used in life-support devices or systems2 with the express written approval of the Semiconductor Group of Siemens AG. 1 A critical component is a component used in a life-support device or system whose failure can reasonably be expected to cause the failure of that life-support device or system, or to affect its safety or effectiveness of that device or system. 2 Life support devices or systems are intended (a) to be implanted in the human body, or (b) to support and/or maintain and sustain human life. If they fail, it is reasonable to assume that the health of the user may be endangered. Semiconductor Group I-2 General Information C505A Contents Page 1 1.1 1.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-1 Pin Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-4 Pin Definitions and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-5 2 2.1 2.2 2.3 2.4 Memory Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1 Program Memory, "Code Space" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2 Data Memory, "Data Space" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2 General Purpose Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2 Special Function Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3 3 3.1 3.2 3.3 3.4 3.5 3.5.1 A/D Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1 A/D Converter Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1 A/D Converter Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-3 A/D Converter Clock Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-7 A/D Conversion Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-8 A/D Converter Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-12 A/D Converter Analog Input Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-13 4 4.1 4.2 4.3 4.4 4.4.1 4.4.2 4.5 4.6 4.6.1 4.7 OTP Memory Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-1 Programming Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-1 Pin Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-2 Pin Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-3 Programming Mode Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5 Basic Programming Mode Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5 OTP Memory Access Mode Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6 Program / Read OTP Memory Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7 Lock Bits Programming / Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-9 Access of Version Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-11 OTP Verification Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-12 5 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.7.1 5.7.2 5.8 Device Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-1 Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-1 DC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-2 A/D Converter Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-5 AC Characteristics (12 MHz, 0.5 Duty Cycle) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-7 AC Characteristics (16 MHz, 0.4 to 0.6 Duty Cycle) . . . . . . . . . . . . . . . . . . . . . . . . . .5-9 AC Characteristics (20 MHz, 0.5 Duty Cycle) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-12 OTP Memory Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17 Programming Mode Timing Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17 OTP Verification Mode Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21 Package Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23 6 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-1 Semiconductor Group I-1 Introduction C505A 1 Introduction The C505A is an enhanced, upgraded version of the C505-2R eight bit microcontroller and incorporates more on-chip RAM, a 10-bit A/D Converter and 32K bytes of on-chip OTP memory. With a maximum external clock rate of 20 MHz, the C505A has an instruction cycle time of 300 ns. With the C505A-4E fast OTP programming cycles are achieved (1 byte in 100 µsec). Also several levels of OTP memory protection can be selected. The basic functionality of the C505A-4E as a microcontroller is identical to the C505A-L (romless part) functionality. Therefore, the programmable C505A-4E typically can be used for prototype system design. The C505A-4E basically operates with internal OTP and/or external program memory. The C505AL is identical to the C505A-4E, except that it lacks the on-chip OTP memory. Therefore, in this documentation the term C505A refers to all versions within this specification unless otherwise noted. The C505CA-4E and C505CA-L, are identical to the C505A-4E and the C505A-L respectively, except that they have, in addition, the full CAN interface. The term C505A refers to all the above four versions within this documentation unless otherwise noted. On-Chip Emulation Support Module Figure 1-1 shows the different functional units of the C505A and Figure 1-2 shows the simplified logic symbol of the C505A. Oscillator Watchdog RAM 256 × 8 XRAM 1K×8 10-bit ADC Timer 2 Watchdog Timer I/O Port 1 8 analog inputs / 8 digit. I/O T0 CPU Full-CAN Controller Port 0 T1 8-bit USART Port 2 I/O Port 3 I/O Port 4 I/O (2-bit I/O port) 8 datapointers OTP 32K×8 Enhancements over C505/C505C. C505CA only. Figure 1-1 C505A Functional Units Note: This specification describes only the improved functionality over C505/C505C. Please refer to the C505/C505C User’s Manual for further details. Semiconductor Group 1-1 Introduction C505A Listed below is a summary of the main features of the C505A family: • Fully compatible to standard 8051 microcontroller • Superset of the 8051 architecture with 8 datapointers • Up to 20 MHz operating frequency – 375 ns instruction cycle time @ 16 MHz – 300 ns instruction cycle time @ 20 MHz (50 % duty cycle) • 32K byte on-chip OTP memory – C505A-4E : programmable OTP versions – C505A-L : without on-chip program memory – alternatively up to 64 K bytes of external program memory • 256 byte on-chip RAM • 1 K byte on-chip XRAM • Five ports: 32 + 2 digital I/O lines(Port 1 with mixed analog/digital I/O capability) • Three 16-bit timers/counters – Timer 0 / 1 (C501 compatible) – Timer 2 with 4 channels for 16-bit capture/compare operation • Full CAN Module (C505CA only) – 256 register/data bytes located in external data memory area – 1 MBaud CAN baudrate when operating frequency is equal to or above 8 MHz – internal CAN clock prescaler when input frequency is over 10 MHz • Full duplex serial interface with programmable baudrate generator (USART) • 10-bit A/D Converter with 8 multiplexed inputs – Built-in self calibration • Twelve interrupt sources with four priority levels • On-chip emulation support logic –Enhanced Hooks Technology TM 1) • Programmable 15-bit Watchdog Timer • Oscillator Watchdog • Fast Power On Reset • Power Saving Modes – Slow-down mode – Idle mode (can be combined with slow-down mode) – Software power-down mode with wake up capability through P3.2/INT0 or P4.1/RXDC pin • P-MQFP-44 package • Pin configuration is compatible to C501, C504, C511/C513-family, C505, C505C • Temperature ranges: SAB-C505A versions TA = 0 to 70 °C SAF-C505A versions TA = – 40 to 85°C SAH-C505A versions TA = – 40 to 110°C (max. operating frequency: TBD) SAK-C505A versions TA = –40 to 125°C (max. operating frequency: 12 MHz with 50 % duty cycle) 1 “Enhanced Hooks Technology“ is a trademark and patent of Metalink Corporation licensed to Siemens. Semiconductor Group 1-2 Introduction C505A VCC VSS VAREF Port 0 8-bit Digital I/O VAGND XTAL1 Port 1 8-bit Digital I/O / 8-bit Analog Inputs XTAL2 RESET C505A C505CA Port 2 8-bit Digital I/O EA ALE Port 3 8-bit Digital I/O PSEN Port 4 2-bit Digital I/O RXDC TXDC C505CA only. Figure 1-2 Logic Symbol Semiconductor Group 1-3 Introduction C505A 1.1 Pin Configuration P0.4 / AD4 P0.5 / AD5 P0.6 / AD6 P0.7 / AD7 EA P4.1 / RXDC ALE PSEN P2.7 / A15 P2.6 / A14 P2.5 / A13 This section shows the pin configuration of the C505A in the P-MQFP-44 package. P0.3 / AD3 P0.2 / AD2 P0.1 / AD1 P0.0 / AD0 VAREF VAGND P1.0 / AN0 / INT3 / CC0 P1.1 / AN1 / INT4 / CC1 P1.2 / AN2 / INT5 / CC2 P1.3 / AN3 / INT6 / CC3 P1.4 / AN4 33 32 31 30 29 28 27 26 25 24 23 34 22 35 21 36 20 37 19 38 C505A C505CA 39 40 18 17 16 41 15 42 14 43 13 44 2 3 4 5 6 7 8 12 9 10 11 P1.5 / AN5 / T2EX P1.6 / AN6 / CLKOUT P1.7 / AN7 / T2 RESET P3.0 / RxD P4.0 / TXDC P3.1 / TxD P3.2 / INT0 P3.3 / INT1 P3.4 / T0 P3.5 / T1 1 This pin functionality is available in the C505CA only. Figure 1-3 Pin Configuration (Top View) Semiconductor Group 1-4 P2.4 / A12 P2.3 / A11 P2.2 / A10 P2.1 / A9 P2.0 / A8 VCC VSS XTAL1 XTAL2 P3.7 / RD P3.6 / WR Introduction C505A 1.2 Pin Definitions and Functions This section describes all external signals of the C505A with its function. Table 1-1 : Pin Definitions and Functions Symbol P1.0-P1.7 Pin Number 40-44,1-3 40 41 42 43 44 1 2 3 I/O *) Function I/O Port 1 is an 8-bit quasi-bidirectional port with internal pull-up arrangement. Port 1 pins can be used for digital input/output or as analog inputs of the A/D converter. Port 1 pins that have 1’s written to them are pulled high by internal pull-up transistors and in that state can be used as inputs. As inputs, port 1 pins being externally pulled low will source current (I IL , in the DC characteristics) because of the internal pullup transistors. Port 1 pins are assigned to be used as analog inputs via the register P1ANA. As secondary digital functions, port 1 contains the interrupt, timer, clock, capture and compare pins. The output latch corresponding to a secondary function must be programmed to a one (1) for that function to operate (except for compare functions). The secondary functions are assigned to the pins of port 1 as follows: P1.0 / AN0 / INT3 / CC0 Analog input channel 0 interrupt 3 input / capture/compare channel 0 I/O P1.1 / AN1 / INT4 / CC1 Analog input channel 1/ interrupt 4 input / capture/compare channel 1 I/O P1.2 / AN2 / INT5 / CC2 Analog input channel 2 / interrupt 5 input / capture/compare channel 2 I/O P1.3 / AN3 / INT6 / CC3 Analog input channel 3 interrupt 6 input / capture/compare channel 4 I/O P1.4 / AN4 Analog input channel 4 P1.5 / AN5 / T2EX Analog input channel 5 / Timer 2 external reload / trigger input P1.6 / AN6 / CLKOUT Analog input channel 6 / system clock output P1.7 / AN7 / T2 Analog input channel 7 / counter 2 input *) I = Input O = Output Semiconductor Group 1-5 Introduction C505A Table 1-1 : Pin Definitions and Functions (cont’d) Symbol Pin Number I/O *) Function RESET 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 V SS permits power-on reset using only an external capacitor to VCC. P3.0-P3.7 5, 7-13 I/O Port 3 is an 8-bit quasi-bidirectional port with internal pull-up arrangement. Port 3 pins that have 1’s written to them are pulled high by the internal pull-up transistors and in that state can be used as inputs. As inputs, port 3 pins being externally pulled low will source current (I IL , in the DC characteristics) because of the internal pullup transistors. The output latch corresponding to a secondary function must be programmed to a one (1) for that function to operate (except for TxD and WR). The secondary functions are assigned to the pins of port 3 as follows: P3.0 / RxD Receiver data input (asynch.) or data input/output (synch.) of serial interface P3.1 / TxD Transmitter data output (asynch.) or clock output (synch.) of serial interface P3.2 / INT0 External interrupt 0 input / timer 0 gate control input P3.3 / INT1 External interrupt 1 input / timer 1 gate control input P3.4 / T0 Timer 0 counter input P3.5 / T1 Timer 1 counter input P3.6 / WR WR control output; latches the data byte from port 0 into the external data memory P3.7 / RD RD control output; enables the external data memory 5 7 8 9 10 11 12 13 *) I = Input O = Output Semiconductor Group 1-6 Introduction C505A Table 1-1 : Pin Definitions and Functions (cont’d) Symbol Pin Number I/O *) Function P4.0 P4.1 6 28 I/O I/O Port 4 is a 2-bit quasi-bidirectional port with internal pull-up arrangement. Port 4 pins that have 1’s written to them are pulled high by the internal pull-up transistors and in that state can be used as inputs. As inputs, port 4 pins being externally pulled low will source current (I IL , in the DC characteristics) because of the internal pullup transistors. The output latch corresponding to the secondary function RXDC must be programmed to a one (1) for that function to operate. The secondary functions are assigned to the two pins of port 4 as follows (C505CA only) : P4.0 / TXDC Transmitter output of CAN controller P4.1 / RXDC Receiver input of CAN controller XTAL2 14 O XTAL2 Output of the inverting oscillator amplifier. XTAL1 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. To operate above a frequency of 16 MHz, a duty cycle of the etxernal clock signal of 50 % should be maintained. Minimum and maximum high and low times as well as rise/ fall times specified in the AC characteristics must be observed. *) I = Input O = Output Semiconductor Group 1-7 Introduction C505A Table 1-1 : Pin Definitions and Functions (cont’d) Symbol Pin Number I/O *) Function P2.0-P2.7 18-25 I/O Port 2 is a an 8-bit quasi-bidirectional I/O port with internal pullup resistors. Port 2 pins that have 1’s written to them are pulled high by the internal pullup resistors, and in that state can be used as inputs. As inputs, port 2 pins being externally pulled low will source current (I IL , in the DC characteristics) because of the internal pullup resistors. 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 pullup transistors when issuing 1s. During accesses to external data memory that use 8-bit addresses (MOVX @Ri), port 2 issues the contents of the P2 special function register and uses only the internal pullup resistors. PSEN 26 O The Program Store Enable output is a control signal that enables the external program memory to the bus during external fetch operations. It is activated every three oscillator periods except during external data memory accesses. Remains high during internal program execution. This pin should not be driven during reset operation. ALE 27 O The Address Latch Enable output is used for latching the low-byte of the address into external memory during normal operation. It is activated every three oscillator periods except during an external data memory access. When instructions are executed from internal OTP (EA=1) the ALE generation can be disabled by bit EALE in SFR SYSCON. ALE should not be driven during reset operation. *) I = Input O = Output Semiconductor Group 1-8 Introduction C505A Table 1-1 : Pin Definitions and Functions (cont’d) Symbol Pin Number I/O *) Function EA 29 I External Access Enable When held at high level, instructions are fetched from the internal OTP memory when the PC is less than 8000H. When held at low level, the C505A/C505CA fetches all instructions from external program memory. EA should not be driven during reset operation. For the C505A-L and the C505CA-L this pin must be tied low. P0.0-P0.7 37-30 I/O Port 0 is an 8-bit open-drain bidirectional I/O port. Port 0 pins that have 1’s written to them float, and in that state can be used as high-impendance inputs. Port 0 is also the multiplexed low-order address and data bus during accesses to external program or data memory. In this application it uses strong internal pullup transistors when issuing 1’s. VAREF 38 – Reference voltage for the A/D converter. VAGND 39 – Reference ground for the A/D converter. VSS 16 – Ground (0V) VCC 17 – Power Supply (+5V) *) I = Input O = Output Semiconductor Group 1-9 Memory Organization C505A 2 Memory Organization The C505A CPU manipulates operands in the following four address spaces: – – – – – – up to 64 Kbytes of program memory (32K on-chip OTP memory for C505A-4E) up to 64 Kbytes of external data memory 256 bytes of internal data memory 1 Kbytes of internal XRAM data memory 256 bytes CAN controller registers / data memory (C505CA only) a 128 byte special function register area Figure 2-1 illustrates the memory address spaces of the C505A. Alternatively Internal XRAM FFFFH Ext. Data Memory ext. 8000H 7FFFH int. (EA = 1) FFFFH see table below FC00H for detailed Data memory not used partitioning Int. CAN F7FFH Contr. (256 Byte) F700H F6FFH indirect direct addr. addr. (1 K Byte) Internal RAM Ext. Data Memory ext. (EA = 0) 0000H "Code Space" 0000H "Data Space" FFH 80H Internal RAM Device CAN Area Unused Area Internal XRAM C505A - C505CA F700H-F7FFH F700H-FBFFH F800H-FBFFH FC00H-FFFFH FC00H−FFFFH Semiconductor Group 2-1 7FH 00H "internal Data Space" Internal “Data Space” F700H-F7FFH : Figure 2-1 C505A Memory Map Special Function Regs. FFH 80H Memory Organization C505A 2.1 Program Memory, "Code Space" The C505A-4E has 32 Kbytes of on-chip OTP program memory which can be externally expanded up to 64 Kbytes. If the EA pin is held high, the C505A-4E executes program code out of the OTP memory unless the program counter address exceeds 7FFFH. Address locations 8000H through FFFFH are then fetched from the external program memory. If the EA pin is held low, the C505A fetches all instructions from the external program memory. 2.2 Data Memory, "Data Space" The data memory address space consists of an internal and an external memory space. The internal data memory is divided into three physically separate and distinct blocks : the lower 128 bytes of RAM, the upper 128 bytes of RAM, and the 128 byte special function register (SFR) area. While the upper 128 bytes of data memory and the SFR area share the same address locations, they are accessed through different addressing modes. The lower 128 bytes of data memory can be accessed through direct or register indirect addressing; the upper 128 bytes of RAM can be accessed through register indirect addressing; the special function registers are accessible through direct addressing. Four 8-register banks, each bank consisting of eight 8-bit general-purpose registers, occupy locations 0 through 1FH in the lower RAM area. The next 16 bytes, locations 20H through 2FH, contain 128 directly addressable bit locations. The stack can be located anywhere in the internal RAM area, and the stack depth can be expanded up to 256 bytes. The external data memory can be expanded up to 64 Kbyte and can be accessed by instructions that use a 16-bit or an 8-bit address. The internal CAN controller (in C505CA only) and the internal 1 Kbyte XRAM are located in the external memory address area at addresses F700H to F7FFH and FC00H to FFFFH respectively. The CAN controller registers and internal XRAM can therefore be accessed using MOVX instructions with addresses pointing to the respective address areas. 2.3 General Purpose Registers The lower 32 locations of the internal RAM are assigned to four banks of eight general purpose registers (GPRs) each. Only one of these banks may be enabled at a time. Two bits in the program status word, RS0 (PSW.3) and RS1 (PSW.4), select the active register bank (see description of the PSW in chapter 2). This allows fast context switching, which is useful when entering subroutines or interrupt service routines. The 8 general purpose registers of the selected register bank may be accessed by register addressing. With register addressing the instruction op code indicates which register is to be used. For indirect addressing R0 and R1 are used as pointer or index register to address internal or external memory (e.g. MOV @R0). Reset initializes the stack pointer to location 07H and increments it once to start from location 08H which is also the first register (R0) of register bank 1. Thus, if one is going to use more than one register bank, the SP should be initialized to a different location of the RAM which is not used for data storage. Semiconductor Group 2-2 Memory Organization C505A 2.4 Special Function Registers The registers, except the program counter and the four general purpose register banks, reside in the special function register area. The special function register area consists of two portions : the standard special function register area and the mapped special function register area. One special function register of the C505A (PCON1) is located in the mapped special function register area. For accessing the mapped special function register area, bit RMAP in special function register SYSCON must be set. All other special function registers are located in the standard special function register area which is accessed when RMAP is cleared (“0“). In the C505CA, the registers and data locations of the CAN controller (CAN-SFRs) are located in the external data memory area at addresses F700 H to F7FFH. This is compatible to the C505C and details about the access of these registers is described in the C505C User’s Manual. Special Function Register SYSCON (Address B1H) Reset Value : XX100X01B (C505CA only) Reset Value : XX100001B Bit No. MSB 7 B1H – 6 5 – EALE 4 3 LSB 0 2 1 CSWO XMAP1 XMAP0 RMAP CMOD 1) SYSCON The functions of the shaded bits are not described here. 1) This bit is available in the C505CA only. Bit Function CSWO CAN Controller switch-off bit CPWD = 0 : CAN Controller is enabled (default after reset). CPWD = 1 : CAN Controller is switched off. This function is an enhancement over the C505C-2R. – Reserved bits for future use. Read by CPU returns undefined values. As long as bit RMAP is set, mapped special function register area can be accessed. This bit is not cleared by hardware automatically. Thus, when non-mapped/mapped registers are to be accessed, the bit RMAP must be cleared/set respectively by software. All SFRs with addresses where address bits 0-2 are 0 (e.g. 80H, 88H, 90H, 98H, ..., F8H, FFH) are bitaddressable. The 52 special function registers (SFRs) in the standard and mapped SFR area include pointers and registers that provide an interface between the CPU and the other on-chip peripherals. The SFRs of the C505A are listed in table 2-1 and table 2-2. In table 2-1 they are organized in groups which refer to the functional blocks of the C505A. The CAN-SFRs (applicable to the C505CA only) are also included in table 2-1. Table 2-2 illustrates the contents of the SFRs in numeric order of their addresses. Table 2-3 list the CAN-SFRs in numeric order of their addresses. Semiconductor Group 2-3 Memory Organization C505A Table 2-1 Special Function Registers - Functional Blocks Block Symbol Name Address Contents after Reset CPU ACC B DPH DPL DPSEL PSW SP SYSCON2) Accumulator B-Register Data Pointer, High Byte Data Pointer, Low Byte Data Pointer Select Register Program Status Word Register Stack Pointer System Control Register E0H 1) F0H 1) 83H 82H 92H D0H 1) 81H B1H VR0 4) VR1 4) VR2 4) Version Register 0 Version Register 1 Version Register 2 FCH FDH FEH 00H 00H 00H 00H XXXXX000B 3) 00H 07H XX100X01B 3) 6) XX100101B 3) 7) C5H 05H A/D Converter Control Register 0 A/D Converter Control Register 1 A/D Converter High Byte Data Register A/D Converter Low Byte Data Register Port 1 Analog Input Selection Register D8H 1) DCH D9H DAH 90H 00X00000B 3) 01XXX000B 3) 00H 00XXXXXXB 3) FFH A8H 1) B8H 1) A9H B9H 88H 1) C8H 1) 98H 1) C0H 1) 00H 00H 00H XX000000B 3) 00H 00X00000B 00H 00H A/DADCON0 2) Converter ADCON1 ADDATH ADDATL P1ANA 2) 4) Interrupt System IEN0 2) IEN1 2) IP0 2) IP1 TCON 2) T2CON 2) SCON 2) IRCON Interrupt Enable Register 0 Interrupt Enable Register 1 Interrupt Priority Register 0 Interrupt Priority Register 1 Timer Control Register Timer 2 Control Register Serial Channel Control Register Interrupt Request Control Register XRAM XPAGE SYSCON2) Page Address Register for Extended on-chip 91H XRAM and CAN Controller System Control Register B1H P0 P1 P1ANA 2) 4) P2 P3 P4 Port 0 Port 1 Port 1 Analog Input Selection Register Port 2 Port 3 Port 4 Ports 80H 1) 90H 1) 90H 1) A0H 1) B0H 1) E8H 1) 5) 00H XX100X01B 3) 6) XX100101B 3 7) FFH FFH FFH FFH FFH XXXXXX11B 1) Bit-addressable special function registers 2) This special function register is listed repeatedly since some bits of it also belong to other functional blocks. 3) “X“ means that the value is undefined and the location is reserved 4) This SFR is a mapped SFR. For accessing this SFR, bit RMAP in SFR SYSCON must be set. 5) The content of this SFR varies with the actual step of the C505A (eg. 11H for the first step) 6) C505A only 7) C505CA only Semiconductor Group 2-4 Memory Organization C505A Table 2-1 Special Function Registers - Functional Blocks (cont’d) Block Symbol Name Address Contents after Reset Serial Channel ADCON0 2) PCON 2) SBUF SCON SRELL SRELH A/D Converter Control Register 0 Power Control Register Serial Channel Buffer Register Serial Channel Control Register Serial Channel Reload Register, low byte Serial Channel Reload Register, high byte D8H 1) 87H 99H 98H 1) AAH BAH 00X00000B 3) 00H XXH 3) 00H D9H XXXXXX11B 3) 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 Compare/ Capture Unit / Timer 2 CCEN CCH1 CCH2 CCH3 CCL1 CCL2 CCL3 CRCH CRCL TH2 TL2 T2CON IEN0 2) IEN1 2) Comp./Capture Enable Reg. Comp./Capture Reg. 1, High Byte Comp./Capture Reg. 2, High Byte Comp./Capture Reg. 3, High Byte Comp./Capture Reg. 1, Low Byte Comp./Capture Reg. 2, Low Byte Comp./Capture Reg. 3, Low Byte Reload Register High Byte Reload Register Low Byte Timer 2, High Byte Timer 2, Low Byte Timer 2 Control Register Interrupt Enable Register 0 Interrupt Enable Register 1 C1H C3H C5H C7H C2H C4H C6H CBH CAH CDH CCH C8H 1) A8H 1) B8H 1) 00H 3) 00H 00H 00H 00H 00H 00H 00H 00H 00H 00H 00X00000B 3) 00H 00H Watchdog Timer Reload Register Interrupt Enable Register 0 Interrupt Enable Register 1 Interrupt Priority Register 0 86H A8H 1) B8H 1) A9H 00H 00H 00H 00H Power Control Register Power Control Register 1 87H 88H 1) 00H 0XX0XXXXB 3) Watchdog WDTREL IEN0 2) IEN1 2) IP0 2) Power Save Modes PCON 2) PCON1 4) 1) Bit-addressable special function registers 2) This special function register is listed repeatedly since some bits of it also belong to other functional blocks. 3) “X“ means that the value is undefined and the location is reserved 4) SFR is located in the mapped SFR area. For accessing this SFR, bit RMAP in SFR SYSCON must be set. Semiconductor Group 2-5 Memory Organization C505A Table 2-1 Special Function Registers - Functional Blocks (cont’d) Block Symbol CR CAN Controller SR IR (C505CA BTR0 BTR1 only) GMS0 GMS1 UGML0 UGML1 LGML0 LGML1 UMLM0 UMLM1 LMLM0 LMLM1 MCR0 MCR1 UAR0 UAR1 LAR0 LAR1 MCFG DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 Name Address Contents after Reset Control Register Status Register Interrupt Register Bit Timing Register Low Bit Timing Register High Global Mask Short Register Low Global Mask Short Register High Upper Global Mask Long Register Low Upper Global Mask Long Register High Lower Global Mask Long Register Low Lower Global Mask Long Register High Upper Mask of Last Message Register Low Upper Mask of Last Message Register High Lower Mask of Last Message Register Low Lower Mask of Last Message Register High Message Object Registers : Message Control Register Low Message Control Register High Upper Arbitration Register Low Upper Arbitration Register High Lower Arbitration Register Low Lower Arbitration Register High Message Configuration Register Message Data Byte 0 Message Data Byte 1 Message Data Byte 2 Message Data Byte 3 Message Data Byte 4 Message Data Byte 5 Message Data Byte 6 Message Data Byte 7 F700H F701H F702H F704H F705H F706H F707H F708H F709H F70AH F70BH F70CH F70DH F70EH F70FH 01H XXH 3) XXH 3) UUH 3) F7n0H 5) F7n1H 5) F7n2H 5) F7n3H 5) F7n4H 5) F7n5H 5) F7n6H 5) F7n7H 5) F7n8H 5) F7n9H 5) F7nAH 5) F7nBH 5) F7nCH 5) F7nDH 5) F7nEH 5) UUH 3) UUH 3) UUH 3) UUH 3) UUH 3) UUUUU000B 3) UUUUUU00B3) XXH 3) XXH 3) XXH 3) XXH 3) XXH 3) XXH 3) XXH 3) XXH 3) 0UUUUUUUB 3) UUH 3) UUU11111B 3) UUH 3) UUH 3) UUH 3) UUUUU000B 3) UUH 3) UUH 3) UUH 3) UUUUU000B 3) 1) Bit-addressable special function registers 2) This special function register is listed repeatedly since some bits of it also belong to other functional blocks. 3) “X“ means that the value is undefined and the location is reserved. “U“ means that the value is unchanged by a reset operation. “U“ values are undefined (as “X“) after a power-on reset operation 4) SFR is located in the mapped SFR area. For accessing this SFR, bit RMAP in SFR SYSCON must be set. 5) The notation “n“ (n= 1 to F) in the message object address definition defines the number of the related message object. Semiconductor Group 2-6 Memory Organization C505A Table 2-2 Contents of the SFRs, SFRs in numeric order of their addresses Addr Register Content Bit 7 after Reset1) Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 80H 2) P0 FFH .7 .6 .5 .4 .3 .2 .1 .0 81H SP .7 .6 .5 .4 .3 .2 .1 .0 82H DPL 07H 00H .7 .6 .5 .4 .3 .2 .1 .0 83H DPH .7 .6 .5 .4 .3 .2 .1 .0 86H 00H WDTREL 00H WDT PSEL .6 .5 .4 .3 .2 .1 .0 87H PCON SMOD PDS IDLS SD GF1 GF0 PDE IDLE TF1 TF0 TR0 IE1 IT1 IE0 IT0 88H 2) TCON 88H 3) 00H 00H TR1 PCON1 0XX0XXXXB EWPD – – WS – – – – 89H TMOD GATE C/T M1 M0 GATE C/T M1 M0 8AH TL0 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 8BH TL1 8CH TH0 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 .7 .6 .5 .4 .3 .2 .1 .0 8DH TH1 .7 .6 .5 .4 .3 .2 .1 .0 90H 2) P1 00H FFH T2 CLKOUT T2EX .4 .3 INT5 INT4 .0 90H 3) P1ANA FFH EAN7 EAN6 EAN5 EAN4 EAN3 EAN2 EAN1 EAN0 91H XPAGE .7 .6 .5 .4 .3 .2 .1 .0 92H DPSEL 00H XXXXX000B – – – – – .2 .1 .0 00H XXH SM0 SM1 SM2 REN TB8 RB8 TI RI .7 .6 .5 .4 .3 .2 .1 .0 FFH .7 .6 .5 .4 .3 .2 .1 .0 00H 00H EA WDT ET2 ES ET1 EX1 ET0 EX0 OWDS WDTS .5 .4 .3 .2 .1 .0 D9H .7 .4 .3 .2 .1 .0 98H 2) SCON 99H SBUF A0H2) P2 A8H2) IEN0 A9H IP0 AAH SRELL .6 .5 1) X means that the value is undefined and the location is reserved 2) Bit-addressable special function registers 3) SFR is located in the mapped SFR area. For accessing this SFR, bit RMAP in SFR SYSCON must be set. Semiconductor Group 2-7 Memory Organization C505A Table 2-2 Contents of the SFRs, SFRs in numeric order of their addresses (cont’d) Addr Register Content Bit 7 after Reset1) Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 B0H2) P3 FFH B1H SYSCON XX103) 0X01B RD WR T1 T0 INT1 INT0 TxD RxD – – EALE RMAP CMOD – B1H – – EALE RMAP CMOD CSWO XMAP1 XMAP0 SYSCON XX104) 0001B XMAP1 XMAP0 B8H2) IEN1 3) 000000X0B EXEN2 SWDT EX6 EX5 EX4 EX3 – EADC B8H2) IEN1 4) B9H IP1 00H XX000000B EXEN2 SWDT EX6 EX5 EX4 EX3 ECAN EADC – – .5 .4 .3 .2 .1 .0 BAH SRELH XXXXXX11B – – – – – – .1 .0 C0H IRCON 00H EXF2 TF2 IEX6 IEX5 IEX4 IEX3 SWI IADC C1H CCEN 00H COCA H3 COCA L3 COCA H2 COCA L2 COCA H1 COCA L1 COCA H0 COCA L0 C2H CCL1 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 .7 .6 .5 .4 .3 .2 .1 .0 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 .7 .6 .5 .4 .3 .2 .1 .0 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 .7 .6 .5 .4 .3 .2 .1 .0 C8H T2CON 00X00000B T2PS I3FR – T2R1 T2R0 T2CM T2I1 T2I0 CAH CRCL .7 .6 .5 .4 .3 .2 .1 .0 CBH CRCH 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 CCH TL2 CDH TH2 00H 00H .7 .6 .5 .4 .3 .2 .1 .0 .7 .6 .5 .4 .3 .2 .1 .0 D0H PSW 00H CY AC F0 RS1 RS0 OV F1 P 2) C3H CCH1 C4H CCL2 C5H CCH2 C6H CCL3 C7H CCH3 2) 2) 1) X means that the value is undefined and the location is reserved 2) Bit-addressable special function registers 3) C505A only 4) C505CA only Semiconductor Group 2-8 Memory Organization C505A Table 2-2 Contents of the SFRs, SFRs in numeric order of their addresses (cont’d) Addr Register Content Bit 7 after Reset1) Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 D8H ADCON0 00X02) 0000B BD CLK – BSY ADM MX2 MX1 MX0 D9H ADDATH 00H DAH ADDATL 00XXXXXXB .9 .8 .7 .6 .5 .4 .3 .2 .1 .0 – – – – – – DCH ADCON1 01XXX000B 2) E0H ACC 00H ADCL1 ADCL0 – – – MX2 MX1 MX0 .7 .6 .5 .4 .3 .2 .1 .0 E8H2) P4 3) XXXXXX11B – – – – – – – – E8H2) P4 4) XXXXXX11B – – – – – – RXDC TXDC F0H2) B .7 .6 .5 .4 .3 .2 .1 .0 FCH VR0 00H C5H .7 .6 .5 .4 .3 .2 .1 .0 FDH VR1 05H .7 .6 .5 .4 .3 .2 .1 .0 FEH VR2 7) .7 .6 .5 .4 .3 .2 .1 .0 5) 6) 5) 6) 5) 6) 1) X means that the value is undefined and the location is reserved 2) Bit-addressable special function registers 3) C505A only 4) C505CA only 5) SFR is located in the mapped SFR area. For accessing this SFR, bit RMAP in SFR SYSCON must be set. 6) These are read-only registers 7) The content of this SFR varies with the actual of the step C505A (eg. 11H for the first step) Semiconductor Group 2-9 Memory Organization C505A Table 2-3 Contents of the CAN Registers in numeric order of their addresses (C505CA only) Addr. Register Content Bit 7 after n=1-FH 1) Reset 2) Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 F700H CR TEST CCE 0 0 EIE SIE IE INIT F701H SR BOFF EWRN – LEC2 LEC1 LEC0 F702H IR F704H BTR0 F705H BTR1 0UUU. 0 UUUUB F706H GMS0 F707H GMS1 UUH UUU1. 1111B F708H UGML0 F709H UGML1 F70AH LGML0 F70BH LGML1 01H XXH XXH UUH RXOK TXOK INTID SJW BRP TSEG2 TSEG1 ID28-21 ID20-18 1 UUH UUH UUH UUH F70EH LMLM0 F70FH LMLM1 UUH UUUU. U000B F7n0H MCR0 F7n1H MCR1 F7n2H UAR0 F7n3H UAR1 UUH UUH F7n4H LAR0 UUH F7n5H LAR1 UUUU. U000B F7n6H MCFG UUUU. UU00B UUH UUH 1 1 1 0 0 0 0 0 ID28-21 ID20-13 UUH UUUU. U000B F70CH UMLM0 F70DH UMLM1 1 ID12-5 ID4-0 ID28-21 ID20-18 ID17-13 ID12-5 ID4-0 0 MSGVAL TXIE RXIE INTPND RMTPND TXRQ MSGLST CPUUPD NEWDAT ID28-21 ID20-18 ID17-13 ID12-5 ID4-0 DLC DIR 0 0 0 XTD 0 0 1) The notation “n“ (n= 1 to F) in the address definition defines the number of the related message object. 2) “X“ means that the value is undefined and the location is reserved. “U“ means that the value is unchanged by a reset operation. “U“ values are undefined (as “X“) after a power-on reset operation Semiconductor Group 2-10 Memory Organization C505A Table 2-3 Contents of the CAN Registers in numeric order of their addresses (cont’d) (C505CA only) Addr. Register Content Bit 7 after n=1-FH 1) Reset 2) Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 F7n7H DB0 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7n8H DB1 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7n9H DB2 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7nAH DB3 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7nBH DB4 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7nCH DB5 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7nDH DB6 XXH .7 .6 .5 .4 .3 .2 .1 .0 F7nEH XXH .7 .6 .5 .4 .3 .2 .1 .0 DB7 1) The notation “n“ (n= 1 to F) in the address definition defines the number of the related message object. 2) “X“ means that the value is undefined and the location is reserved. “U“ means that the value is unchanged by a reset operation. “U“ values are undefined (as “X“) after a power-on reset operation Semiconductor Group 2-11 10-bit A/D Converter C505A 3 A/D Converter The C505A includes a high performance / high speed 10-bit A/D-Converter (ADC) with 8 analog input channels. It operates with a successive approximation technique and uses self calibration mechanisms for reduction and compensation of offset and linearity errors. The A/D converter provides the following features: – – – – – – – 8 multiplexed input channels (port 1), which can also be used as digital inputs/outputs 10-bit resolution Single or continuous conversion mode Internal start-of-conversion trigger capability Interrupt request generation after each conversion Using successive approximation conversion technique via a capacitor array Built-in hidden calibration of offset and linearity errors The externally applied reference voltage range has to be held on a fixed value within the specifications. The main functional blocks of the A/D converter are shown in figure 3-1. 3.1 A/D Converter Operation An internal start of a single A/D conversion is triggered by a write-to-ADDATL instruction. The start procedure itself is independent of the value which is written to ADDATL. When single conversion mode is selected (bit ADM=0) only one A/D conversion is performed. In continuous mode (bit ADM=1), after completion of an A/D conversion a new A/D conversion is triggered automatically until bit ADM is reset. The busy flag BSY (ADCON0.4) is automatically set when an A/D conversion is in progress. After completion of the conversion it is reset by hardware. This flag can be read only, a write has no effect. The interrupt request flag IADC (IRCON.0) is set when an A/D conversion is completed. The bits MX0 to MX2 in special function register ADCON0 and ADCON1 are used for selection of the analog input channel. The bits MX0 to MX2 are represented in both registers ADCON0 and ADCON1; however, these bits are present only once. Therefore, there are two methods of selecting an analog input channel : If a new channel is selected in ADCON1 the change is automatically done in the corresponding bits MX0 to MX2 in ADCON0 and vice versa. Port 1 is a dual purpose input/output port. These pins can be used either for digital I/O functions or as the analog inputs. If less than 8 analog inputs are required, the unused analog inputs at port 1 are free for digital I/O functions. Semiconductor Group 3-1 10-bit A/D Converter C505A Internal Bus IEN1 (B8H) EX6 EXEN2 SWDT EX5 EX4 EX3 ECAN EADC IRCON (C0H) EXF2 TF2 IEX6 IEX5 IEX4 IEX3 SWI IADC P1ANA (90H) EAN7 EAN6 EAN5 EAN4 EAN3 EAN2 EAN1 EAN0 ADCON1 (DCH) ADCL1 ADCL0 – MX2 MX1 MX0 BSY ADM MX2 MX1 MX0 – – ADCON0 (D8H) BD CLK – Single / Continuous Mode ADDATH ADDATL (D9H) (DA ) H .2 – .3 – .4 – .5 – A/D .6 – Converter .7 – .8 LSB MSB .1 Port 1 MUX S&H f OSC Clock Prescaler ÷32, 16, 8, 4 Conversion Clock fADC Input Clock fIN VAREF VAGND Start of conversion Internal Bus Write to ADDATL Shaded bit locations are not used in ADC-functions. Figure 3-1 Block Diagram of the A/D Converter Semiconductor Group 3-2 10-bit A/D Converter C505A 3.2 A/D Converter Registers This section describes the bits/functions of all registers which are used by the A/D converter. Special Function Register ADDATH (Address D9H) Special Function Register ADDATL (Address DAH) Bit No. MSB 7 MSB D9H .9 DAH .1 Reset Value : 00H Reset Value : 00XXXXXXB 6 5 4 3 2 1 LSB 0 .8 .7 .6 .5 .4 .3 .2 ADDATH LSB .0 – – – – – – ADDATL The registers ADDATH and ADDATL hold the 10-bit conversion result in left justified data format. The most significant bit of the 10-bit conversion result is bit 7 of ADDATH. The least significant bit of the 10-bit conversion result is bit 6 of ADDATL. To get a 10-bit conversion result, both ADDAT registers must be read. If an 8-bit conversion result is required, only the reading of ADDATH is necessary. The data remains in ADDAT until it is overwritten by the next converted data. ADDAT can be read or written under software control. lf the A/D converter of the C505A is not used, register ADDATH can be used as an additional general purpose register. Semiconductor Group 3-3 10-bit A/D Converter C505A Special Function Register ADCON0 (Address D8H) Special Function Register ADCON1 (Address DCH) Bit No. MSB 7 D8H DCH BD Reset Value : 00H Reset Value : 01XXX000B LSB 0 6 5 4 3 2 1 CLK – BSY ADM MX2 MX1 MX0 ADCON0 – – – MX2 MX1 MX0 ADCON1 ADCL1 ADCL0 The shaded bits are not used for A/D converter control. Bit Function – Reserved bits for future use BSY Busy flag This flag indicates whether a conversion is in progress (BSY = 1). The flag is cleared by hardware when the conversion is finished. ADM A/D conversion mode When set, a continuous A/D conversion is selected. If cleared during a running A/D conversion, the conversion is stopped at its end. MX2 - MX0 A/D converter input channel select bits Bits MX2-0 can be written or read either in ADCON0 or ADCON1. The channel selection done by writing to ADCON 1(0) overwrites the selection in ADCON 0(1) when ADCON 1(0) is written after ADCON 0(1). The analog inputs are selected according the following table : MX2 0 0 0 0 1 1 1 1 Semiconductor Group MX1 MX0 Selected Analog Input 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 P1.0 / AN0 / INT3 / CC0 P1.1 / AN1 / INT4 / CC1 P1.2 / AN2 / INT5 / CC2 P1.3 / AN3 / INT6 / CC3 P1.4 / AN4 P1.5 / AN5 / T2EX P1.6 / AN6 / CLKOUT P1.7 / AN7 / T2 3-4 10-bit A/D Converter C505A Bit Function ADCL1 ADCL0 A/D converter clock prescaler selection ADCL1 and ADCL0 select the prescaler ratio for the A/D conversion clock fADC. Depending on the clock rate fOSC of the C505A, fADC must be adjusted in a way that the resulting conversion clock fADC is less than or equal to 2 MHz (see section 3.3). The prescaler ratio is selected according to the following table : ADCL1 0 0 1 1 ADCL0 0 1 0 1 Prescaler Ratio divide by 4 divide by 8 (default after reset) divide by 16 divide by 32 Note :Generally, before entering the power-down mode, an A/D conversion in progress must be stopped. If a single A/D conversion is running, it must be terminated by polling the BSY bit or waiting for the A/D conversion interrupt. In continuous conversion mode, bit ADM must be cleared and the last A/D conversion must be terminated before entering the power-down mode. A single A/D conversion is started by writing to SFR ADDATL with dummy data. A continuous conversion is started under the following conditions : – By setting bit ADM during a running single A/D conversion – By setting bit ADM when at least one A/D conversion has occurred after the last reset operation. – By writing ADDATL with dummy data after bit ADM has been set before (if no A/D conversion has occurred after the last reset operation). When bit ADM is reset by software in continuous conversion mode, the just running A/D conversion is stopped after its end. Semiconductor Group 3-5 10-bit A/D Converter C505A The A/D converter interrupt is controlled by bits which are located in the SFRs IEN1 and IRCON. Special Function Register IEN1 (Address B8H) Special Function Register IRCON (Address C0H) Bit No. B8H C0H MSB BFH BEH EXEN2 SWDT BDH BCH BBH Reset Value : 00H Reset Value : 00H BAH EX6 EX5 EX4 EX3 B9H LSB B8H ECAN EADC C7H C6H C5H C4H C3H C2H C1H C0H EXF2 TF2 IEX6 IEX5 IEX4 IEX3 SWI IADC IEN1 IRCON The shaded bits are not used for A/D converter control. Bit Function EADC Enable A/D converter interrupt If EADC = 0, the A/D converter interrupt is disabled. SWI This bit can be set by software to generate an interrupt. The interrupt service routine is at 004BH. This bit is cleared when the interrupt is processed. This interrupt is enabled by setting bit IEN1.1(ECAN). Semiconductor Group 3-6 10-bit A/D Converter C505A 3.3 A/D Converter Clock Selection The ADC uses two clock signals for operation : the conversion clock f ADC (=1/tADC) and the input clock fIN (=1/tIN). fADC is derived from the C505A system clock f OSC which is applied at the XTAL pins via the ADC clock prescaler as shown in figure 3-2. The input clock fIN is equal to fOSC The conversion fADC clock is limited to a maximum frequency of 2 MHz. Therefore, the ADC clock prescaler must be programmed to a value which assures that the conversion clock does not exceed 2 MHz. The prescaler ratio is selected by the bits ADCL1 and ADCL0 of SFR ADCON1. The table in figure 3-2 shows the prescaler ratio which must be selected by ADCL1 and ADCL0 for typical system clock rates. Up to 8 MHz system clock the prescaler ratio 4 is selected. Using a system clock greater than 8 MHz and less than 16 MHz, the prescaler ratio of at least 8 must be selected. A prescaler ratio of at least 16 must be selected when using a system clock greater than 16 MHz. A prescaler ratio of 32 can used for any of the above frequency ranges. ADCL0 ADCL1 f OSC ÷ 32 ÷ 16 ÷8 MUX Conversion Clock fADC A/D Converter ÷4 Input Clock fIN Clock Prescaler Condition : fADC max = 2 MHz MCU System Clock fIN [MHz] Rate (fOSC) fIN = f OSC = 1 CLP Prescaler Ratio fADC [MHz] ADCL1 ADCL0 2 MHz 2 ÷4 0.5 0 0 6 MHz 6 ÷4 1.5 0 0 8 MHz 8 ÷4 2 0 0 12 MHz 12 ÷8 1.5 0 1 16 MHz 16 ÷8 2 0 1 20 MHz 20 ÷ 16 1.25 1 0 Figure 3-2 A/D Converter Clock Selection The duration of an A/D conversion is a multiple of the period of the fIN clock signal. The calculation of the A/D conversion time is shown in the next section. Semiconductor Group 3-7 10-bit A/D Converter C505A 3.4 A/D Conversion Timing An A/D conversion is started by writing into the SFR ADDATL with dummy data. A write to SFR ADDATL will start a new conversion even if a conversion is currently in progress. The conversion begins with the next machine cycle, and the BSY flag in SFR ADCON0 will be set. The A/D conversion procedure is divided into three parts : – Sample phase (tS), used for sampling the analog input voltage. – Conversion phase (tCO), used for the real A/D conversion (includes calibration). – Write result phase (tWR), used for writing the conversion result into the ADDAT registers. The total A/D conversion time is defined by t ADCC which is the sum of the two phase times t S and tCO. The duration of the three phases of an A/D conversion is specified by their corresponding timing parameter as shown in figure 3-3. Result is written into ADDAT Start of an AD conversion BSY Bit Sample Phase Conversion Phase tS tCO Write Result tWR Phase tADCC t WR = t IN A/D Conversion Time Cycle Time tADCC = tS + tCO PS = Prescaler value Prescaler Ratio tS (=PS) tCO tADCC 32 64 x tIN 320 x tIN 384 x tIN 16 32 x tIN 160 x tIN 192 x tIN 8 16 x tIN 80 x tIN 96 x tIN 4 8 x tIN 40 x tIN 48 x tIN Figure 3-3 A/D Conversion Timing Sample Time tS : During this time the internal capacitor array is connected to the selected analog input channel and is loaded with the analog voltage to be converted. The analog voltage is internally fed to a voltage comparator. With beginning of the sample phase the BSY bit in SFR ADCON0 is set. Semiconductor Group 3-8 10-bit A/D Converter C505A Conversion Time tCO : During the conversion time the analog voltage is converted into a 10-bit digital value using the successive approximation technique with a binary weighted capacitor network. During an A/D conversion also a calibration takes place. During this calibration alternating offset and linearity calibration cycles are executed (see also section 3.5). At the end of the calibration time the BSY bit is reset and the IADC bit in SFR IRCON is set indicating an A/D converter interrupt condition. Write Result Time tWR : At the result phase the conversion result is written into the ADDAT registers. Figure 3-4 shows how an A/D conversion is embedded into the microcontroller cycle scheme using the relation 6 x t IN = 1 instruction cycle. It also shows the behaviour of the busy flag (BSY) and the interrupt flag (IADC) during an A/D conversion. Prescaler Selection ADCL1 ADCL0 MOV ADDATL,#0 Write result cycle MOV A, ADDATL 1 instruction cycle 7 8 9 10 11 12 5 15 16 17 18 19 20 4 5 31 32 33 34 35 36 4 5 63 64 65 66 67 68 0 0 X-1 X 1 2 3 4 5 0 1 X-1 X 1 2 3 4 1 0 X-1 X 1 2 3 1 1 X-1 X 1 2 3 6 tADCC Start of A/D conversion cycle A/D Conversion Cycle Start of next conversion (in continuous mode) Write ADDAT Cont. conv. Single conv. BSY Bit IADC Bit First instr. of an interrupt routine Figure 3-4 A/D Conversion Timing in Relation to Processor Cycles Depending on the selected prescaler ratio (see figure 3-2), four different relationships between machine cycles and A/D conversion are possible. The A/D conversion is started when SFR ADDATL is written with dummy data. This write operation may take one or two machine cycles. In figure 3-4, the instruction MOV ADDATL,#0 starts the A/D conversion (machine cycle X-1 and X). The total A/D conversion (sample, conversion, and calibration phase) is finished with the end of the 8th, 16th, 32nd, or 64th machine cycle after the A/D conversion start. In the next machine cycle the conversion result is written into the ADDAT registers and can be read in the same cycle by an instruction (e.g. MOV A,ADDATL). If continuous conversion is selected (bit ADM set), the next conversion is started with the beginning of the machine cycle which follows the write result cycle. Semiconductor Group 3-9 10-bit A/D Converter C505A The BSY bit is set at the beginning of the first A/D conversion machine cycle and reset at the beginning of the write result cycle. If continuous conversion is selected, BSY is again set with the beginning of the machine cycle which follows the write result cycle. The interrupt flag IADC is set at the end of the A/D conversion. If the A/D converter interrupt is enabled and the A/D converter interrupt is prioritized to be serviced immediately, the first instruction of the interrupt service routine will be executed in the third machine cycle which follows the write result cycle. IADC must be reset by software. Depending on the application, typically there are three methods to handle the A/D conversion in the C505A. – Software delay The machine cycles of the A/D conversion are counted and the program executes a software delay (e.g. NOPs) before reading the A/D conversion result in the write result cycle. This is the fastest method to get the result of an A/D conversion. – Polling BSY bit The BSY bit is polled and the program waits until BSY=0. Attention : a polling JB instruction which is two machine cycles long, possibly may not recognize the BSY=0 condition during the write result cycle in the continuous conversion mode. – A/D conversion interrupt After the start of an A/D conversion the A/D converter interrupt is enabled. The result of the A/D conversion is read in the interrupt service routine. If other C505A interrupts are enabled, the interrupt latency must be regarded. Therefore, this software method is the slowest method to get the result of an A/D conversion. Depending on the oscillator frequency of the C505A and the selected divider ratio of the conversion clock prescaler the total time of an A/D conversion is calculated according figure 3-3 and table 31. Figure 3-5 on the next page shows the minimum A/D conversion time in relation to the oscillator frequency fOSC. The minimum conversion time is 6 µs and can be achieved at fOSC of 8 or 16 MHz (or whenever fADC = 2 MHz). Table 4-1 A/D Conversion Time for Dedicated System Clock Rates fOSC [MHz] Prescaler Ratio PS fADC [MHz] Sample Time tS [µs] Total Conversion Time tADCC [µs] 2 MHz ÷4 0.5 4 24 6 MHz ÷4 1.5 1.33 8 8 MHz ÷4 2 1 6 12 MHz ÷8 1.5 1.33 8 16 MHz ÷8 2 1 6 20 MHz ÷ 16 1.25 1.6 9.6 Note : The prescaler ratios in table 3-1 are minimum values. Semiconductor Group 3-10 10-bit A/D Converter C505A tADCC [µs] 30 t ADCC min = 6 µs 20 10 5 ÷4 2 4 ÷8 6 8 10 12 ÷ 16 14 16 Figure 3-5 Minimum A/D Conversion Time in Relation to System Clock Semiconductor Group 3-11 18 20 fOSC [MHz] 10-bit A/D Converter C505A 3.5 A/D Converter Calibration The C505A A/D converter includes hidden internal calibration mechanisms which assure a safe functionality of the A/D converter according to the DC characteristics. The A/D converter calibration is implemented in a way that a user program which executes A/D conversions is not affected by its operation. Further, the user program has no control over the calibration mechanism. The calibration itself executes two basic functions : – Offset calibration – Linearity calibration : correction of offset errors of comparator and the capacitor network : correction of the binary weighted capacitor network The A/D converter calibration operates in two phases : calibration after a reset operation and calibration at each A/D conversion. The calibration phases are controlled by a state machine in the A/D converter. This state machine executes the calibration phases and stores the calibration results dynamically in a small calibration RAM. After a reset operation the A/D calibration is automatically started. This reset calibration phase which takes 3328 fADC clocks, alternating offset and linearity calibration is executed. Therefore, at 8 MHz oscillator frequency and with the default after reset prescaler value of 4, a reset calibration time of approx. 1.66 ms is reached. For achieving a proper reset calibration, the fADC prescaler value must satisfy the condition fADC max ≤ 2 MHz. If this condition is not met at a specific oscillator frequency with the default prescaler value after reset, the fADC prescaler must be adjusted immediately after reset by setting bits ADCL1 and ADCL0 in SFR ADCON1 to a suitable value. It is also recommended to have the proper voltages, as specified in the DC specifications, applied at the VAREF and VAREF pins before the reset calibration has started. After the reset calibration phase the A/D converter is calibrated according to its DC characteristics. Nevertheless, during the reset calibration phase single or continuous A/D can be executed. In this case it must be regarded that the reset calibration is interrupted and continued after the end of the A/D conversion. Therefore, interrupting the reset calibration phase by A/D conversions extends the total reset calibration time. If the specified total unadjusted error (TUE) has to be valid for an A/D conversion, it is recommended to start the first A/D conversions after reset when the reset calibration phase is finished. Depending on the oscillator frequency used, the reset calibration phase can be possibly shortened by setting ADCL1 and ADCL0 (prescaler value) to its final value immediately after reset. After the reset calibration, a second calibration mechanism is initiated. This calibration is coupled to each A/D conversion. With this second calibration mechanism alternatively offset and linearity calibration values, stored in the calibration RAM, are always checked when an A/D conversion is executed and corrected if required. Semiconductor Group 3-12 10-bit A/D Converter C505A 3.5.1 A/D Converter Analog Input Selection The analog inputs are located at port 1. The corresponding pins have a port structure, which allows to use them either as digital I/O pins or as analog inputs (see section 6.1.3.2). The analog input function of these digital/analog port lines are selected via the register P1ANA. This register lies in the mapped SFR area and can be accessed when bit RMAP in SFR SYSCON is set when writing to its address (90H). If a specific bit location of P1ANA is set, the corresponding port line is configured as a digital input. With a 0 in the bit location the port line operates as analog port. Special Function Registers P1ANA (Address 90H) Bit No. MSB 7 90H EAN7 Reset Value : FFH 6 5 4 3 2 1 EAN6 EAN5 EAN4 EAN3 EAN2 EAN1 LSB 0 EAN0 P1ANA Bit Function EAN7 - EAN0 Enable analog port 1 inputs If EANx (x = 7-0) is cleared, port pin P1.x is enabled for operation as an analog input. If EANx is set, port pin P1.x is enabled for digital I/O function (default after reset). Semiconductor Group 3-13 OTP Memory Operation C505A 4 OTP Memory Operation The C505A-4E is the OTP version in the C505A microcontroller with a 32K byte one-time programmable (OTP) program memory. With the C505A-4E fast programming cycles are achieved (1 byte in 100 µsec). Also several levels of OTP memory protection can be selected. The basic functionality of the C505A-4E as microcontroller is identical to the C505A-L (romless part) functionality. 4.1 Programming Configuration During normal program execution the C505A-4E behaves like the C505A-L. For programming the device, the C505A-4E must be put into the programming mode. This, typically, is done not in-system but in a special programming hardware. In the programming mode the C505A-4E operates as a slave device similar as an EPROM standalone memory device and must be controlled with address/ data information, control lines, and an external 11.5 V programming voltage. In the programming mode port 0 provides the bidirectional data lines and port 2 is used for the multiplexed address inputs. The upper address information at port 2 is latched with the signal PALE. For basic programming mode selection the inputs RESET, PSEN, EA/VPP, ALE and PMSEL1/0 and PSEL are used. Further, the inputs PMSEL1,0 are required to select the access types (e.g. program/verify data, write lock bits, ....) in the programming mode. In programming mode VCC/VSS and a clock signal at the XTAL pins must be applied to the C505A-4E. The 11.5 V external programming voltage is input through the EA/VPP pin. Figure 4-1 shows the pins of the C505A-4E which are required for controlling of the OTP programming mode. VCC P2.0-7 VSS Port 2 Port 0 P0.0-7 PALE PMSEL0 PMSEL1 C505A-4E C505CA-4E RESET XTAL1 XTAL2 PSEN PSEL Figure 4-1 Programming Mode Configuration Semiconductor Group EA / VPP PROG PRD 4-1 OTP Memory Operation C505A 4.2 Pin Configuration D4 D5 D6 D7 EA / VPP N.C. PROG PSEN A7 A6 / A14 A5 / A13 Figure 4-2 shows the detailed pin configuration of the C505A-4E in programming mode. D3 D2 D1 D0 N.C. N.C. N.C. N.C. N.C. N.C. N.C. 33 32 31 30 29 28 27 26 25 24 23 34 22 35 21 36 20 37 19 38 C505A-4E C505CA-4E 39 40 18 17 16 41 15 42 14 43 13 44 2 3 4 5 6 7 8 12 9 10 11 N.C. N.C. N.C. RESET PMSEL0 N.C. PMSEL1 PSEL PRD PALE N.C. 1 Figure 4-2 OTP Programming Mode Pin Configuration (Top View) Semiconductor Group 4-2 A4 / A12 A3 / A11 A2 / A10 A1 / A9 A0 / A8 VCC VSS XTAL1 XTAL2 N.C. N.C. OTP Memory Operation C505A 4.3 Pin Definitions The following figure 4-1 contains the functional description of all C505A-4E pins which are required for OTP memory programming Table 4-1 Pin Definitions and Functions of the C505A-4E in Programming Mode Symbol Pin Number I/O *) Function P-MQFP-44 RESET 4 I Reset This input must be at static “1“ (active) level during the whole programming mode. PMSEL0 PMSEL1 5 7 I I Programming mode selection pins These pins are used to select the different access modes in programming mode. PMSEL1,0 must satisfy a setup time to the rising edge of PALE. When the logic level of PMSEL1,0 is changed, PALE must be at low level. PMSEL1 PMSEL0 Access Mode 0 0 Reserved 0 1 Read signature bytes 1 0 Program/read lock bits 1 1 Program/read OTP memory byte PSEL 8 I Basic programming mode select This input is used for the basic programming mode selection and must be switched according figure 4-3. PRD 9 I Programming mode read strobe This input is used for read access control for OTP memory read, version byte read, and lock bit read operations. PALE 10 I Programming address latch enable PALE is used to latch the high address lines. The high address lines must satisfy a setup and hold time to/from the falling edge of PALE. PALE must be at low level when the logic level of PMSEL1,0 is changed. XTAL2 14 O XTAL2 Output of the inverting oscillator amplifier. XTAL1 15 I XTAL1 Input to the oscillator amplifier. *) I = Input O = Output Semiconductor Group 4-3 OTP Memory Operation C505A Table 4-1 Pin Definitions and Functions of the C505A-4E in Programming Mode (cont’d) Symbol Pin Number I/O *) Function P-MQFP-44 VSS 16 – Circuit ground potential must be applied in programming mode. VCC 17 – Power supply terminal must be applied in programming mode. P2.0-7 18-25 I Address lines P2.0-7 are used as multiplexed address input lines A0-A7 and A8-A14. A8-A14 must be latched with PALE. PSEN 26 I Program store enable This input must be at static “0“ level during the whole programming mode. PROG 27 I Programming mode write strobe This input is used in programming mode as a write strobe for OTP memory program, and lock bit write operations During basic programming mode selection a low level must be applied to PROG. EA/VPP 29 – Programming voltage This pin must be at 11.5 V (VPP) voltage level during programming of an OTP memory byte or lock bit. During an OTP memory read operation this pin must be at VIHx high level. This pin is also used for basic programming mode selection. At basic programming mode selection a low level must be applied to EA/VPP. P0.7-0 30-37 I/O Data lines 0-7 During programming mode, data bytes are transferred via the bidirectional D7-0 lines which are located at port 0. N.C. 1-3, 6, 11-13, – 28, 38-44 Not Connected These pins should not be connected in programming mode. *) I = Input O = Output Semiconductor Group 4-4 OTP Memory Operation C505A 4.4 Programming Mode Selection The selection for the OTP programming mode can be separated into two different parts : – Basic programming mode selection – Access mode selection With the basic programming mode selection the device is put into the mode in which it is possible to access the OTP memory through the programming interface logic. Further, after selection of the basic programming mode, OTP memory accesses are executed by using one of the access modes. These access modes are OTP memory byte program/read, version byte read, and program/read lock byte operations. 4.4.1 Basic Programming Mode Selection The basic programming mode selection scheme is shown in figure 4-3. 5V VCC Clock (XTAL1/XTAL2) stable RESET “1“ PSEN “0“ 0,1 PMSEL1,0 “0“ PROG PRD “1“ PSEL “0“ PALE EA/VPP 0V During this period signals are not actively driven Figure 4-3 Basic Programming Mode Selection Semiconductor Group 4-5 VPP VIH2 Ready for access mode selection OTP Memory Operation C505A The basic programming mode is selected by executing the following steps : – With a stable Vcc a clock signal is applied to the XTAL pins; the RESET pin is set to “1“ level and the PSEN pin is set to “0“ level. – PROG, PALE, PMSEL1 and EA/VPP are set to “0“ level; PRD, PSEL, and PMSEL0 are set to “1“ level. – PSEL is switched from “1“ to “0“ level and thereafter PROG is switched to “1“ level. – PMSEL1,0 can now be changed; after EA/VPP has been set to VIHx high level or to VPP the OTP memory is ready for access. The pins RESET and PSEN must stay at “1“ respectively “0“ static signal level during the whole programming mode. With a falling edge of PSEL the logic state of PROG and EA/VPP is internally latched. These two signals are now used as programming write pulse signal (PROG) and as programming voltage input pin VPP. After the falling edge of PSEL, PSEL must stay at “0“ state during all programming operations. Note: If protection level 1 to 3 has been programmed (see section 4.6) and the programming mode has been left, it is no more possible to enter the programming mode ! 4.4.2 OTP Memory Access Mode Selection When the C505A-4E has been put into the programming mode using the basic programming mode selection, several access modes of the OTP memory programming interface are available. The conditions for the different control signals of these access modes are listed in table 4-2. Table 4-2 Access Modes Selection Access Mode EA/ VPP Program OTP memory byte VPP Read OTP memory byte VIHx Program OTP lock bits VPP Read OTP lock bits VIHx H Read OTP version byte VIHx H PROG PRD PMSEL Address (Port 2) Data (Port 0) 1 0 H H H A0-7 A8-14 D0-7 H H L – D1,D0 see table 4-3 L H Byte addr. of version byte D0-7 H The access modes from the table above are basically selected by setting the two PMSEL1,0 lines to the required logic level. The PROG and PRD signal are the write and read strobe signal. Data is transferred via port 0 and addresses are applied to port 2. The following sections describes the details of the different access modes. Semiconductor Group 4-6 OTP Memory Operation C505A 4.5 Program / Read OTP Memory Bytes The program/read OTP memory byte access mode is defined by PMSEL1,0 = 1,1. It is initiated when the PMSEL1,0 = 1,1 is valid at the rising edge of PALE. With the falling edge of PALE the upper addresses A8-A14 of the 15-bit OTP memory address are latched. After A8-A14 has been latched, A0-A7 is put on the address bus (port 2). A0-A7 must be stable when PROG is low or PRD is low. If subsequent OTP address locations are accessed with constant address information at the high address lines A8-14, A8-A14 must only be latched once (page address mechanism). Figure 4-4 shows a typical basic OTP memory programming cycle with a following OTP memory read operation. In this example A0-A14 of the read operation are identical to A8-A14 of the preceeding programming operation. 1, 1 PMSEL1,0 Port 2 A8A14 A0-A7 PALE Port 0 D0-D7 D0-D7 min. 100 µs min. 100 ns PROG PRD Figure 4-4 Programming / Verify OTP Memory Access Waveform If the address lines A8-A14 must be updated, PALE must be activated for the latching of the new A8A14 value. Control, address, and data information must only be switched when the PROG and PRD signals are at high level. The PALE high pulse must always be executed if a different access mode has been used prior to the actual access mode. Semiconductor Group 4-7 OTP Memory Operation C505A Figure 4-5 shows a waveform example of the program/read mode access for several OTP memory bytes. In this example OTP memory locations 3FDH to 400H are programmed. Thereafter, OTP memory locations 400H and 3FDH are read. PMSEL1,0 1, 1 PALE 3FD Port 2 03 Port 0 3FE 3FF FD FE FF Data 1 Data 2 Data 3 400 04 00 Data 4 PROG PRD Figure 4-5 Typical OTP Memory Programming/Verify Access Waveform Semiconductor Group 4-8 3FD 400 00 Data 4 03 FD Data 1 OTP Memory Operation C505A 4.6 Lock Bits Programming / Read The C505A-4E has two programmable lock bits which, when programmed according table 4-3, provide four levels of protection for the on-chip OTP code memory. Table 4-3 Lock Bit Protection Types Lock Bits at D1,D0 D1 D0 Protection Protection Type Level 1 1 Level 0 The OTP lock feature is disabled. During normal operation of the C505A-4E, the state of the EA pin is not latched on reset. 1 0 Level 1 During normal operation of the C505A-4E, MOVC instructions executed from external program memory are disabled from fetching code bytes from internal memory. EA is sampled and latched on reset. An OTP memory read operation is only possible according to OTP verification mode. Further programming of the OTP memory is disabled (reprogramming security). 0 1 Level 2 Same as level 1, but also OTP memory read operation using OTP verification mode is disabled. 0 0 Level 3 Same as level 2; but additionally external code execution by setting EA=low during normal operation of the C505A-4E is no more possible. External code execution, which is initiated by an internal program (e.g. by an internal jump instruction above the OTP memory boundary), is still possible. Note : A 1 means that the lock bit is unprogrammed. 0 means that lock bit is programmed. For a OTP verify operation at protection level 1, the C505A-4E must be put into the OTP verification mode. If a device is programmed with protection level 2 or 3, it is no longer possible to verify the OTP content of a customer rejected (FAR) OTP device. When a protection level has been activated by programming of the lock bits, the basic programming mode must be left for activation of the protection mechanisms. This means, after the activation of a protection level further OTP program/verify operations are still possible if the basic programming mode is maintained. The state of the lock bits can always be read if protection level 0 is selected. If protection level 1 to 3 has been programmed and the programming mode has been left, it is not possible to re-enter the programming mode. In this case, the lock bits cannot be read anymore. Figure 4-6 shows the waveform of a lock bit write/read access. For a simple drawing, the PROG pulse is shortened. In reality, for lock bit programming, a 100µs PROG low pulse must be applied. Semiconductor Group 4-9 OTP Memory Operation C505A PMSEL1,0 1, 0 PALE Port 0 1,0 1,0 (D1,D0) PROG PRD The example shows the programming and reading of a protection level 1. Figure 4-6 Write/Read Lock Bit Waveform Semiconductor Group 4-10 OTP Memory Operation C505A 4.6.1 Access of Version Bytes The C505A-4E and C505CA-4E provide three version bytes at address locations FC H, FDH, and FEH. The information stored in the version bytes, is defined by the mask of each microcontroller step, Therefore, the version bytes can be read but not written. The three Version Registers hold information as manufacturer code, device type, and stepping code. For reading of the version bytes the control lines must be used according table 4-2 and figure 4-7. The address of the version byte must be applied at the port 1 address lines. PALE must not be activated. PMSEL1,0 0, 1 PALE Port 2 Port 0 FC FD VR0 VR1 FE VR2 PROG PRD Figure 4-7 Read Version Register(s) Waveform Version bytes are typically used by programming systems for adapting the programming firmware to specific device characteristics such as OTP size etc. Note: The 3 version bytes are implemented in a way that they can be also be read during normal program execution mode as a mapped register with bit RMAP in SFR SYSCON set. The addresses of the version bytes in normal mode and programming mode are identical and therefore they are located in the SFR address range. The steppings of the C505A versions will contain the following version byte information : Stepping Version Byte 0 = VR0 Version Byte 1 = VR1 Version Byte 2 = VR2 (mapped addr. FCH) (mapped addr. FDH) (mapped addr. FEH) ES-AA Steps of C505A-4E and C505CA-4E C5H 05H Note: Future steppings of C505A would have a different version byte 2 content. Semiconductor Group 4-11 11H OTP Memory Operation C505A 4.7 OTP Verification Mode The OTP verification mode as shown in figure 4-8 is used to verify the contents of the OTP when the protection level 1 has been set. The detailed timing characteristics of the OTP verification mode are shown in the AC specifications (chapter 5). RESET 6 CLP ALE 1. ALE pulse after reset 3 CLP Latch Data for Addr. 0 Port 0 Latch Latch Data for Addr. 1 Data for Ad. X·16 -1 Data for Addr. X·16 Latch Data for Ad. X·16 +1 Low : Verify Error High : Verify ok P3.5 Inputs : ALE = VSS PSEN = VIH, EA = VIH2 RESET = Figure 4-8 OTP Verification Mode OTP verification mode is selected if the inputs PSEN, EA, and ALE are put to the specified logic levels. With RESET going inactive, the OTP verification mode sequence is started. The C505A-4E outputs an ALE signal with a period of 3 CLP and expects data bytes at port 0. The data bytes at port 0 are assigned to the OTP addresses in the following way : 1. Data Byte = 2. Data Byte = 3. Data Byte = : 16. Data Byte = : content of OTP address 0000H content of OTP address 0001H content of OTP address 0002H content of OTP address 000FH The C505A-4E does not output any address information during the OTP verification mode. The first data byte to be verified is always the byte which is assigned to the OTP address 0000H and must be put onto the data bus with the falling edge of RESET. With each following ALE pulse the OTP address pointer is internally incremented and the expected data byte for the next OTP address must be delivered externally. Between two ALE pulses the data at port 0 is latched (at 3 CLP after ALE rising edge) and compared internally with the OTP content of the actual address. If a verify error is detected, the error condition Semiconductor Group 4-12 OTP Memory Operation C505A is stored internally. After each 16th data byte the cumulated verify result (pass or fail) of the last 16 verify operations is output at P3.5. This means that P3.5 stays at static level (low for fail and high for pass) during the time when the following 16 bytes are checked. In OTP verification mode, the C505A-4E must be provided with a system clock at the XTAL pins. Figure 4-9 shows an application example of an external circuitry which allows to verify the OTP, with protection level 1, inside the C505A-4E in the OTP verification mode. With RESET going inactive, the C505A-4E starts the OTP verify sequence. Its ALE is clocking a 15-bit address counter. This counter generates the addresses for an external EPROM which is programmed with the contents of the OTP. The verify detect logic typically displays the pass/fail information of the verify operation. P3.5 can be latched with the falling edge of ALE. When the last byte of the OTP has been handled, the C505A-4E starts generating a PSEN signal. This signal or the CY signal of the address counter indicate to the verify detect logic the end of the OTP verification. P3.5 Verify Detect Logic Carry ALE CLK 2K 15-Bit Address Counter C505A-4E A0-A14 S & & RESET Vcc Port 0 Compare Code ROM D0-D7 Vcc EA CS PSEN Figure 4-9 OTP Verification Mode - External Circuitry Example Semiconductor Group 4-13 OE Device Specifications C505A 5 5.1 Device Specifications Absolute Maximum Ratings Ambient temperature under bias (TA) .............................................................. – 40 °C to + 125 °C Storage temperature (TST)................................................................................– 65 °C to + 150 °C Voltage on VCC pins with respect to ground (VSS) ............................................– 0.5 V to 6.5 V Voltage on any pin with respect to ground ( VSS) ..............................................– 0.5 V to VCC + 0.5 V Input current on any pin during overload condition..........................................– 10 mA to + 10 mA Absolute sum of all input currents during overload condition ..........................| 100 mA | Power dissipation.............................................................................................TBD 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. Semiconductor Group 5-1 Device Specifications C505A 5.2 DC Characteristics TA = 0 to 70 °C TA = -40 to 85 °C TA = -40 to 110 °C TA = -40 to 125 °C VCC = 5V +10%, -15%; VSS = 0 V Parameter Symbol Limit Values for the SAB- versions for the SAF- versions for the SAH- versions for the SAK- versions Unit Test Condition min. max. 0.2 VCC - 0.1 V 0.2 VCC - 0.3 V 0.2 VCC + 0.1 V Input low voltages all except EA, RESET EA pin RESET pin VIL VIL1 VIL2 – 0.5 – 0.5 – 0.5 Input high voltages all except XTAL1, RESET XTAL1 pin RESET pin VIH VIH1 VIH2 0.2 VCC + 0.9 VCC + 0.5 0.7 VCC VCC + 0.5 0.6 VCC VCC + 0.5 V V V – – – Output low voltages Ports 1, 2, 3, 4 Port 0, ALE, PSEN VOL VOL1 – – 0.45 0.45 V V IOL = 1.6 mA 1) IOL = 3.2 mA 1) Output high voltages Ports 1, 2, 3, 4 VOH 2.4 0.9 VCC 2.4 0.9 VCC – – – – V V V V IOH = – 80 µA IOH = – 10 µA IOH = – 800 µA IOH = – 80 µA 2) IIL – 10 – 70 µA VIN = 0.45 V ITL – 65 – 650 µA VIN = 2 V Input leakage current Port 0, AN0-7 (Port 1), EA ILI – ±1 µA 0.45 < VIN < VCC Pin capacitance CIO – 10 pF fc = 1 MHz, TA = 25 °C Overload current IOV – ±5 mA Programming voltage VPP 10.9 12.1 V 11.5 V ± 5% 5) 30 mA 5) Port 0 in external bus mode, ALE, PSEN Logic 0 input current Ports 1, 2, 3, 4 Logical 0-to-1 transition current Ports 1, 2, 3, 4 VOH2 Supply current at EA/VCC Notes see next page Semiconductor Group 5-2 – – – 3) 4) Device Specifications C505A Power Supply Current Parameter Symbol Limit Values Unit Test Condition typ. 11) max.12) C505A Active Mode 12 MHz 20 MHz ICC ICC TBD TBD TBD TBD mA 6) Idle Mode 12 MHz 20 MHz ICC ICC TBD TBD TBD TBD mA 7) Active Mode with 12 MHz slow-down enabled 20 MHz ICC ICC TBD TBD TBD TBD mA 8) Idle Mode with 12 MHz slow-down enabled 20 MHz ICC ICC TBD TBD TBD TBD mA 9) Power down current IPD TBD 60 µA VCC = 2..5.5 V 10) Notes : 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 > 100 pF), the noise pulse on ALE line may exceed 0.8 V. 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.9 VCC specification when the address lines are stabilizing. 3) Overload conditions occur if the standard operating conditions are exceeded, ie. the voltage on any pin exceeds the specified range (i.e. VOV > VCC + 0.5 V or VOV < VSS - 0.5 V). The supply voltage VCC and VSS must remain within the specified limits. The absolute sum of input currents on all port pins may not exceed 50 mA. 4) Not 100% tested, guaranteed by design characterization. 5) Only valid in porgramming mode. 6) ICC (active mode) is measured with: XTAL1 driven with tR /tF = 5 ns, 50% duty cycle , VIL = VSS + 0.5 V, VIH = VCC – 0.5 V; XTAL2 = N.C.; EA = Port0 = RESET =VCC; all other pins are disconnected. ICC would be slightly higher if a crystal oscillator is used (approx. 1 mA) 7) ICC (idle mode) is measured with all output pins disconnected and with all peripherals disabled; XTAL1 driven with tR/tF = 5 ns, 50% duty cycle, VIL = VSS + 0.5 V, VIH = VCC – 0.5 V; XTAL2 = N.C.; RESET = EA = VSS ; Port0 = VCC ; all other pins are disconnected; 8) ICC (active mode with slow-down mode) is measured : TBD 9) ICC (idle mode with slow-down mode) is measured : TBD 10) IPD (power-down mode) is measured under following conditions: EA = Port 0 = VCC; RESET =VSS; XTAL2 = N.C.; XTAL1 = VCC; VAGND = VSS; VAREF = VCC; all other pins are disconnected. 11) The typical ICC values are periodically measured at TA = +25 °C but not 100% tested. 12) The maximum ICC values are measured under worst case conditions (TA = 0 °C or -40 °C and VCC = 5.5 V) Semiconductor Group 5-3 Device Specifications C505A C505A ICC [mA] 30 25 20 TBD ICC max ICC typ 15 10 5 4 8 12 16 ICC Diagram C505A : Power Supply Current Calculation Formulas Parameter Symbol Formula Active mode ICC typ ICC max TBD TBD Idle mode ICC typ ICC max TBD TBD Active mode with slow-down enabled ICC typ ICC max TBD TBD Idle mode with slow-down enabled ICC typ ICC max TBD TBD Note : fosc is the oscillator frequency in MHz. ICC values are given in mA. Semiconductor Group 5-4 20 fOSC [MHz] Device Specifications C505A 5.3 A/D Converter Characteristics VCC = 5 V + 10%, – 15%; VSS = 0 V TA = 0 to 70 °C TA = – 40 to 85 °C TA = – 40 to 110 °C TA = – 40 to 125 °C for the SAB-C505A versions for the SAF-C505A versions for the SAH-C505A versions for the SAK-C505A versions 4 V ≤ VAREF ≤ VCC + 0.1 V ; VSS – 0.1 V ≤ VAGND ≤ Vss + 0.2 V Parameter Symbol Limit Values min. max. Unit Test Condition 1) Analog input voltage VAIN VAGND VAREF V Sample time tS – 64 x tIN 32 x tIN 16 x tIN 8 x tIN ns Prescaler ÷ 32 Prescaler ÷ 16 Prescaler ÷ 8 Prescaler ÷ 4 2) Conversion cycle time tADCC – 384 x tIN 192 x tIN 96 x tIN 48 x tIN ns Prescaler ÷ 32 Prescaler ÷ 16 Prescaler ÷ 8 Prescaler ÷ 4 3) Total unadjusted error TUE – ±2 LSB VSS+0.5V ≤ VAIN ≤ VCC-0.5V 4) – ±4 LSB VSS < VAIN < VCC+0.5V VCC - 0.5 V < VAIN < VCC Internal resistance of reference voltage source RAREF Internal resistance of analog source RASRC ADC input capacitance CAIN tADC / 250 kΩ – tADC in [ns] - 0.25 tS / 500 – kΩ tS in [ns] pF 6) - 0.25 – 50 Notes see next page. Clock calculation table : Clock Prescaler ADCL1, 0 Ratio tADC tS tADCC ÷ 32 1 1 32 x tIN 64 x tIN 384 x tIN ÷ 16 1 0 16 x tIN 32 x tIN 192 x tIN ÷8 0 1 8 x tIN 16 x tIN 96 x tIN ÷4 0 0 4 x tIN 8 x tIN 48 x tIN Further timing conditions : tADC min = 500 ns tIN = 1 / fOSC = tCLP Semiconductor Group 5) 6) 5-5 2) 6) 4) Device Specifications C505A Notes: 1) VAIN may exeed VAGND or VAREF up to the absolute maximum ratings. However, the conversion result in these cases will be X000H or X3FFH, respectively. 2) During the sample time the input capacitance CAIN must be charged/discharged by the external source. The internal resistance of the analog source must allow the capacitance to reach their final voltage level within tS. After the end of the sample time tS, changes of the analog input voltage have no effect on the conversion result. 3) This parameter includes the sample time tS, the time for determining the digital result and the time for the calibration. Values for the conversion clock tADC depend on programming and can be taken from the table on the previous page. 4) TUE is tested at VAREF = 5.0 V, VAGND = 0 V, VCC = 4.9 V. It is guaranteed by design characterization for all other voltages within the defined voltage range. If an overload condition occurs on maximum 2 unused analog input pins and the absolute sum of input overload currents on all analog input pins does not exceed 10 mA, an additional conversion error of 1/2 LSB is permissible. 5) During the conversion the ADC’s capacitance must be repeatedly charged or discharged. The internal resistance of the reference source must allow the capacitance to reach their final voltage level within the indicated time. The maximum internal resistance results from the programmed conversion timing. 6) Not 100% tested, but guaranteed by design characterization. Semiconductor Group 5-6 Device Specifications C505A 5.4 AC Characteristics (12 MHz, 0.5 Duty Cycle) TA = 0 to 70 °C TA = -40 to 85 °C TA = -40 to 110 °C TA = -40 to 125 °C VCC = 5V +10%, -15%; VSS = 0 V for the SAB-C505A versions for the SAF-C505A versions for the SAH-C505A versions for the SAK-C505A versions (CL for port 0, ALE and PSEN outputs = 100 pF; CL for all other outputs = 80 pF) Program Memory Characteristics Parameter Symbol Limit Values Unit 12 MHz clock Variable Clock 0.5 Duty Cycle 1/CLP = 2 MHz to 12 MHz min. max. min. max. ALE pulse width tLHLL 43 – CLP - 40 – ns Address setup to ALE tAVLL 17 – CLP/2 - 25 – ns Address hold after ALE tLLAX 17 – CLP/2 - 25 – ns ALE to valid instruction in tLLIV – 80 – 2 CLP - 87 ns ALE to PSEN tLLPL 22 – CLP/2 - 20 – ns PSEN pulse width tPLPH 95 – 3/2 CLP - 30 – ns PSEN to valid instruction in tPLIV – 60 – 3/2 CLP - 65 ns Input instruction hold after PSEN tPXIX 0 – 0 – ns Input instruction float after PSEN tPXIZ *) – 32 – CLP/2 - 10 ns Address valid after PSEN tPXAV 37 – CLP/2 - 5 – ns Address to valid instruction in tAVIV – 148 – 5/2 CLP - 60 ns Address float to PSEN tAZPL 0 – 0 – ns *) *) Interfacing the C505A to devices with float times up to 37 ns is permissible. This limited bus contention will not cause any damage to port 0 drivers. Semiconductor Group 5-7 Device Specifications C505A AC Characteristics (12 MHz, 0.5 Duty Cycle, cont’d) External Data Memory Characteristics Parameter Symbol Limit Values 12 MHz clock 0.5 Duty Cycle Unit Variable Clock 1/CLP = 2 MHz to 12 MHz min. max. min. max. RD pulse width tRLRH 180 – 3 CLP - 70 – ns WR pulse width tWLWH 180 – 3 CLP - 70 – ns Address hold after ALE tLLAX2 56 – CLP - 27 – ns RD to valid data in tRLDV – 118 – 5/2 CLP- 90 ns Data hold after RD tRHDX 0 – 0 – ns Data float after RD tRHDZ – 63 – CLP - 20 ns ALE to valid data in tLLDV – 200 – 4 CLP - 133 ns Address to valid data in tAVDV – 220 – 9/2 CLP - 155 ns ALE to WR or RD tLLWL 75 175 3/2 CLP - 50 3/2 CLP + 50 ns Address valid to WR tAVWL 70 – 2 CLP - 97 – ns WR or RD high to ALE high tWHLH 17 67 CLP/2 - 25 CLP/2 + 25 ns Data valid to WR transition tQVWX 5 – CLP/2 - 37 – ns Data setup before WR tQVWH 170 – 7/2 CLP - 122 – ns Data hold after WR tWHQX 15 – CLP/2 - 27 – ns Address float after RD tRLAZ – 0 – 0 ns External Clock Drive Characteristics Parameter Symbol Limit Values Unit Variable Clock Freq. = 2 MHz to 12 MHz min. max. Oscillator period CLP 83.3 500 ns High time TCLH 20 CLP-TCLL ns Low time TCLL 20 CLP-TCLH ns Rise time tR – 12 ns Fall time tF – 12 ns Oscillator duty cycle DC 0.5 0.5 – Semiconductor Group 5-8 Device Specifications C505A 5.5 AC Characteristics (16 MHz, 0.4 to 0.6 Duty Cycle) TA = 0 to 70 °C TA = -40 to 85 °C VCC = 5V +10%, -15%; VSS = 0 V for the SAB-C505A versions for the SAF-C505A versions (CL for port 0, ALE and PSEN outputs = 100 pF; CL for all other outputs = 80 pF) Program Memory Characteristics Parameter Symbol Limit Values Unit 16-MHz clock Variable Clock Duty Cycle 1/CLP= 2 MHz to 16 MHz 0.4 to 0.6 min. max. min. max. ALE pulse width tLHLL 48 – CLP - 15 – ns Address setup to ALE tAVLL 10 – TCLHmin -15 – ns Address hold after ALE tLLAX 10 – TCLHmin -15 – ns ALE to valid instruction in tLLIV – 75 – 2 CLP - 50 ns ALE to PSEN tLLPL 10 – TCLLmin -15 – ns PSEN pulse width tPLPH 73 – CLP+ TCLHmin -15 – ns PSEN to valid instruction in tPLIV – 38 – CLP+ ns TCLHmin- 50 Input instruction hold after PSEN tPXIX 0 – 0 – ns Input instruction float after PSEN tPXIZ *) – 15 – TCLLmin -10 ns Address valid after PSEN tPXAV 20 – TCLLmin - 5 – ns Address to valid instruction in tAVIV – 95 – 2 CLP + TCLHmin -55 ns Address float to PSEN tAZPL -5 – -5 – ns *) *) Interfacing the C505A to devices with float times up to 20 ns is permissible. This limited bus contention will not cause any damage to port 0 drivers. Semiconductor Group 5-9 Device Specifications C505A AC Characteristics (16 MHz, 0.4 to 0.6 Duty Cycle, cont’d) External Data Memory Characteristics Parameter Symbol Limit Values 16-MHz clock Duty Cycle 0.4 to 0.6 Unit Variable Clock 1/CLP= 2 MHz to 16 MHz min. max. min. max. RD pulse width tRLRH 158 – 3 CLP - 30 – ns WR pulse width tWLWH 158 – 3 CLP - 30 – ns Address hold after ALE tLLAX2 48 – CLP - 15 – ns RD to valid data in tRLDV – 100 – 2 CLP+ TCLHmin - 50 ns Data hold after RD tRHDX 0 – 0 – ns Data float after RD tRHDZ – 51 – CLP - 12 ns ALE to valid data in tLLDV – 200 – 4 CLP - 50 ns Address to valid data in tAVDV – 200 – 4 CLP + TCLHmin -75 ns ALE to WR or RD tLLWL 73 103 CLP + TCLLmin - 15 CLP+ TCLLmin+ 15 ns Address valid to WR tAVWL 95 – 2 CLP - 30 – ns WR or RD high to ALE high tWHLH 10 40 TCLHmin - 15 TCLHmin + 15 ns Data valid to WR transition tQVWX 5 – TCLLmin - 20 – ns Data setup before WR tQVWH 163 – 3 CLP + TCLLmin - 50 – ns Data hold after WR tWHQX 5 – TCLHmin - 20 – ns Address float after RD tRLAZ – 0 – 0 ns Semiconductor Group 5-10 Device Specifications C505A AC Characteristics (16 MHz, 0.4 to 0.6 Duty Cycle, cont’d) External Clock Drive Characteristics Parameter Symbol CPU Clock = 16 MHz Duty Cycle 0.4 to 0.6 Variable CPU Clock 1/CLP = 2 to 16 MHz min. max. min. max. Unit Oscillator period CLP 62.5 62.5 62.5 500 ns High time TCLH 25 – 25 CLP - TCLL ns Low time TCLL 25 – 25 CLP - TCLH ns Rise time tR – 10 – 10 ns Fall time tF – 10 – 10 ns Oscillator duty cycle DC 0.4 0.6 25 / CLP 1 - 25 / CLP – Clock cycle TCL 25 37.5 CLP * DCmin CLP * DCmax ns Note: The 16 MHz values in the tables are given as an example for a typical duty cycle variation of the oscillator clock from 0.4 to 0.6. Semiconductor Group 5-11 Device Specifications C505A 5.6 AC Characteristics (20 MHz, 0.5 Duty Cycle) TA = 0 to 70 °C TA = -40 to 85 °C VCC = 5V +10%, -15%; VSS = 0 V for the SAB-C505A versions for the SAF-C505A versions (CL for port 0, ALE and PSEN outputs = 100 pF; CL for all other outputs = 80 pF) Program Memory Characteristics Parameter Symbol Limit Values Unit 20 MHz clock Variable Clock 0.5 Duty Cycle 1/CLP = 2 MHz to 20 MHz min. max. min. max. ALE pulse width tLHLL 35 – CLP - 15 – ns Address setup to ALE tAVLL 10 – CLP/2 - 15 – ns Address hold after ALE tLLAX 10 – CLP/2 - 15 – ns ALE to valid instruction in tLLIV – 55 – 2 CLP - 45 ns ALE to PSEN tLLPL 10 – CLP/2 - 15 – ns PSEN pulse width tPLPH 60 – 3/2 CLP - 15 – ns PSEN to valid instruction in tPLIV – 25 – 3/2 CLP - 50 ns Input instruction hold after PSEN tPXIX 0 – 0 – ns Input instruction float after PSEN tPXIZ *) – 20 – CLP/2 - 5 ns Address valid after PSEN tPXAV *) 20 – CLP/2 - 5 – ns Address to valid instruction in tAVIV – 65 – 5/2 CLP - 60 ns Address float to PSEN tAZPL -5 – -5 – ns *) Interfacing the C505A to devices with float times up to 20 ns is permissible. This limited bus contention will not cause any damage to port 0 drivers. Semiconductor Group 5-12 Device Specifications C505A AC Characteristics (20 MHz, 0.5 Duty Cycle, cont’d) External Data Memory Characteristics Parameter Symbol Limit Values 20 MHz clock 0.5 Duty Cycle Unit Variable Clock 1/CLP = 2 MHz to 20 MHz min. max. min. max. RD pulse width tRLRH 120 – 3 CLP - 30 – ns WR pulse width tWLWH 120 – 3 CLP - 30 – ns Address hold after ALE tLLAX2 35 – CLP - 15 – ns RD to valid data in tRLDV – 75 – 5/2 CLP- 50 ns Data hold after RD tRHDX 0 – 0 – ns Data float after RD tRHDZ – 38 – CLP - 12 ns ALE to valid data in tLLDV – 150 – 4 CLP - 50 ns Address to valid data in tAVDV – 150 – 9/2 CLP - 75 ns ALE to WR or RD tLLWL 60 90 3/2 CLP - 15 3/2 CLP + 15 ns Address valid to WR tAVWL 70 – 2 CLP - 30 – ns WR or RD high to ALE high tWHLH 10 40 CLP/2 - 15 CLP/2 + 15 ns Data valid to WR transition tQVWX 5 – CLP/2 - 20 – ns Data setup before WR tQVWH 125 – 7/2 CLP - 50 – ns Data hold after WR tWHQX 5 – CLP/2 - 20 – ns Address float after RD tRLAZ – 0 – 0 ns External Clock Drive Characteristics Parameter Symbol Limit Values Unit Variable Clock Freq. = 2 MHz to 20 MHz min. max. Oscillator period CLP 50 500 ns High time TCLH 15 CLP-TCLL ns Low time TCLL 15 CLP-TCLH ns Rise time tR – 10 ns Fall time tF – 10 ns Oscillator duty cycle DC 0.5 0.5 – Semiconductor Group 5-13 Device Specifications C505A Program Memory Read Cycle Semiconductor Group 5-14 Device Specifications C505A Data Memory Read Cycle Semiconductor Group 5-15 Device Specifications C505A Data Memory Write Cycle tR TCL H tF 0.7 V CC 0.2 V CC - 0.1 TCL L CLP External Clock Drive on XTAL1 Semiconductor Group 5-16 MCT03310 Device Specifications C505A 5.7 OTP Memory Characteristics 5.7.1 Programming Mode Timing Characteristics VCC = 5 V ± 10 %; VPP = 11.5 V ± 5 %; TA = 25 °C ± 10 °C Parameter Symbol Limit Values min. max. Unit PALE pulse width tPAW 35 – PMSEL setup to PALE rising edge tPMS 10 – Address setup to PALE, PROG, or PRD falling edge tPAS 10 – ns Address hold after PALE, PROG, or PRD falling edge tPAH 10 – ns Address, data setup to PROG or PRD tPCS 100 – ns Address, data hold after PROG or PRD tPCH 0 – ns PMSEL setup to PROG or PRD tPMS 10 – ns PMSEL hold after PROG or PRD tPMH 10 – ns PROG pulse width tPWW 100 – µs PRD pulse width tPRW 100 – ns Address to valid data out tPAD – 75 ns PRD to valid data out tPRD – 20 ns Data hold after PRD tPDH 0 – ns Data float after PRD tPDF – 20 ns PROG high between two consecutive PROG tPWH1 low pulses 1 – µs PRD high between two consecutive PRD low tPWH2 pulses 100 XTAL clock period tCLKP 83.3 Semiconductor Group 5-17 ns ns 500 ns Device Specifications C505A tPAW PALE tPMS H, H PMSEL1,0 tPAS Port 2 tPAH A0-7 A8-14 Port 0 D0-7 tPWW tPWH PROG tPCS tPCH Notes : PRD must be high during a programming write cycle Programming Code Byte - Write Cycle Timing Semiconductor Group 5-18 Device Specifications C505A tPAW PALE tPMS H, H PMSEL1,0 tPAS tPAH A0-7 A8-14 Port 2 tPAD tPDH Port 0 D0-7 tPDF tPRD PRD tPWH tPCS tPRW Notes : PROG must be high during a programming read cycle Verify Code Byte - Read Cycle Timing Semiconductor Group 5-19 tPCH Device Specifications C505A H, L PMSEL1,0 Port 0 H, L D0, D1 D0, D1 tPCH tPCS tPMS tPMH PROG tPRD tPDH tPMS tPWW tPMH PRD tPRW Note : PALE should be low during a lock bit read/write cycle Lock Bit Access Timing PMSEL1,0 L, H e.g. FDH Port 2 tPCH D0-7 Port 0 tPCS tPMS tPDH tPRD tPDF tPMH PRD tPRW Note : PROG must be high during a programming read cycle Version Registers - Read Timing Semiconductor Group 5-20 tPDF Device Specifications C505A 5.7.2 OTP Verification Mode Characteristics Parameter Symbol Limit Values Unit min. typ max. ALE pulse width tAWD – CLP – ns ALE period tACY – 6 CLP – ns Data valid after ALE tDVA – – 2 CLP ns Data stable after ALE tDSA 4 CLP – – ns P3.5 setup to ALE low tAS – – ns Oscillator frequency 1/ CLP 4 TCLH – 6 MHz OTP Verification Mode Note: This mode cannot be entered into if OTP protection levels of 1 to 3 are programmed. Semiconductor Group 5-21 Device Specifications C505A AC Inputs during testing are driven at VCC - 0.5 V for a logic ’1’ and 0.45 V for a logic ’0’. Timing measurements are made at VIHmin for a logic ’1’ and VILmax for a logic ’0’. AC Testing: Input, Output Waveforms For timing purposes a port pin is no longer floating when a 100 mV change from load voltage occurs and begins to float when a 100 mV change from the loaded VOH/VOL level occurs. AC Testing : Float Waveforms Crystal Oscillator Mode Driving from External Source C XTAL2 N.C. XTAL2 2 - 20 MHz C XTAL1 XTAL1 External Oscillator Signal Crystal Mode : C = 20 pF ± 10 pF (incl. stray capacitance) Recommended Oscillator Circuits for Crystal Oscillator Semiconductor Group 5-22 Device Specifications C505A 5.8 Package Information GPM05622 Plastic Package, P-MQFP-44-2 (SMD) (Plastic Metric Quad Flat Pack) Dimensions in mm P-MQFP-44-2 Outline Sorts of Packing Package outlines for tubes, trays etc. are contained in our Data Book “Package Information”. SMD = Surface Mounted Device Semiconductor Group 5-23 Introduction C505A 6 CCH3 . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 CCL1 . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 CCL2 . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 CCL3 . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 CLK . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-9 CLKOUT . . . . . . . . . . . . . . . . . . . . . . . . .2-7 CMOD . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAH0 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAH1 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAH2 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAH3 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAL0 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAL1 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAL2 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 COCAL3 . . . . . . . . . . . . . . . . . . . . . . . . .2-8 CPUUPD . . . . . . . . . . . . . . . . . . . . . . . .2-10 CR . . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 CRCH . . . . . . . . . . . . . . . . . . . . . . . . . . .2-5 CRCL . . . . . . . . . . . . . . . . . . . . . . . . . . .2-5 CSWO . . . . . . . . . . . . . . . . . . . . . . . 2-3, 2-8 CY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 Index Note: Bold page numbers refer to the main definition part of SFRs or SFR bits. A A/D converter . . . . . . . . . . . . . . . .3-1–3-13 Analog input pin selection . . . . . . . . 3-13 Block diagram . . . . . . . . . . . . . . . . . . 3-2 Calibration mechanisms . . . . . . . . . 3-12 Clock selection . . . . . . . . . . . . . . . . . . 3-7 Conversion time calculation . . . . . . . 3-10 Conversion timing . . . . . . . . . . . . . . . 3-8 General operation . . . . . . . . . . . . . . . 3-1 Registers . . . . . . . . . . . . . . . . . . .3-3–3-6 System clock relationship . . . . . . . . . 3-9 A/D converter characteristics . . . . .5-5–5-6 Absolute maximum ratings . . . . . . . . . . 5-1 AC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 AC characteristics . . . . . . . . . . . . .5-7–5-13 12 MHz Timing . . . . . . . . . . . . . . .5-7–5-8 16 MHz Timing . . . . . . . . . . . . . .5-9–5-11 20 MHz Timing . . . . . . . . . . . . . 5-12–5-13 AC Testing Float waveforms . . . . . . . . . . . . . . . 5-22 Input/output waveforms . . . . . . . . . . 5-22 ACC . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 ADCL1 . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9 ADCL1-0 . . . . . . . . . . . . . . . . . . . . . . . . 3-5 ADCON0 . . . . . . . . . . . . . 2-4, 2-5, 2-9, 3-4 ADCON1 . . . . . . . . . . . . . . . . . 2-4, 2-9, 3-4 ADDATH . . . . . . . . . . . . . . . . . 2-4, 2-9, 3-3 ADDATL . . . . . . . . . . . . . . . . . 2-4, 2-9, 3-3 ADM . . . . . . . . . . . . . . . . . . . . . . . .2-9, 3-4 D DB0 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB1 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB2 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB3 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB4 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB5 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB6 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DB7 . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-11 DC characteristics . . . . . . . . . . . . . . 5-2–5-3 Device Characteristics . . . . . . . . . 5-1–5-23 DIR . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 DLC . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 DPH . . . . . . . . . . . . . . . . . . . . . . . . 2-4, 2-7 DPL . . . . . . . . . . . . . . . . . . . . . . . . . 2-4, 2-7 DPSEL . . . . . . . . . . . . . . . . . . . . . . 2-4, 2-7 B B . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 BD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9 BOFF . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 BRP . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 BSY . . . . . . . . . . . . . . . . . . . . . . . . .2-9, 3-4 BTR0 . . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 BTR1 . . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 C C/T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 CCE . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 CCEN . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-8 CCH1 . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-8 CCH2 . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-8 Semiconductor Group 6-1 E EA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EADC . . . . . . . . . . . . . . . . . . . . . . . 2-8, 3-6 EALE . . . . . . . . . . . . . . . . . . . . . . . . 1-8, 2-8 EAN0 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EAN1 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EAN2 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EAN3 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EAN4 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 EAN5 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 Introduction C505A EAN6 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EAN7 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EAN7-0 . . . . . . . . . . . . . . . . . . . . . . . . 3-13 ECAN . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EIE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 ES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 ET0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 ET1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 ET2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EWPD . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EWRN . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 EX0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EX1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 EX3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EX4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EX5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EX6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EXEN2 . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 EXF2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 IEX4 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 IEX5 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 IEX6 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 INIT . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 INT0 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 INT1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 INT4 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 INT5 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 INTID . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 INTPND . . . . . . . . . . . . . . . . . . . . . . . .2-10 IP0 . . . . . . . . . . . . . . . . . . . . . 2-4, 2-5, 2-7 IP1 . . . . . . . . . . . . . . . . . . . . . . . . . 2-4, 2-8 IR . . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 IRCON . . . . . . . . . . . . . . . . . . 2-4, 2-8, 3-6 IT0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 IT1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 L LAR0 . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 LAR1 . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 LEC0 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 LEC1 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 LEC2 . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 LGML0 . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 LGML1 . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 LMLM0 . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 LMLM1 . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 Logic symbol . . . . . . . . . . . . . . . . . . . . . .1-3 F F0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Features . . . . . . . . . . . . . . . . . . . . . . . . Functional units . . . . . . . . . . . . . . . . . . . 2-8 2-8 1-2 1-1 G GATE . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 GF0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 GF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 GMS0 . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 GMS1 . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 M M0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 M1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 MCFG . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 MCR0 . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 MCR1 . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 Memory organization . . . . . . . . . . . . . . .2-1 Data memory . . . . . . . . . . . . . . . . . . . .2-2 General purpose registers . . . . . . . . . .2-2 Memory map . . . . . . . . . . . . . . . . . . . .2-1 Program memory . . . . . . . . . . . . . . . .2-2 MSGLST . . . . . . . . . . . . . . . . . . . . . . . .2-10 MSGVAL . . . . . . . . . . . . . . . . . . . . . . . .2-10 MX0 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-9 MX1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-9 MX2 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-9 MX2-0 . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4 I I3FR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 IADC . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 ID12 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 ID17 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 ID20 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 ID28 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 ID4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 IDLE . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 IDLS . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 IE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 IE0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 IE1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 IEN0 . . . . . . . . . . . . . . . . . . . . 2-4, 2-5, 2-7 IEN1 . . . . . . . . . . . . . . . . 2-4, 2-5, 2-8, 3-6 IEX3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 Semiconductor Group 6-2 N NEWDAT . . . . . . . . . . . . . . . . . . . . . . .2-10 Introduction C505A O SCON . . . . . . . . . . . . . . . . . . . 2-4, 2-5, 2-7 SD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 SIE . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 SJW . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 SM0 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 SM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 SM2 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 SMOD . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 SP . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4, 2-7 Special Function Registers . . . . . . . . . . .2-3 Access with RMAP . . . . . . . . . . . . . . .2-3 CAN registers - address ordered 2-10–2-11 Table - address ordered . . . . . . . 2-7–2-9 Table - functional order . . . . . . . . 2-4–2-6 SR . . . . . . . . . . . . . . . . . . . . . . . . . 2-6, 2-10 SRELH . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 SRELL . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-7 SWDT . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 SWI . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 SYSCON . . . . . . . . . . . . . . . . . 2-3, 2-4, 2-8 OTP memory . . . . . . . . . . . . . . . . .4-1–4-13 Basic Mode Selection . . . . . . . . . . . . 4-5 Pin Configuration . . . . . . . . . . . . . . . . 4-1 Program/read operation . . . . . . . . . . . 4-7 OTP Protection Protected Verification Mode . . . . . . . 4-12 Verification example . . . . . . . . . . . . 4-13 Verification timing . . . . . . . . . . . . . . 4-12 OV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 OWDS . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 P P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 P0 . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-7 P1 . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-7 P1ANA . . . . . . . . . . . . . . . . . . 2-4, 2-7, 3-13 P2 . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-7 P3 . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-8 P4 . . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 Package information . . . . . . . . . . . . . . 5-23 PCON . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 PCON1 . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 PDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 PDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 Pin Configuration . . . . . . . . . . . . . . . . . . 1-4 Pin Definitions and functions (Normal Mode) 1-5–1-9 Pin Definitions and functions (OTP Mode) 4-3–4-4 PSW . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-8 R RB8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 RD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 Recommended oscillator circuits . . . . . 5-22 REN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 RI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 RMAP . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 RMTPND . . . . . . . . . . . . . . . . . . . . . . . 2-10 RS0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 RS1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 RxD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 RXDC . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9 RXIE . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 RXOK . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 S SBUF . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 Semiconductor Group 6-3 T T0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 T2CM . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2CON . . . . . . . . . . . . . . . . . . 2-4, 2-5, 2-8 T2EX . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 T2I0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2I1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2PS . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2R0 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 T2R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 TB8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 TCON . . . . . . . . . . . . . . . . . . . 2-4, 2-5, 2-7 TEST . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 TF0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 TF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 TF2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-8 TH0 . . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-7 TH1 . . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-7 TH2 . . . . . . . . . . . . . . . . . . . . . . . . . 2-5, 2-8 TI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-7 Timings Data memory read cycle . . . . . . . . . .5-15 Data memory write cycle . . . . . . . . . .5-16 External clock timing . . . . . . . . . . . . .5-16 Introduction C505A OTP verification mode . . . . . . . . . . . 5-21 Program memory read cycle . . . . . . 5-14 TL0 . . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 TL1 . . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 TL2 . . . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-8 TMOD . . . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 TR0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 TR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 TSEG1 . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 TSEG2 . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 TxD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 TXDC . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9 TXIE . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 TXOK . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 TXRQ . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 U UAR0 . . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 UAR1 . . . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 UGML0 . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 UGML1 . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 UMLM0 . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 UMLM1 . . . . . . . . . . . . . . . . . . . . .2-6, 2-10 V VR0 . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 VR1 . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 VR2 . . . . . . . . . . . . . . . . . . . . . . . . .2-4, 2-9 W WDT . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 WDTPSEL . . . . . . . . . . . . . . . . . . . . . . . 2-7 WDTREL . . . . . . . . . . . . . . . . . . . . .2-5, 2-7 WDTS . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 WR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 WS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 X XMAP0 . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 XMAP1 . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 XPAGE . . . . . . . . . . . . . . . . . . . . . .2-4, 2-7 XTD . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10 Semiconductor Group 6-4