51
M44C260/M48C260 Rev. A2, 01-Oct-98 1 (51) MARC4 – 4-bit Microcontroller The M44C260 and M48C260 are members of the TEMIC family of 4-bit single chip microcontrollers. The M48C260 is the user programmable version of the M44C260. It contains an EEPROM program memory instead of a ROM. Both microcontroller types contain RAM, EEPROM data memory, parallel I/O ports, one timer with watchdog function, two 8/16-bit multifunction timer/counter and the on-chip clock generation. Features 4-bit HARVARD architecture 1 μs instruction cycle 4K 8-bit application program memory 256 4-bit RAM 16 8-bit EEPROM 16 bidirectional I/O’s 8 hard and software interrupt levels 2 8-bit multifunction timer/counter Interval timer with watchdog 32 kHz on-chip oscillator Benefits Low power consumption Power-down mode < 1 μA 2.4 to 6.2 V supply voltage Self-test functions High-level programming language in qFORTH User programmable with the application program MARC4 Interrupt inputs Clock Timer 2 Timer 1 EEPROM Timer A Intervall timer Timer B Reset TE TCL Port 0 Port 1 Port 2 Port 3 Input Port 4 OSCIN OSCOUT TA TB 16 x 8 bit I/O bus EEPROM RAM 4–bit CPU core 4K x 8 bit 256 x 4 bit Watch- dog I/O I/O I/O I/O INT6 Test Sleep NWP NRST IP40 IP43 V DD V SS 94 9038 ROM or Figure 1. Block diagram

MARC4 4-bit Microcontrollerlaurent.deschamps.free.fr/plip/69665_M44C260.pdf · M44C260/M48C260 Rev. A2, 01-Oct-98 1 (51) MARC4 – 4-bit Microcontroller The M44C260 and M48C260 are

Embed Size (px)

Citation preview

M44C260/M48C260

Rev. A2, 01-Oct-98 1 (51)

MARC4 – 4-bit Microcontroller

The M44C260 and M48C260 are members of the TEMIC family of 4-bit single chip microcontrollers. The M48C260is the user programmable version of the M44C260. It contains an EEPROM program memory instead of a ROM. Bothmicrocontroller types contain RAM, EEPROM data memory, parallel I/O ports, one timer with watchdog function, two8/16-bit multifunction timer/counter and the on-chip clock generation.

Features 4-bit HARVARD architecture

1 µs instruction cycle

4K8-bit application program memory

2564-bit RAM

168-bit EEPROM

16 bidirectional I/O’s

8 hard and software interrupt levels

28-bit multifunction timer/counter

Interval timer with watchdog

32 kHz on-chip oscillator

Benefits

Low power consumption

Power-down mode < 1 µA

2.4 to 6.2 V supply voltage

Self-test functions

High-level programming language in qFORTH

User programmable with the application program

MARC4

Interrupt inputs

Clock

Timer 2Timer 1

EEPROM

Timer AIntervall timer

Timer B

Reset

TE TCL

Port 0 Port 1 Port 2 Port 3

InputPort 4

OSCIN OSCOUT

TA TB

16 x 8 bit

I/O bus

EEPROMRAM

4–bit CPU core

4K x 8 bit 256 x 4 bit Watch- dog

I/O I/O I/O I/O

INT6

Test

Sleep

NWP NRST

IP40 IP43

VDDVSS

94 9038

ROM or

Figure 1. Block diagram

M44C260/M48C260

Rev. A2, 01-Oct-982 (51)

1

2

3

4

5

6

7

8

9

10

11

12

13

14 15

16

17

18

19

20

21

23

24

IP40–INT6

BP00

BP01BP02

BP03

BP13

BP12BP11

BP10

TCL

VSS

OSC IN

OSC OUT

VDD

BP33

22

25

26

27

28

BP30

BP31

BP32

NWP

TE

NRST

BP20

BP21

BP22

BP23

IP41–TA

M48C260

IP43

IP42–TB

94 9039

M44C260

Figure 2. Pin connections for SSO28–FN

INT6–IP40

BP03

BP02 BP01

BP00

BP13

BP12BP11

BP10

NRST

TCL

BP20

TE

VSSOSC IN

OSC OUT

VDD

BP31

BP30

TA–IP41

1

2

4

5

6

7

8

9

10

15

16

17

19

20

14

11

12

13

M44C260

3 18

Figure 3. Pin connections for SSO20

Table 1. Pin description

Name FunctionÁÁÁÁÁÁÁÁÁÁ

VDDÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Power supply voltage +2.4 to +6.2 VÁÁÁÁÁÁÁÁÁÁ

VSSÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Circuit groundÁÁÁÁÁÁÁÁÁÁ

BP00 – BP03ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

4 bidirectional I/O lines of Port 0 *ÁÁÁÁÁÁÁÁÁÁ

BP10 – BP13ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

4 bidirectional I/O lines of Port 1 *ÁÁÁÁÁÁÁÁÁÁ

BP20 – BP23ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

4 bidirectional I/O lines of Port 2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

BP30 – BP33ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

4 bidirectional I/O lines of Port 3 with alternate interrupt function.A negative transition on BP30/BP31 requests an INT2-, and on BP32/BP33 an INT3-interrupt ifthe corresponding interrupt-mask is set.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IP40-INT6 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input port 40 line/interrupt 6 input *A negative transition on this input requests an INT6 interrupt if the IM6 mask bit is set.

ÁÁÁÁÁÁÁÁÁÁ

IP41-TA ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer/counter I/O/Input Port 41 line *This line can be used as programmable I/O of counter A or as Port 41 input.ÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

IP42-TBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer/counter I/O/input Port 42 line *This line can be used as programmable I/O of counter B or as Port 42 input.

ÁÁÁÁÁÁÁÁÁÁ

IP43 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input Port 43 line *)

ÁÁÁÁÁÁÁÁÁÁ

NWP ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM write protect input, a logic low on this input protects EEPROM rows 12 to 15.

ÁÁÁÁÁÁÁÁÁÁ

OSCIN ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Oscillator input (32-kHz crystal).

ÁÁÁÁÁOSCOUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOscillator output (32-kHz crystal).ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

NRSTÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset input/output, a logic low on this pin resets the device. An internal watchdog reset is indicated by a low level on this pin.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External system clock I/O. This pin can be used as input to provide the C with an externalclock or as output of the internal system clock.

ÁÁÁÁÁÁÁÁÁÁ

TE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Testmode input. This input is used to control the test modes and the function of the TCL pin.

*) The I/O ports have CMOS output buffers. As input they are available with pull-up or pull-down resistors.Please see the ordering information.

M44C260/M48C260

Rev. A2, 01-Oct-98 3 (51)

Contents

1 MARC4 Architecture 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 General Description 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2 Components of MARC4 Core 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.1 Program Memory (ROM or EEPROM) 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.2 Data Memory (RAM) 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.3 Registers 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.4 ALU 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.5 Self-Check 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.6 Instruction Cycles 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.7 I/O Bus 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.8 Interrupt Structure 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Software Interrupts 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Hardware Interrupts 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3 Reset 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4 Clock Generation 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4.1 Clock Status/Control Register (CSC) 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4.2 TCL Signal 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.5 Power Down Modes 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Peripheral Modules 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Addressing Peripherals 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.1 Input Port 4 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.2 Bidirectional Ports 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.3 External Interrupt Inputs 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2 Timer 1 17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.1 T1C – Timer 1 Control Register 18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2 WDC – Watchdog Control Register 18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3 Timer 2 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.1 Timer 2 Status/Control Register (T2SC) 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.2 Timer 2 Subport (T2SUB) 22. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.3 Timer 2 Reload Register 22. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.4 Timer 2 Capture Register 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.5 Timer A Mode Register 1 (TAM1) 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.6 Timer A Mode Register 2 (TAM2) 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.7 Timer B Mode Register 1 (TBM1) 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.8 Timer B Mode Register 2 (TBM2) 25. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.9 Timer 2 Prescaler Control Register (T2PC) 25. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.10 Timer 2 Interrupt Control Register (T2IC) 26. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.11 Timer I/O (TA/TB) 27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4 EEPROM 28. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.1 EEPROM SubPort (ESUB) 28. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4.2 EEPROM Mode/Status Register (EMS) 29. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

M44C260/M48C260

Rev. A2, 01-Oct-984 (51)

Contents (continued)

3 Appendix 30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Emulation 30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.2 Programming the EEPROM Program Memory 30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3 MARC4 Instruction Set 30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3.1 MARC4 Instruction Set Overview 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3.2 qFORTH Language Overview 32. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4 The qFORTH Language - Quick Reference Guide 33. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.1 Arithmetic/Logical 33. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.2 Comparisons 33. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.3 Control Structures 34. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.4 Stack Operations 34. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.5 Memory Operations 35. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.6 Predefined Structures 36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4.7 Assembler Mnemonics 36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Electrical Characteristics 38. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.1 Absolute Maximum Ratings 38. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2 DC Operating Characteristics 38. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.3 AC Characteristics 39. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.4 Schmitt-Trigger Inputs 45. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 Pad Layout 46. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6 Package Information 48. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 Standard Design of M48C260 49. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8 Ordering Information for M44C260 50. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

M44C260/M48C260

Rev. A2, 01-Oct-98 5 (51)

1 MARC4 Architecture1.1 General Description

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏ

Instruction decoder

CCR

TOS

ALU

RAMPC

RPSP

XYProgram

256 x 4-bit

MARC4 CORE

Clock

Reset

Sleep

Memory bus

I/O bus

Instruction bus

Reset

System clock Interrupt

controller

On–chip peripheral modules94 8973

memory

Figure 4. MARC4 core

The MARC4 microcontroller consists of an advancedstack based 4-bit CPU core and on-chip peripherals. TheCPU is based on the HARVARD architecture with aphysically separate program memory (ROM orEEPROM) and data memory (RAM). Three independentbuses the instruction bus, the memory bus and the I/O busare used for parallel communication between programmemory, RAM and peripherals. This enhances programexecution speed by allowing both instruction prefetching,and simultaneous communication to the on-chip periph-eral circuitry. The integrated powerful interruptcontroller with eight prioritized interrupt levels, supportsfast processing of hardware events.The MARC4 is designed for the high level programminglanguage qFORTH. The core contains both FORTHstacks, expression stack and return stack. This architec-ture allows high level language programming without anyloss in efficiency or code density.

1.2 Components of MARC4 CoreThe core contains a program memory, RAM, ALU, pro-gram counter, RAM address register, instruction decoder

and interrupt controller. The following sections describeeach of these parts.

1.2.1 Program Memory (ROM orEEPROM)

The ROM is mask programmed with the application pro-gram during the fabrication of the microcontroller. TheEEPROM is programmed by the customer using a specialprogramming device (see chapter ”Progamming theEEPROM Program Memory”). The program memory isaddressed by a 12-bit wide program counter, thus limitingthe program size to a maximum of 4 Kbytes. TheM44C260 contains an additional 1 Kbyte ROM for testsoftware. The program memory starts with a 512 byte seg-ment (zero page) which contains predefined startaddresses for interrupt service routines and special sub-routines accessible with single byte instructions(SCALL). The corresponding memory map is shown inthe figure 4.Look-up tables of constants can also be heldin the program memory and are accessed via theMARC4’s built-in TABLE instruction.

M44C260/M48C260

Rev. A2, 01-Oct-986 (51)

FFFh

1FFh

000h

memory(4K x 8-bit)

ÏÏÏÏÏÏÏÏÏÏÏÏ

Zero page

Self test

140h

180h

040h

0C0h

008h $AUTOSLEEP$RESET

INT0

INT1

INT2

INT3

INT4

INT5

INT6

INT71E0h

1C0h

100h

080h

Zeropage

1F0h1F8h

010h018h

000h008h

020h

1E8h1E0h

SC

ALL

add

ress

es

000h

000h

3FFh

94 8974

Program

bank (1K)

M44C260only

Figure 5. Program memory map

1.2.2 Data Memory (RAM)

The MARC4 contains a 256 x 4-bit wide static random ac-cess memory (RAM). It is used for the expression stack,the return stack and data memory for variables and arrays.The RAM is addressed by any of the four 8-bit wide RAMaddress registers SP, RP, X and Y.

Expression Stack

The 4-bit wide expression stack is addressed with the ex-pression stack pointer (SP). All arithmetic, I/O andmemory reference operations take their operands from,and return their result to the expression stack. TheMARC4 performs the operations with the top of stackitems (TOS and TOS-1). The TOS register contains the

top element of the expression stack and works like anaccumulator. This stack is also used for passing parame-ters between subroutines, and as a scratchpad area fortemporary storage of data.

Return Stack

The 12-bit wide return stack is addressed by the returnstack pointer (RP). It is used for storing return addressesof subroutines, interrupt routines and for keeping loop in-dex counts. The return stack can also be used as atemporary storage area.

The MARC4 instruction set supports the exchange of databetween the top elements of the expression stack and thereturn stack. The two stacks within the RAM have a userdefinable location and maximum depth.

ÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏ

RAM

FCh

00h

Autosleep

FFh

03h04h

X

Y

SP

RP

TOS–1

Expressionstack

Returnstack

Globalvariables

RA

M a

ddre

ss r

egis

ter:

07h

(256 x 4-bit)

Globalvariables

4-bit

TOSTOS–1TOS–2

3 0

SP

Expression stack

Return stack

ÏÏÏÏÏ011

12-bit

RP

v

94 8975

Figure 6. RAM map

M44C260/M48C260

Rev. A2, 01-Oct-98 7 (51)

1.2.3 Registers

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

TOS

CCR

03

03

07

07

07

011

RP

SP

X

Y

PC

– B I

Program counter

Return stack pointer

Expression stack pointer

RAM address register (X)

RAM address register (Y)

Top of stack register

Condition code register

Carry / borrow

BranchInterrupt enable

Unused

07

0 0

C

94 8976

Figure 7. Programming model

The MARC4 controller has six programmable registersand one condition code register. They are shown infigure 7.

Program Counter (PC)

The program counter (PC) is a 12-bit register that containsthe address of the next instruction to be fetched from theprogram memory. Instructions currently being executedare decoded in the instruction decoder to determine theinternal micro operations. For linear code (no calls orbranches) the program counter is incremented with everyinstruction cycle. If a branch-, call-, return-instruction oran interrupt is executed the program counter is loadedwith a new address. The program counter is also used withthe TABLE instruction to fetch 8-bit wide ROMconstants.

RAM Address Register

The RAM is addressed with the four 8-bit wide RAMaddress registers: SP, RP, X and Y. These registers allowaccess to any of the 256 RAM nibbles.

Expression Stack Pointer (SP)

The stack pointer (SP) contains the address of the next-to-top 4-bit item (TOS-1) of the expression stack. Thepointer is automatically pre-incremented if a nibble ismoved onto the stack, or post-decremented if a nibble is

removed from the stack. Every post-decrement operationmoves the item (TOS-1) to the TOS register before the SPis decremented. After a reset, the stack pointer has to beinitialized with ” >SP $xx ” to allocate the start addressof the expression stack area.

Return Stack Pointer (RP)

The return stack pointer points to the top element of the12-bit wide return stack. The pointer automatically pre-increments if an element is moved onto the stack or itpost-decrements if an element is removed from the stack.The return stack pointer increments and decrements insteps of 4. This means that every time a 12-bit element isstacked, a 4-bit RAM location is left unwritten. This loca-tion is used by the qFORTH compiler to allocate 4-bitvariables. After a reset the return stack pointer has to beinitialized with ” >RP FCh ”.

RAM Address Register (X and Y)

The X and Y registers are used to address any 4-bit itemin the RAM. A fetch operation moves the addressednibble onto the TOS. A store operation moves the TOS tothe addressed RAM location. By using either the pre-in-crement or post-decrement addressing mode arrays in theRAM can be compared, filled or moved.

M44C260/M48C260

Rev. A2, 01-Oct-988 (51)

Top Of Stack (TOS)

The top of stack register is the accumulator of theMARC4. All arithmetic/logic, memory reference and I/Ooperations use this register. The TOS register gets the datafrom the ALU, the program memory, the RAM or via theI/O bus.

Condition Code Register (CCR)

The 4-bit wide condition code register contains thebranch, the carry and the interrupt enable flag. These bitsindicate the current state of the CPU. The CCR flags areset or reset by ALU operations. The instructionsSET_BCF, TOG_BF, CCR! and DI allow a directmanipulation of the condition code register.

Carry/Borrow (C)

The carry/borrow flag indicates that borrow or carry outof arithmetic logic unit (ALU) occurred during the lastarithmetic operation. During shift and rotate operationsthis bit is used as a fifth bit. Boolean operations have noaffect on the C flag.

Branch (B)

The branch flag controls the conditional program branch-ing. When the branch flag has been set by one of theprevious instructions a conditional branch is taken. Thisflag is affected by arithmetic, logic, shift, and rotate op-erations.

Interrupt Enable (I)

The interrupt enable flag enables or disables the interruptprocessing on a global basis. After reset or by executingthe DI instruction, the interrupt enable flag is reset and allinterrupts are disabled. The µC does not process furtherinterrupt requests until the interrupt enable flag is setagain by either executing an EI, RTI or SLEEPinstruction.

1.2.4 ALU

The 4-bit ALU performs all the arithmetic, logical, shiftand rotate operations with the top two elements of theexpression stack (TOS and TOS-1) and returns its resultto the TOS. The ALU operations affect the carry/borrowand branch flag in the condition code register (CCR).

ÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏÏÏÏÏ

TOS–1

CCR

RAM

ÏÏÏÏÏÏÏÏ TOS–2

SP

TOS–3

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

TOS

ALUTOS–4

94 8977

Figure 8. ALU zero address operations

1.2.5 Self-Check

To cover the ROM block during production testing theROM_TEST2 routine has to be included into the $RESETroutine.

: $RESET >SP S0

>RP FCh

Port7 IN Fh =

IF ROM_Test2

THEN

\*** main program

;

Note: The corresponding file ROM_TEST.INC has tobe included into the project’s main file. Theconditional execution is stimulated during theproduction test.

1.2.6 Instruction Cycles

A MARC4 instruction word is one or two bytes long andis executed within one or four machine-cycles. Amachine-cycle consists of two system clocks (SYSCL).The MARC4 is a zero address machine. Most of theinstructions are one byte long and are executed only inone machine-cycle. The CPU has an instruction pipeline,which allows the controller to fetch the next instructionfrom program memory at the same time as the presentinstruction is being executed. For more information seethe section ”MARC4 Instruction Set Overview”.

1.2.7 I/O Bus

The I/O ports and the registers of the peripheral modules(Timer 1, Timer 2, EEPROM) are I/O mapped. The com-munication between the core and the on-chip peripheralstakes place via the I/O bus and the associated I/O controlbus. These buses are used for different functions: for readand write accesses, for the interrupt generation, to resetperipherals and for the SLEEP mode. With the MARC4IN-instruction and OUT-instruction the I/O bus allows adirect read or write access to one of the 16 I/O addresses.More about the I/O access to the on-chip peripherals isdescribed in the section ”Peripheral modules”.

The I/O buses are internal buses and are not accessible bythe customer on the final microcontroller device, but theyare used as the interface for the MARC4 emulation (seealso the section “Emulation”).

M44C260/M48C260

Rev. A2, 01-Oct-98 9 (51)

1.2.8 Interrupt Structure

The MARC4 can handle interrupts with eight differentpriority levels. They can be generated from the internaland external interrupt sources or by a software interruptfrom the CPU itself. Each interrupt level has a hard-wiredpriority and an associated vector for the service routine inthe ROM (see table 2). The programmer can enable or dis-able interrupts all together by setting or resetting theinterrupt enable flag (I) in the CCR.

Interrupt Processing

For processing the eight interrupt levels, the MARC4contains an interrupt controller with the 8-bit wide inter-rupt pending and interrupt active register. The interruptcontroller samples all interrupt requests during everynon-I/O instruction cycle and latches them in the interruptpending register. If no higher priority interrupt is presentin the interrupt active register it signals the CPU to inter-rupt the current program execution. If the interrupt enablebit is set the processor enters an interrupt acknowledgecycle. During this cycle a SHORT CALL instruction to

the service routine is executed and the current PC is savedon the return stack. An interrupt service routine is finishedwith the RTI instruction. This instruction sets the interruptenable flag, resets the corresponding bits in the interruptpending/active register and fetches the return addressfrom the return stack to the program counter. When theinterrupt enable flag is reset (interrupts are disabled), theexecution of interrupts is inhibited but not the logging ofthe interrupt requests in the interrupt pending register.The execution of the interrupt will be delayed until theinterrupt enable flag is set again. But note that interruptsare lost if an interrupt request occurs during the corre-sponding bit in the pending register is still set. After thereset (power-on, external or watchdog reset), the interruptenable flag and the interrupt pending and interrupt activeregister are reset.

Interrupt Latency

The interrupt latency is the time from the falling edge ofthe interrupt to the interrupt service routine beingactivated. In the MARC4 this takes between 3 to 5machine cycles depending on the state of the core.

7

6

5

4

3

2

1

0

Prio

rity

leve

l

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

INT5 active

INT7 active

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

INT2 pending

SWI0

ÁÁÁÁÁÁÁÁ

INT2 active

ÏÏÏÏÏÏÏÏÏÏÏÏ

ÁÁÁÁÁÁÁÁ

INT0 pending INT0 active

INT2

RTI

RTIINT5

ÁÁÁÁÁÁÁÁ

INT3 active

INT3

RTI

RTI

RTI

INT7

Time

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

Main / Autosleep

Main / Autosleep

94 8978

Figure 9. Interrupt handling

M44C260/M48C260

Rev. A2, 01-Oct-9810 (51)

Table 2. Interrupt priority table

Interrupt Priority Vector Address

Interrupt Opcode(Acknowledge)

Function

ÁÁÁÁÁINT0 ÁÁÁÁlowestÁÁÁÁÁ040h ÁÁÁÁÁÁÁÁC8h (SCALL 040h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁSoftware interrupt (SWI0)ÁÁÁÁÁÁÁÁÁÁINT1

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ080h

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁD0h (SCALL 080h)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁEEPROM write readyÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

INT2ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0C0hÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

D8h (SCALL 0C0h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External hardware interrupt, neg. edge at BP30 or BP31

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

INT3 ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

100h ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

E0h (SCALL 100h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External hardware interrupt,neg. edge at BP32 or BP33

ÁÁÁÁÁINT4 ÁÁÁÁÁÁÁÁÁ140h ÁÁÁÁÁÁÁÁE8h (SCALL 140h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 1 interruptÁÁÁÁÁÁÁÁÁÁINT5

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ180h

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁF0h (SCALL 180h)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2 interruptÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

INT6ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1C0hÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

F8h (SCALL 1C0h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External hardware interrupt, neg. edge atIP40 pin

ÁÁÁÁÁÁÁÁÁÁ

INT7 ÁÁÁÁÁÁÁÁ

highestÁÁÁÁÁÁÁÁÁÁ

1E0h ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

FCh (SCALL 1E0h)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Software interrupt (SWI7)

Software Interrupts

The programmer can generate interrupts by using thesoftware interrupt instruction (SWI) which is supportedin qFORTH by predefined macros named SWI0 to SWI7.The software triggered interrupt operates exactly as anyhardware triggered interrupt. The SWI instruction takesthe top two elements from the expression stack and writesthe corresponding bits via the I/O bus to the interrupt

pending register. By using the SWI instruction in thiusway, interrupts can be re-prioritized or lower priority pro-cesses scheduled for later execution.

Hardware Interrupts

The M44C260/M48C260 incorporates eleven hardwareinterrupt sources with six different levels. Each of thesesources can be enabled or disabled separately with an in-terrupt mask bit in the IMR1 or IMR2 register.

Table 3. Hardware interrupts

Interrupt Priority Mask Interrupt SourceRegister Bit

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM write ready ÁÁÁÁÁÁÁÁINT1 ÁÁÁÁ

ÁÁÁÁEMS ÁÁÁÁ

ÁÁÁÁIMEP ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁEEPROM end of write cycle

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External interrupt Port 3 (BP30 OR BP31)

ÁÁÁÁÁÁÁÁ

INT2 ÁÁÁÁÁÁÁÁ

IMR1 ÁÁÁÁÁÁÁÁ

IM30IM31

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Negative edge at BP30 Negative edge at BP31

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External interruptPort 3 (BP32 OR BP33)

ÁÁÁÁÁÁÁÁÁÁÁÁ

INT3 ÁÁÁÁÁÁÁÁÁÁÁÁ

IMR1 ÁÁÁÁÁÁÁÁÁÁÁÁ

IM32IM33

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Negative edge at BP32 Negative edge at BP33

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 1 interrupt ÁÁÁÁÁÁÁÁINT4 ÁÁÁÁ

ÁÁÁÁIMR2 ÁÁÁÁ

ÁÁÁÁIMT1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2 interrupt ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

INT5 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T2IC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IMASIMAPIMBSIMBP

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A end of space/underflowTimer A end of pulse/captureTimer B end of space/underflowTimer B end of pulse/capture

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Ext. interrupt IP40 input ÁÁÁÁÁÁÁÁINT6 ÁÁÁÁ

ÁÁÁÁIMR2 ÁÁÁÁ

ÁÁÁÁIM6 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁNegative edge at IP40 input

1.3 ResetThe reset puts the CPU into a well-defined condition. Thereset can be triggered by switching on the supply voltage,by a break-down of the supply voltage, by the watchdogtimer or by pulling the NRST pad to low.

After any reset the branch-, carry- and interrupt enableflag in the Condition Code Register (CCR) , the interruptpending register and the interrupt active register are reset.

During the reset-cycle the I/O bus control signals are setto ’reset mode’ thereby initializing all on-chipperipherals.

A reset is finished with a short call instruction(opcode C1h) to the program memory address 008h. Thisactivates the initialization routine $RESET. With thatroutine the stack pointers, variables in the RAM and theperipheral must be initialized.

M44C260/M48C260

Rev. A2, 01-Oct-98 11 (51)

Power-on Reset

The M44C260/M48C260 incorporates an on-chippower-on reset (POR) circuitry which provides internalchip reset for most power-up situations. The power-onreset ensures that the core is not activated before the oper-ating supply voltage has been reached.

The C will function normally at > 2.4 V under all condi-tions. For VDD below 2.4 V, the device will eitherfunction normally or the device reset will be globally acti-vated by the brown-out circuit. The actual brown-out trippoint is a function of temperature and process parameters.

External Reset (NRST)

An external reset can be triggered with the NRST pin. Forthe external reset the pin should be low for a minimum oftwo machine-cycles.

Watchdog Timer Reset

If the watchdog timer function of Timer 1 is enabled, a re-set is triggered with every watchdog counter overflow. Tosuppress that, the watchdog counter must be reset by anaccess to the CWD-register (see also Timer 1/watchdogcounter).

The power-on reset and the watchdog reset are indicatedin the same way as an external reset on the NRST pad.

1.4 Clock GenerationThe M44C260/M48C260 has two oscillators, one RC os-cillator for the system clock generation and an additional32-kHz crystal oscillator. The system clock generatorprovides the core and Timer 2 with the clock. The systemclock frequency is programmable for 1 or 2 MHz. Thecrystal oscillator is used as an exact time base for Timer1. If no exact timing is required, the controller does notneed an external crystal. In this case Timer 1 is providedwith the system clock.

The configuration for both oscillators is programmablewith the clock status control register (CSC), which is asubport register located in port CSUB. The required con-figuration has to be initialized after reset in the $RESETroutine. The default setting after a reset is 1 MHz systemclock and an active 32-kHz crystal oscillator.

After power-on or a SLEEP instruction the clock genera-tor needs a start-up time until it runs with an exact timing.The CRDY bit in the CSC register indicates the start-upphase.

OSC32

OSCS CRDY CCSCSC :

Stop

fOSC

SYSCL

Q1OSCS = 0

/122

/2

/4

CCS = 1

ÏÏÏÏÏÏ

CCS = 0

OSC

Systemclock – Generator

Stop

CL32

SLEEPEERDY

TARTBR

OSCS

T1R

= 32 kHz

fG<= 32 kHz

ÏÏ

ÏÏ

TCL

TE

TCL – Controllogic

OSCIN

OSCOUT

TIMER 2CORE

TIMER 1

EEPROM

OSCS = 1

94 8979

CSC3

Figure 10. Clock module

M44C260/M48C260

Rev. A2, 01-Oct-9812 (51)

1.4.1 Clock Status/Control Register (CSC)

Address: Ch Subaddress: 2h

Bit 3 Bit 2 Bit 1 Bit 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CSCÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CSC3ÁÁÁÁÁÁÁÁÁÁÁÁ

OSCSÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CRDYÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CCS ÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000h

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CSC3 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

This bit must always be zero

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

OSCS ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Oscillator Stop OSCS = 0 the C runs with the 32-kHz crystal oscillator for Timer 1 OSCS = 1 the 32-kHz oscillator stops. For C operation without crystal, this bit must be set after reset. In that case Timer 1 is provided from the internal RC oscillator.

ÁÁÁÁÁÁÁÁÁÁÁÁ

CRDY ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Clock Ready (status bit) CRDY = 0 indicates the start-up time of the oscillators.CRDY = 1 indicates that the clock is ready and has the exact timing.

ÁÁÁÁÁÁÁÁ

CCS ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Core Clock Select CCS = 0 selects 1 MHz system clock (SYSCL/TCL)CCS = 1 selects 2 MHz system clock (SYSCL/TCL)

1.4.2 TCL Signal

The TCL pin can be used as input to supply the controllerwith an external clock. For this configuration, the TCLpin must be held low for at least 0.5 ms during the resetcycle. The controller is working with clock frequenciesup to 2.5 MHz. It is also possible to use the TCL pin asoutput to supply peripherals with the system clock. In thiscase the TE pin must be connected to VDD level and theTCL pin must have a high impedance load.

1.5 Power Down Modes

The sleep mode is a shutdown condition which is used toreduce the average system power consumption in applica-tions where the µC is not fully utilized. In this mode thesystem clock is stopped. The sleep mode is entered withthe SLEEP instruction. This instruction sets the interruptenable bit (I) in the condition code register to enable allinterrupts and stops the core. During the sleep mode theperipheral modules remain active and are able to generateinterrupts. The µC exits the sleep mode with any interruptor a reset.

The sleep mode can only be kept when none of the inter-rupt pending or active register bits are set. The applicationof the $AUTOSLEEP routine ensures the correct functionof the sleep mode.

The total power consumption is directly proportional tothe active time of the µC. For a rough estimation of theexpected average system current consumption, the fol-lowing formula should be used:

I total (VDD, fOsc) = ISleep + (IDD * Tactive/Ttotal)

IDD depends on VDD and fOsc.

Systemclock Generator Stop

The M44C260/M48C260 has different power downmodes. When the MARC4 core enters the sleep mode andno on-chip peripheral needs a clock signal (SYSCL), thesystem clock oscillator is stopped. Therefore the pro-grammer should stop Timer 1 and Timer 2 during thesleep mode if they are not required. If the 32-kHz oscilla-tor is not used, it should be stopped. Under this condition,the power consumption is extremely low (see followingtable).

Table 4. Power consumption at different power down modes

Mode CPU-Core

TIMER 1 [T1R]TIMER 2 [TAR, TBR]EEPROM [EERDY]

RC Osc. 32-kHz-Osc.

[OSCS]

Power-Consumption

ÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁ

SLEEPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T1R=0 AND TAR=0 AND TBR=0 AND EERDY=1ÁÁÁÁÁÁÁÁ

STOP ÁÁÁÁÁÁÁÁ

STOPÁÁÁÁÁÁÁÁÁÁÁÁ

< 1.0 µA

ÁÁÁÁÁÁ

2ÁÁÁÁÁÁÁÁ

SLEEPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T1R=X, TAR=0 AND TBR=0 AND EERDY=1 ÁÁÁÁÁÁÁÁ

STOP ÁÁÁÁÁÁÁÁ

RUNÁÁÁÁÁÁÁÁÁÁÁÁ

< 1.0 µA

ÁÁÁ3ÁÁÁÁSLEEPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁT1R=1 OR TAR=1 OR TBR=1 OR EERDY=0 ÁÁÁÁRUN ÁÁÁÁSTOPÁÁÁÁÁÁ< 1 mAÁÁÁÁÁÁ4ÁÁÁÁÁÁÁÁSLEEP

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁT1R=X, TAR=1 OR TBR=1 OR EERDY=0

ÁÁÁÁÁÁÁÁRUN

ÁÁÁÁÁÁÁÁRUN

ÁÁÁÁÁÁÁÁÁÁÁÁ< 1 mAÁÁÁ

ÁÁÁ5ÁÁÁÁÁÁÁÁ

RUNÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T1R=X, TAR=X, TBR=X, EERDY=XÁÁÁÁÁÁÁÁ

RUNÁÁÁÁÁÁÁÁ

STOPÁÁÁÁÁÁÁÁÁÁÁÁ

< 3 mAÁÁÁÁÁÁ

6ÁÁÁÁÁÁÁÁ

RUNÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T1R=X, TAR=X, TBR=X, EERDY=X ÁÁÁÁÁÁÁÁ

RUN ÁÁÁÁÁÁÁÁ

RUNÁÁÁÁÁÁÁÁÁÁÁÁ

< 3 mA

M44C260/M48C260

Rev. A2, 01-Oct-98 13 (51)

2 Peripheral Modules2.1 Addressing PeripheralsThe access to the peripheral modules (ports, registers) isexecuted via the I/O bus. The IN- or OUT-instruction al-lows the direct addressing of 16 I/O ports. For peripheralswith a large number of registers, extended addressing isused. With two I/O operations, an extended I/O port al-

lows the access to 16 subports. The first OUT-instructionwrites the subport address to the subaddress register, thesecond IN- or OUT-instruction reads data from or writesdata to the addressed subport.

Table 5. I/O-addressing

I/O Operation qFORTH Instructions DescriptionÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁPort 0, 1, 2, 3, 4, T2SC, EMSÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

I/O readÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

port INÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Read data from portÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

I/O writeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

data port OUTÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write data to portÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T2SUB, CSUBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Extended I/O read ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

subaddress port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write subaddress to portÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

port IN ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Read data from subaddress

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Extended I/O write ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

subaddress port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write subaddress to port

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁdata port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁWrite data to subaddressÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁExtended I/O short read

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁport IN

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRead data from current subaddressÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁESUBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Extended I/O read (byte) ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

subaddress port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write subaddress to portÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

port IN ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Read data high nibble from subaddressÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

port IN ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Read data low nibble from subaddressÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Extended I/O write (byte) ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

subaddress port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write subaddress to port

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

data port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write data low nibble to subaddress

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁdata port OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁWrite data high nibble to subaddress

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏ

ÏÏÏÏÏÏÏÏ

ÏÏÏÏ

I/O port Subport I/O port

Subaddress Register

Subport 0

Subport 1

Subport 3

Subport Fh

Subport EhSubport Dh

data port OUT

port IN

I/O bus

Subport 2

subaddress port OUT

94 8980

Figure 11. Extended I/O addressing

M44C260/M48C260

Rev. A2, 01-Oct-9814 (51)

Table 6. Peripheral addresses

Addr. Name Function

ÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁ

Port 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Bidirectional port ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ1ÁÁÁÁPort 1ÁÁÁÁÁÁÁÁÁÁBidirectional port ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ2ÁÁÁÁÁÁÁÁPort 2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁBidirectional port

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ3ÁÁÁÁÁÁÁÁ

Port 3ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Bidirectional portÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ4ÁÁÁÁÁÁÁÁ

Port 4ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input port ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ5ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ6ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ7ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁ8ÁÁÁÁÁÁÁÁ

T2SCÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2 status and control register

ÁÁÁÁÁÁÁÁÁ

9ÁÁÁÁÁÁÁÁÁÁÁÁ

T2SUBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Subport for Timer 2ÁÁÁÁÁÁÁÁÁÁÁÁ

Sub-

addressÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Name ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

TARCH ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2A space reload/capture register, highnibble

ÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TARCL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2A space reload/capture register, lownibble

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

2 ÁÁÁÁÁÁÁÁÁÁ

TARH ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2A pulse reload register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

3 ÁÁÁÁÁÁÁÁÁÁ

TARL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2A pulse reload register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

4 ÁÁÁÁÁÁÁÁÁÁ

TBRCH ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2B space reload/capture register, highnibble

ÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

5 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TBRCL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2B space reload/capture register, lownibble

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

6 ÁÁÁÁÁÁÁÁÁÁ

TBRH ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2B pulse reload register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

7 ÁÁÁÁÁÁÁÁÁÁ

TBRL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2B pulse reload register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ8 ÁÁÁÁÁTAM1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2A mode register 1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ9

ÁÁÁÁÁÁÁÁÁÁTAM2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2A mode register 2ÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

AÁÁÁÁÁÁÁÁÁÁ

TBM1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2B mode register 1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

B ÁÁÁÁÁÁÁÁÁÁ

TBM2 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2B mode register 2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

C ÁÁÁÁÁÁÁÁÁÁ

T2IC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2 interrupt control

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

D ÁÁÁÁÁÁÁÁÁÁ

T2PC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 2 prescaler control

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

E ÁÁÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁF ÁÁÁÁÁ––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁAÁÁÁÁÁÁÁÁEMS

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁEEPROM status registerÁÁÁ

ÁÁÁBÁÁÁÁÁÁÁÁESUB

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁSubport for EEPROM

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRow 0 – Row FÁÁÁ

ÁÁÁÁÁÁ

CÁÁÁÁÁÁÁÁÁÁÁÁ

CSUBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Subport for watchdog,Timer 1, interrupt

ÁÁÁÁÁÁÁÁÁÁÁÁ

Sub-address

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

NameÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

masks, and clock ÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

WDC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁWatchdog control register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

generator ÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁ

CWD ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁClear watchdog counter

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ2 ÁÁÁÁÁCSC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁClock status/control registerÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ3

ÁÁÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ4

ÁÁÁÁÁÁÁÁÁÁT1C

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer 1 control registerÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

5ÁÁÁÁÁÁÁÁÁÁ

IMR1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁInterrupt mask register 1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

6 ÁÁÁÁÁÁÁÁÁÁ

IMR2 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁInterrupt mask register 2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

7-FÁÁÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁDÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁEÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁFÁÁÁÁ––– ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

M44C260/M48C260

Rev. A2, 01-Oct-98 15 (51)

2.1.1 Input Port 4Port 4 is the input port for the pins IP40, IP43, TA and TB. IP40 is also the interrupt input for INT6, and TA and TBare normally used for timer I/O functions.

Bit 3 Bit 2 Bit 1 Bit 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input Port 4ÁÁÁÁÁÁÁÁÁÁIP43

ÁÁÁÁÁÁÁÁÁÁTB/IP42

ÁÁÁÁÁÁÁÁÁÁTA/IP41

ÁÁÁÁÁÁÁÁÁÁIP40/INT6

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

*

*

Pull–down

Pull–up

IP43

VDD

* optional

VDDI/O bus

*

Pull–up

IP40/INT6

VDD

INT6

I/O bus

94 8981

Figure 12. Input port IP40, IP43

2.1.2 Bidirectional PortsPorts 0, 1, 2 and 3 are bidirectional 4-bit wide ports andmay be used for data input or output. The data directionis programmable for a complete port only. The port isswitched to output with an OUT-instruction and to inputwith an IN-instruction. The data written to a port will bestored into the output latches and appears immediatelyafter the OUT-instruction at the port pin. After RESET alloutput latches are set to Fh and the ports are switched toinput mode.

Note: Care must be taken when switching bidirectionalports from output to input. The capacitive load atthis port may cause the data read to be the sameas the last data written to this port. To avoid thiswhen switching the direction, one of the follow-ing approaches should be used.

Use two IN-instructions and DROP the first datanibble read. The first IN switches the port from outputto input, DROP removes the first invalid nibble andthe second IN reads the valid nibble.

Use an OUT-instruction followed by an IN-instruc-tion. With the OUT-instruction, the capacitive load ischarged or discharged depending on the optionalpull-up /pull-down configuration. Write a “1” for pinswith pull-up resistors and a “0” for pins with pull-down resistors.

M44C260/M48C260

Rev. A2, 01-Oct-9816 (51)

OUT

IN

Reset

I/O bus

D

R

S

Q

Q

NQ

R

/ Reset

VDD

VDD

BPxy

*) optional pull–up / pull–down resistor

*

*

94 8982

Figure 13. Bidirectional port

PortX_OUT

PortX_IN

Reset

I/O bus

D

R

S

Q

Q

NQ

R

/ Reset

VDD

VDD

BP3y

*) optional pull–up / pull–down resistor

*

*

Interrupt logic (INT2 / INT3)

94 8983

Figure 14. Bidirectional Port 3 with interrupt input

2.1.3 External Interrupt Inputs

The pins IP40 and BP30 – BP33 can be used as externalinterrupt inputs. IP40 is used for INT6, BP32 and BP33are used for INT3, and BP30 and BP31 are used for INT2.Pin IP40 is also used as an input port and BP30 – BP33 as

a bidirectional port (see figure 14). Each of these externalinterrupt sources can be enabled or disabled with individ-ual interrupt mask bits. A negative transition at one ofthese inputs requests an interrupt, when the correspond-ing mask bit is set. The interrupt masks are placed in thesubport registers IMR1 and IMR2 of port CSUB.

M44C260/M48C260

Rev. A2, 01-Oct-98 17 (51)

IM32 IM31 IM30IMR1: IM33

Interruptinterface

INT2

INT3BP33

BP32

BP31

BP30

IM6 IMT1IMR2:

Interruptinterface

INT6IP40Interruptinterface

94 8984

Figure 15. External interrupt inputs

2.2 Timer 1Timer 1 is an interval timer for generating interrupts. Ad-ditionally, the Timer 1 can be used as watchdog timer. Thetimer consists of a programmable 18 stage divider whichis supplied with a 32-kHz clock and a 3-bit counter for thewatchdog function (see figure 16). The time interval fora Timer 1 interrupt (INT4) can be programmed with thetimer control register from 1 ms up to 8.0 s. The Timer 1

interrupt is maskable with the IMT1 bit.

The time interval for a watchdog reset can be pro-grammed with the watchdog control register for 0.5, 2.0,8.0 or 16.0 s. When the watchdog is active (WDR = 1) thecontroller is reset with the overflow of the 3-bit watchdogcounter. The application software has to ensure that thewatchdog counter is reset by a write access to the CWDport before it overflows.

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

T1R T1C1 T1C0T1C

CL32

Dec

oder

3 :

8

ÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏÏ

0

0 10

0

1 1

1T1C0

T1C1

INT4

Dec

oder

2 :

4

WDR WDC1 WDC0WDC

Divider /8

DividerRESET

Watchdog counter

00

01

10

11

RESET(NRST)

ÏÏÏWDR=1

ÏÏÏÏÏÏ

WDR=0

IM6 IMT1IMR2

IMT1=1

IMT1=0

WRITE CWD

DIVIDER

T1C2

WDC1WDC0

Q5 Q6 Q8 Q10 Q12 Q14Q11 Q13 Q15 Q16 Q18

0

0 0 0 0T1C2 1

0

0 1 0 1

1 1

11 1

94 8985

Divider

RESET

WRITE (T1C)

Figure 16. Timer 1

M44C260/M48C260

Rev. A2, 01-Oct-9818 (51)

Timer 1 register

The registers of Timer 1 are I/O-mapped. They are sub-port register of port CSUB the access is made by extendedI/O operations. The interval timer is controlled by the

prescaler control register T1C. The interrupt mask IMT1is placed in the interrupt mask register IMR2. The watch-dog timer is controlled by the watchdog control registerWDC and port CWD. A write access to CWD resets thewatchdog counter.

2.2.1 T1C – Timer 1 Control Register

Address: ‘C’h Subaddress 4

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TIC ÁÁÁÁÁÁÁÁ

T1R ÁÁÁÁÁÁÁÁ

T1C2 ÁÁÁÁÁÁÁÁ

T1C1 ÁÁÁÁÁÁÁÁ

T1C0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T1RÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 1 resetWrite (T1R = 1) resets the interval timerÁÁÁÁ

ÁÁÁÁT1C2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 1 control bit 2ÁÁÁÁÁÁÁÁ

T1C1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 1 control bit 1ÁÁÁÁÁÁÁÁ

T1C0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 1 control bit 0ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

This three bits select the time interval for a Timer 1 interrupt.

T1C2 T1C1 T1C0 Divider Time IntervalÁÁÁÁÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁÁÁÁÁ

32ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.9765625 msÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁ

64 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1.953125 msÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

256 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

7.8125 msÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁ

1024 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

31.25 ms

ÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

4096 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

125 ms

ÁÁÁÁÁ1 ÁÁÁÁÁ0 ÁÁÁÁÁÁ1 ÁÁÁÁÁÁ16384 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ500 msÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁÁÁÁÁÁÁ65536

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ2 sÁÁÁÁÁ

ÁÁÁÁÁ1ÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁÁÁ262144

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ8 s

2.2.2 WDC – Watchdog Control Register

Address: ‘C’h Subaddress 0

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

WDC ÁÁÁÁÁÁÁÁ

WDR ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁ

WDM1ÁÁÁÁÁÁÁÁ

WDM0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0x00b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

WDRÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Watchdog run WDR = 0 the watchdog counter is inactive and resetWDR = 1 the watchdog counter is active and able to generate a reset when Timer 1 is running

ÁÁÁÁÁÁÁÁ

WDM1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Watchdog mode 1ÁÁÁÁÁÁÁÁ

WDM0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Watchdog mode 0ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Both these bits control the time interval for the watchdog reset.

M44C260/M48C260

Rev. A2, 01-Oct-98 19 (51)

WDM 1 WDM 0 Divider Delay Time to Reset (s)ÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

2048 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.5ÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

8192 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

2

ÁÁÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

32768 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

8

ÁÁÁÁÁ1 ÁÁÁÁÁÁ1 ÁÁÁÁÁÁÁ524288 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ16

2.3 Timer 2Timer 2 consists of the two timer/counter blocks Timer Aand Timer B. Each block has one 8-bit downcounter anda programmable prescaler. The clock inputs can be pro-grammed to count the system clocks, Timer A clocks orexternal clocks. The maximum clock rate for externalclocks is the half system clock frequency (SYSCL/2).Each counter has a reload register for the pulse time anda reload register for the space time. Every counter under-flow toggles the output and reloads the downcounteralternately from the pulse reload register or from thespace reload register. This allows the generation of anyduty cycles.

In addition, both counters have a capture mode. In thismode an external signal or the Counter B output causesthe current counter value to be captured into the corre-sponding capture register.

The timer has two I/O pins, TA for Timer A and TB forTimer B. Used as output, the pins have a high level duringthe pulse time and a low level during the space time of thetimer. As input, the pins are used for the external counterclock or the capture signal. The inputs have a program-mable edge detection to select the active edge of anexternal clock or capture signal.

Interrupts can be generated when a counter underflow ora capture event occurs. The interrupt function for Timer2 can be programmed with the interrupt control register.Both counter blocks share one interrupt vector (INT5).

Timer 2 Modes

There are various timer/counter modes for both blocks ofTimer 2. They can be used separately or combined. Thetimer modes can be programmed with the timer controland mode registers.

Single Timer Modes

8-bit timerCounter A/B is supplied by the system clock and isused to generate timer interrupts.

Pulse width modulationCounter A/B is supplied by the system clock. The

TA/TB pin is used as counter output. The duty cyclecan be programmed with the pulse and space reloadregister.

Capture modeCounter A/B is supplied by the system clock. TheTA/TB pin is used as input. An external signal at theinput causes the current counter value to be capturedinto the capture register.

Event counterCounter A/B counts external clocks at the TA/TB pin.The capture register contains the current countervalue and can be read.

Combined Timer Modes

16-bit timerCounter A is supplied with the system clock and itsoutput is coupled with the input of Counter B. In thismode the counter is used to generate timer interrupts.

16 bit capture modeCounter A is supplied with the system clock andCounter B with the output of Counter A. An externalsignal at the TA pin causes the current counter valuewill be captured into the capture registers.

16-bit event counterThe output of Counter A is coupled with the input ofCounter B to count external clocks at TA. The captureregister of both counters contain the current countervalues.

Burst generatorCounter A is supplied with the system clock and itsoutput is coupled with the input of Counter B. The out-put of Counter B controls the output signal of CounterA at the TA pin. The TA output is enabled during thepulse and disabled during the space of Counter B.

Event counter with time gateCounter A counts the clocks at the TA pin and CounterB is supplied with the system clock. Each underflowof Counter B causes the counter value of Counter A tobe captured into its capture register.

M44C260/M48C260

Rev. A2, 01-Oct-9820 (51)

Timer 2 Register

All timer register are I/O mapped. The access to theTimer 2 status control register (T2SC) can be done witha direct I/O operation to T2SC. The status is read with anIN operation and a command to control the timer is writ-ten with an OUT operation. The remaining registers of

Timer 2 are subport registers of port T2SUB. The accessto those registers needs an extended I/O operation. Thetimer function can be configured with the mode registersTAM1, TAM2, TBM1, TBM2 and the interrupt controlregister T2IC. The timing depends on the contents of theprescaler control register T2PC and the reload registers.The capture registers are used to read the counter value.

TB

TA

SYSCL

T2SCT2ICSYSCL

ACS

ACE ACB AE1AE0

AGB

AOE

BE1 BE0 BOE

BCS1 BCS0

BCE

[READ]

+

TAM1

TAM1

TBM1

TBM2

TBM1

TARCH[r]

TAM2

TAM2

Counter ATAM1

Counter BBCA

TBRCH[r]

TBM2

INTERRUPTINT5

Note: all control bit switches are shown at value “0” 94 8987

Figure 17. Timer 2

DOWN COUNTER A/B

SPACEPULSE

Prescaler A/B

Capture register

T2PC

InputCounter A/B

OutputCounter A/B

CaptureInput A/B

Toggle

Reload register

TxRCH[r] TxRCL[r]

TxRCH[w]TxRCL[w]TxRH[w] TxRL[w]

T2SC[w]x = A for Counter A, B for Counter Br = READw = WRITE

94 8986

Figure 18. Counter A/B

M44C260/M48C260

Rev. A2, 01-Oct-98 21 (51)

2.3.1 Timer 2 Status/Control Register (T2SC)

Address: 8

Control register Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write (T2SC) ÁÁÁÁÁÁÁÁ

TBMÁÁÁÁÁÁÁÁÁÁ

TAM ÁÁÁÁÁÁÁÁ

TBR ÁÁÁÁÁÁÁÁ

TAR ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Status register ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁRead (T2SC) ÁÁÁÁ

ÁÁÁÁTBSUÁÁÁÁÁÁÁÁÁÁ

TBPC ÁÁÁÁÁÁÁÁ

TASU ÁÁÁÁÁÁÁÁ

TAPCÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TAM, TAR: Timer A control bits to start or stop Timer A.

TBM, TBR: Timer B control bits to start or stop Timer B.ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TBM TAM TBR TAR Timer 2 CommandsÁÁÁÁÁÁÁÁÁÁ1ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁx

ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSTOP_A

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁA STOP command resetsÁÁ

ÁÁÁÁÁÁÁÁ1ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁx

ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRUN_A

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁthe prescaler and counter.ÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSTOP_B

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRUN_B

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁA RUN command starts theÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSTOP_AB

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁcounter with the next clockÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRUN_AB

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁtaking the value from theÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRUN_A-STOP_B

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁpulse reload register.ÁÁ

ÁÁÁÁÁÁÁÁ0ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSTOP_A-RUN_B

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ1ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁx

ÁÁÁÁÁÁxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁNOP

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TBSU:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B end of space/underflow status bit.When BCE* = 0 this bit will be set at the end of space time of Counter B.When BCE = 1 this bit will be set with every Counter B underflow.

ÁÁÁÁÁÁÁÁÁÁÁÁ

TBPC:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B end of pulse/capture status bit.When BCE = 0 this bit will be set at the end of pulse time of Counter B.When BCE = 1 this bit will be set when a capture event for Counter B occurs.ÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

TASU:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A end of space/underflow status bit.When ACE* = 0 this bit will be set at the end of space time of Counter A.When ACE = 1 this bit will be set with each Counter A underflow.

ÁÁÁÁÁÁÁÁÁÁÁÁ

TAPC:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A end of pulse/capture status bit.When ACE = 0 this bit will be set at the end of pulse time of Counter A.When ACE = 1 this bit will be set when a capture event for Counter A occurs.

*) ACE and BCE are the capture enable control bits in the timer mode registers TAM2 and TBM2.

The status bits TASU, TAPC, TBSU, TBPC will be reset after a READ access to T2SC!

M44C260/M48C260

Rev. A2, 01-Oct-9822 (51)

2.3.2 Timer 2 Subport (T2SUB)

Address: 9

Table 7. Timer 2 subports

Subaddr. Name Meaning Bit 3 Bit 2 Bit 1 Bit 0

ÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

TARCH [w]* ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A reload high ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

High-nibble

ÁÁÁÁÁÁÁÁÁÁTARCH [r]* ÁÁÁÁÁÁÁÁÁÁÁTimer A capture high ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁÁÁTARCL [w]*

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer A reload low

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁLow-nibbleÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTARCL [r]*

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer A capture low

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁ2ÁÁÁÁÁÁÁÁÁÁÁÁ

TARHÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A reload highÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

High-nibbleÁÁÁÁÁÁÁÁ

3 ÁÁÁÁÁÁÁÁÁÁÁÁ

TARL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A reload low ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Low-nibbleÁÁÁÁÁÁÁÁ

4 ÁÁÁÁÁÁÁÁÁÁÁÁ

TBRCH [w]* ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B reload high ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

High-nibbleÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

TBRCH [r]* ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B capture high ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁ5 ÁÁÁÁÁÁÁÁÁÁÁÁ

TBRCL [w]* ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B reload low ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Low-nibble

ÁÁÁÁÁÁÁÁÁÁTBRCL [r]* ÁÁÁÁÁÁÁÁÁÁÁTimer B capture low ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ6

ÁÁÁÁÁÁÁÁÁÁÁÁTBRH

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer B reload high

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁHigh-nibbleÁÁÁÁ

ÁÁÁÁ7ÁÁÁÁÁÁÁÁÁÁÁÁ

TBRLÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B reload lowÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Low-nibbleÁÁÁÁÁÁÁÁ

8ÁÁÁÁÁÁÁÁÁÁÁÁ

TAM1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A mode register 1ÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁ

AGBÁÁÁÁÁÁÁÁ

ACSÁÁÁÁÁÁÁÁ

AOEÁÁÁÁÁÁÁÁ

9 ÁÁÁÁÁÁÁÁÁÁÁÁ

TAM2 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A mode register 2 ÁÁÁÁÁÁÁÁ

ACB ÁÁÁÁÁÁÁÁ

ACE ÁÁÁÁÁÁÁÁ

AE1 ÁÁÁÁÁÁÁÁ

AE0ÁÁÁÁÁÁÁÁ

A ÁÁÁÁÁÁÁÁÁÁÁÁ

TBM1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B mode register 1 ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁ

BCS1 ÁÁÁÁÁÁÁÁ

BCS0 ÁÁÁÁÁÁÁÁ

BOEÁÁÁÁÁÁÁÁ

B ÁÁÁÁÁÁÁÁÁÁÁÁ

TBM2 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B mode register 2 ÁÁÁÁÁÁÁÁ

BCA ÁÁÁÁÁÁÁÁ

BCE ÁÁÁÁÁÁÁÁ

BE1 ÁÁÁÁÁÁÁÁ

BE0

ÁÁÁÁÁÁÁÁ

C ÁÁÁÁÁÁÁÁÁÁÁÁ

T2IC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2 interrupt control ÁÁÁÁÁÁÁÁ

IMBS ÁÁÁÁÁÁÁÁ

IMBP ÁÁÁÁÁÁÁÁ

IMAS ÁÁÁÁÁÁÁÁ

IMAP

ÁÁÁÁD ÁÁÁÁÁÁT2PC ÁÁÁÁÁÁÁÁÁÁÁTimer 2 prescaler control ÁÁÁÁBPC1 ÁÁÁÁBPC0 ÁÁÁÁAPC1 ÁÁÁÁAPC0ÁÁÁÁÁÁÁÁE

ÁÁÁÁÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁ–––ÁÁÁÁ

ÁÁÁÁFÁÁÁÁÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁ

–––

* [w] write only, [r] read only

2.3.3 Timer 2 Reload RegisterThe 8-bit wide reload registers of Timer A and B are usedto program the pulse and space width of the counter out-put signal.

The first clock after a start command loads the down-counter with the value (n) from the pulse reload registerand sets the counter output to 1. The downcounter decre-ments with each following clock and each underflowreloads alternately the value (m) from the space reload

register or the value (n) from the pulse reload register andtoggles the counter output.

The pulse and space width can be calculated as following:

Pulse time: Pulse = (n+1) x prescaler clocks

Spacetime: Space = (m+1) x prescaler clocks

0 m, n 255

n n–1 n–2 1 0 m m–1 m–2

PULSE

1 0 n

SPACE

Prescaler out

Counter outn + 1 m + 1

M44C260/M48C260

Rev. A2, 01-Oct-98 23 (51)

Timer 2 Space Reload RegisterThe space reload register of Timer 2 is programmed bytwo write accesses to the subport addresses TARCH andTARCL or TBRCH and TBRCL of the Timer 2 subportT2SUB. The value (m) in the space reload register deter-mines the space width. At the end of the pulse, thedowncounter reloads the 8–bit value from the space re-load register with the next clock of the prescaler output.

Space width: Space = (m+1) prescaler clocks0 ≤ m ≤ 255

Timer 2 Pulse Reload RegisterThe pulse reload register of Timer 2 is programmed bytwo write accesses to the subport addresses TERH andTARL or TBRH and TBRL of the Timer 2 subportT2SUB. The value (n) in the pulse reload register deter-mines the space width. At the end of space thedowncounter reloads the 8-bit value from the pulse reloadregister with the next clock of the prescaler output.

Pulse width: Pulse = (n+1) prescaler clocks0 ≤ n ≤ 255

2.3.4 Timer 2 Capture Register

The capture register is used to capture the current down-counter value when a capture event occurs. The value iskept in the capture register until the next capture eventand can be read independent of the state of the down-counter. The capture events are programmable with thetimer mode registers TAM2 and TBM2.

The capture registers are also used to read the countervalue when the external capture mode is disabled. In thiscase the 8-bit counter value is transferred into the captureregister by reading the high nibble TARCH or TBRCH.If the 16-bit event counter mode is enabled the complete16-bit value is captured by reading first the high nibbleTARCH of Timer A. This mechanism ensures the coher-ence of the counter high and low nibble during the readaccess.

2.3.5 Timer A Mode Register 1 (TAM1)

Address: 9 – Subaddress: 8

Bit 3 2 1 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁTAM1

ÁÁÁÁÁÁÁÁ–––

ÁÁÁÁÁÁÁÁAGB

ÁÁÁÁÁÁÁÁACS

ÁÁÁÁÁÁÁÁAOE

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁReset value: 0000bÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

AGB ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Counter A output gated by Counter B output AGB = 1 enables the burst generation mode. The output of Timer A is enabled during the pulse timeof the Counter B and disabled (TA= 0) during the space time of the Counter B.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ACS ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Counter A clock select This bit selects the source of the Counter A clock. When ACS = 0 the timer is supplied with internalSYSCL. When ACS = 1 the timer is supplied with an external clock on TA pin.

ÁÁÁÁÁÁÁÁÁÁÁÁ

AOE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A output enableAOE = 0 disables the counter output TA.AOE = 1 enables the counter output TA.

M44C260/M48C260

Rev. A2, 01-Oct-9824 (51)

2.3.6 Timer A Mode Register 2 (TAM2)

Address: 9 – Subaddress: 9

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TAM2 ÁÁÁÁÁÁÁÁ

ACB ÁÁÁÁÁÁ

ACEÁÁÁÁÁÁÁÁ

AE1ÁÁÁÁÁÁÁÁÁÁ

AE0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset Value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ACB ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A captured by Timer BSelects the capture source for Timer A. When ACB = 0 the signal at the TA pin is used to generate acapture event. When ACB = 1 each transition at the Counter B output is used to generate a captureevent for Timer A.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ACE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A capture enable ACE = 1 enables the capture mode for Counter A. The occurrence of a capture event causes that thecurrent downcounter value is loaded into the capture register.

ÁÁÁÁÁÁÁÁ

AE1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A edge select bit 1

ÁÁÁÁÁÁÁÁ

AE0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A edge select bit 0With these bits the active edge for the counter clocks and capture signal is selected.

AE1 AE0 Active Edge for Counter Clock/Capture EventsÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

positive edge at TA pinÁÁÁÁÁÁ

0ÁÁÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

negative edge at TA pinÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

first positive edge after timer start and then each transition at TA pinÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

first negative edge after timer start and then each transition at TA pin

2.3.7 Timer B Mode Register 1 (TBM1)

Address: 9 – Subaddress: Ah

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TBM1 ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁ

BCS1 ÁÁÁÁÁÁÁÁ

BCS0ÁÁÁÁÁÁÁÁ

BOEÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

BCS1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer B clock select bit 1

ÁÁÁÁÁÁÁÁÁÁ

BCS0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁTimer B clock select bit 0

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁThese bits select the source of Counter B clock.

BCS1 BCS0 Counter B Input SignalÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSystem clock (SYSCL)ÁÁÁ

ÁÁÁ1ÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOutput signal of Counter AÁÁÁ

ÁÁÁxÁÁÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External input signal at TB

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

BOEÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B output enableBOE = 0 disables the counter output TB.BOE = 1 enables the counter output TB.

M44C260/M48C260

Rev. A2, 01-Oct-98 25 (51)

2.3.8 Timer B Mode Register 2 (TBM2)

Address: 9 – Subaddress: Bh

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TBM2 ÁÁÁÁÁÁÁÁ

BCA ÁÁÁÁÁÁ

BCEÁÁÁÁÁÁÁÁÁÁ

BE1 ÁÁÁÁÁÁÁÁ

BE0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

BCA ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B is captured with Timer A capture signal. With BCA = 1 the external capture signal forTimer A is used to capture Timer B simultaneously with Timer A.ÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

BCEÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B capture enable BCE = 1 enables the capture mode for Counter B. A capture event loads the current downcountervalue into the capture register.

ÁÁÁÁÁÁÁÁ

BE1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B edge select bit 1ÁÁÁÁÁÁÁÁÁÁÁÁ

BE0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B edge select bit 0With these bits the active edge for the counter clocks and capture signal is selected.

BE1 BE0 Active Edge for Clock/Capture Events

ÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

positive edge on TB pin

ÁÁÁÁ0 ÁÁÁ1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁnegative edge on TB pinÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁ0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁfirst positive edge after start timer and then each transition on TB pinÁÁÁÁ

ÁÁÁÁ1ÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

first negative edge after start timer and then each transition on TB pin

2.3.9 Timer 2 Prescaler Control Register (T2PC)

Address: 9 – Subaddress: Dh

Bit 3 2 1 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T2PC ÁÁÁÁÁÁÁÁ

BPC1 ÁÁÁÁÁÁÁÁ

BPC0ÁÁÁÁÁÁÁÁ

APC1ÁÁÁÁÁÁÁÁ

APC0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset Value: 0000bÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

BPC1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B prescaler control bit 1ÁÁÁÁÁÁÁÁÁÁÁÁ

BPC0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer B prescaler control bit 0These bits determine the divider for the prescaler of Timer B.

ÁÁÁÁÁÁÁÁ

APC1 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A prescaler control bit 1ÁÁÁÁÁÁÁÁÁÁÁÁ

APC0 ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer A prescaler control bit 0These bits determine the divider for the prescaler of Timer A.

BPC1/APC1 BPC0/APC0 Divider

ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁÁÁ

0 ÁÁÁÁÁÁÁÁÁÁ

1

ÁÁÁÁÁÁ0 ÁÁÁÁÁÁ1 ÁÁÁÁÁ4ÁÁÁÁÁÁÁÁÁÁÁÁ1

ÁÁÁÁÁÁÁÁÁÁÁÁ0

ÁÁÁÁÁÁÁÁÁÁ16ÁÁÁÁÁÁ

ÁÁÁÁÁÁ1ÁÁÁÁÁÁÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁÁÁ

64

M44C260/M48C260

Rev. A2, 01-Oct-9826 (51)

2.3.10 Timer 2 Interrupt Control Register (T2IC)

Address: 9 – Subaddress: Ch

Bit 3 2 1 0

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

T2IC ÁÁÁÁÁÁÁÁ

IMBS ÁÁÁÁÁÁÁÁ

IMBP ÁÁÁÁÁÁÁÁ

IMAS ÁÁÁÁÁÁÁÁ

IMAPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000b

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

IMBS ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt mask Timer B end of space/underflowIMBS = 1 enables an INT5 interrupt, if BCE* = 0 at the end of space of Counter B, or if BCE = 1 at each Counter B underflow.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IMBPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt mask Timer B end of pulse/captureIMBP = 1 enables an INT5 interrupt, if BCE = 0 at the end of pulse of Counter B, or if BCE = 1 with a capture event for Counter B.

ÁÁÁÁÁÁÁÁÁÁÁÁ

IMAS ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt mask Timer A end of space/underflowIMAS = 1 enables an INT5 interrupt, if ACE* = 0 at the end of space of Counter A, or if ACE = 1 at each Counter A underflow.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IMAPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt mask Timer A end of pulse/captureIMAP = 1 enables an INT5 interrupt, if ACE = 0 at the end of pulse of Counter A, or if ACE = 1 with a capture event for Counter A.

Each interrupt source can be enabled or disabled individually by setting the corresponding maskbit.

*) ACE and BCE are the capture enable control bits in the timer mode registers TAM2 and TBM2.

INT5

TBSU TBPC TASU TAPC

IMBS IMBP IMAS IMAP

T2SC[r] :

T2IC :

Timer A end of space / underflow

Timer A end of pulse / capture

Timer B end of space / underflow

Timer B end of pulse / capture

[r] = READ94 8988

Figure 19. Timer 2 interrupt mask register

M44C260/M48C260

Rev. A2, 01-Oct-98 27 (51)

2.3.11 Timer I/O (TA/TB)The timer I/O pins TA and TB are used as input for theexternal clock or capture signal and as output for thecounter. The mode is controlled with AOE and BOEcontrol bit. When AOE/BOE = 0 the pin is switched to

input mode, when AOE/BOE = 1 the pin is switched tooutput mode. The pins also can be read with an IN-instruction via Port 4 (TA with IP41 and TB with IP42).

Port4_IN

I/O bus VDD

VDD

TA/TB

*) optional pull–up / pull–down resistor

*

*

Counter input

Counter output

AOE/AOB–controlbit

(edge sense)

(IP41/IP42)

94 8989

Figure 20. Timer I/O (TA/TB)

M44C260/M48C260

Rev. A2, 01-Oct-9828 (51)

2.4 EEPROMThe EEPROM of the M44C260/M48C260 is 128 bit wideand organized as an array of 16*8-bit. The EEPROM rowsare I/O mapped and are subports of port ESUB. The

access to any 8-bit row of the EEPROM is done by anextended 8-bit I/O operation or by special postincrementaccess. The EEPROM rows 12 to 15 can be write pro-tected by hardware and software.

Write protectable

NWP Control logic

EMS ESUB

0

12

15

INT 1

Memory

RowHigh nibble Low nibble

94 8990

Figure 21. EEPROM

2.4.1 EEPROM SubPort (ESUB)

Address: Bh – Subaddress: 0-Fh

Read operationA read operation needs an OUT- and two IN-instructionsto port ESUB. First the OUT operation writes the row ad-

dress. The following two IN-instructions read the highnibble and then the low nibble of the addressed row.

qFORTH example:

Row address ESUB OUT ( ––)

ESUB IN ( ––Data_High)

ESUB IN (Data_High –– Data_High Data_Low)

Write operation

A write operation needs three OUT-instructions to portESUB. The first operation writes the row address. Thefollowing two OUT-instructions write the low nibble and

then the high nibble to the addressed row. After reset,rows 12 to 15 are write protected. To enable write opera-tions to these rows the write enable bit (EWE) must be set.In all cases write accesses to these rows are disabled whenpin NWP is low.

M44C260/M48C260

Rev. A2, 01-Oct-98 29 (51)

qFORTH example:

Row address ESUB OUT (Data_High Data_Low –– Data_High Data_Low)

ESUB OUT (Data_High Data_Low ––Data_High)

ESUB OUT (Data_High ––)

The internal EEPROM write cycle needs about 16 ms(with connected quartz crystal and running crystal oscil-lator). During this cycle the EEPROM ready bit is reset(EPR = 0). After the data high nibble is written to the portESUB, the internal write cycle is started. During theinternal write cycle (while EPR = 0), only read and writeaccesses to the EMS register are possible. All otherEEPROM accesses have no effect.

Postincrement operations

The postincrement mode supports a fast access toconsecutive EEPROM rows. A postincrement access isstarted by setting the EPI bit in the EEPROM mode regis-ter (EMS) followed by writing the row start address toport ESUB. After that, the read or write operations to theconsecutive EEPROM area, beginning at the start ad-

dress, need only two IN- or OUT-instructions to read orwrite the data. The row address is incremented automati-cally after each complete row access (2 nibbles). A writeaccess to the EEPROM mode register (EMS) terminatesthe postincrement mode.

Note: In the postincrement mode, it is not possible tochange from read to write operations or viceversa before the current postincrement operationis finished.

Write ready interrupt (INT1)

At the end of the internal write cycle an interrupt is gener-ated when the interrupt mask bit IMEP in the EEPROMmode register EMS is set. With this interrupt, successivewrite operations can be executed interrupt controlledwithin the INT1 interrupt service routine.

2.4.2 EEPROM Mode/Status Register (EMS)

Address: Ah

Mode register Bit 3 2 1 0ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write (EMS) ÁÁÁÁÁÁÁÁ

–––ÁÁÁÁÁÁÁÁÁÁ

EWE ÁÁÁÁÁÁÁÁ

EPI ÁÁÁÁÁÁÁÁ

IMEPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: 0000bÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Status register ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁRead (EMS) ÁÁÁÁ

ÁÁÁÁ–––ÁÁÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁ

––– ÁÁÁÁÁÁÁÁ

EPRÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset value: xxx1bÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

EWE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM write enable bit EWE = 0 disables write accesses to rows 12-15EWE = 1 enables write accesses to rows 12-15 when the NWP pin is highÁÁÁÁ

ÁÁÁÁÁÁÁÁ

EPIÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM postincrement mode enableEPI = 1 activates a postincrement access after the next row address is written to port ESUB

ÁÁÁÁÁÁÁÁÁÁÁÁ

IMEPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt mask for EEPROM write ready interruptWhen IMEP is set an INT1 is generated with the end of the internal EEPROM write cycle

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EPR ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM ready status flagEPR = 0 indicates that the EEPROM is not ready for read or write operations

(an internal write cycle is executed)EPR = 1 indicates that the EEPROM is ready for read and write operations

After a write access to the EMS-Register, postincrement operations are terminated and any incomplete EEPROM readand write sequence must be started again!

M44C260/M48C260

Rev. A2, 01-Oct-9830 (51)

3 Appendix

3.1 EmulationFor emulation all MARC4 controllers have a specialemulation mode. It is activated by setting the TE pin tologic HIGH level during reset. In this mode the internalCPU core is inactive and the I/O buses are available viaPort 0 and Port 1 to allow the emulator the access to theon-chip peripherals. The emulator contains a specialemulation CPU with a MARC4 core and additional break-point logic and takes over the core function. The basicfunction of the emulator is to evaluate the customer’s pro-gram and hardware in real time. Thus, the analysation ofany timing, hardware or software problems the simula-tion of the application is possible. For more informationabout emulation see “Emulator Manual”.

3.2 Programming the EEPROMProgram Memory

Programming the 4K8-bit EEPROM program memoryis done using a special PC-controlled programming de-vice. Details on how to use this device and thecorresponding software are given in the ProgrammingDevice User Manual.

To start programming the data memory, the micro-controller is switched to a special I/O mode, where thecore and all peripherals are set inactive and the two I/Obuses are available via Port 0 (data) and Port 1 (control).Then the customer application data is transfered to thecontroller via Port 0 in blocks of 64 nibble size. Program-ming is started automatically after each block. Theprogramming high voltage is generated on chip.

After programming the memory, a verify run is startedwhere the just written data is read out and compared bitby bit to the original source file. This ensures that the con-tent of the ROM is error free.

3.3 MARC4 Instruction SetThe MARC4 instruction set is optimized for the high levelprogramming language qFORTH. A lot of MARC4instructions are qFORTH words. This enables the com-piler to generate a fast and compact program code. TheMARC4 is a zero address machine with a compact and ef-ficient instruction code. Most of the instructions are

single byte instructions. These operations are performedand no source or destination address information . OnlyBRANCH, CALL and RAM access instructions need ad-dress information and a length of two bytes for longaddress operations. In total, there are five types of instruc-tion formats with a length of one and two bytes.

Zero address operations such as arithmetical, logical,shift and rotate operations are performed with data placedon the top of the expression stack (TOS and TOS–1). AlsoI/O– and stack operations are single byte zero address op-erations and are performed with the top expression stacklocation.

A literal is a 4-bit constant value which is placed on thedata stack. In the MARC4 native code they are repre-sented as LIT_<value>, where <value> is thehexadecimal representation from 0 to 15 (0...F). Thisrange is a result of the MARC4’s 4-bit data width. The6-bit short address and the 12-bit long address formats areboth used to address the byte-wide ROM via CALL andconditional branch instructions. This results in a ROMaddress space of up to 4K8-bit words.

The MARC4 instruction includes both short and long callinstructions as well as conditional branch instructions. Onexecution the address part of the instruction’s word is di-rectly loaded into the program counter. Long call andbranch instructions can jump anywhere within the pro-gram memory area. The lower six bits from the short call(SCALL) and short branch (SBRA) instruction are han-dled in a different way. The six bit SCALL address ismultiplied by three and then loaded into the PC. Thisallows calls within the zero page (000 to 1FFh). The sixbit SBRA address is loaded immediately into the lowersix bits of the PC. This allows jumps within the 64 bytesegment addressed by the upper six bits of the PC.

The CALL and SCALL instructions write the increm-ented program counter contents to the return stack. Thisaddress is loaded back to the PC when the associatedEXIT or RTI instruction is encountered. The long RAMaddress format is used by the four 8-bit RAM addressregisters which can be pre-increment, post-decrement orloaded directly from the MARC4’s internal bus. Thisresults in a direct accessible RAM address space of up to256 4-bit.

M44C260/M48C260

Rev. A2, 01-Oct-98 31 (51)

7 6 5 4

3 2 1 07 6 5 4

3 2 1 0

3 2 1 05 47 6

7 6 5 4 3 2 1 0 3 2 1 07 6 5 4

3 2 1 07 6 5 4 3 2 1 07 6 5 4

Opcode

Opcode 4 bit data

Opcode

Opcode

Opcode 8 bit address

6 bit address

12 bit address11 0

1) Zero address operation

2) Immediate data operation

3) Short ROM address operation

4) Long ROM address operation

5) RAM address operation

Literal (LIT_0, LIT_1, ...)

(ADD,SUB, INC, OR,...)

(SCALL, SBRA)

(CALL, BRA)

(>SP, >X,...)

94 8708

Figure 22. MARC4 opcode formats

3.3.1 MARC4 Instruction Set Overview

Mnemonic Description Cycles/Bytes

Arithmetic operations:ÁÁÁÁÁÁÁÁÁÁADD

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁAdd

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁADDC

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Add with carryÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

SUB ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Subtract ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

SUBB ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Subtract with borrow ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

DAA ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Decimal adjust ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁ

INC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Increment TOS ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁDEC ÁÁÁÁÁÁÁÁÁDecrement TOS ÁÁÁ1/1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

DECRÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Decrement. 4-bit index onreturn stack

ÁÁÁÁÁÁÁÁÁ

2/1

Compare operations:ÁÁÁÁÁÁÁÁÁÁ

CMP_EQ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Compare equal ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

CMP_NE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Compare not equal ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁ

CMP_LT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Compare less than ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁCMP_LE ÁÁÁÁÁÁÁÁÁCompare less equal ÁÁÁ1/1ÁÁÁÁÁÁÁÁÁÁCMP_GT

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁCompare greater than

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁCMP_GEÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁCompare greater equal

ÁÁÁÁÁÁ1/1

Logical operations:ÁÁÁÁÁÁÁÁÁÁ

XOR ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Exclusive OR ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

AND ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

AND ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

OR ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

OR ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁ

NOT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1’s complement ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁSHL ÁÁÁÁÁÁÁÁÁShift left into carry ÁÁÁ1/1ÁÁÁÁÁÁÁÁÁÁSHR

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁShift right into carry

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁROLÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRotate left through carry

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁROR

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Rotate right through carryÁÁÁÁÁÁ

1/1

Mnemonic Description Cycles/Bytes

Flag operations:ÁÁÁÁÁÁÁÁÁÁ

TOG_BF ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Toggle branch flag ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

SET_BFC ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Set branch flag ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

DI ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Disable all interrupts ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁ

CCR! ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store TOS into CCR ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁCCR@ ÁÁÁÁÁÁÁÁÁFetch CCR onto TOS ÁÁÁ1/1Program branching:ÁÁÁÁÁ

ÁÁÁÁÁBRA $xxxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁConditional long branch

ÁÁÁÁÁÁ2/2ÁÁÁÁÁ

ÁÁÁÁÁCALL $xxx

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Long call (current page)ÁÁÁÁÁÁ

3/2ÁÁÁÁÁÁÁÁÁÁ

SBRA $xxxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Conditional short branch ÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

SCALL$xxxÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Short call (zero page) ÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

EXIT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Return from subroutine ÁÁÁÁÁÁ

2/1

ÁÁÁÁÁÁÁÁÁÁ

RTI ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Return from interrupt ÁÁÁÁÁÁ

2/1

ÁÁÁÁÁSWI ÁÁÁÁÁÁÁÁÁSoftware interrupt ÁÁÁ1/1ÁÁÁÁÁÁÁÁÁÁSLEEP

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁActivate sleep mode

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁNOPÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁNo operation

ÁÁÁÁÁÁ1/1

Register operations:ÁÁÁÁÁÁÁÁÁÁ

SP@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch the current SP ÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

RP@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch the current RP ÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

X@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch the contents of X ÁÁÁÁÁÁ

2/1

ÁÁÁÁÁÁÁÁÁÁ

Y@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch the contents of Y ÁÁÁÁÁÁ

2/1

ÁÁÁÁÁSP! ÁÁÁÁÁÁÁÁÁMove the top 2 into SP ÁÁÁ2/1ÁÁÁÁÁÁÁÁÁÁRP!

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁMove the top 2 into RP

ÁÁÁÁÁÁ2/1ÁÁÁÁÁ

ÁÁÁÁÁX!

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move the top 2 into XÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

Y! ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move the top 2 into Y ÁÁÁÁÁÁ

2/1ÁÁÁÁÁÁÁÁÁÁ

>SP $xx ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store direct address to SPÁÁÁÁÁÁ

2/2ÁÁÁÁÁÁÁÁÁÁ

>RP $xx ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store direct address to RPÁÁÁÁÁÁ

2/2ÁÁÁÁÁÁÁÁÁÁ

>X $xx ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store direct address into XÁÁÁÁÁÁ

2/2

ÁÁÁÁÁÁÁÁÁÁ

>Y $xx ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store direct address into YÁÁÁÁÁÁ

2/2

M44C260/M48C260

Rev. A2, 01-Oct-9832 (51)

Mnemonic Description Cycles/Bytes

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Stack operations:

ÁÁÁÁÁSWAP ÁÁÁÁÁÁÁÁÁExchange the top 2 nibbleÁÁÁ1/1ÁÁÁÁÁÁÁÁÁÁOVER

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁCopy TOS-1 to the top

ÁÁÁÁÁÁ1/1ÁÁÁÁÁ

ÁÁÁÁÁDUP

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Duplicate the top nibbleÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

ROT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move TOS-2 to the top ÁÁÁÁÁÁ

3/1ÁÁÁÁÁÁÁÁÁÁ

DROP ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Remove the top nibble ÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

>R ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move the top nibble ontothe return stack

ÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁ

2>R ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move the top 2 nibbleonto the return stack

ÁÁÁÁÁÁ

3/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

3>R ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Move the top 3 nibbleonto the return stack

ÁÁÁÁÁÁÁÁÁ

4/1

ÁÁÁÁÁÁÁÁÁÁ

R@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Copy 1 nibble from the re-turn stack

ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

2R@ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Copy 2 nibbles from thereturn stack

ÁÁÁÁÁÁÁÁÁ

2/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

3R@ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Copy 3 nibbles from thereturn stack

ÁÁÁÁÁÁÁÁÁ

4/1

ÁÁÁÁÁÁÁÁÁÁ

DROPR ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Remove the top of returnstack (12-Bit)

ÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

LIT_nÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Push immediate value

(1 nibble) onto TOS

ÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ROM data operations:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TABLE ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch 8-bit constant fromROM

ÁÁÁÁÁÁÁÁÁ

3

Mnemonic Description Cycles/Bytes

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Memory operations:

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[X]@

[Y]@ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch 1 nibble from RAMindirect addressed by X-or Y-register

ÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[+X]@

[+Y]@

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch 1 nibble from RAMindirect addr. by pre-in-crem. X- or Y-register

ÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[X-]@

[Y-]@

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch 1 nibble from RAMindirect addr. by post-dej-crem. X- or Y-register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[>X]@ $xx

[>Y]@ $xx

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Fetch 1 nibble from RAMdirect addressed by X- orY-register

ÁÁÁÁÁÁÁÁÁÁÁÁ

2/2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[X]!

[Y]!

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store 1 nibble into RAMindirect addressed by [X]

ÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[+X]!

[+Y]!

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store 1 nibble into RAMindirect addressed by pre-incremented [X]

ÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[X-]!

[Y-]!

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store 1 nibble into RAMindirect addr. by post-de-crem. X- or Y-register

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1/1

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

[>X]! $xx

[>Y]! $xx

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Store 1 nibble into RAMdirect addressed by X- orY-register

ÁÁÁÁÁÁÁÁÁÁÁÁ

2/2

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

I/O operations:ÁÁÁÁÁÁÁÁÁÁ

IN ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Read I/O-Port onto TOSÁÁÁÁÁÁÁÁ

1/1ÁÁÁÁÁÁÁÁÁÁ

OUT ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Write TOS to I/O port ÁÁÁÁÁÁÁÁ

1/1

3.3.2 qFORTH Language Overview

MARC4 controllers are programmed in the high levellanguage qFORTH which is based on the FORTH-83 lan-guage standard. The qFORTH compiler generates anative code for a 4-bit FORTH-architecture single chipmicrocomputer, the TEMIC MARC4 .MARC4 applica-tions are all programmed in qFORTH which is designedspecifically for efficient real time control. Since theqFORTH compiler generates highly optimized codes,there is no advantage or point in programming theMARC4 in assembly code. The high level of codeefficiency generated by the qFORTH compiler isachieved by the use of modern optimization techniquessuch as branch-instruction size minimization, fastprocedure calls, pointer tracking and many peephole opti-mizations.

Language features:

ExpandabilityMany of the fundamental qFORTH operationsare directly implemented in the MARC4 instruc-tion set.

Stack orientedAll operations communicate with one anothervia the data stack and use the reverse polish formof notation (RPN)

Structured programmingqFORTH supports structured programming

ReentrantDifferent tasks can share the same code.

RecursiveqFORTH routines can call themselves.

Native code inclusionIn qFORTH there is no separation of high levelconstructs from the native code mnemonics.

M44C260/M48C260

Rev. A2, 01-Oct-98 33 (51)

3.4 The qFORTH Language - Quick Reference Guide

3.4.1 Arithmetic/Logical

- EXP ( n1 n2 –– n1-n2 ) Subtract the top two nibbles + EXP ( n1 n2 –– n1+n2 ) Add up the two top 4-bit values-C EXP ( n1 n2 –– n1+/n+/C ) 1’s compl. subtract with borrow+C EXP ( n1 n2 –– n1+n2+C ) Add with carry top two values1+ EXP ( n –– n+1 ) Increment the top value by 11- EXP ( n –– n–1 ) Decrement the top value by 12* EXP ( n –– n*2 ) Multiply the top value by 22/ EXP ( n –– n DIV 2 ) Divide the 4-bit top value by 2D+ EXP ( d1 d2 –– d1+d2 ) Add the top two 8-bit valuesD- EXP ( d1 d2 –– d1-d2 ) Subtract the top two 8-bit valuesD2/ EXP ( d –– d/2 ) Divide the top 8-bit value by 2D2* EXP ( d –– d*2 ) Multiply the top 8-bit value by 2M+ EXP ( d1 n –– d2 ) Add a 4-bit to an 8-bit valueM- EXP ( d1 n –– d2 ) Subtract 4-bit from an 8-bit valueAND EXP ( n1 n2 –– n1^n2 ) Bitwise AND of top two valuesOR EXP ( n1 n2 –– n1 v n2 ) Bitwise OR the top two valuesROL EXP ( –– ) Rotate TOS left through carryROR EXP ( –– ) Rotate TOS right through carrySHL EXP ( n –– n*2 ) Shift TOS value left into carrySHR EXP ( n –– n/2 ) Shift TOS value right into carryNEGATE EXP ( n –– –n ) 2’s complement the TOS valueDNEGATE EXP ( d –– –d ) 2’s complement top 8-bit valueNOT EXP ( n –– /n ) 1’s complement of the top valueXOR EXP ( n1 n2 –– n3 ) Bitwise Ex-OR the top 2 values

3.4.2 Comparisons

> EXP ( n1 n2 –– ) If n1>n2, then branch flag set < EXP ( n1 n2 –– ) If n1<n2, then branch flag set >= EXP ( n1 n2 –– ) If n1>=n2, then branch flag set <= EXP ( n1 n2 –– ) If n1<=n2, then branch flag set <> EXP ( n1 n2 –– ) If n1<>n2, then branch flag set = EXP ( n1 n2 –– ) If n1=n2, then branch flag set0<> EXP ( n –– ) If n <>0, then branch flag set0= EXP ( n –– ) If n = 0, then branch flag setD> EXP ( d1 d2 –– ) If d1>d2, then branch flag setD< EXP ( d1 d2 –– ) If d1<d2, then branch flag setD>= EXP ( d1 d2 –– ) If d1>=d2, then branch flag setD<= EXP ( d1 d2 –– ) If d1<=d2, then branch flag setD= EXP ( d1 d2 –– ) If d1=d2, then branch flag setD<> EXP ( d1 d2 –– ) If d1<>d2, then branch flag setD0<> EXP ( d –– ) If d <>0, then branch flag setD0= EXP ( d –– ) If d =0, then branch flag setDMAX EXP ( d1 d2 –– dMax ) 8-bit maximum value of d1, d2DMIN EXP ( d1 d2 –– dMin ) 8-bit minimum value of d1, d2MAX EXP ( n1 n2 –– nMax ) 4-bit maximum value of n1, n2MIN EXP ( n1 n2 –– nMin ) 4-bit minimum value of n1, n2

M44C260/M48C260

Rev. A2, 01-Oct-9834 (51)

3.4.3 Control StructuresAGAIN EXP ( –– ) Ends an infinite loop BEGIN .. AGAINBEGIN EXP ( –– ) BEGIN of most control structuresCASE EXP ( n –– n ) Begin of CASE .. ENDCASE blockDO EXP ( limit start –– ) Initializes an iterative DO..LOOP

RET ( –– u|limit|start )ELSE EXP ( –– ) Executed when IF condition is falseENDCASE EXP ( n –– ) End of CASE..ENDCASE blockENDOF EXP ( n –– n ) End of <n> OF .. ENDOF blockEXECUTE EXP ( ROMAddr –– ) Execute word located at ROMAddrEXIT RET ( ROMAddr –– ) Unstructured EXIT from ‘:’-definitionIF EXP ( –– ) Conditional IF .. ELSE .. THEN blockLOOP EXP ( –– ) Repeat LOOP, if index+1<limit<n> OF EXP ( c n –– ) Execute CASE block, if n =cREPEAT EXP ( –– ) Unconditional branch to BEGIN of BEGIN .. WHILE

REPEATTHEN EXP ( –– ) Closes an IF statementUNTIL EXP ( –– ) Branch to BEGIN, if condition is falseWHILE EXP ( –– ) Execute WHILE .. REPEAT block,

if condition is true+LOOP EXP ( n –– ) Repeat LOOP, if I+n < limit

RET ( u|limit|I –– u|limit|I+n )#DO EXP ( n –– ) RET ( –– u|u|n ) Execute the #DO .. #LOOP block n-times#LOOP EXP ( –– ) Decrement loop index by 1 downto zero

RET ( u|u|I––u|u|I–1 )?DO EXP ( Limit Start –– ) if start=limit, skip LOOP block?LEAVE EXP ( –– ) Exit any loop, if condition is true–?LEAVE EXP ( –– ) Exit any loop, if condition is false

3.4.4 Stack Operations

0 .. Fh, EXP ( –– n )0 .. 15 EXP ( –– n ) Push 4-bit literal on EXP stack’ <name> EXP ( –– ROMAddr ) Places ROM address

of colon-definition <name> on EXP stack<ROT EXP ( n1 n2 n –– n n1 n2) Move top value to 3rd stack pos. >R EXP ( n –– ) RET ( –– u|u|n ) Move top value onto the return stack?DUP EXP ( n –– n n ) Duplicate top value, if n <>0DEPTH EXP ( –– n ) Get current expression stack depthDROP EXP ( n –– ) Remove the top 4-bit valueDUP EXP ( n –– n n ) Duplicate the top 4-bit valueI EXP ( –– I ) RET ( u|u|I — u|u|I ) Copy loop index I from return to expression stackJ EXP ( –– J ) Fetch index value of outer loop

[2nd return stack levelRET ( u|u|J u|u|I –– u|u|J u|u|I ) entry]

NIP EXP ( n1 n2 –– n2 ) Drop second to top 4-bit valueOVER EXP ( n1 n2 –– n1 n2 n1 ) Copy 2nd over top 4-bit valuePICK EXP ( × –– n[x] ) Copy the x-th value from the expression stack

onto TOSRFREE EXP ( –– n ) Get # of unused RET stack entriesR> EXP ( –– n ) RET ( u|u|n –– ) Move top 4-bits from return to expression stackR@ EXP ( –– n ) Copy top 4-bits from return to expression stack

RET ( u|u|n –– u|u|n )ROLL EXP ( n –– ) Move n-th value within stack to top

M44C260/M48C260

Rev. A2, 01-Oct-98 35 (51)

ROT EXP ( n1 n2 n –– n2 n n1) Move 3rd stack value to top pos.SWAP EXP ( n1 n2 –– n2 n1 ) Exchange top two values on stackTUCK EXP ( n1 n2 –– n2 n1 n2 ) Duplicate top value, move under second item2>R EXP ( n1 n2 –– ) Move top two values from expression

to return stackRET ( –– u|n2|n1 )

2DROP EXP ( n1 n2 –– ) Drop top 2 values from the stack2DUP EXP ( d –– d d ) Duplicate top 8-bit value2NIP EXP ( d1 d2 –– d2 ) Drop 2nd 8-bit value from stack2OVER EXP ( d1 d2 –– d1 d2 d1 ) Copy 2nd 8-bit value over top value2<ROT EXP ( d1 d2 d –– d d1 d2) Move top 8-bit value to 3rd pos’n2R> EXP ( –– n1 n2 ) Move top 8-bits from return to expression stack

RET ( u|n2|n1 –– )2R@ EXP ( –– n1 n2 ) Copy top 8-bits from return to expression stack

RET ( u|n2|n1 –– u|n2|n1)2ROT EXP ( d1 d2 d –– d2 d d1) Move 3rd 8-bit value to top value2SWAP EXP ( d1 d2 –– d2 d1 ) Exchange top two 8-bit values2TUCK EXP ( d1 d2 –– d2 d1 d2 ) Tuck top 8-bits under 2nd byte3>R EXP ( n1 n2 n3 –– ) Move top 3 nibbles from the expression onto

RET ( –– n3|n2|n1 ) the return stack3DROP EXP ( n1 n2 n3 –– ) Remove top 3 nibbles from stack3DUP EXP ( t –– t t ) Duplicate top 12-bit value3R> EXP ( –– n1 n2 n3 ) Move top 3 nibbles from return

to the expression stackRET ( n3|n2|n1 –– )

3R@ EXP ( –– n1 n2 n3 ) Copy 3 nibbles (1 entry) from the returnRET ( n3|n2|n1 –– n3|n2|n1 ) to the expression stack

3.4.5 Memory Operations

! EXP ( n addr –– ) Store a 4-bit value in RAM @ EXP ( addr –– n ) Fetch a 4-bit value from RAM+! EXP ( n addr –– ) Add 4-bit value to RAM contents1+! EXP ( addr –– ) Increment a 4-bit value in RAM1–! EXP ( addr –– ) Decrement a 4-bit value in RAM2! EXP ( d addr –– ) Store an 8-bit value in RAM2@ EXP ( addr –– d ) Fetch an 8-bit value from RAMD+! EXP ( d addr –– ) Add 8-bit value to byte in RAMD–! EXP ( d addr –– ) Subtract 8-bit value from a byte in RAMDTABLE@ EXP ( ROMAddr n –– d ) Indexed fetch of a ROM constantDTOGGLE EXP ( d addr –– ) Exclusive-OR 8-bit value with byte in RAMERASE EXP ( addr n –– ) Sets n memory cells to 0FILL EXP ( addr n n1 –– ) Fill n memory cells with n1MOVE EXP ( n from to –– ) Move a n-digit array in memoryROMByte@ EXP ( ROMAddr –– d ) Fetch an 8-bit ROM constantTOGGLE EXP ( n addr –– ) Ex-OR value at address with n3! EXP ( nh nm nl addr –– ) Store 12-bit value into a RAM array3@ EXP ( addr –– nh nm nl ) Fetch 12-bit value from RAMT+! EXP ( nh nm nl addr –– ) Add 12-bits to 3 RAM cellsT–! EXP ( nh nm nl addr –– ) Subtract 12-bits from 3 nibble RAM arrayTD+! EXP ( d addr –– ) Add byte to a 3 nibble RAM arrayTD–! EXP ( d addr –– ) Subtract byte from 3 nibble array

M44C260/M48C260

Rev. A2, 01-Oct-9836 (51)

3.4.6 Predefined Structures

( ccccccc) In-line comment definition\ ccccccc Comment until end of the line: <name> RET ( –– ) Begin of a colon definition; RET ( ROMAddr –– ) Exit; ends any colon definition[FIRST] EXP ( –– 0 ) Index (=0) for first array element[LAST] EXP ( –– n|d ) Index for last array elementCODE EXP ( –– ) Begins an in-line macro definitionEND-CODE EXP ( –– ) Ends an In-line macro definitionARRAY EXP ( n –– ) Allocates space for a 4-bit array2ARRAY EXP ( n –– ) Allocates space for an 8-bit arrayCONSTANT EXP ( n –– ) Defines a 4-bit constant2CONSTANT EXP ( d –– ) Defines an 8-bit constantLARRAY EXP ( d –– ) Allocates space for a long 4-bit array

with up to 255 elements2LARRAY EXP ( d –– ) Allocates space for a long byte arrayIndex EXP (n|d addr––addr’) Run-time array access using a variable array indexROMCONST EXP ( –– ) Define ROM look-up table with 8-bit valuesVARIABLE EXP ( –– ) Allocates memory for 4-bit value2VARIABLE EXP ( –– ) Creates an 8-bit variable<n> ALLOT Allocate space for <n+1> nibbles

of un-initialized RAMAT <address> Fixed <address> placement: INTx RET ( –– ROMAddr ) Interrupt service routine entry: $AutoSleep Entry point address on return stack underflow: $RESET EXP ( –– ) Entry point on power-on reset

3.4.7 Assembler Mnemonics

ADD EXP ( n1 n2 –– n1+n2 ) Add the top two 4-bit valuesADDC EXP ( n1 n2 –– n1+n2+C ) Add with carry top two valuesCCR! EXP ( n –– ) Write top value into the CCRCCR@ EXP ( –– n ) Fetch the CCR onto top of stackCMP_EQ EXP ( n1 n2 –– n1 ) If n1=n2, then branch flag setCMP_GE EXP ( n1 n2 –– n1 ) If n1>=n2, then branch flag setCMP_GT EXP ( n1 n2 –– n1 ) If n1>n2, then branch flag setCMP_LE EXP ( n1 n2 –– n1 ) If n1<=n2, then branch flag setCMP_LT EXP ( n1 n2 –– n1 ) If n1<n2, then branch flag setCMP_NE EXP ( n1 n2 –– n1 ) If n1<>n2, then branch flag setCLR_BCF EXP ( –– ) Clear branch and carry flagSET_BCF EXP ( –– ) Set branch and carry flagTOG_BF EXP ( –– ) Toggle the branch flagDAA EXP ( n>9 or C set –– n+6) BCD arithmetic adjust [addition]DAS EXP ( n –– 10+/n+C ) 9’s complement for BCD subtractDEC EXP ( n –– n–1 ) Decrement top value by 1DECR RET ( u|u|I — u|u|I–1 ) Decrement value on the return stackDI EXP ( –– ) Disable interruptsDROPR RET ( u|u|u –– ) Drop element from return stackEXIT RET ( ROMAddr –– ) Exit from current ‘:’-definitionEI EXP ( –– ) Enable interruptsIN EXP ( port –– data ) Read data from an I/O portINC EXP ( n –– n+1 ) Increment the top value by 1NOP EXP ( –– ) No operationNOT EXP ( n –– /n ) 1’s complement of the top value

M44C260/M48C260

Rev. A2, 01-Oct-98 37 (51)

RP! EXP ( d –– ) Store as return stack pointerRP@ EXP ( –– d ) Fetch current RET stack pointerRTI RET ( RETAddr –– ) Return from interrupt routineSLEEP EXP ( –– ) Enter ’sleep-mode’, enable all interruptsSWI0 SWI7 EXP ( –– ) Software triggered interruptSP! EXP ( d –– ) Store as stack pointerSP@ EXP ( –– d ) Fetch current stack pointerSUB EXP ( n1 n2 –– n1-n2 ) 2’s complement subtractionSUBB EXP ( n1 n2 –– n1+/n2+C ) 1’s compl. subtract with borrowTABLE EXP ( –– d )

RET ( RetAddr RomAddr ––) Fetches an 8-bit constant from an address in ROMOUT EXP ( data port –– ) Write data to I/O portX@ EXP ( –– d ) Fetch current× register contents[X]@ EXP ( –– n ) Indirect× fetch of RAM contents[+X]@ EXP ( –– n ) Pre-incr.× indirect RAM fetch[X–]@ EXP ( –– n ) Postdecr.× indirect RAM fetch[>X]@ $xx EXP ( –– n ) Direct RAM fetch,× addressedX! EXP ( d –– ) Move 8-bit address to× register[X]! EXP ( n –– ) Indirect× store of RAM contents[+X]! EXP ( n –– ) Pre-incr.× indirect RAM store[X–]! EXP ( n –– ) Postdecr.× indirect RAM store[>X]! $xx EXP ( n –– ) Direct RAM store,× addressedY@ EXP ( –– d ) Fetch current Y register contents[Y]@ EXP ( –– n ) Indirect Y fetch of RAM contents[+Y]@ EXP ( –– n ) Pre-incr. Y indirect RAM fetch[Y–]@ EXP ( –– n ) Postdecr. Y indirect RAM fetch[>Y]@ $xx EXP ( –– n ) Direct RAM fetch, Y addressedY! EXP ( d –– ) Move address to Y register[Y]! EXP ( n –– ) Indirect Y store of RAM contents[+Y]! EXP ( n –– ) Pre-incr. Y indirect RAM store[Y–]! EXP ( n –– ) Postdecr. Y indirect RAM store[>Y]! $xx EXP ( n –– ) Direct RAM store, Y addressed >RP $xx EXP ( –– ) Set return stack pointer >SP $xx EXP ( –– ) Set expression stack pointer >X $xx EXP ( –– ) Set× register immediate >Y $xx EXP ( –– ) Set Y register immediate

Notes:

RET (–) Return address stack effects

EXP (–) Expression (or data) stack effects

True condition Means branch flag set in CCR

False condition Means branch flag reset in CCR

n 4-bit data value

d 8-bit data value

addr 8-bit RAM address

ROMaddr 12-bit ROM address

M44C260/M48C260

Rev. A2, 01-Oct-9838 (51)

4 Electrical Characteristics4.1 Absolute Maximum RatingsVoltages are given relative to VSS.

Parameters Symbol Value Unit

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Supply voltage ÁÁÁÁÁÁÁÁÁÁ

VDD ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

– 0.3 to + 7.0 ÁÁÁÁÁÁÁÁÁÁ

V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁInput voltage (on any pin) ÁÁÁÁÁVIN ÁÁÁÁÁÁÁÁÁVSS –0.3 ≤ VIN ≤ VDD +0.3ÁÁÁÁÁVÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOutput short circuit duration

ÁÁÁÁÁÁÁÁÁÁtshort

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁindefinite

ÁÁÁÁÁÁÁÁÁÁsecÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOperating temperature rangeÁÁÁÁÁÁÁÁÁÁTamb

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ–40 to +85

ÁÁÁÁÁÁÁÁÁÁ°CÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁStorage temperature range

ÁÁÁÁÁÁÁÁÁÁ

TstgÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

–40 to +130ÁÁÁÁÁÁÁÁÁÁ

°CÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Thermal resistance (PLCC) ÁÁÁÁÁÁÁÁÁÁ

RthJAÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

110 ÁÁÁÁÁÁÁÁÁÁ

K/WÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Soldering temperature (t ≤ 10 s) ÁÁÁÁÁÁÁÁÁÁ

Tsld ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

260 ÁÁÁÁÁÁÁÁÁÁ

°C

Stresses greater than those listed under absolute maxi-mum ratings may cause permanent damage to the device.This is a stress rating only and functional operation of thedevice at any condition above those indicated in the op-erational section of this specification is not implied.Exposure to absolute maximum rating condition for anextended period may affect device reliability. All inputs

and outputs are protected against high electrostatic volt-ages or electric fields. However, precautions to minimizebuild-up of electrostatic charges during handling are rec-ommended. Reliability of operation is enhanced if unusedinputs are connected to an appropriate logic voltage level(e.g., VDD).

4.2 DC Operating CharacteristicsSupply voltage VDD = 2.4 to 6.2 V, VSS = 0 V, Tamb = –40 to +85°C, unless otherwise specified.

Parameters Test Conditions / Pins Symbol Min. Typ. Max. UnitÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Power supply ( ) values for M48C260ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Active current(CPU active)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V fSYSCL=1MHzfSYSCL=2MHz

VDD = 6.2 V fSYSCL=1MHzfSYSCL=2MHz

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IDD ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.9 (1.3)1.3 (1.8)2.1 (2.7)3.6 (4.4)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1.6 (2.1)2.1 (2.9)3.1 (4.0)5.2 (6.4)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

mAmAmAmA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Power down current (CPU sleep, RC oscillator active)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V fSYSCL=1MHzfSYSCL=2MHz

VDD = 6.2 V fSYSCL=1MHzfSYSCL=2MHz

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IPDÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.3 (0.9)0.4 (1.0)0.6 (1.3)0.8 (1.9)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.5 (1.6)0.8 (1.7)1.0 (2.0)1.3 (2.3)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

mAmAmAmA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Sleep current(CPU sleep, RC oscillator inactive)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 VVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ISleepÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.4 (0.4)0.5 (0.5)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1.0 (1.0)1.0 (1.0)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

µAµA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Sleep current(CPU sleep, RC oscillator inactive)

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 VVDD = 6.2 VTamb = 25°C

ÁÁÁÁÁÁÁÁÁÁÁÁ

ISleepÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

0.8 (0.8)0.8 (0.8)

ÁÁÁÁÁÁÁÁÁÁÁÁ

µAµA

M44C260/M48C260

Rev. A2, 01-Oct-98 39 (51)

Supply voltage VDD = 2.4 to 6.2 V, VSS = 0 V, Tamb = 25°C, unless otherwise specified

Parameters Test Conditions / Pins Symbol Min. Typ. Max. UnitÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Brown-out voltage:ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

VBOÁÁÁÁÁÁÁÁÁÁ

1.75 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

2.25 ÁÁÁÁÁÁÁÁ

V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Schmitt-trigger input voltage: Pin INT6, TA, TB, Port 40 and Port 3

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Negative-going thresholdvoltage

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 to 6.2 V ÁÁÁÁÁÁÁÁ

VT–ÁÁÁÁÁÁÁÁÁÁ

VSS ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

0.3*VDDÁÁÁÁÁÁÁÁ

V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Positive-going thresholdvoltage

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 to 6.2 VÁÁÁÁÁÁÁÁÁÁÁÁ

VT+ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.7*VDDÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

VDDÁÁÁÁÁÁÁÁÁÁÁÁ

V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Hysteresis (VT ± VT–)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 to 6.2 V ÁÁÁÁÁÁÁÁ

VH ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

0.1*VDDÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁInput voltage: Pin NRST, TE, NWP, TCL, and Port 0, 1, 2, Port 43:

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input voltage LOW ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 to 6.2 V ÁÁÁÁÁÁÁÁ

VIL ÁÁÁÁÁÁÁÁÁÁ

VSS ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

0.2*VDDÁÁÁÁÁÁÁÁ

V

ÁÁÁÁÁÁÁÁInput voltage HIGH ÁÁÁÁÁÁÁÁÁVDD = 2.4 to 6.2 V ÁÁÁÁVIHÁÁÁÁÁ0.8*VDD ÁÁÁÁÁÁÁÁVDD ÁÁÁÁVÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input current: Bidirectional Ports 0, 1, 2, 3, input Port 4 with pull-up resistorPin NRST, TCL, INT6ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input LOW current ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD= 2.4 V VIL= VSSVDD= 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁ

IIL ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

–2.7–28

ÁÁÁÁÁÁÁÁÁÁÁÁ

–6.7–60

ÁÁÁÁÁÁÁÁÁÁÁÁ

–13–103

ÁÁÁÁÁÁÁÁÁÁÁÁ

µAµA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input current: Bidirectional Ports 0, 1, 2, 3, input Port 4 with pull-down resistorPin TE, NWP, TA, TBÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Input HIGH currentÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V, VIH = VDDVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁ

IIHÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

2.730

ÁÁÁÁÁÁÁÁÁÁÁÁ

6.360

ÁÁÁÁÁÁÁÁÁÁÁÁ

12100

ÁÁÁÁÁÁÁÁÁÁÁÁ

µAµA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Output current: Bidirectional Ports 0, 1, 2, 3 and TA, TB

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Output LOW current ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V ,VOL = 0.2*VDDVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁ

IOLÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

0.8

6

ÁÁÁÁÁÁÁÁÁÁÁÁ

1.6

11

ÁÁÁÁÁÁÁÁÁÁÁÁ

2.8

17

ÁÁÁÁÁÁÁÁÁÁÁÁ

mA

mAÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Output HIGH currentÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V VOH = 0.8*VDDVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁ

IOHÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

–0.6

–4

ÁÁÁÁÁÁÁÁÁÁÁÁ

–1.3

–7.5

ÁÁÁÁÁÁÁÁÁÁÁÁ

–2.2

–12

ÁÁÁÁÁÁÁÁÁÁÁÁ

mA

mAÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOutput current: Pin TCLÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Output LOW currentÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V VOL = 0.2*VDDVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

IOLÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

1.6

12

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

3.2

22

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

5.6

34

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

mA

mA

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Output HIGH currentÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

VDD = 2.4 V VOH = 0.8*VDDVDD = 6.2 V

ÁÁÁÁÁÁÁÁÁÁÁÁ

IOHÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

–1.2

–8

ÁÁÁÁÁÁÁÁÁÁÁÁ

–2.6

–15

ÁÁÁÁÁÁÁÁÁÁÁÁ

–4.4

–24

ÁÁÁÁÁÁÁÁÁÁÁÁ

mA

mA

4.3 AC Characteristics

Supply voltage VDD = 2.4 to 6.2 V, VSS = 0 V, Tamb = 25°C, unless otherwise specified

Parameters Test Conditions / Pins Symbol Min. Typ. Max. UnitÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer 2A and 2B input timingÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer input clock ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

fTIÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

SYSCLÁÁÁÁÁÁÁÁ

–ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer input LOW timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Rise/fall time < 10 ns ÁÁÁÁÁÁÁÁ

tTILÁÁÁÁÁÁÁÁÁÁ

50 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

nsÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Timer input HIFG timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Rise/fall time < 10 ns ÁÁÁÁÁÁÁÁ

tTIHÁÁÁÁÁÁÁÁÁÁ

50 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

nsÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Interrupt request input timing

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Int. request LOW timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Rise/fall time < 10 ns ÁÁÁÁÁÁÁÁ

tIRLÁÁÁÁÁÁÁÁÁÁ

50 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ns

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Int. request HIGH timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Rise/fall time < 10 ns ÁÁÁÁÁÁÁÁ

tIRHÁÁÁÁÁÁÁÁÁÁ

50 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ns

M44C260/M48C260

Rev. A2, 01-Oct-9840 (51)

UnitMax.Typ.Min.SymbolTest Conditions / PinsParametersÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL clockÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL input clock ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

fTCLÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

2 ÁÁÁÁÁÁÁÁ

MHz

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL input LOW time ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

tTCLLÁÁÁÁÁÁÁÁ

0.250ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

µs

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL input HIGH timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

tTCLHÁÁÁÁÁÁÁÁ

0.250ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

10 ÁÁÁÁÁÁÁÁ

µs

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

TCL rise time

TCL fall time

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

tTCLR

tTCLF

ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

10ÁÁÁÁÁÁÁÁÁÁÁÁ

ns

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Reset timing

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Power-on reset time ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

TPORÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

100 ÁÁÁÁÁÁÁÁ

500 ÁÁÁÁÁÁÁÁ

µs

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

NRES input LOW timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

TPORÁÁÁÁÁÁÁÁ

4*SYSCLÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

µs

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Data EEPROM

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

EEPROM write time ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Note 1 ÁÁÁÁÁÁÁÁ

tEEWÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

16 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

msÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁEEPROM write cycles

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁNote 1, 3

ÁÁÁÁÁÁÁÁnW

ÁÁÁÁÁÁÁÁ5*105

ÁÁÁÁÁÁÁÁÁÁ106

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ–ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁEEPROM data retentionÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁNote 1, 3

ÁÁÁÁÁÁÁÁTDR

ÁÁÁÁÁÁÁÁ10

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁyearsÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁProgram EEPROM (M48C260 only)ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁEEPROM write cycles

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁNote 3

ÁÁÁÁÁÁÁÁnW

ÁÁÁÁÁÁÁÁ100

ÁÁÁÁÁÁÁÁÁÁ1000

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ–ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁOperation cycle timeÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

System clock cycleÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CCS = 1 Note 1CCS = 0

ÁÁÁÁÁÁÁÁÁÁÁÁ

tSYSCLÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

5001000

ÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁ

nsns

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

RC oscillatorÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Frequency ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Note 1 ÁÁÁÁÁÁÁÁ

fRC1ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

1000 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

kHzÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Stability ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Note 1 ÁÁÁÁÁÁÁÁ

∆f/f ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

2000 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

ppm

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Stabilization time ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Note 1 ÁÁÁÁÁÁÁÁ

tS ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

1000 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

µs

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

32 kHz oscillator

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Frequency ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

fX ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

32.768 ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

kHz

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Start up time ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

tSQ ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁ

s

ÁÁÁÁÁÁÁÁStability ÁÁÁÁÁÁÁÁÁNote 2 ÁÁÁÁ∆f/f ÁÁÁÁ–10ÁÁÁÁÁÁÁÁÁ10 ÁÁÁÁppmÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

Integrated input/outputcapacitances

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

CIN

COUT

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

10

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

pF

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

External 32 kHz crystal parameters

ÁÁÁÁÁÁÁÁCrystal frequency ÁÁÁÁÁÁÁÁÁÁÁÁÁfX ÁÁÁÁÁÁÁÁÁ32.768 ÁÁÁÁÁÁÁÁkHzÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁSeries resistance

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁRS

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ30

ÁÁÁÁÁÁÁÁ50

ÁÁÁÁÁÁÁÁkΩÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁStatic capacitanceÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁC0

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ1.5

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁpFÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁDynamic capacitanceÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁC1

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁÁÁ3

ÁÁÁÁÁÁÁÁ

ÁÁÁÁÁÁÁÁfF

Note 1: With connected crystal (pin 5, 6) and after start up time of crystal oscillator.

Note 2: Dependent on the connected quartz crystal.

Note 3: This parameter is tested initially and after a design or process change that effects the parameter.

M44C260/M48C260

Rev. A2, 01-Oct-98 41 (51)

Crystal

LC1

RS

C0

OSCIN OSCOUT

Equivalentcircuit:

Figure 23. Equivalent crystal circuit

Brown-out voltage

1

1.2

1.4

1.6

1.8

2.0

2.2

2.4

2.6

–40 –20 0 20 40 60 80 100

V

(

V )

Tamb ( °C )94 8991

BO

VBOmin

VBOmax

Figure 24. Brown-out voltage vs. ambient temperature

0

2

4

6

8

10

12

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

I

( m

A )

OL

VDD ( V )94 8998

VOL = 0.2VDDTamb = 25°C

Figure 25. Output LOW current vs. supply voltage

60

70

80

90

100

110

120

130

140

150

–40 –20 0 20 40 60 80 100 120

I

/I

(

% )

OL

Tamb ( °C )94 9000

OL2

5

Figure 26. Output LOW current standardized to 25°C vs. temp.

–8

–7

–6

–5

–4

–3

–2

–1

0

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

I

( m

A )

OH

VDD ( V )94 8999

VOH = 0.8VDDTamb = 25°C

Figure 27. Output HIGH current vs. supply voltage

60

70

80

90

100

110

120

130

140

–40 –20 0 20 40 60 80 100 120

I

/I

(

% )

OH

Tamb ( °C )94 9001

OH

25

Figure 28. Output HIGH current standardized to 25°C vs temp.

M44C260/M48C260

Rev. A2, 01-Oct-9842 (51)

max.

min.

typ.

–5

–4

–3

–2

–1

0

0 0.5 1.0 1.5 2.0 2.5

I

( m

A )

OH

VOH ( V )94 8992

VDD = 2.4 VTamb = 25°C

Figure 29. Output HIGH current vs. output HIGH voltage

max.

min.

typ.

–12

–10

–8

–6

–4

–2

0

0 1 2 3 4

I

( m

A )

OH

VOH ( V )94 8993

VDD = 3.6 VTamb = 25°C

Figure 30. Output HIGH current vs. output HIGH voltage

max.

typ.

min.

–30

–25

–20

–15

–10

–5

0

0 1 2 3 4 5 6

I

( m

A )

OH

VOH ( V )94 8994

VDD = 6.2 VTamb = 25°C

Figure 31. Output HIGH current vs. output HIGH voltage

min.

typ.

max.

0

1

2

3

4

5

6

0 0.5 1.0 1.5 2.0 2.5

I

( m

A )

OL

VOL ( V )94 8995

VDD = 2.4 VTamb = 25°C

Figure 32. Output LOW current vs. output LOW voltage

min.

typ.

max.

0

2

4

6

8

10

12

14

0 1 2 3 4

I

( m

A )

OL

VOL ( V )94 8996

VDD = 3.6 VTamb = 25°C

Figure 33. Output LOW current vs. output LOW voltage

max.

typ.

min.

0

5

10

15

20

25

30

35

0 1 2 3 4 5 6

I

( m

A )

OL

VOL ( V )94 8997

VDD = 6.2 VTamb = 25°C

Figure 34. Output LOW current vs. output LOW voltage

M44C260/M48C260

Rev. A2, 01-Oct-98 43 (51)

min.

typ.

max.

–14

–12

–10

–8

–6

–4

–2

0

0 0.5 1.0 1.5 2.0 2.5

I

( A

)IL

VIL ( V )94 9002

VDD = 2.4 VTamb = 25°C

Figure 35. Input LOW current vs. input LOW voltage

min.

typ.

max.

–40

–35

–30

–25

–20

–15

–10

–5

0

0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0

I

( A

)IL

VIL ( V )94 9003

VDD = 3.6 VTamb = 25°C

Figure 36. Input LOW current vs. input LOW voltage

min.

typ.

max.

–120

–100

–80

–60

–40

–20

0

0 1 2 3 4 5 6

I

( A

)IL

VIL ( V )94 9004

VDD = 6.2 VTamb = 25°C

Figure 37. Input LOW current vs. input LOW voltage

min.

typ.

max.

0

2

4

6

8

10

12

14

0 0.5 1.0 1.5 2.0 2.5

I

( A

)IH

VIH ( V )94 9005

VDD = 2.4 VTamb = 25°C

Figure 38. Input HIGH current vs. input HIGH voltage

min.

typ.

max.

0

5

10

15

20

25

30

35

0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0

I

( A

)IH

VIH ( V )94 9006

VDD = 3.6 VTamb = 25°C

Figure 39. Input HIGH current vs. input HIGH voltage

min.

typ.

max.

0

20

40

60

80

100

120

0 1 2 3 4 5 6

I

( A

)IH

VIH ( V )94 9007

VDD = 6.2 VTamb = 25°C

Figure 40. Input HIGH current vs. input HIGH voltage

M44C260/M48C260

Rev. A2, 01-Oct-9844 (51)

–70

–60

–50

–40

–30

–20

–10

0

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

I

( A

)IL

VDD ( V )94 9008

VIL = VSSTamb = 25°C

Figure 41. Input LOW current vs. supply voltage

60

70

80

90

100

110

120

130

140

–40 –20 0 20 40 60 80 100 120

I

/I

(

% )

IL

Tamb ( °C )94 9010

IL25

Figure 42. Input LOW current standardized to 25°C vs.temperature

0

10

20

30

40

50

60

70

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

I

( A

)IH

VDD ( V )94 9009

VIH = VDDTamb = 25°C

Figure 43. Input HIGH current vs. supply voltage

60

70

80

90

100

110

120

130

140

150

–40 –20 0 20 40 60 80 100 120

I

/I

(

% )

IH

Tamb ( °C )94 9011

IH25

Figure 44. Input HIGH current standardized to 25°C vs.temperature

M44C260/M48C260

Rev. A2, 01-Oct-98 45 (51)

4.4 Schmitt-Trigger Inputs

The following figures show the Schmitt-trigger input specs used at timer inputs TA, TB and interrupt inputs.

Note: The values for switch levels are standardized to supply voltage.

max.

typ.

min.

0

10

20

30

40

50

60

70

80

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

V +

= (

V

/V

) x

100

(

% )

T

VDD ( V )94 9013

DD

Tamb = 25 °C

In

Figure 45. Schmitt-trigger positive going threshold voltage

typ.

max.

min.

0

10

20

30

40

50

60

70

80

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5

V –

= (

V

/V

) x

100

( %

)T

VDD ( V )94 9012

DD

In

Figure 46. Schmitt-trigger negative going threshold voltage

0

5

10

15

20

25

30

2 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5V

=

((V

+ –

V –

)/V

)

x 1

00

( %

)T

Tamb ( °C )94 9014D

D

Tamb = 25 °C

HT

Figure 47. Schmitt-trigger hysteresis vs. supply voltage

60

70

80

90

100

110

120

130

140

–40 –20 0 20 40 60 80 100 120

V

=

(V

/V

)

x 1

00

( %

)T

Tamb ( °C )94 9015

T25

Tamb = 25 °C

Thr

es

Figure 48. Threshold temperature drift

Note: For a pulse to be recognizable, it must be a minimum of 50 ns long with a rise time ≤ 10 ns.

M44C260/M48C260

Rev. A2, 01-Oct-9846 (51)

5 Pad Layout

BP22BP23

BP10BP11

BP12 BP13 IP43

IP42

IP41

IP40

TCL

VSS dig.VSS ana.

BP30

BP31

BP32

BP33BP00BP01BP02BP03NWP

TE

XTALI

XTALO

VDD dig.

VDD ana.

NRST

BP20

BP21

M44C260

95 10245

0,0

Figure 49. Pad layout

Table 8. Pad coordinates

Number Name X Point Y Point Number Name X Point Y PointÁÁÁÁÁÁÁÁ

1ÁÁÁÁÁÁÁÁÁÁ

BP22ÁÁÁÁÁÁÁÁÁÁ

0.0ÁÁÁÁÁÁÁÁÁÁ

0.0ÁÁÁÁÁÁÁÁ

16ÁÁÁÁÁÁÁÁÁÁ

BP32ÁÁÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

3741.5ÁÁÁÁÁÁÁÁ

2 ÁÁÁÁÁÁÁÁÁÁ

BP23 ÁÁÁÁÁÁÁÁÁÁ

404.5 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁ

17 ÁÁÁÁÁÁÁÁÁÁ

BP33 ÁÁÁÁÁÁÁÁÁÁÁÁ

2651.5 ÁÁÁÁÁÁÁÁÁÁ

3741.5ÁÁÁÁÁÁÁÁ

3 ÁÁÁÁÁÁÁÁÁÁ

BP10 ÁÁÁÁÁÁÁÁÁÁ

809.0 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁ

18 ÁÁÁÁÁÁÁÁÁÁ

BP00 ÁÁÁÁÁÁÁÁÁÁÁÁ

2247.0 ÁÁÁÁÁÁÁÁÁÁ

3741.5ÁÁÁÁÁÁÁÁ

4 ÁÁÁÁÁÁÁÁÁÁ

BP11 ÁÁÁÁÁÁÁÁÁÁ

1398.5ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁ

19 ÁÁÁÁÁÁÁÁÁÁ

BP01 ÁÁÁÁÁÁÁÁÁÁÁÁ

1830.5 ÁÁÁÁÁÁÁÁÁÁ

3741.5

ÁÁÁÁÁÁÁÁ

5 ÁÁÁÁÁÁÁÁÁÁ

BP12 ÁÁÁÁÁÁÁÁÁÁ

1811.0 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁ

20 ÁÁÁÁÁÁÁÁÁÁ

BP02 ÁÁÁÁÁÁÁÁÁÁÁÁ

1136.5 ÁÁÁÁÁÁÁÁÁÁ

3741.5

ÁÁÁÁ6 ÁÁÁÁÁBP13 ÁÁÁÁÁ2223.5ÁÁÁÁÁ0.0 ÁÁÁÁ21 ÁÁÁÁÁBP03 ÁÁÁÁÁÁ720.0 ÁÁÁÁÁ3741.5ÁÁÁÁÁÁÁÁ7

ÁÁÁÁÁÁÁÁÁÁIP43

ÁÁÁÁÁÁÁÁÁÁ2686.5

ÁÁÁÁÁÁÁÁÁÁ0.0

ÁÁÁÁÁÁÁÁ22

ÁÁÁÁÁÁÁÁÁÁNWP

ÁÁÁÁÁÁÁÁÁÁÁÁ303.5

ÁÁÁÁÁÁÁÁÁÁ3741.5ÁÁÁÁ

ÁÁÁÁ8ÁÁÁÁÁÁÁÁÁÁIP42

ÁÁÁÁÁÁÁÁÁÁ3056.0

ÁÁÁÁÁÁÁÁÁÁ509.0

ÁÁÁÁÁÁÁÁ23

ÁÁÁÁÁÁÁÁÁÁTE

ÁÁÁÁÁÁÁÁÁÁÁÁ0.0

ÁÁÁÁÁÁÁÁÁÁ3660.0ÁÁÁÁ

ÁÁÁÁ9ÁÁÁÁÁÁÁÁÁÁ

IP41ÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

965.0ÁÁÁÁÁÁÁÁ

24ÁÁÁÁÁÁÁÁÁÁ

XTALIÁÁÁÁÁÁÁÁÁÁÁÁ

0.0ÁÁÁÁÁÁÁÁÁÁ

3103.0ÁÁÁÁÁÁÁÁ

10 ÁÁÁÁÁÁÁÁÁÁ

IP40 ÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

1363.0ÁÁÁÁÁÁÁÁ

25 ÁÁÁÁÁÁÁÁÁÁ

XTALOÁÁÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

2625.0ÁÁÁÁÁÁÁÁ

11 ÁÁÁÁÁÁÁÁÁÁ

TCL ÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

1792.0ÁÁÁÁÁÁÁÁ

26 ÁÁÁÁÁÁÁÁÁÁ

VDD dig.ÁÁÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

2315.0ÁÁÁÁÁÁÁÁ

12 ÁÁÁÁÁÁÁÁÁÁ

VSS dig.ÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

2247.5ÁÁÁÁÁÁÁÁ

27 ÁÁÁÁÁÁÁÁÁÁ

VDD ana.ÁÁÁÁÁÁÁÁÁÁÁÁ

24.0 ÁÁÁÁÁÁÁÁÁÁ

2044.0

ÁÁÁÁÁÁÁÁ

13 ÁÁÁÁÁÁÁÁÁÁ

VSS ana.ÁÁÁÁÁÁÁÁÁÁ

3056.0ÁÁÁÁÁÁÁÁÁÁ

2457.5ÁÁÁÁÁÁÁÁ

28 ÁÁÁÁÁÁÁÁÁÁ

NRSTÁÁÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

1707.0

ÁÁÁÁ14 ÁÁÁÁÁBP30 ÁÁÁÁÁ3056.0ÁÁÁÁÁ2720.5ÁÁÁÁ29 ÁÁÁÁÁBP20 ÁÁÁÁÁÁ0.0 ÁÁÁÁÁ1164.5ÁÁÁÁÁÁÁÁ15

ÁÁÁÁÁÁÁÁÁÁBP31

ÁÁÁÁÁÁÁÁÁÁ3056.0

ÁÁÁÁÁÁÁÁÁÁ3301.0

ÁÁÁÁÁÁÁÁ30

ÁÁÁÁÁÁÁÁÁÁBP21

ÁÁÁÁÁÁÁÁÁÁÁÁ0.0

ÁÁÁÁÁÁÁÁÁÁ424.5

The M44C260 is also available in the form for COB mounting. Therefore the substrate, i.e., the backside of the die,sould be connected to VSS.

Die size: 3.46 mm x 4.19 mm

Pad size: 90 µm * 90 µm

Thickness: 380 + 25 µm

M44C260/M48C260

Rev. A2, 01-Oct-98 47 (51)

BP22

BP23

BP10

BP11 BP12

BP13

IP43

IP42

IP41

IP40

TCL

VSS dig.VSS ana.

BP30

BP31

BP32

BP33

BP00

BP01BP02

BP03

NWP

TE

XTALI

XTALO

VDD dig.VDD ana.

NRST

BP20

BP21

M48C260

95 1xxxx0,0

Figure 50. Pad layout

Table 9. Pad coordinates

Number Name X Point Y Point Number Name X Point Y PointÁÁÁÁÁÁÁÁ

1 ÁÁÁÁÁÁÁÁÁÁ

BP22 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

1668.0ÁÁÁÁÁÁÁÁ

16ÁÁÁÁÁÁÁÁÁÁÁÁ

BP32 ÁÁÁÁÁÁÁÁÁÁ

3577.5 ÁÁÁÁÁÁÁÁÁÁ

7265.0ÁÁÁÁÁÁÁÁ

2 ÁÁÁÁÁÁÁÁÁÁ

BP23 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

1060.0ÁÁÁÁÁÁÁÁ

17ÁÁÁÁÁÁÁÁÁÁÁÁ

BP33 ÁÁÁÁÁÁÁÁÁÁ

3577.5 ÁÁÁÁÁÁÁÁÁÁ

7768.0

ÁÁÁÁÁÁÁÁ

3 ÁÁÁÁÁÁÁÁÁÁ

BP10 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

456.0ÁÁÁÁÁÁÁÁ

18ÁÁÁÁÁÁÁÁÁÁÁÁ

BP00 ÁÁÁÁÁÁÁÁÁÁ

3577.5 ÁÁÁÁÁÁÁÁÁÁ

8080.0

ÁÁÁÁ4 ÁÁÁÁÁBP11 ÁÁÁÁÁ0.0 ÁÁÁÁÁ0.0 ÁÁÁÁ19ÁÁÁÁÁÁBP01 ÁÁÁÁÁ3109.0 ÁÁÁÁÁ8080.0ÁÁÁÁÁÁÁÁ5

ÁÁÁÁÁÁÁÁÁÁBP12

ÁÁÁÁÁÁÁÁÁÁ3577.5

ÁÁÁÁÁÁÁÁÁÁ–3.5

ÁÁÁÁÁÁÁÁ20

ÁÁÁÁÁÁÁÁÁÁÁÁBP02

ÁÁÁÁÁÁÁÁÁÁ476.0

ÁÁÁÁÁÁÁÁÁÁ8080.0ÁÁÁÁ

ÁÁÁÁ6ÁÁÁÁÁÁÁÁÁÁ

BP13ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

452.5ÁÁÁÁÁÁÁÁ

21ÁÁÁÁÁÁÁÁÁÁÁÁ

BP03ÁÁÁÁÁÁÁÁÁÁ

–4.0ÁÁÁÁÁÁÁÁÁÁ

8080.0ÁÁÁÁÁÁÁÁ

7 ÁÁÁÁÁÁÁÁÁÁ

IP43 ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

978.5ÁÁÁÁÁÁÁÁ

22ÁÁÁÁÁÁÁÁÁÁÁÁ

NWP ÁÁÁÁÁÁÁÁÁÁ

–4.0 ÁÁÁÁÁÁÁÁÁÁ

7770.0ÁÁÁÁÁÁÁÁ

8 ÁÁÁÁÁÁÁÁÁÁ

IP42 ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

1667.5ÁÁÁÁÁÁÁÁ

23ÁÁÁÁÁÁÁÁÁÁÁÁ

TE ÁÁÁÁÁÁÁÁÁÁ

–4.0 ÁÁÁÁÁÁÁÁÁÁ

7264.5ÁÁÁÁÁÁÁÁ

9 ÁÁÁÁÁÁÁÁÁÁ

IP41 ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

2463.5ÁÁÁÁÁÁÁÁ

24ÁÁÁÁÁÁÁÁÁÁÁÁ

XTALI ÁÁÁÁÁÁÁÁÁÁ

–4.0 ÁÁÁÁÁÁÁÁÁÁ

6465.5

ÁÁÁÁÁÁÁÁ

10 ÁÁÁÁÁÁÁÁÁÁ

IP40 ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

3261.5ÁÁÁÁÁÁÁÁ

25ÁÁÁÁÁÁÁÁÁÁÁÁ

XTALO ÁÁÁÁÁÁÁÁÁÁ

–4.0 ÁÁÁÁÁÁÁÁÁÁ

5662.5

ÁÁÁÁÁÁÁÁ

11 ÁÁÁÁÁÁÁÁÁÁ

TCL ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

4063.5ÁÁÁÁÁÁÁÁ

26ÁÁÁÁÁÁÁÁÁÁÁÁ

VDD dig. ÁÁÁÁÁÁÁÁÁÁ

–4.0 ÁÁÁÁÁÁÁÁÁÁ

4990.0

ÁÁÁÁ12 ÁÁÁÁÁVSS dig.ÁÁÁÁÁ3577.5ÁÁÁÁÁ4757.0ÁÁÁÁ27ÁÁÁÁÁÁVDD ana. ÁÁÁÁÁ34.0 ÁÁÁÁÁ4725.0ÁÁÁÁÁÁÁÁ13

ÁÁÁÁÁÁÁÁÁÁVSS ana.

ÁÁÁÁÁÁÁÁÁÁ3577.5

ÁÁÁÁÁÁÁÁÁÁ4990.0

ÁÁÁÁÁÁÁÁ28

ÁÁÁÁÁÁÁÁÁÁÁÁNRST

ÁÁÁÁÁÁÁÁÁÁ0.0

ÁÁÁÁÁÁÁÁÁÁ4063.0ÁÁÁÁ

ÁÁÁÁ14ÁÁÁÁÁÁÁÁÁÁ

BP30ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

5667.0ÁÁÁÁÁÁÁÁ

29ÁÁÁÁÁÁÁÁÁÁÁÁ

BP20ÁÁÁÁÁÁÁÁÁÁ

0.0ÁÁÁÁÁÁÁÁÁÁ

3263.0ÁÁÁÁÁÁÁÁ

15 ÁÁÁÁÁÁÁÁÁÁ

BP31 ÁÁÁÁÁÁÁÁÁÁ

3577.5ÁÁÁÁÁÁÁÁÁÁ

6462.5ÁÁÁÁÁÁÁÁ

30ÁÁÁÁÁÁÁÁÁÁÁÁ

BP21 ÁÁÁÁÁÁÁÁÁÁ

0.0 ÁÁÁÁÁÁÁÁÁÁ

2462.0

The M48C260 is also available in the form for COB mounting. Therefore the substrate, i.e., the backside of the die,sould be connected to VSS.

Die size: 4.00 mm x 8.55 mm

Pad size: 90 µm * 90 µm

Thickness: 380 + 25 µm

M44C260/M48C260

Rev. A2, 01-Oct-9848 (51)

6 Package Information

2.35

0.250.10

0.30

0.80

7.57.3

9.258.75

0.25

10.5010.20

technical drawingsaccording to DINspecifications

95 114941 2

12.712.9

10.4

Package SSO28Dimensions in mm

0.25 0.65

1.68

0.210.05

5.385.20

0.09

7.907.65

technical drawingsaccording to DINspecifications 95 11495

7.33

5.85

7.07

Package SSO20

1.780.20

0.38

6.396.00Dimensions in mm

M44C260/M48C260

Rev. A2, 01-Oct-98 49 (51)

7 Standard Design of M48C260The C above is a standard design, as given below ( is realised). In case the customer wants another configuration,please consult TEMIC.

BP00 CMOS Pull-up Pull-down

BP01 CMOS Pull-up Pull-down

BP02 CMOS Pull-up Pull-down

BP03 CMOS Pull-up Pull-down

BP10 CMOS Pull-up Pull-down

BP11 CMOS Pull-up Pull-down

BP12 CMOS Pull-up Pull-down

BP13 CMOS Pull-up Pull-down

BP20 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP21 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP22 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP23 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP30 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP31 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP32 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP33 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

IP40–INT6 Pull-up Pull-down

IP41–TA CMOS Pull-up Pull-down

IP42–TB CMOS Pull-up Pull-down

IP43 Pull-up Pull-down

TE Pull-up Pull-down

M44C260/M48C260

Rev. A2, 01-Oct-9850 (51)

8 Ordering Information for M44C260Please insert ROM CRC and select the option setting from the list below.

BP00 CMOS Pull-up Pull-down

BP01 CMOS Pull-up Pull-down

BP02 CMOS Pull-up Pull-down

BP03 CMOS Pull-up Pull-down

BP10 CMOS Pull-up Pull-down

BP11 CMOS Pull-up Pull-down

BP12 CMOS Pull-up Pull-down

BP13 CMOS Pull-up Pull-down

BP20 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP21 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP22 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP23 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP30 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP31 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP32 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

BP33 CMOS Open drain [N] Open drain [P] Pull-up Pull-down

IP40–INT6 Pull-up Pull-down

IP41–TA CMOS Pull-up Pull-down

IP42–TB CMOS Pull-up Pull-down

IP43 Pull-up Pull-down

NWP Pull-up Pull-down

TE Pull-up Pull-down

File _________.HEX CRC: _________h Type: Normal / Short Size: _________ KByte

Approval Date: ___.___.___ Signature: _______________

M44C260/M48C260

Rev. A2, 01-Oct-98 51 (51)

We reserve the right to make changes to improve technical design and may do so without further notice.Parameters can vary in different applications. All operating parameters must be validated for each customer

application by the customer. Should the buyer use TEMIC products for any unintended or unauthorizedapplication, the buyer shall indemnify TEMIC against all claims, costs, damages, and expenses, arising out of,

directly or indirectly, any claim of personal damage, injury or death associated with such unintended orunauthorized use.

TEMIC Semiconductor GmbH, P.O.B. 3535, D-74025 Heilbronn, GermanyTelephone: 49 (0)7131 67 2594, Fax number: 49 (0)7131 67 2423