Texas Instruments TMS370C732AFNT Datasheet

TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
1
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
D
CMOS/EEPROM/EPROM Technologies on a Single Device – Mask-ROM Devices for High-Volume
Production
– One-Time-Programmable (OTP) EPROM
Devices for Low-Volume Production
– Reprogrammable-EPROM Devices for
Prototyping Purposes
D
Internal System Memory Configurations – On-Chip Program Memory Versions
– ROM: 8K Bytes
– EPROM: 8K Bytes – Data EEPROM: 256 Bytes – Static RAM: 256 Bytes Usable as
Registers
D
Flexible Operating Features – Low-Power Modes: STANDBY and HAL T – Commercial, Industrial, and Automotive
T emperature Ranges – Clock Options
– Divide-by-1 (2 MHz–5 MHz SYSCLK)
Phase-Locked Loop (PLL)
– Divide-by-4 (0.5 MHz–5 MHz SYSCLK) – Supply Voltage (V
CC
) 5 V ±10%
D
Programmable Acquisition and Control Timer (PACT) Module – Input Capture on up to Six Pins, Four of
Which Can Have a Programmable
Prescaler – One Input Capture Pin Can Drive an 8-Bit
Event Counter – Up to Eight Timer-Driven Outputs – Interaction Between Event Counter and
Timer Activity – 18 Independent Interrupt Vectors – Watchdog With Selectable Time-Out
Period – Asynchronous Mini Serial
Communication Interface (Mini SCI)
D
Flexible Interrupt Handling – Two Software-Programmable Interrupt
Levels – Global- and Individual-Interrupt Masking – Programmable Rising- or Falling-Edge
Detect – Individual-Interrupt Vectors
D
Eight-Channel 8-Bit Analog-to-Digital Converter 1 (ADC1)
D
TMS370 Series Compatibility – Register-to-Register Architecture – 256 General-Purpose Registers – 14 Powerful Addressing Modes – Instructions Upwardly Compatible With
All TMS370 Devices
D
CMOS/TTL Compatible I/O Pins/Packages – All Peripheral Function Pins Software
Configurable for Digital I/O – 14 Bidirectional Pins, Nine Input Pins – 44-Pin Plastic and Ceramic Leaded Chip
Carrier (LCC) Packages
D
Workstation/PC-Based Development System – C Compiler and C Source Debugger – Real-Time In-Circuit Emulation – Multi-Window User Interface – Microcontroller Programmer – Extensive breakpoint/Trace Capability
PRODUCTION DATA information is current as of publication date. Products conform to specifications per the terms of Texas Instruments standard warranty. Production processing does not necessarily include testing of all parameters.
Copyright 1997, Texas Instruments Incorporated
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet.
OP2
MC XTAL2/CLKIN XTAL1 CP2 SCIRXD CP6 AN7 AN6 AN5 AN4 V
SS3
39 38 37 36 35 34 33 32 31 30 29
18 19
7 8 9 10 11 12 13 14 15 16 17
INT1 INT2 INT3
V
CC1
V
CC3
A7
A6
V
SS1
A5
A4
A3
20 21 22 23
FZ AND FN PACKAGES
(TOP VIEW)
OP5
OP1
SCITXD
CP1
54321644
RESET
OP8
OP7
OP6
OP4
OP3
AN0
AN1
AN2
AN3
A1
A0
D7/CP5
D4/CP3D3D6/CP4
42 41 4043
24 25 26 27 28
A2
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
2
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
Pin Descriptions
44 PINS
NAME
NO.
I/O
DESCRIPTION
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
A0 A1 A2 A3 A4 A5 A6 A7
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
20 19 18 17 16 15 13 12
Á
Á
Á
Á
Á
Á
Á
Á
Á
Á
I/O
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
Port A is a general-purpose bidirectional I/O port.
ÁÁÁ
Á
ÁÁÁ
Á
D3 D4/CP3 D6/CP4 D7/CP5
ÁÁ
Á
ÁÁ
Á
23 22 24 21
Á
Á
Á
Á
I/O
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
Port D is a general-purpose bidirectional port. Also configurable as SYSCLK (see Note 1) PACT input capture 3 (see Note 2) PACT input capture 4 (see Note 2) PACT input capture 5 (see Note 2)
ÁÁÁ
Á
ÁÁÁ
Á
CP1 CP2 CP6
ÁÁ
Á
ÁÁ
Á
40 36 34
Á
Á
Á
Á
I
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
PACT Input capture pin 1 PACT Input capture pin 2 PACT Input capture pin 3
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
AN0/E0 AN1/E1 AN2/E2 AN3/E3 AN4/E4 AN5/E5 AN6/E6 AN7/E7
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
25 26 27 28 30 31 32 33
Á
Á
Á
Á
Á
Á
Á
Á
I
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ADC1 analog input pins (AN0–AN7)/port E digital input pins (E0–E7)
Port E can be programmed individually as a general-purpose digital input pin if it is not used as ADC1 analog input or positive reference input.
ÁÁÁ
Á
INT1 INT2 INT3
ÁÁ
Á
7 8 9
Á
Á
I I/O I/O
ББББББББББББББББББББББББ
Á
External interrupt (non-maskable or maskable)/general-purpose input pin External maskable interrupt input/general purpose bidirectional pin External maskable interrupt input/general purpose bidirectional pin
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
ÁÁÁ
Á
OP1 OP2 OP3 OP4 OP5 OP6 OP7 OP8
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
ÁÁ
Á
42 43 44
1 2 3 4 5
Á
Á
Á
Á
Á
Á
Á
Á
Á
Á
O
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
PACT output pin 1 PACT output pin 2 PACT output pin 3 PACT output pin 4 PACT output pin 5 PACT output pin 6 PACT output pin 7 PACT output pin 8
SCIRXD SCITXD
35 41
I
O
PACT mini SCI data receive input pin PACT mini SCI data transmit output pin
ÁÁÁ
Á
RESET
ÁÁ
Á
6
Á
Á
I/O
ББББББББББББББББББББББББ
Á
System reset bidirectional pin; as input pin, RESET initializes the microcontroller; as open-drain output, RESET
indicates that an internal failure was detected by watchdog or oscillator fault circuit.
MC
39
I
Mode control input pin; enables EEPROM write protection override (WPO) mode, also EPROM V
PP
XTAL2/CLKIN XTAL1
38 37
I
O
Internal oscillator crystal input/External clock source input Internal oscillator output for crystal
ÁÁÁ
Á
ÁÁÁ
Á
V
CC1
V
SS1
V
CC3
V
SS3
ÁÁ
Á
ÁÁ
Á
10 14 11 29
Á
Á
Á
Á
ББББББББББББББББББББББББ
Á
ББББББББББББББББББББББББ
Á
Positive supply voltage for digital logic and digital I/O pins Ground reference for digital logic and digital I/O pins ADC1 positive supply voltage and optional positive reference input ADC1 ground supply and low reference input pin
I = input, O = output
NOTES: 1. D3 can be configured as SYSCLK by appropriately programming the DPORT1 and DPORT2 registers.
2. These digital I/O buffers are connected internally to some of the PACT module’s input capture pins. This allows the microcontroller to read the level on the input capture pin, or if the port D pin is configured as an output, to generate a capture. Be careful to leave the port D pin configured as an input if the corresponding input capture pin is being driven by external circuitry.
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
3
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
functional block diagram
Interrupts
CP1
SCITXD SCIRXD
V
System Control
Clock Options:
Divide-By-4 or
Divide-By-1 (PLL)
Port A Port D
PACT
Watchdog
INT1
E0-E7
or
AN0-AN7
XTAL1
XTAL2/
CLKIN
MC RESET
SS1
V
CC1
Program Memory
ROM: 8K Bytes
EPROM: 8K Bytes
Data EEPROM
256 Bytes
48
A-to-D
Converter 1
V
CC3
V
SS3
Mini SCI
CPU
RAM
Register File
256 Bytes
CP6 OP1
OP8
. .
. .
INT2 INT3
description
The TMS370C032A, TMS370C332A, TMS370C732A, and SE370C732A devices are members of the TMS370 family of single-chip 8-bit microcontrollers. Unless otherwise noted, the term TMS370Cx32 refers to these devices. The TMS370 family provides cost-effective real-time system control through integration of advanced peripheral-function modules and various on-chip memory configurations.
The TMS370Cx32 family of devices is implemented using high-performance silicon-gate CMOS EPROM and EEPROM technologies. Low-operating power, wide-operating temperature range, and noise immunity of CMOS technology coupled with the high performance and extensive on-chip peripheral functions make the TMS370Cx32 devices attractive for system designs for automotive electronics, industrial motors, computer peripheral controls, telecommunications, and consumer applications.
All TMS370Cx32 devices contain the following on-chip peripheral modules:
D
Programmable acquisition and control timer (PACT) – Asynchronous mini SCI – PACT watchdog timer
D
Eight channel, 8-bit analog-to-digital converter 1 (ADC1)
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
4
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
description (continued)
Table 1 provides a memory configuration overview of the TMS370Cx32 devices.
Table 1. Memory Configurations
DEVICE
PROGRAM MEMORY
(BYTES)
DATA MEMORY
(BYTES)
44 PIN PACKAGES
ROM
EPROM
RAM
EEPROM
TMS370C032A
8K
256
256
FN – PLCC
TMS370C332A
8k
256
FN – PLCC
TMS370C732A
8K
256
256
FN – PLCC
SE370C732A
8K
256
256
FZ – CLCC
System evaluators and development are for use only in prototype environment, and their reliability has not been characterized.
The suffix letter (A) appended to the device names shown in the device column of Table 1 indicates the configuration of the device. ROM or EPROM devices have different configurations as indicated in T able 2. ROM devices with the suffix letter A are configured through a programmable contact during manufacture.
Table 2. Suffix Letter Configuration
DEVICE
CLOCK LOW-POWER MODE
EPROM A Divide-by-4 (Standard oscillator) Enabled
ROM A
Divide-by-4 or Divide-by-1 (PLL)
Enabled or disabled
Refer to the “device numbering conventions” section for device nomenclature and to the “device part numbers” section for ordering.
The 8K bytes of mask-programmable ROM in the associated TMS370Cx32 devices are replaced in the TMS370C732A with 8K bytes of EPROM. All other available memory and on-chip peripherals are identical except for the TMS370C332A which does not have EEPROM memory. The OTP (TMS370C732A) and reprogrammable (SE370C732A) devices are available.
The TMS370C732A OTP device is available in a plastic package. This microcontroller is effective to use for immediate production updates for other members of the TMS370Cx32 family or for low-volume production runs when the mask charge or cycle time for the low-cost mask ROM devices is not practical.
The SE370C732A has a windowed ceramic package to allow reprogramming of the program EPROM memory during the development/prototyping phase of design. The SE370C732A device allows quick updates to breadboards and prototype systems while iterating initial designs.
The TMS370Cx32 family provides two low-power modes (STANDBY and HALT) for applications where low-power consumption is critical. Both modes stop all CPU activity (that is, no instructions are executed). In the STANDBY mode, the internal oscillator, the PACT counter, and PACT’s first command / definition entry remain active. This allows the P ACT module to bring the device out of ST ANDBY mode. In the HALT mode, all device activity is stopped. The device retains all RAM data and peripheral configuration bits throughout both low-power modes.
The TMS370Cx32 features advanced register-to-register architecture that allows direct arithmetic and logical operations without requiring an accumulator (for example, ADD R24, R47; add the contents of register 24 to the contents of register 47 and store the result in register 47). The TMS370Cx32 family is fully instruction-set-compatible, providing easy transition between members of the TMS370 8-bit microcontroller family.
The TMS370Cx32 has a P ACT module that acts as a timer coprocessor by gathering timing information on input signals and controlling output signals with little or no intervention by the CPU. The coprocessor nature of this module allows for levels of flexibility and power not found in traditional microcontroller timers.
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
5
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
description (continued)
The TMS370Cx32 family provides the system designer with an economical, efficient solution to real-time control applications. The PACT compact development tool (CDT) solves the challenge of efficiently developing the software and hardware required to design the TMS370Cx32 into an ever-increasing number of complex applications. The application source code can be written in assembly and C language, and the output code can be generated by the linker. Precise real-time, in-circuit emulation and extensive symbolic debug and analysis tools ensure efficient software and hardware implementation as well as a reduced time-to-market cycle.
The TMS370Cx32 family together with the TMS370 P ACT CDT370, BP programmer, starter kit, software tools, the SE370C732A reprogrammable devices, comprehensive product documentation, and customer support provide a complete solution to the needs of the system designer.
central processing unit (CPU)
The CPU on the TMS370Cx32 device is the high-performance 8-bit TMS370 CPU module. The ’x32 implements an efficient register-to-register architecture that eliminates the conventional accumulator bottleneck. The complete ’x32 instruction map is shown in Table 15.
The ’370Cx32 CPU architecture provides the following components: CPU registers:
D
A stack pointer (SP) that points to the last entry in the memory stack
D
A status register (ST) that monitors the operation of the instructions and contains the global interrupt-enable bits
D
A program counter (PC) that points to the memory location of the next instruction to be executed
A memory map that includes:
D
256-byte general-purpose RAM that can be used for data memory storage, program instructions, general purpose register, dual-port RAM, or the stack
D
The upper 128-bytes of the register file is called dual-port RAM that contains the capture registers, the circular buffer, and a command/definition area.
D
A peripheral file that provides access to all internal peripheral modules, system-wide control functions, and EEPROM/EPROM programming control
D
256-byte EEPROM module that provides in-circuit programmability and data retention in power-off conditions
D
8K-byte ROM or 8K-byte EPROM
CDT is a trademark of Texas Instruments Incorporated.
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
6
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
central processing unit (CPU) (continued)
Figure 1 Illustrates the CPU registers and memory blocks.
Reserved
Peripheral File
01FFh 0200h
1000h 10BFh 10C0h 1EFFh
1F00h
5FFFh 6000h
Interrupts and Reset Vectors;
Trap Vectors
0FFFh
Reserved
7FFFh
0
RAM (Includes up to 256-Byte Registers File)
015
Program Counter
7
Legend:
Z=Zero
IE1 = Level 1 interrupts Enable
C=Carry
V=Overflow
N=Negative
IE2 = Level 2 interrupts Enable
IE1IE2ZNC
01234567
V
Status Register (ST)
Stack Pointer (SP)
R0(A) R1(B)
R3
R127
0000h 0001h
0002h
007Fh
R255
0003h
R2
00FFh
1FFFh 2000h
7F9Ch
7F9Bh
256-Byte RAM
00FFh 0100h
017Fh 0180h
128-Byte PACT Dual-Port RAM
0000h
Reserved
256-Byte Data EEPROM
Reserved
8K-Byte ROM/EPROM
Reserved
FFFFh
8000h
Reserved means the address space is reserved for future expansion.
Figure 1. Programmer’s Model
stack pointer (SP)
The SP is an 8-bit CPU register. Stack operates as a last-in, first-out, read/write memory. T ypically, the stack is used to store the return address on subroutine calls as well as the ST contents during interrupt sequences.
The SP points to the last entry or top of the stack. The SP is incremented automatically before data is pushed onto the stack and decremented after data is popped from the stack. The stack can be placed anywhere in the on-chip RAM.
status register (ST)
The ST monitors the operation of the instructions and contains the global interrupt-enable bits. The ST includes four status bits (condition flags) and two interrupt-enable bits.
D
The four status bits indicate the outcome of the previous instruction; conditional instructions (for example, the conditional-jump instructions) use the status bits to determine program flow.
D
The two interrupt-enable bits control the two interrupt levels.
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
7
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
central processing unit (CPU) (continued)
The ST, status-bit notation, and status-bit definitions are shown in Table 3.
Table 3. Status Registers
7
6
5
4
3
ÁÁÁÁ
2
1
0
C
N
Z
V
IE2
ÁÁÁÁ
IE1 Reserved Reserved
RW-0
RW-0
RW-0
RW-0
RW-0
ÁÁÁÁ
RW-0
R = read, W = write, 0 = value after reset
program counter (PC)
The contents of the PC point to the memory location of the next instruction to be executed. The PC consists of two 8-bit registers in the CPU: the program counter high (PCH) and program counter low (PCL). These registers contain the most significant byte (MSbyte) and least significant byte (LSbyte) of a 16-bit address.
During reset, the contents of the reset vector (7FFEh, 7FFFh) are loaded into the PC. The PCH (MSbyte of the PC) is loaded with the contents of memory location 7FFEh, and the PCL (LSbyte of the PC) is loaded with the contents of memory location 7FFFh. Figure 2 shows this operation using an example value of 6000h as the contents of the reset vector.
Memory
Program Counter (PC)
60 00
PCH PCL
60 00
0000h
7FFEh 7FFFh
Figure 2. Program Counter After Reset
memory map
The TMS370Cx32 architecture is based on the Von Neuman architecture, where the program memory and data memory share a common address space. All peripheral input/output is memory mapped in this same common address space. As shown in Figure 3, the TMS370Cx32 provides memory-mapped RAM, ROM, EPROM, data EEPROM, I/O pins, peripheral functions, and system-interrupt vectors.
The peripheral file contains all I/O port control, peripheral status and control, EEPROM, EPROM, and system-wide control functions. The peripheral file is located between 1000h to 107Fh and is divided logically into eight peripheral file frames of 16 bytes each. The eight PF frames consist of five control frames and three reserved frames.Each on-chip peripheral is assigned to a separate frame through which peripheral control and data information is passed.
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
8
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
central processing unit (CPU) (continued)
256-Byte RAM (0000h–00FFh)
Peripheral File
Reserved
7FC0h–7FDFh
PACT Interrupt 1-18
7FEEh–7FF7h
Reserved
7FECh–7FEDh
Interrupt 1
Reset
1020h–102Fh
Digital Port Control
Vectors
ADC1
7FFCh–7FFDh 7FFEh–7FFFh
0000h
0100h
0080h
0FFFh
1000h
10BFh 10C0h
1EFFh
1F00h
1FFFh
2000h
5FFFh
6000h
FFFFh
00FFh
Interrupts and Reset Vectors;
Trap and PACT Vectors
7F9Bh 7F9Ch
7FFFh
8000h
7FF8h–7FF9h 7FFAh–7FFBh
Peripheral File Control Registers
1010h–101Fh
1050h–105Fh
System Control
1030h–103Fh 1040h–104Fh
ADC1 Peripheral Control
Trap 15–0
Reserved
Reserved
256-Byte Data EEPROM
Reserved
8K-Byte ROM/EPROM
Reserved
7F9Ch–7FBFh
7FE0h–7FEBh
1000h–100Fh
1060h–106Fh 1070h–107Fh
Reserved
PACT Peripheral Control
Reserved
Reserved
Reserved
Interrupt 2
Interrupt 3
Dual–Port RAM (0080h–00FFh)
Reserved means that the address space is reserved for future expansion.
Figure 3. TMS370Cx32 Memory Map
RAM/register file (RF)
Locations within the RAM address space can serve as the RF, general-purpose read/write memory, program memory, or the stack instructions. The TMS370Cx32 devices contain 256 bytes of internal RAM, memory-mapped beginning at location 0000h (R0) and continuing through location 00FFh (R255) which is shown in Figure 1.
The first two registers, R0 and R1, are also called register A and B, respectively. Some instructions implicitly use register A or B; for example, the instruction LDSP (load SP) assumes that the value to be loaded into the stack pointer is contained in register B. Registers A and B are the only registers cleared on reset.
dual-port RAM
The upper 128 bytes of the register files (0080h – 00FFh) can be used by the PACT module to contain commands and definitions as well as timer values. Any RAM not used by P ACT can be used as additional CPU register or as general-purpose memory.
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
9
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
peripheral file (PF)
The TMS370Cx32 control registers contain all the registers necessary to operate the system and peripheral modules on the device. The instruction set includes some instructions that access the PF directly. These instructions designate the register by the number of the PF relative to 1000h, preceded by P0 for a hexadecimal designator or P for a decimal designator. For example, the system-control register 0 (SCCR0) is located at address 1010h; its peripheral file hexadecimal designator is P010, and its decimal designator is P16. Table 4 shows the TMS370Cx32 PF address map.
Table 4. TMS370Cx32 Peripheral File Address Map
БББББ
Á
ADDRESS RANGE
БББББББ
Á
БББББ
Á
PERIPHERAL FILE
DESIGNAT OR
БББББББББББББББББББ
Á
DESCRIPTION
1000h–100Fh
БББББББ
P000–P00F Reserved
1010h–101Fh
БББББББ
P010–P01F
System and EPROM/EEPROM control registers
1020h–102Fh
P020–P02F
Digital I/O port control registers
1030h–103Fh
БББББББ
P030–P03F
Reserved
1040h–104Fh
БББББББ
P040–P04F
PACT registers
1050h–106Fh
БББББББ
P050–P06F Reserved
1070h–107Fh
БББББББ
P070–P07F
Analog-to-digital converter 1 registers
1080h–10FFh
БББББББ
P080–P0FF
Reserved
data EEPROM
The TMS370Cx32 devices, containing 256 bytes of data EEPROM, have a memory that is mapped beginning at location 1F00h and continuing through location 1FFFh. Writing to the data EEPROM module is controlled by the data EEPROM control register (DEECTL) and the write-protection register (WPR). Programming algorithm examples are available in the
TMS370 Family User’s Guide
(literature number SPNU127) or the
TMS370 Family Data Manual
(literature number SPNS014B). The data EEPROM features include the following:
D
Programming: – Bit-, byte-, and block-write/erase modes – Internal charge pump circuitry. No external EEPROM programming voltage supply is needed. – Control register: Data EEPROM programming is controlled by the DEECTL located in the PF frame
beginning at location P01A. See Table 5.
In-circuit programming capability. There is no need to remove the device to program it.
D
Write protection. Writes to the data EEPROM are disabled during the following conditions. – Reset. All programming of the data EEPROM module is halted. – Write protection active. There is one write-protect bit per 32-byte EEPROM block. – Low-power mode operation
D
Write protection can be overridden by applying 12 V to MC.
T able 5. Data EEPROM and PROGRAM EPROM Control Registers Memory Map
ADDRESS
SYMBOL
NAME
P01A
DEECTL
Data EEPROM Control Register
P01B
Reserved
P01C
EPCTLL
Program EPROM Control Register – Low Array
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
10
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
program EPROM
The TMS370C732 device contains 8K bytes of EPROM mapped, beginning at location 6000h and continuing through location 7FFFh as shown in Figure 3. Reading the program EPROM modules is identical to reading other internal memory. During programming, the EPROM is controlled by the EPROM control register (EPCTLL). The program EPROM module features include:
D
Programming – In-circuit programming capability if V
PP
is applied to MC
Control register: EPROM programming is controlled by the EPROM control register (EPCTLL) located
in the peripheral file (PF) frame at location P01C as shown in Table 5.
D
Write protection: Writes to the program EPROM are disabled under the following conditions: – Reset: All programming to the EPROM module is halted – Low-power modes – 13 V not applied to MC
program ROM
The program ROM consists of 8K bytes of mask programmable read-only memory . The program ROM is used for permanent storage of data or instructions. Programming of the mask ROM is performed at the time of device fabrication. Refer to Figure 3 for ROM memory map.
system reset
The system-reset operation ensures an orderly start-up sequence for the TMS370Cx32 CPU-based device. There are up to three different actions that can cause a system reset to the device. Two of these actions are generated internally , while one (RESET pin) is controlled externally. These actions are as follows:
D
P ACT watchdog (WD) timer . A watchdog-generated reset occurs if an improper value is written to the WD key register, or if the re-initialization does not occur before the watchdog timer timeout . See the
TMS370
Family User’s Guide
(literature number SPNU127) for more information.
D
Oscillator reset. Reset occurs when the oscillator operates outside of the recommended operating range. See the
TMS370 Family User’s Guide
(literature number SPNU127) for more information.
D
External RESET pin. A low level signal can trigger an external reset. To ensure a reset, the external signal should be held low for one SYSCLK cycle. Signals of less than one SYSCLK can generate a reset. See the
TMS370 Family User’s Guide
(literature number SPNU127) for more information.
Once a reset source is activated, the external RESET pin is driven (active) low for a minimum of eight SYSCLK cycles. This allows the ’x32 device to reset external system components. Additionally, if a cold start condition (V
CC
is off for several hundred milliseconds) or oscillator failure occurs or the RESET pin is held low , then the
reset logic holds the device in a reset state for as long as these actions are active. After a reset, the program can check the oscillator-fault flag (OSC FL T FLAG, SCCR0.4) and the cold-start flag
(COLD START, SCCR0.7) to determine the source of the reset. A reset does not clear these flags. Table 6 depicts the reset sources. If none of the sources indicated in T able 1 caused the reset, then the RESET pin was pulled low by the external hardware or the PACT module’s watchdog.
Memory addresses 7FE0h through 7FEBh are reserved for Texas Instruments, and 7FECh through 7FFFh are reserved for interrupt and reset vectors. Trap vectors, used with TRAP0 through TRAP15 instructions are located between addresses 7FC0h and 7FDFh. PACT interrupts are located between addresses 7F9Ch and 7FBFh.
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
11
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
system reset (continued)
Table 6. Reset Sources
REGISTER
ADDRESS
PF
BIT NO.
CONTROL BIT
SOURCE OF RESET
SCCR0
1010h
P010
7
COLD START
Cold (power-up)
SCCR0
1010h
P010
4
OSC FLT FLAG
Oscillator out of range
Once a reset is activated, the following sequence of events occurs:
1. The CPU registers are initialized: ST = 00h, SP = 01h (reset state).
2. Registers A and B are initialized to 00h (no other RAM is changed).
3. The contents of the LSbyte of the reset vector (07FFh) are read and stored in the PCL.
4. The contents of the MSbyte of the reset vector (07FEh) are read and stored in the PCH.
5. Program execution begins with an opcode fetch from the address pointed to the PC. The reset sequence takes 20 SYSCLK cycles from the time the reset pulse is released until the first opcode
fetch. During a reset, RAM contents (except for registers A and B) remain unchanged, and the module control register bits are initialized to their reset state.
TMS370Cx32 8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
12
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
interrupts
The TMS370 family software-programmable interrupt structure permits flexible on-chip and external interrupt configurations to meet real-time interrupt-driven application requirements. The hardware interrupt structure incorporates two priority levels as shown in Figure 4. Interrupt level 1 has a higher priority than interrupt level 2. The two priority levels can be masked independently by the global interrupt mask bits (IE1 and IE2) of the ST.
GROUP 2
CPU
NMI
Logic
Enable
IE1
IE2
Level 1 INT Level 2 INT
PACT 3 PRI
Priority
Cmd/Def Entry 7 Cmd/Def Entry 6 Cmd/Def Entry 5 Cmd/Def Entry 4
Cmd/Def Entry 3 Cmd/Def Entry 2
AD INT
AD PRI
ADC1
STATUS REG
EXT INT1
INT1 PRI
INT1
Cmd/Def Entry 1 Cmd/Def Entry 0
GROUP 3
PACT 1 PRI
Overflow CP1 Edge CP2 Edge CP3 Edge
CP4 Edge CP5 Edge CP6 Edge
Circular Buffer
GROUP 1
PACT 2 PRI
SCI TXINT SCI RXINT
PACT
Default Timer
EXT INT3
INT3
EXT INT2
INT2
INT3 PRI
INT2 PRI
Figure 4. Interrupt Control
Each system interrupt is configured independently to either the high- or low-priority chain by the application program during system initialization. Within each interrupt chain, the interrupt priority is fixed by the position of the system interrupt. However, since each system interrupt is selectively configured on either the high- or low-priority-interrupt chain, the application program can elevate any system interrupt to the highest priority. Arbitration between the two priority levels is performed within the CPU. Arbitration within each of the priority
TMS370Cx32
8-BIT MICROCONTROLLER
SPNS015C – FEBRUARY 1990 – REVISED FEBRUARY 1997
13
POST OFFICE BOX 1443 HOUSTON, TEXAS 77251–1443
interrupts (continued)
chains is performed within the peripheral modules to support interrupt expansion for future modules. Pending interrupts are serviced upon completion of current instruction execution, depending on their interrupt mask and priority conditions.
The TMS370Cx32 has 22 hardware system interrupts (plus RESET
) as shown in T able 7. Each system interrupt has a dedicated vector located in program memory through which control is passed to the interrupt service routines. A system interrupt may have multiple interrupt sources. All the interrupt sources are individually maskable by local interrupt enable control bits in the associated peripheral file. Each interrupt source FLAG bit is individually readable for software polling or for determining which interrupt source generated the associated system interrupt.
Nineteen of the system interrupts are generated by on-chip peripheral functions, and three external interrupts are supported. Software configuration of the external interrupts is performed through the INT1, INT2, and INT3 control registers in peripheral file frame 1. Each external interrupt is individually software configurable for input polarity (rising or falling edge) for ease of system interface. External interrupt INT1 is software configurable as either a maskable or non-maskable interrupt. When INT1 is configured as non-maskable, it cannot be masked by the individual- or global-enable mask bits. The INT1 NMI bit is protected during non-privileged operation and, therefore, should be configured during the initialization sequence following reset. To maximize pin flexibility, external interrupts INT2 and INT3 can be software configured as general-purpose input/output pins if the interrupt function is not required (INT1 can be similarly configured as an input pin).
Loading...
+ 30 hidden pages