电子工程世界电子工程世界电子工程世界

产品描述

搜索

COP8SGR728M7

器件型号:COP8SGR728M7
器件类别:半导体    嵌入式处理器和控制器   
厂商名称:Texas Instruments
厂商官网:http://www.ti.com/
下载文档

器件描述

8-bit Microcontrollers - MCU 8-Bit CMOS OTP Based with 32k Memory, Two Comparators, and USART 28-SOIC -40 to 125

参数
产品属性属性值
Product AttributeAttribute Value
制造商:
Manufacturer:
Texas Instruments
产品种类:
Product Category:
8-bit Microcontrollers - MCU
安装风格:
Mounting Style:
SMD/SMT
封装 / 箱体:
Package / Case:
SOIC-28
系列:
Series:
COP8SGR7
Core:COP8
Data Bus Width:8 bit
Maximum Clock Frequency:15 MHz
Program Memory Size:32 kB
Data RAM Size:512 B
ADC Resolution:No ADC
Number of I/Os:40 I/O
工作电源电压:
Operating Supply Voltage:
2.7 V to 5.5 V
最小工作温度:
Minimum Operating Temperature:
- 40 C
最大工作温度:
Maximum Operating Temperature:
+ 125 C
接口类型:
Interface Type:
USART
高度:
Height:
2.34 mm
长度:
Length:
17.91 mm
Program Memory Type:EPROM
宽度:
Width:
7.49 mm
商标:
Brand:
Texas Instruments
Number of Timers/Counters:4 Timer
产品类型:
Product Type:
8-bit Microcontrollers - MCU
子类别:
Subcategory:
Microcontrollers - MCU
电源电压-最大:
Supply Voltage - Max:
5.5 V
电源电压-最小:
Supply Voltage - Min:
2.7 V
单位重量:
Unit Weight:
0.027937 oz

COP8SGR728M7器件文档内容

                                                                                         October 2001                             COP8SG Family, 8-Bit CMOS ROM Based and OTP Microcontrollers with 8k to 32k Memory, Two
                                                                                                                               Comparators and USART
COP8SG Family

8-Bit CMOS ROM Based and OTP Microcontrollers with

8k to 32k Memory, Two Comparators and USART

General Description                                             Erasable windowed versions (Q3) are available for use with
                                                                a range of COP8 software and hardware development tools.
The COP8SG Family ROM and OTP based microcontrollers
are highly integrated COP8TM Feature core devices with 8k       Family features include an 8-bit memory mapped architec-
to 32k memory and advanced features including Analog            ture, 15 MHz CKI with 0.67 s instruction cycle, 14 inter-
comparators, and zero external components. These single-        rupts, three multi-function 16-bit timer/counters with PWM,
chip CMOS devices are suited for more complex applica-          full duplex USART, MICROWIRE/PLUSTM, two analog com-
tions requiring a full featured controller with larger memory,  parators, two power saving HALT/IDLE modes, MIWU, idle
low EMI, two comparators, and a full-duplex USART.              timer, on-chip R/C oscillator, high current outputs, user se-
COP8SGx7 devices are 100% form-fit-function compatible          lectable options (WATCHDOGTM, 4 clock/oscillator modes,
OTP (One Time Programmable) versions for use in produc-         power-on-reset), 2.7V to 5.5V operation, program code se-
tion or development of the COP8SGx5 ROM.                        curity, and 28/40/44 pin packages.

                                                                Devices included in this datasheet are:

   Device  Memory (bytes)  RAM                      I/O Pins              Packages       Temperature
COP8SGE5
                           (bytes)                                28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
           8k ROM          256 24/36/40                           28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGG5   16k ROM         512 24/36/40                           28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGH5   20k ROM         512 24/36/40                           28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGK5   24k ROM         512 24/36/40                           28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGR5   32k ROM         512 24/36/40                           28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGE7 8k OTP EPROM 256 24/36/40                                28 DIP/SOIC, 40 DIP,   -40 to +85C,
                                                                   44 PLCC/QFP/CSP       -40 to +125C
COP8SGR7 32k OTP EPROM 512 24/36/40                             28 DIP, 40 DIP, 44 PLCC  Room Temp.

COP8SGR7-Q3 32k EPROM      512 24/36/40

Key Features                                                    n Fourteen multi-source vectored interrupts servicing
                                                                   -- External interrupt / Timers T0 -- T3
n Low cost 8-bit microcontroller                                   -- MICROWIRE/PLUS Serial Interface
n Quiet Design (low radiated emissions)                            -- Multi-Input Wake Up
n Multi-Input Wakeup pins with optional interrupts (8 pins)        -- Software Trap
n Mask selectable clock options                                    -- USART (2; 1 receive and 1 transmit)
                                                                   -- Default VIS (default interrupt)
   -- Crystal oscillator
   -- Crystal oscillator option with on-chip bias resistor      n 8-bit Stack Pointer SP (stack in RAM)
   -- External oscillator                                       n Two 8-bit Register Indirect Data Memory Pointers
   -- Internal R/C oscillator                                   n True bit manipulation
n Internal Power-On-Reset -- user selectable                    n BCD arithmetic instructions
n WATCHDOG and Clock Monitor Logic -- user selectable
n Eight high current outputs                                    Peripheral Features
n 256 or 512 bytes on-board RAM
n 8k to 32k ROM or OTP EPROM with security feature              n Multi-Input Wakeup Logic
                                                                n Three 16-bit timers (T1 -- T3), each with two 16-bit
CPU Features
                                                                   registers supporting:
n Versatile easy to use instruction set                            -- Processor Independent PWM mode
n 0.67 s instruction cycle time                                   -- External Event Counter mode
                                                                   -- Input Capture mode
COP8TM is a trademark of National Semiconductor Corporation.

2001 National Semiconductor Corporation DS101317                                       www.national.com
COP8SG Family  Peripheral Features (Continued)                              Fully Static CMOS Design

               n Idle Timer (T0)                                            n Low current drain (typically < 4 A)
               n MICROWIRE/PLUS Serial Interface (SPI Compatible)
               n Full Duplex USART                                          n Two power saving modes: HALT and IDLE
               n Two Analog Comparators
                                                                            Temperature Range
               I/O Features
                                                                            n -40C to +85C, -40C to +125C
               n Software selectable I/O options (TRI-STATE
                  Output,Push-Pull Output, Weak Pull-Up Input, and High     Development Support
                  Impedance Input)
                                                                            n Windowed packages for DIP and PLCC
               n Schmitt trigger inputs on ports G and L                    n Real time emulation and debug tools available
               n Eight high current outputs
               n Packages: 28 SO with 24 I/O pins, 40 DIP with 36 I/O

                  pins, 44 PLCC, PQFP and CSP with 40 I/O pins

               Block Diagram

                                                                                                                             10131744

                                 FIGURE 1. COP8SGx Block Diagram

               www.national.com                                          2
1.0 Device Description                                                incrementing and post-decrementing, to name just a few          COP8SG Family
                                                                      examples. In many cases, the instruction set can simulta-
1.1 ARCHITECTURE                                                      neously execute as many as three functions with the same
                                                                      single-byte instruction.
The COP8 family is based on a modified Harvard architec-
ture, which allows data tables to be accessed directly from           JID: (Jump Indirect); Single byte instruction; decodes exter-
program memory. This is very important with modern                    nal events and jumps to corresponding service routines
microcontroller-based applications, since program memory              (analogous to "DO CASE" statements in higher level lan-
is usually ROM or EPROM, while data memory is usually                 guages).
RAM. Consequently data tables need to be contained in
non-volatile memory, so they are not lost when the micro-             LAID: (Load Accumulator-Indirect); Single byte look up table
controller is powered down. In a modified Harvard architec-           instruction provides efficient data path from the program
ture, instruction fetch and memory data transfers can be              memory to the CPU. This instruction can be used for table
overlapped with a two stage pipeline, which allows the next           lookup and to read the entire program memory for checksum
instruction to be fetched from program memory while the               calculations.
current instruction is being executed using data memory.
This is not possible with a Von Neumann single-address bus            RETSK: (Return Skip); Single byte instruction allows return
architecture.                                                         from subroutine and skips next instruction. Decision to
                                                                      branch can be made in the subroutine itself, saving code.
The COP8 family supports a software stack scheme that
allows the user to incorporate many subroutine calls. This            AUTOINC/DEC: (Auto-Increment/Auto-Decrement); These
capability is important when using High Level Languages.              instructions use the two memory pointers B and X to effi-
With a hardware stack, the user is limited to a small fixed           ciently process a block of data (analogous to "FOR NEXT" in
number of stack levels.                                               higher level languages).

1.2 INSTRUCTION SET                                                   1.2.3 Bit-Level Control

In today's 8-bit microcontroller application arena cost/              Bit-level control over many of the microcontroller's I/O ports
performance, flexibility and time to market are several of the        provides a flexible means to ease layout concerns and save
key issues that system designers face in attempting to build          board space. All members of the COP8 family provide the
well-engineered products that compete in the marketplace.             ability to set, reset and test any individual bit in the data
Many of these issues can be addressed through the manner              memory address space, including memory-mapped I/O ports
in which a microcontroller's instruction set handles process-         and associated registers.
ing tasks. And that's why COP8 family offers a unique and
code-efficient instruction set -- one that provides the flexibil-     1.2.4 Register Set
ity, functionality, reduced costs and faster time to market that
today's microcontroller based products require.                       Three memory-mapped pointers handle register indirect ad-
                                                                      dressing and software stack pointer functions. The memory
Code efficiency is important because it enables designers to          data pointers allow the option of post-incrementing or post-
pack more on-chip functionality into less program memory              decrementing with the data movement instructions (LOAD/
space. Selecting a microcontroller with less program                  EXCHANGE). And 15 memory-maped registers allow de-
memory size translates into lower system costs, and the               signers to optimize the precise implementation of certain
added security of knowing that more code can be packed                specific instructions.
into the available program memory space.
                                                                      1.3 EMI REDUCTION
1.2.1 Key Instruction Set Features
                                                                      The COP8SGx5 family of devices incorporates circuitry that
The COP8 family incorporates a unique combination of in-              guards against electromagnetic interference -- an increasing
struction set features, which provide designers with optimum          problem in today's microcontroller board designs. National's
code efficiency and program memory utilization.                       patented EMI reduction technology offers low EMI clock
                                                                      circuitry, gradual turn-on output drivers (GTOs) and internal
Single Byte/Single Cycle Code Execution                               ICC smoothing filters, to help circumvent many of the EMI
                                                                      issues influencing embedded control designs. National has
The efficiency is due to the fact that the majority of instruc-       achieved 15 dB20 dB reduction in EMI transmissions when
tions are of the single byte variety, resulting in minimum            designs have incorporated its patented EMI reducing cir-
program space. Because compact code does not occupy a                 cuitry.
substantial amount of program memory space, designers
can integrate additional features and functionality into the          1.4 PACKAGING/PIN EFFICIENCY
microcontroller program memory space. Also, the majority
instructions executed by the device are single cycle, result-         Real estate and board configuration considerations demand
ing in minimum program execution time. In fact, 77% of the            maximum space and pin efficiency, particularly given today's
instructions are single byte single cycle, providing greater          high integration and small product form factors. Microcon-
code and I/O efficiency, and faster code execution.                   troller users try to avoid using large packages to get the I/O
                                                                      needed. Large packages take valuable board space and
1.2.2 Many Single-Byte, Multifunction Instructions                    increases device cost, two trade-offs that microcontroller
                                                                      designs can ill afford.
The COP8 instruction set utilizes many single-byte, multi-
function instructions. This enables a single instruction to           The COP8 family offers a wide range of packages and do not
accomplish multiple functions, such as DRSZ, DCOR, JID,               waste pins: up to 90.9% (or 40 pins in the 44-pin package)
LD (Load) and X (Exchange) instructions with post-                    are devoted to useful I/O.

                                                                   3  www.national.com
COP8SG Family  Connection Diagrams

                                                                           10131704                                                                                       10131753

                               Top View                                                               Top View
               Order Number COP8SGXY28M8                                              Order Number COP8SGR7HLQ8
               See NS Package Number M28B                                            See NS Package Number LQA44A
               Order Number COP8SGXY28N8
               See NS Package Number N28B                                                                                                                                                                                                                 10131705
               Order Number COP8SGR728Q3
               See NS Package Number D28JQ                                                                                                                       Top View
                                                                                                                                                 Order Number COP8SGXY40N8
                                                                                                                                                 See NS Package Number N40A
                                                                                                                                                Order Number COP8SGR5740Q3
                                                                                                                                                See NS Package Number D40KQ

                                                                                     10131706                                                        10131743

                                                 Top View                                                                           Top View
                                 Order Number COP8SGXY44V8                                                          Order Number COP8SGXYVEJ8
                                 See NS Package Number V44A                                                        See NS Package Number VEJ44A
                                 Order Number COP8SGR744J3
                                 See NS Package Number EL44C                                      Note 1: X = E for 8k, G for 16k,
                                                                                                                    H for 20k, K for 24k, R for 32k

                                                                                                              Y = 5 for ROM, 7 for OTP

               www.national.com                                                                4
Pinouts for 28 -, 40- and 44-Pin Packages                                                                      COP8SG Family

    Port       Type        Alt. Fun  28-Pin                 40-Pin DIP  44-Pin  44-Pin PQFP  44-Pin CSP
                                       SO                               PLCC
                                                                 17                    11          12
L0        I/O        MIWU            11                          18       17           12          13
                                                                 19       18           13          14
L1        I/O        MIWU or CKX     12                          20       19           14          15
                                                                 21       20           19          20
L2        I/O        MIWU or TDX     13                          22       25           20          21
                                                                 23       26           21          22
L3        I/O        MIWU or RDX     14                          24       27           22          23
                                                                 35       28           33          34
L4        I/O        MIWU or T2A     15                          36       39           34          35
                                                                 37       40           35          36
L5        I/O        MIWU or T2B     16                          38       41           36          37
                                                                  3       42           41          42
L6        I/O        MIWU or T3A     17                           4        3           42          43
                                                                  5        4           43          44
L7        I/O        MIWU or T3B     18                           6        5           44           1
                                                                 25        6           23          24
G0        I/O        INT             25                          26       29           24          25
                                                                 27       30           25          26
G1        I/O        WDOUT*          26                          28       31           26          27
                                                                 29       32           27          28
G2        I/O        T1B             27                          30       33           28          29
                                                                 31       34           29          30
G3        I/O        T1A             28                          32       35           30          31
                                                                  9       36            3           4
G4        I/O        SO                               1          10        9            4           5
                                                                 11       10            5           6
G5        I/O        SK                               2          12       11            6           7
                                                                 13       12            7           8
G6        I          SI                               3          14       13            8           9
                                                                 15       14            9          10
G7        I          CKO                              4          16       15           10          11
                                                                 39       16           37          38
D0        O                          19                          40       43           38          39
                                                                  1       44           39          40
D1        O                          20                           2        1           40          41
                                                                           2           15          16
D2        O                          21                           8       21           16          17
                                                                 33       22           17          18
D3        O                          22                           7       23           18          19
                                                                 34       24            2           3
D4        O                                                                8           31          32
                                                                          37            1           2
D5        O                                                                7           32          33
                                                                          38
D6        O

D7        O

F0        I/O                                         7

F1        I/O        COMP1IN-                         8

F2        I/O        COMP1IN+                         9

F3        I/O        COMP1OUT        10

F4        I/O        COMP2IN-

F5        I/O        COMP2IN+

F6        I/O        COMP2OUT

F7        I/O

C0        I/O

C1        I/O

C2        I/O

C3        I/O

C4        I/O

C5        I/O

C6        I/O

C7        I/O

VCC                                                   6

GND                                  23

CKI            I                                      5

RESET          I                     24

* G1 operation as WDOUT is controlled by ECON bit 2.

                                                         5                                   www.national.com
COP8SG Family  2.1 Ordering Information

                                                                          10131708

                                         FIGURE 2. Part Numbering Scheme

               www.national.com          6
3.0 Electrical Characteristics                                         Total Current out of                                              COP8SG Family
                                                                       GND Pin (Sink)
Absolute Maximum Ratings (Note 2)                                      Storage Temperature                 110 mA
                                                                       Range
If Military/Aerospace specified devices are required,                  ESD Protection Level    -65C to +140C
please contact the National Semiconductor Sales Office/                                      2kV (Human Body
Distributors for availability and specifications.
                                                                                                            Model)

Supply Voltage (VCC)                                   7V     Note 2: Absolute maximum ratings indicate limits beyond which damage to
Voltage at Any Pin              -0.3V to VCC +0.3V            the device may occur. DC and AC electrical specifications are not ensured
                                                              when operating the device at absolute maximum ratings.
Total Current into VCC                          100 mA
Pin (Source)

DC Electrical Characteristics

-40C  TA  +85C unless otherwise specified.

            Parameter                                      Conditions  Min                   Typ  Max       Units

Operating Voltage                                                      2.7                        5.5               V

Power Supply Rise Time                                                 10                         50 x 106          ns

VCC Start Voltage to Guarantee POR                                     0                          0.25              V
Power Supply Ripple (Note 4)
                                       Peak-to-Peak                                               0.1 Vcc           V

Supply Current (Note 5)

   CKI = 15 MHz                        VCC = 5.5V, tC = 0.67 s                                   9.0               mA
   CKI = 10 MHz                        VCC = 5.5V, tC = 1 s
   CKI = 4 MHz                         VCC = 4.5V, tC = 2.5 s                                    6.0               mA
HALT Current (Note 6)                  VCC = 5.5V, CKI = 0 MHz
IDLE Current (Note 5)                                                                             2.1               mA

                                                                                             <4   10                A

   CKI = 15 MHz                        VCC = 5.5V, tC = 0.67 s                                   2.25              mA
   CKI = 10 MHz                        VCC = 5.5V, tC = 1 s
   CKI = 4 MHz                         VCC = 4.5V, tC = 2.5 s                                    1.5               mA
Input Levels (VIH, VIL)
RESET                                                                                             0.8               mA

Logic High                                                             0.8 Vcc                                      V

Logic Low                                                                                         0.2 Vcc           V

CKI, All Other Inputs

Logic High                                                             0.7 Vcc                                      V
                                                                         0.5
Logic Low                                                                                         0.2 Vcc           V

Internal Bias Resistor for the                                                               1    2                 M

Crystal/Resonator Oscillator

CKI Resistance to VCC or GND when R/C  VCC = 5.5V                      5                     8    11                k
Oscillator is selected

Hi-Z Input Leakage                     VCC = 5.5V                         -2                      +2                A
Input Pullup Current                   VCC = 5.5V, VIN = 0V               -40
G and L Port Input Hysteresis          VCC = 5.5V                      0.25 Vcc                   -250              A

                                                                                                                    V

                                                           7                                          www.national.com
COP8SG Family  DC Electrical Characteristics (Continued)

               -40C  TA  +85C unless otherwise specified.

                                 Parameter                          Conditions        Min    Typ          Max   Units

               Output Current Levels

               D Outputs

                  Source                                VCC = 4.5V, VOH = 3.3V        -0.4                          mA
                  Sink                                  VCC = 2.7V, VOH = 1.8V
               All Others                               VCC = 4.5V, VOL = 1.0V        -0.2                          mA
                                                        VCC = 2.7V, VOL = 0.4V
                                                                                      10                            mA

                                                                                      2                             mA

                  Source (Weak Pull-Up Mode)            VCC = 4.5V, VOH = 2.7V        -10.0               -110      A
                  Source (Push-Pull Mode)               VCC = 2.7V, VOH = 1.8V         -2.5
                  Sink (Push-Pull Mode)                 VCC = 4.5V, VOH = 3.3V        -0.4                -33       A
               TRI-STATE Leakage                        VCC = 2.7V, VOH = 1.8V         -0.2
               Allowable Sink Current per Pin (Note 9)  VCC = 4.5V, VOL = 0.4V         1.6                          mA
                                                        VCC = 2.7V, VOL = 0.4V         0.7
                                                        VCC = 5.5V                      -2                          mA

                                                                                                                    mA
                                                                                                                    mA

                                                                                                          +2        A

               D Outputs and L0 to L3                                                                     15    mA

               All Others                                                                                 3     mA

               Maximum Input Current without Latchup    Room Temp.                                        200      mA

               (Note 7)

               RAM Retention Voltage, Vr                                              2.0                           V

               VCC Rise Time from a VCC  2.0V           (Note 10)                     12                          s
               EPROM Data Retenton (Note 8), (Note 9)   TA = 55C                                               years
               Input Capacitance                        (Note 9)                                 >29

                                                                                                          7         pF

               Load Capacitance on D2                   (Note 9)                                          1000      pF

               AC Electrical Characteristics

               -40C  TA  +85C unless otherwise specified.

                                 Parameter                        Conditions    Min   Typ    Max                Units

               Instruction Cycle Time (tC)              4.5V  VCC  5.5V         0.67                            s
                  Crystal/Resonator, External           2.7V  VCC  4.5V
                                                        4.5V  VCC  5.5V         2                               s
                  R/C Oscillator (Internal)             4.5V  VCC  5.5V
                     Frequency Variation (Note 9)       fr = Max                      2                         s

               External CKI Clock Duty Cycle (Note 9)                                 35                       %

                                                                                45                    55        %

               Rise Time (Note 9)                       fr = 10 MHz Ext Clock                         8         ns

               Fall Time (Note 9)                       fr = 10 MHz Ext Clock                         5         ns

               MICROWIRE Setup Time (tUWS) (Note                                20                              ns
               11)

               MICROWIRE Hold Time (tUWH) (Note                                 56                              ns
               11)

               MICROWIRE Output Propagation Delay                                            220                ns

               (tUPD) (Note 11)
               Input Pulse Width (Note 9)

               Interrupt Input High Time                                        1                               tC

               Interrupt Input Low Time                                         1                               tC

               Timer 1, 2, 3, Input High Time                                   1                               tC

               Timer 1 2, 3, Input Low Time                                     1                               tC

               Reset Pulse Width                                                1                               s

               Note 3: tC = Instruction cycle time.

               www.national.com                                     8
AC Electrical Characteristics (Continued)                                                                                                                                COP8SG Family

Note 4: Maximum rate of voltage change must be < 0.5 V/ms.

Note 5: Supply and IDLE currents are measured with CKI driven with a square wave Oscillator, External Oscillator, inputs connected to VCC and outputs driven low
but not connected to a load.

Note 6: The HALT mode will stop CKI from oscillating in the R/C and the Crystal configurations. In the R/C configuration, CKI is forced high internally. In the crystal
or external configuration, CKI is TRI-STATE. Measurement of IDD HALT is done with device neither sourcing nor sinking current; with L. F, C, G0, and G2G5
programmed as low outputs and not driving a load; all outputs programmed low and not driving a load; all inputs tied to VCC; clock monitor disabled. Parameter refers
to HALT mode entered via setting bit 7 of the G Port data register.

Note 7: Pins G6 and RESET are designed with a high voltage input network. These pins allow input voltages > VCC and the pins will have sink current to VCC when
biased at voltages > VCC (the pins do not have source current when biased at a voltage below VCC). The effective resistance to VCC is 750 (typical). These two
pins will not latch up. The voltage at the pins must be limited to < 14V. WARNING: Voltages in excess of 14V will cause damage to the pins. This warning excludes

ESD transients.

Note 8: National Semiconductor uses the High Temperature Storage Life (HTSL) test to evaluate the data retention capabilities of the EPROM memory cells used
in our OTP microcontrollers. Qualification devices have been stressed at 150C for 1000 hours. Under these conditions, our EPROM cells exhibit data retention
capabilities in excess of 29 years. This is based on an activation energy of 0.7eV derated to 55C.

Note 9: Parameter characterized but not tested.

Note 10: Rise times faster than the minimum specification may trigger an internal power-on-reset.

Note 11: MICROWIRE Setup and Hold Times and Propagation Delays are referenced to the appropriate edge of the MICROWIRE clock. See and the MICROWIRE
operation description.

Comparators AC and DC Characteristics

VCC = 5V, -40C  TA  +85C.

              Parameter           Conditions             Min                                                                         Typ     Max     Units
                                                                                                                                             15      mV
Input Offset Voltage (Note 12)    0.4V  VIN  VCC - 1.5V                                                                              5   VCC - 1.5    V
                                                                                                                                                      dB
Input Common Mode Voltage Range                          0.4                                                                                  150     mA
                                                                                                                                                      mA
Voltage Gain                                                                                                                         100              A

Low Level Output Current          VOL = 0.4V             -1.6
High Level Output Current         VOH = VCC - 0.4V       1.6
DC Supply Current per Comparator

(When Enabled)

Response Time (Note 13)           200 mV step input

                                  100 mV Overdrive,                                                                                       600        ns

                                  100 pF Load

Comparator Enable Time(Note 14)                                                                                                           600        ns

Note 12: The comparator inputs are high impedance port inputs and, as such, input current is limited to port input leakage current.
Note 13: Response time is measured from a step input to a valid logic level at the comparator output. software response time is dependent of instruction execution.
Note 14: Comparator enable time is that delay time required between the end of the instruction cycle that enables the comparator and using the output of the
comparator, either by hardware or by software.

                                                                                                                           10131709

                                  FIGURE 3. MICROWIRE/PLUS Timing

                                                     9                                                                                               www.national.com
COP8SG Family  Absolute Maximum Ratings (Note 2)                                      Storage Temperature     -65C to +140C
                                                                                      Range                 2kV (Human Body
               If Military/Aerospace specified devices are required,                  ESD Protection Level
               please contact the National Semiconductor Sales Office/                                                     Model)
               Distributors for availability and specifications.

               Supply Voltage (VCC)                                   7V      Note 15: Absolute maximum ratings indicate limits beyond which damage to
               Voltage at Any Pin              -0.3V to VCC +0.3V             the device may occur. DC and AC electrical specifications are not ensured
               Total Current into VCC                                         when operating the device at absolute maximum ratings.
               Pin (Source)                                    100 mA
               Total Current out of
               GND Pin (Sink)                                  110 mA

               DC Electrical Characteristics

               -40C  TA  +125C unless otherwise specified.

                                 Parameter                                Conditions  Min                   Typ  Max       Units

               Operating Voltage                                                      4.5                        5.5               V

               Power Supply Rise Time                                                 10                         50 x 106          ns

               VCC Start Voltage to Guarantee POR                                     0                          0.25              V
               Power Supply Ripple (Note 4)
                                                        Peak-to-Peak                                             0.1 Vcc           V

               Supply Current (Note 5)

                  CKI = 10 MHz                          VCC = 5.5V, tC = 1 s                                    6.0               mA
                  CKI = 4 MHz                           VCC = 4.5V, tC = 2.5 s
               HALT Current (Note 6)                    VCC = 5.5V, CKI = 0 MHz                                  2.1               mA
               IDLE Current (Note 5)
                                                                                                            <4   10                A

                  CKI = 10 MHz                          VCC = 5.5V, tC = 1 s                                    1.5               mA
                  CKI = 4 MHz                           VCC = 4.5V, tC = 2.5 s
               Input Levels (VIH, VIL)                                                                           0.8               mA
               RESET

               Logic High                                                             0.8 Vcc                                      V

               Logic Low                                                                                         0.2 Vcc           V

               CKI, All Other Inputs

               Logic High                                                             0.7 Vcc                                      V
                                                                                        0.5
               Logic Low                                                                                         0.2 Vcc           V

               Internal Bias Resistor for the                                                               1    2                 M

               Crystal/Resonator Oscillator

               CKI Resistance to VCC or GND when R/C    VCC = 5.5V                    5                     8    11                k
               Oscillator is selected

               Hi-Z Input Leakage                       VCC = 5.5V                       -5                      +5                A
               Input Pullup Current                     VCC = 5.5V, VIN = 0V             -35
               G and L Port Input Hysteresis            VCC = 5.5V                    0.25 Vcc                   -400              A
               Output Current Levels
                                                                                                                                   V

               D Outputs

                  Source                                VCC = 4.5V, VOH = 3.3V            -0.4                                     mA
                  Sink                                  VCC = 4.5V, VOL = 1.0V              9                                      mA
               All Others
                                                                                           -9
                  Source (Weak Pull-Up Mode)            VCC = 4.5V, VOH = 2.7V            -0.4                   -140              A
                  Source (Push-Pull Mode)               VCC = 4.5V, VOH = 3.3V             1.4
                  Sink (Push-Pull Mode)                 VCC = 4.5V, VOL = 0.4V             -5                                      mA
               TRI-STATE Leakage                        VCC = 5.5V
               Allowable Sink Current per Pin (Note 9)                                15                                           mA
                                                                                            3
                                                                                                                 +5                A

               D Outputs and L0 to L3                                                                            15        mA

               All Others                                                                                        3         mA

               www.national.com                                           10
DC Electrical Characteristics (Continued)                                                     COP8SG Family

-40C  TA  +125C unless otherwise specified.

          Parameter                                Conditions  Min  Typ  Max   Units

Maximum Input Current without Latchup  Room Temp.                        200  mA

(Note 7)

RAM Retention Voltage, Vr                                      2.0             V

VCC Rise Time from a VCC  2.0V         (Note 10)               12              s
EPROM Data Retenton (Note 8),(Note 9)  TA = 55C
Input Capacitance                      (Note 9)                     >29        years

                                                                         7     pF

Load Capacitance on D2                 (Note 9)                          1000  pF

                                                   11                       www.national.com
COP8SG Family  AC Electrical Characteristics

               -40C  TA  +125C unless otherwise specified.

                                 Parameter                    Conditions      Min     Typ     Max        Units

               Instruction Cycle Time (tC)             4.5V  VCC  5.5V             1                     s
                  Crystal/Resonator, External          4.5V  VCC  5.5V
                  R/C Oscillator (Internal)            4.5V  VCC  5.5V                     2             s
                     Frequency Variation (Note 9)      fr = Max
                                                                                      35                %
               External CKI Clock Duty Cycle (Note 9)
                                                                              45              55         %

               Rise Time (Note 9)                      fr = 10 MHz Ext Clock                  12         ns

               Fall Time (Note 9)                      fr = 10 MHz Ext Clock                  8          ns

               MICROWIRE Setup Time (tUWS) (Note                              20                         ns
               11)

               MICROWIRE Hold Time (tUWH) (Note                               56                         ns
               11)

               MICROWIRE Output Propagation Delay                                             220        ns

               (tUPD) (Note 11)
               Input Pulse Width (Note 9)

               Interrupt Input High Time                                           1                     tC

               Interrupt Input Low Time                                            1                     tC

               Timer 1, 2, 3, Input High Time                                      1                     tC

               Timer 1 2, 3, Input Low Time                                        1                     tC

               Reset Pulse Width                                                   1                     s

               Comparators AC and DC Characteristics

               VCC = 5V, -40C  TA  +125C.

                                 Parameter                    Conditions      Min     Typ        Max     Units
                                                                                                 25      mV
               Input Offset Voltage (Note 12)          0.4V  VIN  VCC - 1.5V          5      VCC - 1.5    V
               Input Common Mode Voltage Range                                                            dB
                                                                              0.4                 150     mA
                                                                                                          mA
               Voltage Gain                                                           100         600     A
                                                                                                  600
               Low Level Output Current                VOL = 0.4V             -1.6                         ns
               High Level Output Current               VOH = VCC - 0.4V
               DC Supply Current per Comparator                               1.6                          ns

               (When Enabled)

               Response Time (Note 13)                 200 mV step input

                                                       100 mV Overdrive,

               Comparator Enable Time

               www.national.com                               12
Typical Performance Characteristics TA = 25C (unless otherwise specified)                    COP8SG Family

10131749                                                                    10131750

10131751                                                                    10131752

          13                                                                www.national.com
COP8SG Family  4.0 Pin Descriptions                                                    dedicated WATCHDOG output with weak pullup if
                                                                                       WATCHDOG feature is selected by the Mask Option reg-
               The COP8SGx I/O structure enables designers to reconfig-                ister. The pin is a general purpose I/O if WATCHDOG
               ure the microcontroller's I/O functions with a single instruc-          feature is not selected. If WATCHDOG feature is selected,
               tion. Each individual I/O pin can be independently configured           bit 1 of the Port G configuration and data register does not
               as output pin low, output high, input with high impedance or            have any effect on Pin G1 setup. Pin G7 is either input or
               input with weak pull-up device. A typical example is the use            output depending on the oscillator option selected. With the
               of I/O pins as the keyboard matrix input lines. The input lines         crystal oscillator option selected, G7 serves as the dedicated
               can be programmed with internal weak pull-ups so that the               output pin for the CKO clock output. With the internal R/C or
               input lines read logic high when the keys are all open. With            the external oscillator option selected, G7 serves as a gen-
               a key closure, the corresponding input line will read a logic           eral purpose Hi-Z input pin and is also used to bring the
               zero since the weak pull-up can easily be overdriven. When              device out of HALT mode with a low to high transition on G7.
               the key is released, the internal weak pull-up will pull the
               input line back to logic high. This eliminates the need for             Since G6 is an input only pin and G7 is the dedicated CKO
               external pull-up resistors. The high current options are avail-         clock output pin (crystal clock option) or general purpose
               able for driving LEDs, motors and speakers. This flexibility            input (R/C or external clock option), the associated bits in the
               helps to ensure a cleaner design, with less external compo-             data and configuration registers for G6 and G7 are used for
               nents and lower costs. Below is the general description of all          special purpose functions as outlined below. Reading the G6
               available pins.                                                         and G7 data bits will return zeroes.

               VCC and GND are the power supply pins. All VCC and GND                  Each device will be placed in the HALT mode by writing a "1"
               pins must be connected.                                                 to bit 7 of the Port G Data Register. Similarly the device will
                                                                                       be placed in the IDLE mode by writing a "1" to bit 6 of the
               CKI is the clock input. This can come from the Internal R/C             Port G Data Register.
               oscillator, external, or a crystal oscillator (in conjunction with
               CKO). See Oscillator Description section.                               Writing a "1" to bit 6 of the Port G Configuration Register
                                                                                       enables the MICROWIRE/PLUS to operate with the alter-
               RESET is the master reset input. See Reset description                  nate phase of the SK clock. The G7 configuration bit, if set
               section.                                                                high, enables the clock start up delay after HALT when the
                                                                                       R/C clock configuration is used.
               Each device contains four bidirectional 8-bit I/O ports (C, G,
               L and F), where each individual bit may be independently                    Config. Reg.        Data Reg.
               configured as an input (Schmitt trigger inputs on ports L and                             HALT
               G), output or TRI-STATE under program control. Three data               G7  CLKDLY        IDLE
               memory address locations are allocated for each of these
               I/O ports. Each I/O port has two associated 8-bit memory                G6  Alternate SK
               mapped registers, the CONFIGURATION register and the
               output DATA register. A memory mapped address is also                   Port G has the following alternate features:
               reserved for the input pins of each I/O port. (See the memory           G7 CKO Oscillator dedicated output or general purpose
               map for the various addresses associated with the I/O ports.)
               Figure 4 shows the I/O port configurations. The DATA and                     input
               CONFIGURATION registers allow for each port bit to be                   G6 SI (MICROWIRE Serial Data Input)
               individually configured under software control as shown be-             G5 SK (MICROWIRE Serial Clock)
               low:                                                                    G4 SO (MICROWIRE Serial Data Output)
                                                                                       G3 T1A (Timer T1 I/O)
               CONFIGURATION       DATA             Port Set-Up                        G2 T1B (Timer T1 Capture Input)
                     Register    Register                                              G1 WDOUT WATCHDOG and/or CLock Monitor if WATCH-
                          0                Hi-Z Input
                                      0    (TRI-STATE Output)                               DOG enabled, otherwise it is a general purpose I/O
                          0                Input with Weak Pull-Up                     G0 INTR (External Interrupt Input)
                          1           1    Push-Pull Zero Output
                          1           0    Push-Pull One Output                        Port C is an 8-bit I/O port. The 40-pin device does not have
                                      1                                                a full complement of Port C pins. The unavailable pins are
                                                                                       not terminated. A read operation on these unterminated pins
               Port L is an 8-bit I/O port. All L-pins have Schmitt triggers on        will return unpredictable values. The 28 pin device do not
               the inputs.                                                             offer Port C. On this device, the associated Port C Data and
               Port L supports the Multi-Input Wake Up feature on all eight            Configuration registers should not be used.
               pins. Port L has the following alternate pin functions:                 Port F is an 8-bit I/O port. The 28--pin device does not have
               L7 Multi-input Wakeup or T3B (Timer T3B Input)                          a full complement of Port F pins. The unavailable pins are
               L6 Multi-input Wakeup or T3A (Timer T3A Input)                          not terminated. A read operation on these unterminated pins
               L5 Multi-input Wakeup or T2B (Timer T2B Input)                          will return unpredictable values.
               L4 Multi-input Wakeup or T2A (Timer T2A Input)                          Port F1F3 are used for Comparator 1. Port F4F6 are used
               L3 Multi-input Wakeup and/or RDX (USART Receive)                        for Comparator 2.
               L2 Multi-input Wakeup or TDX (USART Transmit)                           The Port F has the following alternate features:
               L1 Multi-input Wakeup and/or CKX (USART Clock)                          F6 COMP2OUT (Comparator 2 Output)
               L0 Multi-input Wakeup                                                   F5 COMP2+IN (Comparator 2 Positive Input)
                                                                                       F4 COMP2-IN (Comparator 2 Negative Input)
               Port G is an 8-bit port. Pin G0, G2G5 are bi-directional I/O           F3 COMP1OUT (Comparator 1 Output)
               ports. Pin G6 is always a general purpose Hi-Z input. All pins          F2 COMP1+IN (Comparator 1 Positive Input)
               have Schmitt Triggers on their inputs.Pin G1 serves as the              F1 COMP1-IN (Comparator 1 Negative Input)

               www.national.com                                                    14
4.0 Pin Descriptions (Continued)                                                                                                                                                                                  COP8SG Family

Note: For compatibility with existing software written for COP888xG devices
        and with existing Mask ROM devices, a read of the Port I input pins
        (address xxD7) will return the same data as reading the Port F input
        pins (address xx96). It is recommended new applications which will go
        to production with the COP8SGx use the Port F addresses. Note that
        compatible ROM devices contains the input only Port I instead of the
        bi-directional Port F.

Port D is an 8-bit output port that is preset high when RESET
goes low. The user can tie two or more D port outputs
(except D2) together in order to get a higher drive.

Note: Care must be exercised with the D2 pin operation. At RESET, the
        external loads on this pin must ensure that the output voltages stay
        above 0.7 VCC to prevent the chip from entering special modes. Also
        keep the external loading on D2 to less than 1000 pF.

                                                                                                                                                                                                        10131712

                                                                                   FIGURE 5. I/O Port Configurations -- Output Mode

                                   10131710

FIGURE 4. I/O Port Configurations

                                                                                                                                                                                                    10131711

                                                                                   FIGURE 6. I/O Port Configurations -- Input Mode

                                                                               15  www.national.com
COP8SG Family  5.0 Functional Description                                            dresses 0F0 to 0FE Hex. These registers can be loaded
                                                                                     immediately, and also decremented and tested with the
               The architecture of the devices are a modified Harvard ar-            DRSZ (decrement register and skip if zero) instruction. The
               chitecture. With the Harvard architecture, the program                memory pointer registers X, SP and B are memory mapped
               memory ROM is separated from the data store memory                    into this space at address locations 0FC to 0FE Hex respec-
               (RAM). Both ROM and RAM have their own separate ad-                   tively, with the other registers (except 0FF) being available
               dressing space with separate address buses. The architec-             for general usage.
               ture, though based on the Harvard architecture, permits
               transfer of data from ROM to RAM.                                     The instruction set permits any bit in memory to be set, reset
                                                                                     or tested. All I/O and registers (except A and PC) are
               5.1 CPU REGISTERS                                                     memory mapped; therefore, I/O bits and register bits can be
                                                                                     directly and individually set, reset and tested. The accumu-
               The CPU can do an 8-bit addition, subtraction, logical or shift       lator (A) bits can also be directly and individually tested.
               operation in one instruction (tC) cycle time.
               There are six CPU registers:                                          Note: RAM contents are undefined upon power-up.

               A is the 8-bit Accumulator Register                                   5.4 DATA MEMORY SEGMENT RAM EXTENSION

               PC is the 15-bit Program Counter Register                             Data memory address 0FF is used as a memory mapped
                                                                                     location for the Data Segment Address Register (S).
                  PU is the upper 7 bits of the program counter (PC)
                                                                                     The data store memory is either addressed directly by a
                  PL is the lower 8 bits of the program counter (PC)                 single byte address within the instruction, or indirectly rela-
                                                                                     tive to the reference of the B, X, or SP pointers (each
               B is an 8-bit RAM address pointer, which can be optionally            contains a single-byte address). This single-byte address
               post auto incremented or decremented.                                 allows an addressing range of 256 locations from 00 to FF
                                                                                     hex. The upper bit of this single-byte address divides the
               X is an 8-bit alternate RAM address pointer, which can be             data store memory into two separate sections as outlined
               optionally post auto incremented or decremented.                      previously. With the exception of the RAM register memory
                                                                                     from address locations 00F0 to 00FF, all RAM memory is
               S is the 8-bit Segment Address Register used to extend the            memory mapped with the upper bit of the single-byte ad-
               lower half of the address range (00 to 7F) into 256 data              dress being equal to zero. This allows the upper bit of the
               segments of 128 bytes each.                                           single-byte address to determine whether or not the base
                                                                                     address range (from 0000 to 00FF) is extended. If this upper
               SP is the 8-bit stack pointer, which points to the subroutine/        bit equals one (representing address range 0080 to 00FF),
               interrupt stack (in RAM). With reset the SP is initialized to         then address extension does not take place. Alternatively, if
               RAM address 02F Hex (devices with 64 bytes of RAM), or                this upper bit equals zero, then the data segment extension
               initialized to RAM address 06F Hex (devices with 128 bytes            register S is used to extend the base address range (from
               of RAM).                                                              0000 to 007F) from XX00 to XX7F, where XX represents the
                                                                                     8 bits from the S register. Thus the 128-byte data segment
               All the CPU registers are memory mapped with the excep-               extensions are located from addresses 0100 to 017F for
               tion of the Accumulator (A) and the Program Counter (PC).             data segment 1, 0200 to 027F for data segment 2, etc., up to
                                                                                     FF00 to FF7F for data segment 255. The base address
               5.2 PROGRAM MEMORY                                                    range from 0000 to 007F represents data segment 0.

               The program memory consists of varies sizes of ROM.                   Figure 7 illustrates how the S register data memory exten-
               These bytes may hold program instructions or constant data            sion is used in extending the lower half of the base address
               (data tables for the LAID instruction, jump vectors for the JID       range (00 to 7F hex) into 256 data segments of 128 bytes
               instruction, and interrupt vectors for the VIS instruction). The      each, with a total addressing range of 32 kbytes from XX00
               program memory is addressed by the 15-bit program                     to XX7F. This organization allows a total of 256 data seg-
               counter (PC). All interrupts in the device vector to program          ments of 128 bytes each with an additional upper base
               memory location 0FF Hex. The contents of the program                  segment of 128 bytes. Furthermore, all addressing modes
               memory read 00 Hex in the erased state. Program execution             are available for all data segments. The S register must be
               starts at location 0 after RESET.                                     changed under program control to move from one data
                                                                                     segment (128 bytes) to another. However, the upper base
               5.3 DATA MEMORY                                                       segment (containing the 16 memory registers, I/O registers,
                                                                                     control registers, etc.) is always available regardless of the
               The data memory address space includes the on-chip RAM                contents of the S register, since the upper base segment
               and data registers, the I/O registers (Configuration, Data and        (address range 0080 to 00FF) is independent of data seg-
               Pin), the control registers, the MICROWIRE/PLUS SIO shift             ment extension.
               register, and the various registers, and counters associated
               with the timers (with the exception of the IDLE timer). Data
               memory is addressed directly by the instruction or indirectly
               by the B, X and SP pointers.

               The data memory consists of 256 or 512 bytes of RAM.
               Sixteen bytes of RAM are mapped as "registers" at ad-

               www.national.com                                                  16
5.0 Functional Description (Continued)                                                                                                  COP8SG Family

                                                                                                                  10131745

FIGURE 7. RAM Organization

The instructions that utilize the stack pointer (SP) always           The format of the ECON register is as follows:
reference the stack as part of the base segment (Segment
0), regardless of the contents of the S register. The S register      Bit 7  Bit 6  Bit 5  Bit 4  Bit 3    Bit 2  Bit 1     Bit 0
is not changed by these instructions. Consequently, the                 X                         CKI 1  WATCH    F-Port    HALT
stack (used with subroutine linkage and interrupts) is always                POR SECURITY CKI 2
located in the base segment. The stack pointer will be initial-                                           DOG
ized to point at data memory location 006F as a result of
reset.                                                                Bit 7 = x     This is for factory test. The polarity is "Don't
                                                                                    Care."
The 128 bytes of RAM contained in the base segment are
split between the lower and upper base segments. The first            Bit 6 = 1 Power-on reset enabled.
112 bytes of RAM are resident from address 0000 to 006F in
the lower base segment, while the remaining 16 bytes of                      = 0 Power-on reset disabled.
RAM represent the 16 data memory registers located at
addresses 00F0 to 00FF of the upper base segment. No                  Bit 5 = 1 Security enabled.
RAM is located at the upper sixteen addresses (0070 to
007F) of the lower base segment.                                      Bits 4, 3 = 0, 0 External CKI option selected. G7 is avail-
                                                                                           able as a HALT restart and/or general pur-
Additional RAM beyond these initial 128 bytes, however, will                               pose input. CKI is clock input.
always be memory mapped in groups of 128 bytes (or less)
at the data segment address extensions (XX00 to XX7F) of                     = 0, 1 R/C oscillator option selected. G7 is avail-
the lower base segment. The additional 384 bytes of RAM in                            able as a HALT restart and/or general pur-
this device are memory mapped at address locations 0100                               pose input. CKI clock input. Internal R/C
to 017F, 0200 to 027F and 0300 to 037F hex.                                           components are supplied for maximum R/C
                                                                                      frequency.
Memory address ranges 0200 to 027F and 0300 to 037F are
unavailable on the COP8SGx5 and, if read, will return un-                    = 1, 0 Crystal oscillator with on-chip crystal bias
derfined data.                                                                        resistor disabled. G7 (CKO) is the clock
                                                                                      generator output to crystal/resonator.
5.5 ECON (CONFIGURATION) REGISTER
                                                                             = 1, 1 Crystal oscillator with on-chip crystal bias
For compatibility with COP8SGx7 devices, mask options are                             resistor enabled. G7 (CKO) is the clock gen-
defined by an ECON Configuration Register which is pro-                               erator output to crystal/resonator.
grammed at the same time as the program code. Therefore,
the register is programmed at the same time as the program            Bit 2 = 1     WATCHDOG feature disabled. G1 is a gen-
memory.                                                                             eral purpose I/O.

                                                                             = 0 WATCHDOG feature enabled. G1 pin is
                                                                                        WATCHDOG output with weak pullup.

                                                                      Bit 1 = 1     Force port I compatibility. Disable port F
                                                                                    outputs and pull-ups. This is intended for
                                                                                    compatibility with existing code and Mask
                                                                                    ROMMed devices only. This bit should be

                                                                  17                                                  www.national.com
COP8SG Family  5.0 Functional Description (Continued)                                  The recommended erasure procedure for windowed devices
                                                                                       is exposure to short wave ultraviolet light which has a wave-
                         =0           programmed to 0 for all other applications.      length of 2537 Angstroms (). The integrated dose (i.e. UV
               Bit 0 = 1              Enable full port F capability.                   intensity X exposure time) for erasure should be a minimum
                                      HALT mode disabled.                              of 15W-sec/cm2.
                         =0           HALT mode enabled.
                                                                                       5.9 RESET
               5.6 USER STORAGE SPACE IN EPROM                                         The devices are initialized when the RESET pin is pulled low
                                                                                       or the On-chip Power-On Reset is enabled.
               The ECON register is outside of the normal address range of
               the ROM and can not be accessed by the executing soft-                                                                                                                               10131713
               ware.
                                                                                                              FIGURE 8. Reset Logic
               The COP8 assembler defines a special ROM section type,
               CONF, into which the ECON may be coded. Both ECON and                   The following occurs upon initialization:
               User Data are programmed automatically by programmers                      Port L: TRI-STATE (High Impedance Input)
               that are certified by National.                                            Port C: TRI-STATE (High Impedance Input)
                                                                                          Port G: TRI-STATE (High Impedance Input)
               The following examples illustrate the declaration of ECON                  Port F: TRI-STATE (High Impedance Input)
               and the User information.                                                  Port D: HIGH
                                                                                          PC: CLEARED to 0000
               Syntax:                                                                    PSW, CNTRL and ICNTRL registers: CLEARED
                                                                                          SIOR:
               [label:] .sect econ, conf                                                     UNAFFECTED after RESET with power already applied
                                                                                             RANDOM after RESET at power-on
                                 .db  value ;1 byte,                                      T2CNTRL: CLEARED
                                                                                          T3CNTRL: CLEARED
                                           ;configures options                            Accumulator, Timer 1, Timer 2 and Timer 3:
                                                                                             RANDOM after RESET with crystal clock option
                                 .db                                       (power already applied)
                                                                                             UNAFFECTED after RESET with R/C clock option
                                 .endsect  ; up to 8 bytes                                   (power already applied)
                                                                                             RANDOM after RESET at power-on
               Example: The following sets a value in the ECON register                   WKEN, WKEDG: CLEARED
               and User Identification for a COP8SGR728M7. The ECON                       WKPND: RANDOM
               bit values shown select options: Power-on enabled, Security                SP (Stack Pointer):
               disabled, Crystal oscillator with on-chip bias disabled,                      Initialized to RAM address 06F Hex
               WATCHDOG enabled and HALT mode enabled.                                    B and X Pointers:
                                                                                             UNAFFECTED after RESET with power already applied
               .sect econ, conf                                                              RANDOM after RESET at power-on
                                                                                          S Register: CLEARED
               .db 0x55                    ;por, xtal, wd, halt                           RAM:
                                                                                             UNAFFECTED after RESET with power already applied
               .db 'my v1.00' ;user data declaration                                         RANDOM after RESET at power-on
                                                                                          USART:
               .endsect                                                                      PSR, ENU, ENUR, ENUI: Cleared except the TBMT bit
                                                                                             which is set to one.
               5.7 OTP SECURITY                                                           COMPARATORS:
                                                                                             CMPSL; CLEARED
               The device has a security feature that, when enabled, pre-                 WATCHDOG (if enabled):
               vents external reading of the OTP program memory. The
               security bit in the ECON register determines, whether secu-
               rity is enabled or disabled. If the security feature is disabled,
               the contents of the internal EPROM may be read.

               If the security feature is enabled, then any attempt to
               externally read the contents of the EPROM will result in
               the value FF Hex being read from all program locations
               Under no circumstances can a secured part be read. In
               addition, with the security feature enabled, the write opera-
               tion to the EPROM program memory and ECON register is
               inhibited. The ECON register is readable regardless of the
               state of the security bit. The security bit, when set, cannot
               be erased, even in windowed packages. If the security bit
               is set in a device in a windowed package, that device may be
               erased but will not be further programmable.

               If security is being used, it is recommended that all other bits
               in the ECON register be programmed first. Then the security
               bit can be programmed.

               5.8 ERASURE CHARACTERISTICS

               The erasure characteristics of the device are such that era-
               sure begins to occur when exposed to light with wavelengths
               shorter than approximately 4000 Angstroms (). It should be
               noted that sunlight and certain types of fluorescent lamps
               have wavelengths in the 3000 - 4000 range.

               After programming, opaque labels should be placed over the
               window of windowed devices to prevent unintentional era-
               sure. Covering the window will also prevent temporary func-
               tional failure due to the generation of photo currents.

               www.national.com                                                    18
5.0 Functional Description (Continued)                                                                                 RESET pin should be connected directly, or through a                                                                          COP8SG Family
                                                                                                                       pull-up resistor, to VCC. The output of the power-on reset
      The device comes out of reset with both the WATCH-                                                               detector will always preset the Idle timer to 0FFF(4096 tC).
DOG logic and the Clock Monitor detector armed, with the                                                               At this time, the internal reset will be generated.
WATCHDOG service window bits set and the Clock Monitor
bit set. The WATCHDOG and Clock Monitor circuits are                                                                   If the Power-On Reset feature is enabled, the internal reset
inhibited during reset. The WATCHDOG service window bits                                                               will not be turned off until the Idle timer underflows. The
being initialized high default to the maximum WATCHDOG                                                                 internal reset will perform the same functions as external
service window of 64k tC clock cycles. The Clock Monitor bit                                                           reset. The user is responsible for ensuring that VCC is at the
being initialized high will cause a Clock Monitor error follow-                                                        minimum level for the operating frequency within the 4096
ing reset if the clock has not reached the minimum specified                                                           tC. After the underflow, the logic is designed such that no
frequency at the termination of reset. A Clock Monitor error                                                           additional internal resets occur as long as VCC remains
will cause an active low error output on pin G1. This error                                                            above 2.0V.
output will continue until 16 tC32 tC clock cycles following
the clock frequency reaching the minimum specified value,                                                              The contents of data registers and RAM are unknown fol-
at which time the G1 output will go high.                                                                              lowing the on-chip reset.

5.9.1 External Reset

The RESET input when pulled low initializes the device. The
RESET pin must be held low for a minimum of one instruc-
tion cycle to guarantee a valid reset. During Power-Up ini-
tialization, the user must ensure that the RESET pin is held
low until the device is within the specified VCC voltage. An
R/C circuit on the RESET pin with a delay 5 times (5x)
greater than the power supply rise time or 15 s whichever is
greater, is recommended. Reset should also be wide enough
to ensure crystal start-up upon Power-Up.

RESET may also be used to cause an exit from the HALT
mode.

A recommended reset circuit for this device is shown in
Figure 9.

                                                                                                         10131714                                                                                                                          10131715

RC >5x power supply rise time or 15 s, whichever is greater.                                                          FIGURE 10. Reset Timing (Power-On Reset Enabled)
                                                                                                                                           with VCC Tied to RESET
       FIGURE 9. Reset Circuit Using External Reset
                                                                                                                                                                                              10131716
5.9.2 On-Chip Power-On Reset
                                                                                                                         FIGURE 11. Reset Circuit Using Power-On Reset
The on-chip reset circuit is selected by a bit in the ECON
register. When enabled, the device generates an internal
reset as VCC rises to a voltage level above 2.0V. The on-chip
reset circuitry is able to detect both fast and slow rise times
on VCC (VCC rise time between 10 ns and 50 ms).To guar-
antee an on-chip power-on-reset, VCCmust start at a voltage
less than the start voltage specified in the DC characteris-
tics. Also, if VCC be lowered to the start voltage before
powering back up to the operating range. If this is not pos-
sible, it is recommended that external reset be used.

Under no circumstances should the RESET pin be allowed
to float. If the on-chip Power-On Reset feature is being used,

                                                                                                                   19  www.national.com
COP8SG Family  5.0 Functional Description (Continued)                                specified duty cycle, rise and fall times, and input levels.
                                                                                     G7/CKO is available as a general purpose input G7 and/or
               5.10 OSCILLATOR CIRCUITS                                              Halt control. Figure 13 shows the external oscillator connec-
                                                                                     tion diagram.
               There are four clock oscillator options available: Crystal
               Oscillator with or without on-chip bias resistor, R/C Oscillator      5.10.3 R/C Oscillator
               with on-chip resistor and capacitor, and External Oscillator.
               The oscillator feature is selected by programming the ECON            The R/C Oscillator mode can be selected by programming
               register, which is summarized in Table 1.                             ECON Bit 3 to 1 and ECON Bit 4 to 0. In R/C oscillation
                                                                                     mode, CKI is left floating, while G7/CKO is available as a
                                 TABLE 1. Oscillator Option                          general purpose input G7 and/or HALT control. The R/C
                                                                                     controlled oscillator has on-chip resistor and capacitor for
               ECON4 ECON3                         Oscillator Option                 maximum R/C oscillator frequency operation. The maximum
                                                                                     frequency is 5 MHz 35% for VCC between 4.5V to 5.5V
               0                 0 External Oscillator                               and temperature range of -40C to +85C. For max fre-
                                                                                     quency operation, the CKI pin should be left floating. For
               1                 0 Crystal Oscillator without Bias Resistor          lower frequencies, an external capacitor should be con-
                                                                                     nected between CKI and either VCC or GND. Immunity of the
               0                 1 R/C Oscillator                                    R/C oscillator to external noise can be improved by connect-
                                                                                     ing one half the external capacitance to VCC and one half to
               1                 1 Crystal Oscillator with Bias Resistor             GND. PC board trace length on the CKI pin should be kept
                                                                                     as short as possible. Table 3 shows the oscillator frequency
               5.10.1 Crystal Oscillator                                             as a function of external capacitance on the CKI pin. Figure
                                                                                     14 shows the R/C oscillator configuration.
               The crystal Oscillator mode can be selected by programming
               ECON Bit 4 to 1. CKI is the clock input while G7/CKO is the           TABLE 3. R/C Oscillator Configuration,
               clock generator output to the crystal. An on-chip bias resistor
               connected between CKI and CKO can be enabled by pro-                    -40C to +85C, VCC = 4.5V to 5.5V,
               gramming ECON Bit 3 to 1 with the crystal oscillator option                 OSC Freq. Variation of 35%
               selection. The value of the resistor is in the range of 0.5M to
               2M (typically 1.0M). Table 2 shows the component values               External         R/C OSC Freq Instr. Cycle (s)
               required for various standard crystal values. Resistor R2 is
               only used when the on-chip bias resistor is disabled. Figure          Capacitor (pF)*  (MHz)
               12 shows the crystal oscillator connection diagram.

                     TABLE 2. Crystal Oscillator Configuration,                      0                5                             2.0
                                     TA = 25C, VCC = 5V
                                                                                     9                4                             2.5

                                                                      CKI Freq.      52               2                             5.0
                                                        C2 (pF)
               R1 (k) R2 (M) C1 (pF)                                                 125              1                             10
                                                                        (MHz)
                                                                                     6100             32 kHz                        312.5
                  0              1  18                            18         15
                                                                                     * Assumes 3-5 pF board capacitance.
                  0              1  20                            20         10

                  0              1  25                            25         4

               5.6               1  100 100156 0.455

               5.10.2 External Oscillator

               The External Oscillator mode can be selected by program-
               ming ECON Bit 3 to 0 and ECON Bit 4 to 0. CKI can be
               driven by an external clock signal provided it meets the

                                 With On-Chip Bias Resistor                                          Without On-Chip Bias Resistor

                                                        10131717                                         10131718

                                                                      FIGURE 12. Crystal Oscillator

               www.national.com                                                  20
5.0 Functional Description (Continued)                                                                              PSW Register (Address X'00EF)                                                    COP8SG Family

                                                                                                                       HC C T1PNDA T1ENA EXPND         BUSY EXEN GIE
                                                                                                                      Bit 7                                                  Bit 0

                                                                                                                    The PSW register contains the following select bits:

                                                                                                                    HC     Half Carry Flag

                                                                                                                    C      Carry Flag

                                                                                                                    T1PNDA Timer T1 Interrupt Pending Flag (Autoreload RA
                                                                                                                                 in mode 1, T1 Underflow in Mode 2, T1A capture
                                                                                                                                 edge in mode 3)

                                                     10131719                                                       T1ENA Timer T1 Interrupt Enable for Timer Underflow
                                                                                                                                 or T1A Input capture edge
      FIGURE 13. External Oscillator
                                                                                                                    EXPND External interrupt pending

                                                                                                                    BUSY MICROWIRE/PLUS busy shifting flag

                                                                                                                    EXEN Enable external interrupt

                                                                                                                    GIE    Global interrupt enable (enables interrupts)

                                                                                                                    The Half-Carry flag is also affected by all the instructions that
                                                                                                                    affect the Carry flag. The SC (Set Carry) and R/C (Reset
                                                                                                                    Carry) instructions will respectively set or clear both the carry
                                                                                                                    flags. In addition to the SC and R/C instructions, ADC,
                                                                                                                    SUBC, RRC and RLC instructions affect the Carry and Half
                                                                                                                    Carry flags.

                                                                                                                    ICNTRL Register (Address X'00E8)

                                                                                              10131720              Reserved LPEN T0PND T0EN WPND WEN T1PNDB T1ENB

For operation at lower than maximum R/C oscillator frequency.                                                       Bit 7                                                 Bit 0

                                                                                                                    The ICNTRL register contains the following bits:

                                                                                                                    Reserved This bit is reserved and must be zero

                                                                                                                    LPEN         L Port Interrupt Enable (Multi-Input
                                                                                                                                 Wakeup/Interrupt)

                                                                                                                    T0PND Timer T0 Interrupt pending

                                                                                                                    T0EN Timer T0 Interrupt Enable (Bit 12 toggle)

                                                                                                                    WPND MICROWIRE/PLUS interrupt pending

                                                                                                                    WEN Enable MICROWIRE/PLUS interrupt

                                                                              10131721                              T1PNDB Timer T1 Interrupt Pending Flag for T1B cap-
                                                                                                                                  ture edge
For operation at maximum R/C oscillator frequency.

                     FIGURE 14. R/C Oscillator                                                                      T1ENB Timer T1 Interrupt Enable for T1B Input capture
5.11 CONTROL REGISTERS                                                                                                            edge

                                                                                                                    T2CNTRL Register (Address X'00C6)

CNTRL Register (Address X'00EE)                                                                                      T2C3  T2C2  T2C1  T2C0  T2PNDA T2ENA T2PNDB T2ENB
                                                                                                                    Bit 7                                                                     Bit 0
  T1C3 T1C2 T1C1 T1C0 MSEL IEDG SL1                                                                     SL0
Bit 7                                                                                                   Bit 0      The T2CNTRL control register contains the following bits:

The Timer1 (T1) and MICROWIRE/PLUS control register                                                                 T2C3 Timer T2 mode control bit
contains the following bits:
                                                                                                                    T2C2 Timer T2 mode control bit

T1C3  Timer T1 mode control bit                                                                                     T2C1 Timer T2 mode control bit

T1C2  Timer T1 mode control bit                                                                                     T2C0         Timer T2 Start/Stop control in timer
                                                                                                                                 modes 1 and 2, T2 Underflow Interrupt Pend-
T1C1  Timer T1 mode control bit                                                                                                  ing Flag in timer mode 3

T1C0  Timer T1 Start/Stop control in timer

      modes 1 and 2, T1 Underflow Interrupt                                                                         T2PNDA Timer T2 Interrupt Pending Flag (Autoreload
      Pending Flag in timer mode 3                                                                                                RA in mode 1, T2 Underflow in mode 2, T2A
                                                                                                                                  capture edge in mode 3)
MSEL  Selects G5 and G4 as MICROWIRE/PLUS
      signals SK and SO respectively
                                                                                                                    T2ENA Timer T2 Interrupt Enable for Timer Underflow
IEDG  External interrupt edge polarity select                                                                                     or T2A Input capture edge

      (0 = Rising edge, 1 = Falling edge)                                                                           T2PNDB Timer T2 Interrupt Pending Flag for T2B cap-
                                                                                                                                  ture edge
SL1 & SL0 Select the MICROWIRE/PLUS clock divide
                 by (00 = 2, 01 = 4, 1x = 8)                                                                        T2ENB Timer T2 Interrupt Enable for Timer Underflow
                                                                                                                                  or T2B Input capture edge

                                                                                                                21                                                    www.national.com
COP8SG Family  5.0 Functional Description (Continued)                                                           The control bits TxC3, TxC2, and TxC1 allow selection of the
                                                                                                                different modes of operation.
               T3CNTRL Register (Address X'00B6)
                                                                                                                6.2.1 Mode 1. Processor Independent PWM Mode
                T3C3  T3C2       T3C1  T3C0 T3PNDA T3ENA T3PNDB T3ENB
               Bit 7                                                                                 Bit 0      One of the timer's operating modes is the Processor Inde-
                                                                                                                pendent PWM mode. In this mode, the timer generates a
               The T3CNTRL control register contains the following bits:                                        "Processor Independent" PWM signal because once the
                                                                                                                timer is setup, no more action is required from the CPU
               T3C3 Timer T3 mode control bit                                                                   which translates to less software overhead and greater
                                                                                                                throughput. The user software services the timer block only
               T3C2 Timer T3 mode control bit                                                                   when the PWM parameters require updating. This capability
                                                                                                                is provided by the fact that the timer has two separate 16-bit
               T3C1 Timer T3 mode control bit                                                                   reload registers. One of the reload registers contains the
                                                                                                                "ON" timer while the other holds the "OFF" time. By contrast,
               T3C0              Timer T3 Start/Stop control in timer                                           a microcontroller that has only a single reload register re-
                                 modes 1 and 2, T3 Underflow Interrupt Pend-                                    quires an additional software to update the reload value
                                 ing Flag in timer mode 3                                                       (alternate between the on-time/off-time).

               T3PNDA Timer T3 Interrupt Pending Flag (Autoreload                                               The timer can generate the PWM output with the width and
                             RA in mode 1, T3 Underflow in mode 2, T3A                                          duty cycle controlled by the values stored in the reload
                             capture edge in mode 3)                                                            registers. The reload registers control the countdown values
                                                                                                                and the reload values are automatically written into the timer
               T3ENA Timer T3 Interrupt Enable for Timer Underflow                                              when it counts down through 0, generating interrupt on each
                             or T3A Input capture edge                                                          reload. Under software control and with minimal overhead,
                                                                                                                the PMW outputs are useful in controlling motors, triacs, the
               T3PNDB Timer T3 Interrupt Pending Flag for T3B cap-                                              intensity of displays, and in providing inputs for data acqui-
                             ture edge                                                                          sition and sine wave generators.

               T3ENB Timer T3 Interrupt Enable for Timer Underflow                                              In this mode, the timer Tx counts down at a fixed rate of tC.
                             or T3B Input capture edge                                                          Upon every underflow the timer is alternately reloaded with
                                                                                                                the contents of supporting registers, RxA and RxB. The very
               6.0 Timers                                                                                       first underflow of the timer causes the timer to reload from
                                                                                                                the register RxA. Subsequent underflows cause the timer to
               Each device contains a very versatile set of timers (T0, T1,                                     be reloaded from the registers alternately beginning with the
               T2 and T3). Timer T1, T2 and T3 and associated autoreload/                                       register RxB.
               capture registers power up containing random data.
                                                                                                                Figure 15 shows a block diagram of the timer in PWM mode.
               6.1 TIMER T0 (IDLE TIMER)
                                                                                                                The underflows can be programmed to toggle the TxA output
               Each device supports applications that require maintaining                                       pin. The underflows can also be programmed to generate
               real time and low power with the IDLE mode. This IDLE                                            interrupts.
               mode support is furnished by the IDLE timer T0. The Timer
               T0 runs continuously at the fixed rate of the instruction cycle                                  Underflows from the timer are alternately latched into two
               clock, tC. The user cannot read or write to the IDLE Timer T0,                                   pending flags, TxPNDA and TxPNDB. The user must reset
               which is a count down timer.                                                                     these pending flags under software control. Two control
                                                                                                                enable flags, TxENA and TxENB, allow the interrupts from
               The Timer T0 supports the following functions:                                                   the timer underflow to be enabled or disabled. Setting the
                                                                                                                timer enable flag TxENA will cause an interrupt when a timer
                Exit out of the Idle Mode (See Idle Mode description)                                          underflow causes the RxA register to be reloaded into the
                                                                                                                timer. Setting the timer enable flag TxENB will cause an
                WATCHDOG logic (See WATCHDOG description)                                                      interrupt when a timer underflow causes the RxB register to
                                                                                                                be reloaded into the timer. Resetting the timer enable flags
                Start up delay out of the HALT mode                                                            will disable the associated interrupts.

                Timing the width of the internal power-on-reset                                                Either or both of the timer underflow interrupts may be
                                                                                                                enabled. This gives the user the flexibility of interrupting
               The IDLE Timer T0 can generate an interrupt when the                                             once per PWM period on either the rising or falling edge of
               twelfth bit toggles. This toggle is latched into the T0PND                                       the PWM output. Alternatively, the user may choose to inter-
               pending flag, and will occur every 2.731 ms at the maximum                                       rupt on both edges of the PWM output.
               clock frequency (tC = 0.67 s). A control flag T0EN allows the
               interrupt from the twelfth bit of Timer T0 to be enabled or                                      6.2.2 Mode 2. External Event Counter Mode
               disabled. Setting T0EN will enable the interrupt, while reset-
               ting it will disable the interrupt.                                                              This mode is quite similar to the processor independent
                                                                                                                PWM mode described above. The main difference is that the
               6.2 TIMER T1, TIMER T2 and TIMER T3                                                              timer, Tx, is clocked by the input signal from the TxA pin. The
                                                                                                                Tx timer control bits, TxC3, TxC2 and TxC1 allow the timer to
               Each device have a set of three powerful timer/counter                                           be clocked either on a positive or negative edge from the
               blocks, T1, T2 and T3. Since T1, T2, and T3 are identical, all                                   TxA pin. Underflows from the timer are latched into the
               comments are equally applicable to any of the three timer                                        TxPNDA pending flag. Setting the TxENA control flag will
               blocks which will be referred to as Tx.                                                          cause an interrupt when the timer underflows.

               Each timer block consists of a 16-bit timer, Tx, and two
               supporting 16-bit autoreload/capture registers, RxA and
               RxB. Each timer block has two pins associated with it, TxA
               and TxB. The pin TxA supports I/O required by the timer
               block, while the pin TxB is an input to the timer block. The
               timer block has three operating modes: Processor Indepen-
               dent PWM mode, External Event Counter mode, and Input
               Capture mode.

               www.national.com                                                                             22
6.0 Timers (Continued)                                                                                                                     value when the external event occurs, the time of the exter-                                                         COP8SG Family
                                                                                                                                           nal event is recorded. Most microcontrollers have a latency
                                                                                                                            10131746       time because they cannot determine the timer value when
                                                                                                                                           the external event occurs. The capture register eliminates
                FIGURE 15. Timer in PWM Mode                                                                                               the latency time, thereby allowing the applications program
In this mode the input pin TxB can be used as an indepen-                                                                                  to retrieve the timer value stored in the capture register.
dent positive edge sensitive interrupt input if the TxENB
control flag is set. The occurrence of a positive edge on the                                                                              In this mode, the timer Tx is constantly running at the fixed tC
TxB input pin is latched into the TxPNDB flag.                                                                                             rate. The two registers, RxA and RxB, act as capture regis-
Figure 16 shows a block diagram of the timer in External                                                                                   ters. Each register acts in conjunction with a pin. The register
Event Counter mode.                                                                                                                        RxA acts in conjunction with the TxA pin and the register RxB
                                                                                                                                           acts in conjunction with the TxB pin.
Note: The PWM output is not available in this mode since the TxA pin is being
        used as the counter input clock.                                                                                                   The timer value gets copied over into the register when a
                                                                                                                                           trigger event occurs on its corresponding pin. Control bits,
                                                                                                                                           TxC3, TxC2 and TxC1, allow the trigger events to be speci-
                                                                                                                                           fied either as a positive or a negative edge. The trigger
                                                                                                                                           condition for each input pin can be specified independently.

                                                                                                                                           The trigger conditions can also be programmed to generate
                                                                                                                                           interrupts. The occurrence of the specified trigger condition
                                                                                                                                           on the TxA and TxB pins will be respectively latched into the
                                                                                                                                           pending flags, TxPNDA and TxPNDB. The control flag Tx-
                                                                                                                                           ENA allows the interrupt on TxA to be either enabled or
                                                                                                                                           disabled. Setting the TxENA flag enables interrupts to be
                                                                                                                                           generated when the selected trigger condition occurs on the
                                                                                                                                           TxA pin. Similarly, the flag TxENB controls the interrupts
                                                                                                                                           from the TxB pin.

                                                                                                                                           Underflows from the timer can also be programmed to gen-
                                                                                                                                           erate interrupts. Underflows are latched into the timer TxC0
                                                                                                                                           pending flag (the TxC0 control bit serves as the timer under-
                                                                                                                                           flow interrupt pending flag in the Input Capture mode). Con-
                                                                                                                                           sequently, the TxC0 control bit should be reset when enter-
                                                                                                                                           ing the Input Capture mode. The timer underflow interrupt is
                                                                                                                                           enabled with the TxENA control flag. When a TxA interrupt
                                                                                                                                           occurs in the Input Capture mode, the user must check both
                                                                                                                                           the TxPNDA and TxC0 pending flags in order to determine
                                                                                                                                           whether a TxA input capture or a timer underflow (or both)
                                                                                                                                           caused the interrupt.

                                                                                                                                           Figure 17 shows a block diagram of the timer T1 in Input
                                                                                                                                           Capture mode. Timer T2 and T3 are identical to T1.

                                                                                                                             10131747                                                                                                                 10131748

   FIGURE 16. Timer in External Event Counter Mode                                                                                         FIGURE 17. Timer in Input Capture Mode

6.2.3 Mode 3. Input Capture Mode
Each device can precisely measure external frequencies or
time external events by placing the timer block, Tx, in the
input capture mode. In this mode, the reload registers serve
as independent capture registers, capturing the contents of
the timer when an external event occurs (transition on the
timer input pin). The capture registers can be read while
maintaining count, a feature that lets the user measure
elapsed time and time between events. By saving the timer

                                                                                                                                       23  www.national.com
COP8SG Family  6.0 Timers (Continued)                                                    TxPNDA Timer Interrupt Pending Flag
                                                                                         TxENA Timer Interrupt Enable Flag
               6.3 TIMER CONTROL FLAGS
                                                                                                      1 = Timer Interrupt Enabled
               The control bits and their functions are summarized below.                             0 = Timer Interrupt Disabled
                                                                                         TxPNDB Timer Interrupt Pending Flag
               TxC3 Timer mode control                                                   TxENB Timer Interrupt Enable Flag
                                                                                                      1 = Timer Interrupt Enabled
               TxC2 Timer mode control                                                                0 = Timer Interrupt Disabled
                                                                                      The timer mode control bits (TxC3, TxC2 and TxC1) are
               TxC1 Timer mode control                                                detailed below:

               TxC0              Timer Start/Stop control in Modes 1 and 2 (Pro-
                                 cessor Independent PWM and External Event
                                 Counter), where 1 = Start, 0 = Stop

                                 Timer Underflow Interrupt Pending Flag in Mode
                                 3 (Input Capture)

               Mode              TxC3  TxC2  TxC1       Description                      Interrupt A     Interrupt B       Timer
                  1                1     0     1                                            Source          Source     Counts On
                  2                1     0     0   PWM: TxA Toggle                                                    tC
                                   0     0     0   PWM: No TxA                        Autoreload RA   Autoreload RB   tC
                  3                0     0     1   Toggle                             Autoreload RA   Autoreload RB   Pos. TxA
                                   0     1     0   External Event                                                     Edge
                                                   Counter                            Timer Underflow Pos. TxB Edge   Pos. TxA
                                   1     1     0   External Event                                                     Edge
                                                   Counter                            Timer Underflow Pos. TxB Edge   tC
                                   0     1     1   Captures:
                                                   TxA Pos. Edge                      Pos. TxA Edge   Pos. TxB Edge   tC
                                   1     1     1   TxB Pos. Edge                      or Timer
                                                   Captures:                          Underflow       Neg. TxB        tC
                                                   TxA Pos. Edge                      Pos. TxA        Edge
                                                   TxB Neg. Edge                      Edge or Timer                   tC
                                                   Captures:                          Underflow       Neg. TxB
                                                   TxA Neg. Edge                      Neg. TxA        Edge
                                                   TxB Neg. Edge                      Edge or Timer
                                                   Captures:                          Underflow       Neg. TxB
                                                   TxA Neg. Edge                      Neg. TxA        Edge
                                                   TxB Neg. Edge                      Edge or Timer
                                                                                      Underflow

               www.national.com                                                   24
7.0 Power Saving Features                                              On wakeup from G7 or Port L, the devices resume execution           COP8SG Family
                                                                       from the HALT point. On wakeup from RESET execution will
Today, the proliferation of battery-operated based applica-            resume from location PC=0 and all RESET conditions apply.
tions has placed new demands on designers to drive power
consumption down. Battery-operated systems are not the                 If a crystal or ceramic resonator may be selected as the
only type of applications demanding low power. The power               oscillator, the Wakeup signal is not allowed to start the chip
budget constraints are also imposed on those consumer/                 running immediately since crystal oscillators and ceramic
industrial applications where well regulated and expensive             resonators have a delayed start up time to reach full ampli-
power supply costs cannot be tolerated. Such applications              tude and frequency stability. The IDLE timer is used to
rely on low cost and low power supply voltage derived di-              generate a fixed delay to ensure that the oscillator has
rectly from the "mains" by using voltage rectifier and passive         indeed stabilized before allowing instruction execution. In
components. Low power is demanded even in automotive                   this case, upon detecting a valid Wakeup signal, only the
applications, due to increased vehicle electronics content.            oscillator circuitry is enabled. The IDLE timer is loaded with
This is required to ease the burden from the car battery. Low          a value of 256 and is clocked with the tC instruction cycle
power 8-bit microcontrollers supply the smarts to control              clock. The tC clock is derived by dividing the oscillator clock
battery-operated, consumer/industrial, and automotive appli-           down by a factor of 9. The Schmitt trigger following the CKI
cations.                                                               inverter on the chip ensures that the IDLE timer is clocked
                                                                       only when the oscillator has a sufficiently large amplitude to
Each device offers system designers a variety of low-power             meet the Schmitt trigger specifications. This Schmitt trigger
consumption features that enable them to meet the demand-              is not part of the oscillator closed loop. The start-up time-out
ing requirements of today's increasing range of low-power              from the IDLE timer enables the clock signals to be routed to
applications. These features include low voltage operation,            the rest of the chip.
low current drain, and power saving features such as HALT,
IDLE, and Multi-Input wakeup (MIWU).                                   If an R/C clock option is being used, the fixed delay is
                                                                       introduced optionally. A control bit, CLKDLY, mapped as
Each device offers the user two power save modes of op-                configuration bit G7, controls whether the delay is to be
eration: HALT and IDLE. In the HALT mode, all microcontrol-            introduced or not. The delay is included if CLKDLY is set,
ler activities are stopped. In the IDLE mode, the on-board             and excluded if CLKDLY is reset. The CLKDLY bit is cleared
oscillator circuitry and timer T0 are active but all other micro-      on reset.
controller activities are stopped. In either mode, all on-board
RAM, registers, I/O states, and timers (with the exception of          Each device has two options associated with the HALT
T0) are unaltered.                                                     mode. The first option enables the HALT mode feature, while
                                                                       the second option disables the HALT mode selected through
Clock Monitor, if enabled, can be active in both modes.                bit 0 of the ECON register. With the HALT mode enable
                                                                       option, the device will enter and exit the HALT mode as
7.1 HALT MODE                                                          described above. With the HALT disable option, the device
                                                                       cannot be placed in the HALT mode (writing a "1" to the
Each device can be placed in the HALT mode by writing a "1"            HALT flag will have no effect, the HALT flag will remain "0").
to the HALT flag (G7 data bit). All microcontroller activities,
including the clock and timers, are stopped. The WATCH-                The WATCHDOG detector circuit is inhibited during the
DOG logic on the devices are disabled during the HALT                  HALT mode. However, the clock monitor circuit if enabled
mode. However, the clock monitor circuitry, if enabled, re-            remains active during HALT mode in order to ensure a clock
mains active and will cause the WATCHDOG output pin                    monitor error if the device inadvertently enters the HALT
(WDOUT) to go low. If the HALT mode is used and the user               mode as a result of a runaway program or power glitch.
does not want to activate the WDOUT pin, the Clock Monitor
should be disabled after the devices come out of reset                 If the device is placed in the HALT mode, with the R/C
(resetting the Clock Monitor control bit with the first write to       oscillator selected, the clock input pin (CKI) is forced to a
the WDSVR register). In the HALT mode, the power require-              logic high internally. With the crystal or external oscillator the
ments of the devices are minimal and the applied voltage               CKI pin is TRI-STATE.
(VCC) may be decreased to Vr (Vr = 2.0V) without altering the
state of the machine.                                                  It is recommended that the user not halt the device by merely
                                                                       stopping the clock in external oscillator mode. If this method
Each device supports three different ways of exiting the               is used, there is a possibility of greater than specified HALT
HALT mode. The first method of exiting the HALT mode is                current.
with the Multi-Input Wakeup feature on Port L. The second
method is with a low to high transition on the CKO (G7) pin.           If the user wishes to stop an external clock, it is recom-
This method precludes the use of the crystal clock configu-            mended that the CPU be halted by setting the Halt flag first
ration (since CKO becomes a dedicated output), and so may              and the clock be stopped only after the CPU has halted.
only be used with an R/C clock configuration. The third
method of exiting the HALT mode is by pulling the RESET
pin low.

                                                                   25  www.national.com
COP8SG Family  7.0 Power Saving Features (Continued)

                                                                                  10131725

                                 FIGURE 18. Wakeup from HALT

               7.2 IDLE MODE                                                      The user can enter the IDLE mode with the Timer T0 inter-
                                                                                  rupt enabled. In this case, when the T0PND bit gets set, the
               The device is placed in the IDLE mode by writing a "1" to the      device will first execute the Timer T0 interrupt service routine
               IDLE flag (G6 data bit). In this mode, all activities, except the  and then return to the instruction following the "Enter Idle
               associated on-board oscillator circuitry and the IDLE Timer        Mode" instruction.
               T0, are stopped.
                                                                                  Alternatively, the user can enter the IDLE mode with the
               As with the HALT mode, the device can be returned to               IDLE Timer T0 interrupt disabled. In this case, the device will
               normal operation with a reset, or with a Multi-Input Wakeup        resume normal operation with the instruction immediately
               from the L Port. Alternately, the microcontroller resumes          following the "Enter IDLE Mode" instruction.
               normal operation from the IDLE mode when the twelfth bit
               (representing 4.096 ms at internal clock frequency of              Note: It is necessary to program two NOP instructions following both the set
               10 MHz, tC = 1 s) of the IDLE Timer toggles.                              HALT mode and set IDLE mode instructions. These NOP instructions
               This toggle condition of the twelfth bit of the IDLE Timer T0 is           are necessary to allow clock resynchronization following the HALT or
               latched into the T0PND pending flag.                                       IDLE modes.

               The user has the option of being interrupted with a transition
               on the twelfth bit of the IDLE Timer T0. The interrupt can be
               enabled or disabled via the T0EN control bit. Setting the
               T0EN flag enables the interrupt and vice versa.

                                                                                  10131726

               www.national.com  FIGURE 19. Wakeup from IDLE

                                                         26
7.0 Power Saving Features (Continued)                              to negative (high going low) for L Port bit 5, where bit 5 has  COP8SG Family
                                                                   previously been enabled for an input interrupt. The program
7.3 MULTI-INPUT WAKEUP                                             would be as follows:

The Multi-Input Wakeup feature is used to return (wakeup)          RBIT  5, WKEN   ; Disable MIWU
the device from either the HALT or IDLE modes. Alternately         SBIT  5, WKEDG  ; Change edge polarity
Multi-Input Wakeup/Interrupt feature may also be used to           RBIT  5, WKPND  ; Reset pending flag
generate up to 8 edge selectable external interrupts.              SBIT  5, WKEN   ; Enable MIWU

Figure 20 shows the Multi-Input Wakeup logic.                      If the L port bits have been used as outputs and then
                                                                   changed to inputs with Multi-Input Wakeup/Interrupt, a safety
The Multi-Input Wakeup feature utilizes the L Port. The user       procedure should also be followed to avoid wakeup condi-
selects which particular L port bit (or combination of L Port      tions. After the selected L port bits have been changed from
bits) will cause the device to exit the HALT or IDLE modes.        output to input but before the associated WKEN bits are
The selection is done through the register WKEN. The reg-          enabled, the associated edge select bits in WKEDG should
ister WKEN is an 8-bit read/write register, which contains a       be set or reset for the desired edge selects, followed by the
control bit for every L port bit. Setting a particular WKEN bit    associated WKPND bits being cleared.
enables a Wakeup from the associated L port pin.
                                                                   This same procedure should be used following reset, since
The user can select whether the trigger condition on the           the L port inputs are left floating as a result of reset.
selected L Port pin is going to be either a positive edge (low
to high transition) or a negative edge (high to low transition).   The occurrence of the selected trigger condition for Multi-
This selection is made via the register WKEDG, which is an         Input Wakeup is latched into a pending register called WK-
8-bit control register with a bit assigned to each L Port pin.     PND. The respective bits of the WKPND register will be set
Setting the control bit will select the trigger condition to be a  on the occurrence of the selected trigger edge on the corre-
negative edge on that particular L Port pin. Resetting the bit     sponding Port L pin. The user has the responsibility of clear-
selects the trigger condition to be a positive edge. Changing      ing these pending flags. Since WKPND is a pending register
an edge select entails several steps in order to avoid a           for the occurrence of selected wakeup conditions, the device
Wakeup condition as a result of the edge change. First, the        will not enter the HALT mode if any Wakeup bit is both
associated WKEN bit should be reset, followed by the edge          enabled and pending. Consequently, the user must clear the
select change in WKEDG. Next, the associated WKPND bit             pending flags before attempting to enter the HALT mode.
should be cleared, followed by the associated WKEN bit
being re-enabled.                                                  WKEN and WKEDG are all read/write registers, and are
                                                                   cleared at reset. WKPND register contains random value
An example may serve to clarify this procedure. Suppose we         after reset.
wish to change the edge select from positive (low going high)

FIGURE 20. Multi-Input Wake Up Logic                                               10131727

                               27                                                    www.national.com
COP8SG Family  8.0 USART                                                           Other functions of the ENUR register include saving the
                                                                                   ninth bit received in the data frame, enabling or disabling the
               Each device contains a full-duplex software programmable            USART's attention mode of operation and providing addi-
               USART. The USART (Figure 21) consists of a transmit shift           tional receiver/transmitter status information via RCVG and
               register, a receive shift register and seven addressable reg-       XMTG bits. The determination of an internal or external clock
               isters, as follows: a transmit buffer register (TBUF), a re-        source is done by the ENUI register, as well as selecting the
               ceiver buffer register (RBUF), a USART control and status           number of stop bits and enabling or disabling transmit and
               register (ENU), a USART receive control and status register         receive interrupts. A control flag in this register can also
               (ENUR), a USART interrupt and clock source register                 select the USART mode of operation: asynchronous or
               (ENUI), a prescaler select register (PSR) and baud (BAUD)           synchronous.
               register. The ENU register contains flags for transmit and
               receive functions; this register also determines the length of
               the data frame (7, 8 or 9 bits), the value of the ninth bit in
               transmission, and parity selection bits. The ENUR register
               flags framing, data overrun and parity errors while the US-
               ART is receiving.

                                                                                                             10131739

                                 FIGURE 21. USART Block Diagram

               8.1 USART CONTROL AND STATUS REGISTERS                              8.2 DESCRIPTION OF USART REGISTER BITS
                                                                                   ENU-USART Control and Status Register (Address at 0BA)
               The operation of the USART is programmed through three
               registers: ENU, ENUR and ENUI.                                       PEN   PSEL1 XBIT9/ CHL1  CHL0  ERR  RBFL TBMT
                                                                                   Bit 7             PSEL0                           Bit 0

               www.national.com                                                28
8.0 USART (Continued)                                                                     the last time the ENUR register was read.             COP8SG Family

PEN: This bit enables/disables Parity (7- and 8-bit modes                   PE = 1 Indicates the occurrence of a Parity Error.
only). Read/Write, cleared on reset.
                                                                            SPARE: Reserved for future use. Read/Write, cleared on
PEN = 0 Parity disabled.                                                    reset.

PEN = 1 Parity enabled.                                                     RBIT9: Contains the ninth data bit received when the US-
                                                                            ART is operating with nine data bits per frame. Read only,
PSEL1, PSEL0: Parity select bits. Read/Write, cleared on                    cleared on reset.
reset.
                                                                            ATTN: ATTENTION Mode is enabled while this bit is set.
PSEL1 = 0, PSEL0 = 0 Odd Parity (if Parity enabled)                         This bit is cleared automatically on receiving a character with
                                                                            data bit nine set. Read/Write, cleared on reset.
PSEL1 = 0, PSEL0 = 1 Even Parity (if Parity enabled)
                                                                            XMTG: This bit is set to indicate that the USART is transmit-
PSEL1 = 1, PSEL0 = 0 Mark(1) (if Parity enabled)                            ting. It gets reset at the end of the last frame (end of last Stop
                                                                            bit). Read only, cleared on reset.
PSEL1 = 1, PSEL0 = 1 Space(0) (if Parity enabled)
                                                                            RCVG: This bit is set high whenever a framing error occurs
XBIT9/PSEL0: Programs the ninth bit for transmission when                   and goes low when RDX goes high. Read only, cleared on
the USART is operating with nine data bits per frame. For                   reset.
seven or eight data bits per frame, this bit in conjunction with
PSEL1 selects parity. Read/Write, cleared on reset.                         ENUI-USART Interrupt and Clock Source Register

CHL1, CHL0: These bits select the character frame format.                   (Address at 0BC)
Parity is not included and is generated/verified by hardware.
Read/Write, cleared on reset.                                               STP2 STP78 ETDX SSEL XRCLK XTCLK ERI  ETI
                                                                            Bit 7                                 Bit 0
CHL1 = 0, CHL0 = 0 The frame contains eight data bits.

CHL1 = 0, CHL0 = 1 The frame contains seven data bits.

CHL1 = 1, CHL0 = 0 The frame contains nine data bits.                       STP2: This bit programs the number of Stop bits to be
                                                                            transmitted. Read/Write, cleared on reset.
CHL1 = 1, CHL0 = 1  Loopback Mode selected. Trans-                          STP2 = 0 One Stop bit transmitted.
                    mitter output internally looped back
                    to receiver input. Nine bit framing                     STP2 = 1 Two Stop bits transmitted.
                    format is used.
                                                                            STP78: This bit is set to program the last Stop bit to be 7/8th
ERR: This bit is a global USART error flag which gets set if                of a bit in length. Read/Write, cleared on reset.
any or a combination of the errors (DOE, FE, PE) occur.
Read only; it cannot be written by software, cleared on reset.              ETDX: TDX (USART Transmit Pin) is the alternate function
                                                                            assigned to Port L pin L2; it is selected by setting ETDX bit.
RBFL: This bit is set when the USART has received a                         To simulate line break generation, software should reset
complete character and has copied it into the RBUF register.                ETDX bit and output logic zero to TDX pin through Port L
It is automatically reset when software reads the character                 data and configuration registers. Read/Write, cleared on
from RBUF. Read only; it cannot be written by software,                     reset.
cleared on reset.
                                                                            SSEL: USART mode select. Read/Write, cleared on reset.
TBMT: This bit is set when the USART transfers a byte of                    SSEL = 0 Asynchronous Mode.
data from the TBUF register into the TSFT register for trans-
mission. It is automatically reset when software writes into                SSEL = 1 Synchronous Mode.
the TBUF register. Read only, bit is set to "one" on reset; it
cannot be written by software.                                              XRCLK: This bit selects the clock source for the receiver
                                                                            section. Read/Write, cleared on reset.
ENUR-USART Receive Control and Status Register                              XRCLK = 0 The clock source is selected through the

(Address at 0BB)                                                                                PSR and BAUD registers.

DOE FE PE Reserved RBIT9 ATTN XMTG RCVG                                     XRCLK = 1 Signal on CKX (L1) pin is used as the clock.

                  (Note 16)                                                 XTCLK: This bit selects the clock source for the transmitter
                                                                            section. Read/Write, cleared on reset.
Bit 7                                                            Bit 0      XTCLK = 0 The clock source is selected through the PSR

Note 16: Bit is reserved for future use. User must set to zero.                                and BAUD registers.

DOE: Flags a Data Overrun Error. Read only, cleared on                      XTCLK = 1 Signal on CKX (L1) pin is used as the clock.
read, cleared on reset.
                                                                            ERI: This bit enables/disables interrupt from the receiver
DOE = 0  Indicates no Data Overrun Error has been de-                       section. Read/Write, cleared on reset.
         tected since the last time the ENUR register                       ERI = 0 Interrupt from the receiver is disabled.
         was read.
                                                                            ERI = 1 Interrupt from the receiver is enabled.
DOE = 1 Indicates the occurrence of a Data Overrun
                Error.                                                      ETI: This bit enables/disables interrupt from the transmitter
                                                                            section. Read/Write, cleared on reset.
FE: Flags a Framing Error. Read only, cleared on read,                      ETI = 0 Interrupt from the transmitter is disabled.
cleared on reset.
                                                                            ETI = 1 Interrupt from the transmitter is enabled.

FE = 0 Indicates no Framing Error has been detected
              since the last time the ENUR register was read.

FE = 1 Indicates the occurrence of a Framing Error.

PE: Flags a Parity Error. Read only, cleared on read, cleared
on reset.

PE = 0 Indicates no Parity Error has been detected since

                                                                        29  www.national.com
COP8SG Family  8.0 USART (Continued)                                                  This mode is selected by setting SSEL bit in the ENUI
                                                                                      register. The input frequency to the USART is the same as
               8.3 Associated I/O Pins                                                the baud rate.

               Data is transmitted on the TDX pin and received on the RDX             When an external clock input is selected at the CKX pin, data
               pin. TDX is the alternate function assigned to Port L pin L2;          transmit and receive are performed synchronously with this
               it is selected by setting ETDX (in the ENUI register) to one.          clock through TDX/RDX pins.
               RDX is an inherent function of Port L pin L3, requiring no
               setup.                                                                 If data transmit and receive are selected with the CKX pin as
                                                                                      clock output, the device generates the synchronous clock
               The baud rate clock for the USART can be generated on-                 output at the CKX pin. The internal baud rate generator is
               chip, or can be taken from an external source. Port L pin L1           used to produce the synchronous clock. Data transmit and
               (CKX) is the external clock I/O pin. The CKX pin can be                receive are performed synchronously with this clock.
               either an input or an output, as determined by Port L Con-
               figuration and Data registers (Bit 1). As an input, it accepts a       8.5 FRAMING FORMATS
               clock signal which may be selected to drive the transmitter
               and/or receiver. As an output, it presents the internal Baud           The USART supports several serial framing formats (Figure
               Rate Generator output.                                                 22). The format is selected using control bits in the ENU,
                                                                                      ENUR and ENUI registers.
               8.4 USART Operation
                                                                                      The first format (1, 1a, 1b, 1c) for data transmission (CHL0 =
               The USART has two modes of operation: asynchronous                     1, CHL1 = 0) consists of Start bit, seven Data bits (excluding
               mode and synchronous mode.                                             parity) and 7/8, one or two Stop bits. In applications using
                                                                                      parity, the parity bit is generated and verified by hardware.
               8.4.1 ASYNCHRONOUS MODE
                                                                                      The second format (CHL0 = 0, CHL1 = 0) consists of one
               This mode is selected by resetting the SSEL (in the ENUI               Start bit, eight Data bits (excluding parity) and 7/8, one or
               register) bit to zero. The input frequency to the USART is 16          two Stop bits. Parity bit is generated and verified by hard-
               times the baud rate.                                                   ware.

               The TSFT and TBUF registers double-buffer data for trans-              The third format for transmission (CHL0 = 0, CHL1 = 1)
               mission. While TSFT is shifting out the current character on           consists of one Start bit, nine Data bits and 7/8, one or two
               the TDX pin, the TBUF register may be loaded by software               Stop bits. This format also supports the USART "ATTEN-
               with the next byte to be transmitted. When TSFT finishes               TION" feature. When operating in this format, all eight bits of
               transmitting the current character the contents of TBUF are            TBUF and RBUF are used for data. The ninth data bit is
               transferred to the TSFT register and the Transmit Buffer               transmitted and received using two bits in the ENU and
               Empty Flag (TBMT in the ENU register) is set. The TBMT                 ENUR registers, called XBIT9 and RBIT9. RBIT9 is a read
               flag is automatically reset by the USART when software                 only bit. Parity is not generated or verified in this mode.
               loads a new character into the TBUF register. There is also
               the XMTG bit which is set to indicate that the USART is                For any of the above framing formats, the last Stop bit can
               transmitting. This bit gets reset at the end of the last frame         be programmed to be 7/8th of a bit in length. If two Stop bits
               (end of last Stop bit). TBUF is a read/write register.                 are selected and the 7/8th bit is set (selected), the second
                                                                                      Stop bit will be 7/8th of a bit in length.
               The RSFT and RBUF registers double-buffer data being
               received. The USART receiver continually monitors the sig-             The parity is enabled/disabled by PEN bit located in the ENU
               nal on the RDX pin for a low level to detect the beginning of          register. Parity is selected for 7- and 8-bit modes only. If
               a Start bit. Upon sensing this low level, it waits for half a bit      parity is enabled (PEN = 1), the parity selection is then
               time and samples again. If the RDX pin is still low, the               performed by PSEL0 and PSEL1 bits located in the ENU
               receiver considers this to be a valid Start bit, and the remain-       register.
               ing bits in the character frame are each sampled a single
               time, at the mid-bit position. Serial data input on the RDX pin        Note that the XBIT9/PSEL0 bit located in the ENU register
               is shifted into the RSFT register. Upon receiving the com-             serves two mutually exclusive functions. This bit programs
               plete character, the contents of the RSFT register are copied          the ninth bit for transmission when the USART is operating
               into the RBUF register and the Received Buffer Full Flag               with nine data bits per frame. There is no parity selection in
               (RBFL) is set. RBFL is automatically reset when software               this framing format. For other framing formats XBIT9 is not
               reads the character from the RBUF register. RBUF is a read             needed and the bit is PSEL0 used in conjunction with PSEL1
               only register. There is also the RCVG bit which is set high            to select parity.
               when a framing error occurs and goes low once RDX goes
               high. TBMT, XMTG, RBFL and RCVG are read only bits.                    The frame formats for the receiver differ from the transmitter
                                                                                      in the number of Stop bits required. The receiver only re-
               8.4.2 SYNCHRONOUS MODE                                                 quires one Stop bit in a frame, regardless of the setting of the
                                                                                      Stop bit selection bits in the control register. Note that an
               In this mode data is transferred synchronously with the                implicit assumption is made for full duplex USART operation
               clock. Data is transmitted on the rising edge and received on          that the framing formats are the same for the transmitter and
               the falling edge of the synchronous clock.                             receiver.

               www.national.com                                                   30
8.0 USART (Continued)                                                                                                               COP8SG Family

                                                                   10131740

                       FIGURE 22. Framing Formats

8.6 USART INTERRUPTS                                               source selected in the PSR and BAUD registers. Internally,
                                                                   the basic baud clock is created from the oscillator frequency
The USART is capable of generating interrupts. Interrupts          through a two-stage divider chain consisting of a 116 (in-
are generated on Receive Buffer Full and Transmit Buffer           crements of 0.5) prescaler and an 11-bit binary counter.
Empty. Both interrupts have individual interrupt vectors. Two      (Figure 23). The divide factors are specified through two
bytes of program memory space are reserved for each in-            read/write registers shown in Figure 24. Note that the 11-bit
terrupt vector. The two vectors are located at addresses           Baud Rate Divisor spills over into the Prescaler Select Reg-
0xEC to 0xEF Hex in the program memory space. The                  ister (PSR). PSR is cleared upon reset.
interrupts can be individually enabled or disabled using En-
able Transmit Interrupt (ETI) and Enable Receive Interrupt         As shown in Table 5, a Prescaler Factor of 0 corresponds to
(ERI) bits in the ENUI register.                                   NO CLOCK. This condition is the USART power down mode
                                                                   where the USART clock is turned off for power saving pur-
The interrupt from the Transmitter is set pending, and re-         pose. The user must also turn the USART clock off when a
mains pending, as long as both the TBMT and ETI bits are           different baud rate is chosen.
set. To remove this interrupt, software must either clear the
ETI bit or write to the TBUF register (thus clearing the TBMT      The correspondences between the 5-bit Prescaler Select
bit).                                                              and Prescaler factors are shown in Table 5. There are many
                                                                   ways to calculate the two divisor factors, but one particularly
The interrupt from the receiver is set pending, and remains        effective method would be to achieve a 1.8432 MHz fre-
pending, as long as both the RBFL and ERI bits are set. To         quency coming out of the first stage. The 1.8432 MHz pres-
remove this interrupt, software must either clear the ERI bit      caler output is then used to drive the software programmable
or read from the RBUF register (thus clearing the RBFL bit).       baud rate counter to create a 16x clock for the following baud
                                                                   rates: 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 3600,
8.7 Baud Clock Generation                                          4800, 7200, 9600, 19200 and 38400 (Table 4). Other baud

The clock inputs to the transmitter and receiver sections of
the USART can be individually selected to come either from
an external source at the CKX pin (port L, pin L1) or from a

                                                               31            www.national.com
COP8SG Family  8.0 USART (Continued)

               rates may be created by using appropriate divisors. The 16x
               clock is then divided by 16 to provide the rate for the serial
               shift registers of the transmitter and receiver.

                                                                                                            10131741

                                               FIGURE 23. USART BAUD Clock Generation

                                               FIGURE 24. USART BAUD Clock Divisor Registers                                           10131742

                                 TABLE 4. Baud Rate Divisors                                     Prescaler  Prescaler
                                 (1.8432 MHz Prescaler Output)                                     Select     Factor
                                                                                                   00100        2.5
                                     Baud      Baud Rate                                           00101         3
                                      Rate     Divisor - 1                                         00110        3.5
                                                                                                   00111         4
                                 110 (110.03)      (N-1)                                           01000        4.5
                                     134.5         1046                                            01001         5
                                                    855                                            01010        5.5
                                   (134.58)                                                        01011         6
                                      150           767                                            01100        6.5
                                      300           383                                            01101         7
                                      600           191                                            01110        7.5
                                      1200           95                                            01111         8
                                      1800           63                                            10000        8.5
                                      2400           47                                            10001         9
                                      3600           31                                            10010        9.5
                                      4800           23                                            10011         10
                                      7200           15                                            10100       10.5
                                      9600           11                                            10101         11
                                                                                                   10110       11.5
                                     19200            5                                            10111         12
                                     38400            2                                            11000       12.5
                                                                                                   11001         13
               Note: The entries in Table 4 assume a prescaler output of 1.8432 MHz. In the        11010       13.5
                       asynchronous mode the baud rate could be as high as 987.5k.                 11011         14
                                                                                                   11100       14.5
                                 TABLE 5. Prescaler Factors                                        11101         15
                                                                                                   11110       15.5
                                 Prescaler      Prescaler                                           11111        16
                                   Select         Factor
                                   00000
                                   00001       NO CLOCK
                                   00010              1
                                   00011            1.5
                                                      2

               www.national.com                                                              32
8.0 USART (Continued)                                                  because of the finite start up time requirement of the crystal         COP8SG Family
                                                                       oscillator. The idle timer (T0) generates a fixed (256 tc) delay
As an example, considering Asynchronous Mode and a CKI                 to ensure that the oscillator has indeed stabilized before
clock of 4.608 MHz, the prescaler factor selected is:                  allowing the device to execute code. The user has to con-
                                                                       sider this delay when data transfer is expected immediately
                           4.608/1.8432 = 2.5                          after exiting the HALT mode.
The 2.5 entry is available in Table 5. The 1.8432 MHz
prescaler output is then used with proper Baud Rate Divisor            8.9 Diagnostic
(Table 4) to obtain different baud rates. For a baud rate of
19200 e.g., the entry in Table 4 is 5.                                 Bits CHARL0 and CHARL1 in the ENU register provide a
                                                                       loopback feature for diagnostic testing of the USART. When
  N - 1 = 5 (N - 1 is the value from Table 4)                          these bits are set to one, the following occur: The receiver
      N = 6 (N is the Baud Rate Divisor)                               input pin (RDX) is internally connected to the transmitter
           Baud Rate = 1.8432 MHz/(16 x 6) = 19200                     output pin (TDX); the output of the Transmitter Shift Register
                                                                       is "looped back" into the Receive Shift Register input. In this
The divide by 16 is performed because in the asynchronous              mode, data that is transmitted is immediately received. This
mode, the input frequency to the USART is 16 times the                 feature allows the processor to verify the transmit and re-
baud rate. The equation to calculate baud rates is given               ceive data paths of the USART.
below.
The actual Baud Rate may be found from:                                Note that the framing format for this mode is the nine bit
                                                                       format; one Start bit, nine data bits, and 7/8, one or two Stop
                         BR = Fc/(16 x N x P)                          bits. Parity is not generated or verified in this mode.
Where:
BR is the Baud Rate                                                    8.10 Attention Mode
Fc is the CKI frequency
N is the Baud Rate Divisor (Table 4).                                  The USART Receiver section supports an alternate mode of
P is the Prescaler Divide Factor selected by the value in the          operation, referred to as ATTENTION Mode. This mode of
Prescaler Select Register (Table 5)                                    operation is selected by the ATTN bit in the ENUR register.
                                                                       The data format for transmission must also be selected as
Note: In the Synchronous Mode, the divisor 16 is replaced by two.      having nine Data bits and either 7/8, one or two Stop bits.

Example:                                                               The ATTENTION mode of operation is intended for use in
Asynchronous Mode:                                                     networking the device with other processors. Typically in
                                                                       such environments the messages consists of device ad-
   Crystal Frequency = 5 MHz                                           dresses, indicating which of several destinations should re-
   Desired baud rate = 9600                                            ceive them, and the actual data. This Mode supports a
Using the above equation N x P can be calculated first.                scheme in which addresses are flagged by having the ninth
                                                                       bit of the data field set to a 1. If the ninth bit is reset to a zero
             N x P = (5 x 106)/(16 x 9600) = 32.552                    the byte is a Data byte.
Now 32.552 is divided by each Prescaler Factor (Table 5) to
obtain a value closest to an integer. This factor happens to           While in ATTENTION mode, the USART monitors the com-
be 6.5 (P = 6.5).                                                      munication flow, but ignores all characters until an address
                                                                       character is received. Upon receiving an address character,
                   N = 32.552/6.5 = 5.008 (N = 5)                      the USART signals that the character is ready by setting the
The programmed value (from Table 4) should be 4 (N - 1).               RBFL flag, which in turn interrupts the processor if USART
Using the above values calculated for N and P:                         Receiver interrupts are enabled. The ATTN bit is also cleared
                                                                       automatically at this point, so that data characters as well as
            BR = (5 x 106)/(16 x 5 x 6.5) = 9615.384                   address characters are recognized. Software examines the
      % error = (9615.385 - 9600)/9600 x 100 = 0.16%                   contents of the RBUF and responds by deciding either to
                                                                       accept the subsequent data stream (by leaving the ATTN bit
8.8 Effect of HALT/IDLE                                                reset) or to wait until the next address character is seen (by
The USART logic is reinitialized when either the HALT or               setting the ATTN bit again).
IDLE modes are entered. This reinitialization sets the TBMT
flag and resets all read only bits in the USART control and            Operation of the USART Transmitter is not affected by se-
status registers. Read/Write bits remain unchanged. The                lection of this Mode. The value of the ninth bit to be trans-
Transmit Buffer (TBUF) is not affected, but the Transmit Shift         mitted is programmed by setting XBIT9 appropriately. The
register (TSFT) bits are set to one. The receiver registers            value of the ninth bit received is obtained by reading RBIT9.
RBUF and RSFT are not affected.                                        Since this bit is located in ENUR register where the error
The device will exit from the HALT/IDLE modes when the                 flags reside, a bit operation on it will reset the error flags.
Start bit of a character is detected at the RDX (L3) pin. This
feature is obtained by using the Multi-Input Wakeup scheme             9.0 Comparators
provided on the device.
Before entering the HALT or IDLE modes the user program                The device contains two differential comparators, each with
must select the Wakeup source to be on the RDX pin. This               a pair of inputs (positive and negative) and an output. Ports
selection is done by setting bit 3 of WKEN (Wakeup Enable)             F1F3 and F4F6 are used for the comparators. The follow-
register. The Wakeup trigger condition is then selected to be          ing is the Port F assignment:
high to low transition. This is done via the WKEDG register
(Bit 3 is one.)                                                           F6 Comparator2 output
If the device is halted and crystal oscillator is used, the
Wakeup signal will not start the chip running immediately                 F5 Comparator2 positive input

                                                                          F4 Comparator2 negative input

                                                                          F3 Comparator1 output

                                                                          F2 Comparator1 positive input

                                                                   33  www.national.com
COP8SG Family  9.0 Comparators (Continued)                                     will read as zero if the associated comparator is not enabled.
                                                                               The Comparator Select Register is cleared with reset, result-
                  F1 Comparator1 negative input                                ing in the comparators being disabled. The comparators
                                                                               should also be disabled before entering either the HALT or
               A Comparator Select Register (CMPSL) is used to enable          IDLE modes in order to save power. The configuration of the
               the comparators, read the outputs of the comparators inter-     CMPSL register is as follows:
               nally, and enable the outputs of the comparators to the pins.
               Two control bits (enable and output enable) and one result      CMPSL REGISTER (ADDRESS X'00B7)
               bit are associated with each comparator. The comparator
               result bits (CMP1RD and CMP2RD) are read only bits which

               Reserved          CMP20E  CMP2RD  CMP2EN                        CMP10E  CMP1RD   CMP1EN  Reserved
                  Bit 7                                                                                    Bit 0

               The CMPSL register contains the following bits:                 Note: For compatibility with existing code and with existing Mask ROMMed
               Reserved These bits are reserved and must be zero                       devices the bits of the CMPSL register will take precedence over the
                                                                                       associated Port F configuration and data output bits.
               CMP20E Selects pin I6 as comparator 2 output provided
                             that CMP2EN is set to enable the comparator       10.0 Interrupts

               CMP2RD Comparator 2 result (this is a read only bit, which      10.1 INTRODUCTION
                             will read as 0 if the comparator is not enabled)
                                                                               Each device supports thirteen vectored interrupts. Interrupt
               CMP2EN Enable comparator 2                                      sources include Timer 0, Timer 1, Timer 2, Timer 3, Port L
                                                                               Wakeup, Software Trap, MICROWIRE/PLUS, and External
               CMP10E Selects pin I3 as comparator 1 output provided           Input.
                             that CMPIEN is set to enable the comparator
                                                                               All interrupts force a branch to location 00FF Hex in program
               CMP1RD Comparator 1 result (this is a read only bit, which      memory. The VIS instruction may be used to vector to the
                             will read as 0 if the comparator is not enabled)  appropriate service routine from location 00FF Hex.

               CMP1EN Enable comparator 1                                      The Software trap has the highest priority while the default
                                                                               VIS has the lowest priority.
               Note that the two unused bits of CMPSL may be used as
               software flags.                                                 Each of the 13 maskable inputs has a fixed arbitration rank-
                                                                               ing and vector.
               Note: If the user attempts to use the comparator output
               immediately after enabling the comparator, an incorrect         Figure 25 shows the Interrupt Block Diagram.
               value may be read. At least one instruction cycle should pass
               between these operations. The use of a direct addressing
               mode instruction for either of these two operations will guar-
               antee this delay in the software.

                                                                                                        10131728

               www.national.com          FIGURE 25. Interrupt Block Diagram

                                                                     34
10.0 Interrupts (Continued)                                            interrupt, and jump to the interrupt handling routine corre-      COP8SG Family
                                                                       sponding to the highest priority enabled and active interrupt.
10.2 MASKABLE INTERRUPTS                                               Alternately, the user may choose to poll all interrupt pending
                                                                       and enable bits to determine the source(s) of the interrupt. If
All interrupts other than the Software Trap are maskable.              more than one interrupt is active, the user's program must
Each maskable interrupt has an associated enable bit and               decide which interrupt to service.
pending flag bit. The pending bit is set to 1 when the interrupt
condition occurs. The state of the interrupt enable bit, com-          Within a specific interrupt service routine, the associated
bined with the GIE bit determines whether an active pending            pending bit should be cleared. This is typically done as early
flag actually triggers an interrupt. All of the maskable inter-        as possible in the service routine in order to avoid missing
rupt pending and enable bits are contained in mapped con-              the next occurrence of the same type of interrupt event.
trol registers, and thus can be controlled by the software.            Thus, if the same event occurs a second time, even while the
                                                                       first occurrence is still being serviced, the second occur-
A maskable interrupt condition triggers an interrupt under the         rence will be serviced immediately upon return from the
following conditions:                                                  current interrupt routine.

1. The enable bit associated with that interrupt is set.               An interrupt service routine typically ends with an RETI
                                                                       instruction. This instruction sets the GIE bit back to 1, pops
2. The GIE bit is set.                                                 the address stored on the stack, and restores that address to
                                                                       the program counter. Program execution then proceeds with
3. The device is not processing a non-maskable interrupt.              the next instruction that would have been executed had
     (If a non-maskable interrupt is being serviced, a                 there been no interrupt. If there are any valid interrupts
     maskable interrupt must wait until that service routine is        pending, the highest-priority interrupt is serviced immedi-
     completed.)                                                       ately upon return from the previous interrupt.

An interrupt is triggered only when all of these conditions are        10.3 VIS INSTRUCTION
met at the beginning of an instruction. If different maskable
interrupts meet these conditions simultaneously, the highest           The general interrupt service routine, which starts at address
priority interrupt will be serviced first, and the other pending       00FF Hex, must be capable of handling all types of inter-
interrupts must wait.                                                  rupts. The VIS instruction, together with an interrupt vector
                                                                       table, directs the device to the specific interrupt handling
Upon Reset, all pending bits, individual enable bits, and the          routine based on the cause of the interrupt.
GIE bit are reset to zero. Thus, a maskable interrupt condi-
tion cannot trigger an interrupt until the program enables it by       VIS is a single-byte instruction, typically used at the very
setting both the GIE bit and the individual enable bit. When           beginning of the general interrupt service routine at address
enabling an interrupt, the user should consider whether or             00FF Hex, or shortly after that point, just after the code used
not a previously activated (set) pending bit should be ac-             for context switching. The VIS instruction determines which
knowledged. If, at the time an interrupt is enabled, any               enabled and pending interrupt has the highest priority, and
previous occurrences of the interrupt should be ignored, the           causes an indirect jump to the address corresponding to that
associated pending bit must be reset to zero prior to en-              interrupt source. The jump addresses (vectors) for all pos-
abling the interrupt. Otherwise, the interrupt may be simply           sible interrupts sources are stored in a vector table.
enabled; if the pending bit is already set, it will immediately
trigger an interrupt. A maskable interrupt is active if its asso-      The vector table may be as long as 32 bytes (maximum of 16
ciated enable and pending bits are set.                                vectors) and resides at the top of the 256-byte block con-
                                                                       taining the VIS instruction. However, if the VIS instruction is
An interrupt is an asychronous event which may occur be-               at the very top of a 256-byte block (such as at 00FF Hex),
fore, during, or after an instruction cycle. Any interrupt which       the vector table resides at the top of the next 256-byte block.
occurs during the execution of an instruction is not acknowl-          Thus, if the VIS instruction is located somewhere between
edged until the start of the next normally executed instruction        00FF and 01DF Hex (the usual case), the vector table is
is to be skipped, the skip is performed before the pending             located between addresses 01E0 and 01FF Hex. If the VIS
interrupt is acknowledged.                                             instruction is located between 01FF and 02DF Hex, then the
                                                                       vector table is located between addresses 02E0 and 02FF
At the start of interrupt acknowledgment, the following ac-            Hex, and so on.
tions occur:
                                                                       Each vector is 15 bits long and points to the beginning of a
1. The GIE bit is automatically reset to zero, preventing any          specific interrupt service routine somewhere in the 32 kbyte
     subsequent maskable interrupt from interrupting the cur-          memory space. Each vector occupies two bytes of the vector
     rent service routine. This feature prevents one maskable          table, with the higher-order byte at the lower address. The
     interrupt from interrupting another one being serviced.           vectors are arranged in order of interrupt priority. The vector
                                                                       of the maskable interrupt with the lowest rank is located to
2. The address of the instruction about to be executed is              0yE0 (higher-order byte) and 0yE1 (lower-order byte). The
     pushed onto the stack.                                            next priority interrupt is located at 0yE2 and 0yE3, and so
                                                                       forth in increasing rank. The Software Trap has the highest
3. The program counter (PC) is loaded with 00FF Hex,                   rank and its vector is always located at 0yFE and 0yFF. The
     causing a jump to that program memory location.                   number of interrupts which can become active defines the
                                                                       size of the table.
The device requires seven instruction cycles to perform the
actions listed above.                                                  Table 6 shows the types of interrupts, the interrupt arbitration
                                                                       ranking, and the locations of the corresponding vectors in
If the user wishes to allow nested interrupts, the interrupts          the vector table.
service routine may set the GIE bit to 1 by writing to the PSW
register, and thus allow other maskable interrupts to interrupt        The vector table should be filled by the user with the memory
the current service routine. If nested interrupts are allowed,         locations of the specific interrupt service routines. For ex-
caution must be exercised. The user must write the program
in such a way as to prevent stack overflow, loss of saved
context information, and other unwanted conditions.

The interrupt service routine stored at location 00FF Hex
should use the VIS instruction to determine the cause of the

                                                                   35  www.national.com
COP8SG Family  10.0 Interrupts (Continued)                                           gram context (A, B, X, etc.) and executing the RETI instruc-
                                                                                     tion, an interrupt service routine can be terminated by return-
               ample, if the Software Trap routine is located at 0310 Hex,           ing to the VIS instruction. In this case, interrupts will be
               then the vector location 0yFE and -0yFF should contain the            serviced in turn until no further interrupts are pending and
               data 03 and 10 Hex, respectively. When a Software Trap                the default VIS routine is started. After testing the GIE bit to
               interrupt occurs and the VIS instruction is executed, the             ensure that execution is not erroneous, the routine should
               program jumps to the address specified in the vector table.           restore the program context and execute the RETI to return
                                                                                     to the interrupted program.
               The interrupt sources in the vector table are listed in order of
               rank, from highest to lowest priority. If two or more enabled         This technique can save up to fifty instruction cycles (tc), or
               and pending interrupts are detected at the same time, the             more, (50s at 10 MHz oscillator) of latency for pending
               one with the highest priority is serviced first. Upon return          interrupts with a penalty of fewer than ten instruction cycles
               from the interrupt service routine, the next highest-level            if no further interrupts are pending.
               pending interrupt is serviced.
                                                                                     To ensure reliable operation, the user should always use the
               If the VIS instruction is executed, but no interrupts are en-         VIS instruction to determine the source of an interrupt. Al-
               abled and pending, the lowest-priority interrupt vector is            though it is possible to poll the pending bits to detect the
               used, and a jump is made to the corresponding address in              source of an interrupt, this practice is not recommended. The
               the vector table. This is an unusual occurrence, and may be           use of polling allows the standard arbitration ranking to be
               the result of an error. It can legitimately result from a change      altered, but the reliability of the interrupt system is compro-
               in the enable bits or pending flags prior to the execution of         mised. The polling routine must individually test the enable
               the VIS instruction, such as executing a single cycle instruc-        and pending bits of each maskable interrupt. If a Software
               tion which clears an enable flag at the same time that the            Trap interrupt should occur, it will be serviced last, even
               pending flag is set. It can also result, however, from inad-          though it should have the highest priority. Under certain
               vertent execution of the VIS command outside of the context           conditions, a Software Trap could be triggered but not ser-
               of an interrupt.                                                      viced, resulting in an inadvertent "locking out" of all
                                                                                     maskable interrupts by the Software Trap pending flag.
               The default VIS interrupt vector can be useful for applica-           Problems such as this can be avoided by using VIS
               tions in which time critical interrupts can occur during the          instruction.
               servicing of another interrupt. Rather than restoring the pro-

                                            TABLE 6. Interrupt Vector Table

               Arbitration Ranking  Source                    Description                   Vector Address (Note 17)
                                                                                                     (Hi-Low Byte)
               (1) Highest          Software        INTR Instruction
               (2)                  Reserved                                         0yFE0yFF
               (3)                  External        G0                               0yFC0yFD
               (4)                  Timer T0        Underflow                        0yFA0yFB
               (5)                  Timer T1        T1A/Underflow                    0yF80yF9
               (6)                  Timer T1        T1B                              0yF60yF7
               (7)                  MICROWIRE/PLUS  BUSY Low                         0yF40yF5
               (8)                  Reserved                                         0yF20yF3
               (9)                  USART           Receive                          0yF00yF1
               (10)                 USART           Transmit                         0yEE0yEF
               (11)                 Timer T2        T2A/Underflow                    0yEC0yED
               (12)                 Timer T2        T2B                              0yEA0yEB
               (13)                 Timer T3        T2A/Underflow                    0yE80yE9
               (14)                 Timer T3        T3B                              0yE60yE7
               (15)                 Port L/Wakeup   Port L Edge                      0yE40yE5
               (16) Lowest          Default VIS     Reserved                         0yE20yE3
                                                                                     0yE00yE1

               Note 17: y is a variable which represents the VIS block. VIS and the vector table must be located in the same 256-byte block except if VIS is located at the last
               address of a block. In this case, the table must be in the next block.

               www.national.com                                                  36
10.0 Interrupts (Continued)                                          remains unchanged. The new PC is therefore pointing to the       COP8SG Family
                                                                     vector of the active interrupt with the highest arbitration
10.3.1 VIS Execution                                                 ranking. This vector is read from program memory and
                                                                     placed into the PC which is now pointed to the 1st instruction
When the VIS instruction is executed it activates the arbitra-       of the service routine of the active interrupt with the highest
tion logic. The arbitration logic generates an even number           arbitration ranking.
between E0 and FE (E0, E2, E4, E6 etc...) depending on
which active interrupt has the highest arbitration ranking at        Figure 26 illustrates the different steps performed by the VIS
the time of the 1st cycle of VIS is executed. For example, if        instruction. Figure 27 shows a flowchart for the VIS instruc-
the software trap interrupt is active, FE is generated. If the       tion.
external interrupt is active and the software trap interrupt is
not, then FA is generated and so forth. If the only active           The non-maskable interrupt pending flag is cleared by the
interrupt is software trap, than E0 is generated. This number        RPND (Reset Non-Maskable Pending Bit) instruction (under
replaces the lower byte of the PC. The upper byte of the PC          certain conditions) and upon RESET.

                                                                     10131729

FIGURE 26. VIS Operation

                                                                 37            www.national.com
COP8SG Family  10.0 Interrupts (Continued)

                                                                      10131730

                                            FIGURE 27. VIS Flowchart

               www.national.com             38
10.0 Interrupts (Continued)                                                                        COP8SG Family

Programming Example: External Interrupt

WAIT:      PSW             =00EF         ; G0 pin configured Hi-Z
           CNTRL           =00EE         ; Ext interrupt polarity; falling edge
           RBIT            0,PORTGC      ; Enable the external interrupt
           RBIT            0,PORTGD      ; Set the GIE bit
           SBIT            IEDG, CNTRL   ; Wait for external interrupt
           SBIT            EXEN, PSW
           SBIT            GIE, PSW      ; The interrupt causes a
           JP              WAIT          ; branch to address 0FF
           .                             ; The VIS causes a branch to
           .                             ;interrupt vector table
           .
           .=0FF                         ; Vector table (within 256 byte
           VIS                           ; of VIS inst.) containing the ext
                                         ; interrupt service routine
           .
           .                             ; Interrupt Service Routine
           .                             ; Reset ext interrupt pend. bit
           .=01FA
           .ADDRW SERVICE                ; Return, set the GIE bit

INT_EXIT:  .      EXPND, PSW
SERVICE:   .

           RETI
           .
           .
           RBIT

           .
           .
           .
           JP INT_EXIT

                                         39                                      www.national.com
COP8SG Family  10.0 Interrupts (Continued)                                            flag; upon return to the first Software Trap routine, the
                                                                                      STPND flag will have the wrong state. This will allow
               10.4 NON-MASKABLE INTERRUPT                                            maskable interrupts to be acknowledged during the servicing
                                                                                      of the first Software Trap. To avoid problems such as this, the
               10.4.1 Pending Flag                                                    user program should contain the Software Trap routine to
                                                                                      perform a recovery procedure rather than a return to normal
               There is a pending flag bit associated with the non-maskable           execution.
               interrupt, called STPND. This pending flag is not memory-
               mapped and cannot be accessed directly by the software.                Under normal conditions, the STPND flag is reset by a
                                                                                      RPND instruction in the Software Trap service routine. If a
               The pending flag is reset to zero when a device Reset                  programming error or hardware condition (brownout, power
               occurs. When the non-maskable interrupt occurs, the asso-              supply glitch, etc.) sets the STPND flag without providing a
               ciated pending bit is set to 1. The interrupt service routine          way for it to be cleared, all other interrupts will be locked out.
               should contain an RPND instruction to reset the pending flag           To alleviate this condition, the user can use extra RPND
               to zero. The RPND instruction always resets the STPND                  instructions in the main program and in the WATCHDOG
               flag.                                                                  service routine (if present). There is no harm in executing
                                                                                      extra RPND instructions in these parts of the program.
               10.4.2 Software Trap
                                                                                      10.5 PORT L INTERRUPTS
               The Software Trap is a special kind of non-maskable inter-
               rupt which occurs when the INTR instruction (used to ac-               Port L provides the user with an additional eight fully select-
               knowledge interrupts) is fetched from program memory and               able, edge sensitive interrupts which are all vectored into the
               placed in the instruction register. This can happen in a               same service subroutine.
               variety of ways, usually because of an error condition. Some
               examples of causes are listed below.                                   The interrupt from Port L shares logic with the wake up
                                                                                      circuitry. The register WKEN allows interrupts from Port L to
               If the program counter incorrectly points to a memory loca-            be individually enabled or disabled. The register WKEDG
               tion beyond the available program memory space, the non-               specifies the trigger condition to be either a positive or a
               existent or unused memory location returns zeroes which is             negative edge. Finally, the register WKPND latches in the
               interpreted as the INTR instruction.                                   pending trigger conditions.

               If the stack is popped beyond the allowed limit (address 06F           The GIE (Global Interrupt Enable) bit enables the interrupt
               Hex), a 7FFF will be loaded into the PC, if this last location in      function.
               program memory is unprogrammed or unavailable, a Soft-
               ware Trap will be triggered.                                           A control flag, LPEN, functions as a global interrupt enable
                                                                                      for Port L interrupts. Setting the LPEN flag will enable inter-
               A Software Trap can be triggered by a temporary hardware               rupts and vice versa. A separate global pending flag is not
               condition such as a brownout or power supply glitch.                   needed since the register WKPND is adequate.

               The Software Trap has the highest priority of all interrupts.          Since Port L is also used for waking the device out of the
               When a Software Trap occurs, the STPND bit is set. The GIE             HALT or IDLE modes, the user can elect to exit the HALT or
               bit is not affected and the pending bit (not accessible by the         IDLE modes either with or without the interrupt enabled. If he
               user) is used to inhibit other interrupts and to direct the            elects to disable the interrupt, then the device will restart
               program to the ST service routine with the VIS instruction.            execution from the instruction immediately following the in-
               Nothing can interrupt a Software Trap service routine except           struction that placed the microcontroller in the HALT or IDLE
               for another Software Trap. The STPND can be reset only by              modes. In the other case, the device will first execute the
               the RPND instruction or a chip Reset.                                  interrupt service routine and then revert to normal operation.
                                                                                      (See HALT MODE for clock option wakeup information.)
               The Software Trap indicates an unusual or unknown error
               condition. Generally, returning to normal execution at the             10.6 INTERRUPT SUMMARY
               point where the Software Trap occurred cannot be done
               reliably. Therefore, the Software Trap service routine should          The device uses the following types of interrupts, listed
               reinitialize the stack pointer and perform a recovery proce-           below in order of priority:
               dure that restarts the software at some known point, similar
               to a device Reset, but not necessarily performing all the              1. The Software Trap non-maskable interrupt, triggered by
               same functions as a device Reset. The routine must also                     the INTR (00 opcode) instruction. The Software Trap is
               execute the RPND instruction to reset the STPND flag.                       acknowledged immediately. This interrupt service rou-
               Otherwise, all other interrupts will be locked out. To the                  tine can be interrupted only by another Software Trap.
               extent possible, the interrupt routine should record or indi-               The Software Trap should end with two RPND instruc-
               cate the context of the device so that the cause of the                     tions followed by a restart procedure.
               Software Trap can be determined.
                                                                                      2. Maskable interrupts, triggered by an on-chip peripheral
               If the user wishes to return to normal execution from the                   block or an external device connected to the device.
               point at which the Software Trap was triggered, the user                    Under ordinary conditions, a maskable interrupt will not
               must first execute RPND, followed by RETSK rather than                      interrupt any other interrupt routine in progress. A
               RETI or RET. This is because the return address stored on                   maskable interrupt routine in progress can be inter-
               the stack is the address of the INTR instruction that triggered             rupted by the non-maskable interrupt request. A
               the interrupt. The program must skip that instruction in order              maskable interrupt routine should end with an RETI
               to proceed with the next one. Otherwise, an infinite loop of                instruction or, prior to restoring context, should return to
               Software Traps and returns will occur.                                      execute the VIS instruction. This is particularly useful
                                                                                           when exiting long interrupt service routiness if the time
               Programming a return to normal execution requires careful                   between interrupts is short. In this case the RETI instruc-
               consideration. If the Software Trap routine is interrupted by               tion would only be executed when the default VIS rou-
               another Software Trap, the RPND instruction in the service                  tine is reached.
               routine for the second Software Trap will reset the STPND

               www.national.com                                                   40
11.0 WATCHDOG/Clock Monitor                                          11.2 WATCHDOG/CLOCK MONITOR OPERATION                                  COP8SG Family

Each device contains a user selectable WATCHDOG and                  The WATCHDOG is enabled by bit 2 of the ECON register.
clock monitor. The following section is applicable only if           When this ECON bit is 0, the WATCHDOG is enabled and
WATCHDOG feature has been selected in the ECON regis-                pin G1 becomes the WATCHDOG output with a weak pullup.
ter. The WATCHDOG is designed to detect the user program
getting stuck in infinite loops resulting in loss of program         The WATCHDOG and Clock Monitor are disabled during
control or "runaway" programs.                                       reset. The device comes out of reset with the WATCHDOG
                                                                     armed, the WATCHDOG Window Select bits (bits 6, 7 of the
The WATCHDOG logic contains two separate service win-                WDSVR Register) set, and the Clock Monitor bit (bit 0 of the
dows. While the user programmable upper window selects               WDSVR Register) enabled. Thus, a Clock Monitor error will
the WATCHDOG service time, the lower window provides                 occur after coming out of reset, if the instruction cycle clock
protection against an infinite program loop that contains the        frequency has not reached a minimum specified value, in-
WATCHDOG service instruction.                                        cluding the case where the oscillator fails to start.

The Clock Monitor is used to detect the absence of a clock or        The WDSVR register can be written to only once after reset
a very slow clock below a specified rate on the CKI pin.             and the key data (bits 5 through 1 of the WDSVR Register)
                                                                     must match to be a valid write. This write to the WDSVR
The WATCHDOG consists of two independent logic blocks:               register involves two irrevocable choices: (i) the selection of
WD UPPER and WD LOWER. WD UPPER establishes the                      the WATCHDOG service window (ii) enabling or disabling of
upper limit on the service window and WD LOWER defines               the Clock Monitor. Hence, the first write to WDSVR Register
the lower limit of the service window.                               involves selecting or deselecting the Clock Monitor, select
                                                                     the WATCHDOG service window and match the WATCH-
Servicing the WATCHDOG consists of writing a specific                DOG key data. Subsequent writes to the WDSVR register
value to a WATCHDOG Service Register named WDSVR                     will compare the value being written by the user to the
which is memory mapped in the RAM. This value is com-                WATCHDOG service window value and the key data (bits 7
posed of three fields, consisting of a 2-bit Window Select, a        through 1) in the WDSVR Register. Table 9 shows the se-
5-bit Key Data field, and the 1-bit Clock Monitor Select field.      quence of events that can occur.
Table 7 shows the WDSVR register.
                                                                     The user must service the WATCHDOG at least once before
TABLE 7. WATCHDOG Service Register (WDSVR)                           the upper limit of the service window expires. The WATCH-
                                                                     DOG may not be serviced more than once in every lower
Window      Key Data   Clock                                         limit of the service window.
Select               Monitor
                                                                     The WATCHDOG has an output pin associated with it. This
XX0 1 1 0 0                       Y                                  is the WDOUT pin, on pin 1 of the port G. WDOUT is active
                                                                     low and must be externally connected to the RESET pin or to
7654321                           0                                  some other external logic which handles WATCHDOG event.
                                                                     The WDOUT pin has a weak pullup in the inactive state. This
The lower limit of the service window is fixed at 2048 instruc-      pull-up is sufficient to serve as the connection to VCC for
tion cycles. Bits 7 and 6 of the WDSVR register allow the            systems which use the internal Power On Reset. Upon
user to pick an upper limit of the service window.                   triggering the WATCHDOG, the logic will pull the WDOUT
                                                                     (G1) pin low for an additional 16 tC32 tC cycles after the
Table 8 shows the four possible combinations of lower and            signal level on WDOUT pin goes below the lower Schmitt
upper limits for the WATCHDOG service window. This flex-             trigger threshold. After this delay, the device will stop forcing
ibility in choosing the WATCHDOG service window prevents             the WDOUT output low. The WATCHDOG service window
any undue burden on the user software.                               will restart when the WDOUT pin goes high.

Bits 5, 4, 3, 2 and 1 of the WDSVR register represent the            A WATCHDOG service while the WDOUT signal is active will
5-bit Key Data field. The key data is fixed at 01100. Bit 0 of       be ignored. The state of the WDOUT pin is not guaranteed
the WDSVR Register is the Clock Monitor Select bit.                  on reset, but if it powers up low then the WATCHDOG will
                                                                     time out and WDOUT will go high.
TABLE 8. WATCHDOG Service Window Select
                                                                     The Clock Monitor forces the G1 pin low upon detecting a
WDSVR WDSVR Clock     Service Window                                 clock frequency error. The Clock Monitor error will continue
                                                                     until the clock frequency has reached the minimum specified
Bit 7 Bit 6 Monitor (Lower-Upper Limits)                             value, after which the G1 output will go high following 16
                                                                     tC32 tC clock cycles. The Clock Monitor generates a con-
0        0  x 20488k tC Cycles                                      tinual Clock Monitor error if the oscillator fails to start, or fails
                                                                     to reach the minimum specified frequency. The specification
0        1  x 204816k tC Cycles                                     for the Clock Monitor is as follows:

1        0  x 204832k tC Cycles                                       1/tC > 10 kHz -- No clock rejection.
                                                                       1/tC < 10 Hz -- Guaranteed clock rejection.
1        1  x 204864k tC Cycles

x        x  0 Clock Monitor Disabled

x        x  1 Clock Monitor Enabled

11.1 CLOCK MONITOR

The Clock Monitor aboard the device can be selected or
deselected under program control. The Clock Monitor is
guaranteed not to reject the clock if the instruction cycle
clock (1/tC) is greater or equal to 10 kHz. This equates to a
clock input rate on CKI of greater or equal to 100 kHz.

                                                                 41  www.national.com
COP8SG Family  11.0 WATCHDOG/Clock Monitor (Continued)

                                             TABLE 9. WATCHDOG Service Actions

                                     Key      Window        Clock                                           Action
                                     Data        Data     Monitor
                                    Match       Match       Match                   Valid Service: Restart Service Window
                                 Don't Care              Don't Care                 Error: Generate WATCHDOG Output
                                 Mismatch    Mismatch    Don't Care                 Error: Generate WATCHDOG Output
                                 Don't Care  Don't Care  Mismatch                   Error: Generate WATCHDOG Output
                                             Don't Care

               11.3 WATCHDOG AND CLOCK MONITOR SUMMARY                               Following RESET, the initial WATCHDOG service (where
                                                                                        the service window and the CLOCK MONITOR enable/
               The following salient points regarding the WATCHDOG and                  disable must be selected) may be programmed any-
               CLOCK MONITOR should be noted:                                           where within the maximum service window (65,536 in-
                                                                                        struction cycles) initialized by RESET. Note that this initial
                Both the WATCHDOG and CLOCK MONITOR detector                           WATCHDOG service may be programmed within the ini-
                   circuits are inhibited during RESET.                                 tial 2048 instruction cycles without causing a WATCH-
                                                                                        DOG error.
                Following RESET, the WATCHDOG and CLOCK MONI-
                   TOR are both enabled, with the WATCHDOG having the               11.4 DETECTION OF ILLEGAL CONDITIONS
                   maximum service window selected.
                                                                                    The device can detect various illegal conditions resulting
                The WATCHDOG service window and CLOCK MONI-                        from coding errors, transient noise, power supply voltage
                   TOR enable/disable option can only be changed once,              drops, runaway programs, etc.
                   during the initial WATCHDOG service following RESET.
                                                                                    Reading of undefined ROM gets zeroes. The opcode for
                The initial WATCHDOG service must match the key data               software interrupt is 00. If the program fetches instructions
                   value in the WATCHDOG Service register WDSVR in                  from undefined ROM, this will force a software interrupt, thus
                   order to avoid a WATCHDOG error.                                 signaling that an illegal condition has occurred.

                Subsequent WATCHDOG services must match all three                  The subroutine stack grows down for each call (jump to
                   data fields in WDSVR in order to avoid WATCHDOG                  subroutine), interrupt, or PUSH, and grows up for each
                   errors.                                                          return or POP. The stack pointer is initialized to RAM location
                                                                                    06F Hex during reset. Consequently, if there are more re-
                The correct key data value cannot be read from the                 turns than calls, the stack pointer will point to addresses 070
                   WATCHDOG Service register WDSVR. Any attempt to                  and 071 Hex (which are undefined RAM). Undefined RAM
                   read this key data value of 01100 from WDSVR will read           from addresses 070 to 07F (Segment 0), and all other seg-
                   as key data value of all 0's.                                    ments (i.e., Segments 4 ... etc.) is read as all 1's, which in
                                                                                    turn will cause the program to return to address 7FFF Hex. It
                The WATCHDOG detector circuit is inhibited during both             is recommended that the user either leave this location
                   the HALT and IDLE modes.                                         unprogrammed or place an INTR instruction (all 0's) in this
                                                                                    location to generate a software interrupt signaling an illegal
                The CLOCK MONITOR detector circuit is active during                condition.
                   both the HALT and IDLE modes. Consequently, the de-
                   vice inadvertently entering the HALT mode will be de-            Thus, the chip can detect the following illegal conditions:
                   tected as a CLOCK MONITOR error (provided that the
                   CLOCK MONITOR enable option has been selected by                 1. Executing from undefined ROM.
                   the program).
                                                                                    2. Over "POP"ing the stack by having more returns than
                With the single-pin R/C oscillator option selected and the              calls.
                   CLKDLY bit reset, the WATCHDOG service window will
                   resume following HALT mode from where it left off before         When the software interrupt occurs, the user can re-initialize
                   entering the HALT mode.                                          the stack pointer and do a recovery procedure before restart-
                                                                                    ing (this recovery program is probably similar to that follow-
                With the crystal oscillator option selected, or with the           ing reset, but might not contain the same program initializa-
                   single-pin R/C oscillator option selected and the CLKDLY         tion procedures). The recovery program should reset the
                   bit set, the WATCHDOG service window will be set to its          software interrupt pending bit using the RPND instruction.
                   selected value from WDSVR following HALT. Conse-
                   quently, the WATCHDOG should not be serviced for at              12.0 MICROWIRE/PLUS
                   least 2048 instruction cycles following HALT, but must be
                   serviced within the selected window to avoid a WATCH-            MICROWIRE/PLUS is a serial SPI compatible synchronous
                   DOG error.                                                       communications interface. The MICROWIRE/PLUS capabil-
                                                                                    ity enables the device to interface with MICROWIRE/PLUS
                The IDLE timer T0 is not initialized with external RESET.          or SPI peripherals (i.e. A/D converters, display drivers, EE-
                                                                                    PROMs etc.) and with other microcontrollers which support
                The user can sync in to the IDLE counter cycle with an             the MICROWIRE/PLUS or SPI interface. It consists of an
                   IDLE counter (T0) interrupt or by monitoring the T0PND           8-bit serial shift register (SIO) with serial data input (SI),
                   flag. The T0PND flag is set whenever the twelfth bit of the      serial data output (SO) and serial shift clock (SK). Figure 28
                   IDLE counter toggles (every 4096 instruction cycles). The        shows a block diagram of the MICROWIRE/PLUS logic.
                   user is responsible for resetting the T0PND flag.
                                                                                    The shift clock can be selected from either an internal source
                A hardware WATCHDOG service occurs just as the de-                 or an external source. Operating the MICROWIRE/PLUS
                   vice exits the IDLE mode. Consequently, the WATCH-
                   DOG should not be serviced for at least 2048 instruction
                   cycles following IDLE, but must be serviced within the
                   selected window to avoid a WATCHDOG error.

               www.national.com                                                 42
12.0 MICROWIRE/PLUS (Continued)                                      enabled, an interrupt is generated when eight data bits have      COP8SG Family
                                                                     been shifted. The device may enter the MICROWIRE/PLUS
arrangement with the internal clock source is called the             mode either as a Master or as a Slave. Figure 28 shows how
Master mode of operation. Similarly, operating the                   two microcontroller devices and several peripherals may be
MICROWIRE/PLUS arrangement with an external shift clock              interconnected using the MICROWIRE/PLUS arrangements.
is called the Slave mode of operation.
                                                                                                     WARNING
The CNTRL register is used to configure and control the
MICROWIRE/PLUS mode. To use the MICROWIRE/PLUS,                      The SIO register should only be loaded when the SK clock is
the MSEL bit in the CNTRL register is set to one. In the             in the idle phase. Loading the SIO register while the SK clock
master mode, the SK clock rate is selected by the two bits,          is in the active phase, will result in undefined data in the SIO
SL0 and SL1, in the CNTRL register. Table 10 details the             register.
different clock rates that may be selected.
                                                                     Setting the BUSY flag when the input SK clock is in the
     TABLE 10. MICROWIRE/PLUS                                        active phase while in the MICROWIRE/PLUS is in the slave
       Master Mode Clock Select                                      mode may cause the current SK clock for the SIO shift
                                                                     register to be narrow. For safety, the BUSY flag should only
SL1  SL0                                 SK Period                   be set when the input SK clock is in the idle phase.
                                            2 x tC
0    0                                      4 x tC                   12.1.1 MICROWIRE/PLUS Master Mode Operation
                                            8 x tC
0    1                                                               In the MICROWIRE/PLUS Master mode of operation the
                                                                     shift clock (SK) is generated internally. The MICROWIRE
1    x                                                               Master always initiates all data exchanges. The MSEL bit in
                                                                     the CNTRL register must be set to enable the SO and SK
Where tC is the instruction cycle clock                              functions onto the G Port. The SO and SK pins must also be
                                                                     selected as outputs by setting appropriate bits in the Port G
12.1 MICROWIRE/PLUS OPERATION                                        configuration register. In the slave mode, the shift clock
                                                                     stops after 8 clock pulses. Table 11 summarizes the bit
Setting the BUSY bit in the PSW register causes the                  settings required for Master mode of operation.
MICROWIRE/PLUS to start shifting the data. It gets reset
when eight data bits have been shifted. The user may reset
the BUSY bit by software to allow less than 8 bits to shift. If

                                                                                10131732

                                         FIGURE 28. MICROWIRE/PLUS Application

                                                                 43                       www.national.com
COP8SG Family  12.0 MICROWIRE/PLUS (Continued)                                   The user must set the BUSY flag immediately upon entering
                                                                                 the Slave mode. This ensures that all data bits sent by the
               12.1.2 MICROWIRE/PLUS Slave Mode Operation                        Master is shifted properly. After eight clock pulses the BUSY
                                                                                 flag is clear, the shift clock is stopped, and the sequence
               In the MICROWIRE/PLUS Slave mode of operation the SK              may be repeated.
               clock is generated by an external source. Setting the MSEL
               bit in the CNTRL register enables the SO and SK functions         12.1.3 Alternate SK Phase Operation and SK Idle P
               onto the G Port. The SK pin must be selected as an input
               and the SO pin is selected as an output pin by setting and        The device allows either the normal SK clock or an alternate
               resetting the appropriate bits in the Port G configuration        phase SK clock to shift data in and out of the SIO register. In
               register. Table 11 summarizes the settings required to enter      both the modes the SK idle polarity can be either high or low.
               the Slave mode of operation.                                      The polarity is selected by bit 5 of Port G data register. In the
                                                                                 normal mode data is shifted in on the rising edge of the SK
                     TABLE 11. MICROWIRE/PLUS Mode Settings                      clock and the data is shifted out on the falling edge of the SK
               This table assumes that the control flag MSEL is set.             clock. In the alternate SK phase operation, data is shifted in
                                                                                 on the falling edge of the SK clock and shifted out on the
               G4 (SO)           G5 (SK)  G4 G5            Operation             rising edge of the SK clock. Bit 6 of Port G configuration
                                                                                 register selects the SK edge.
               Config. Bit Config. Bit Fun. Fun.
                                                                                 A control flag, SKSEL, allows either the normal SK clock or
               1                 1        SO Int. MICROWIRE/PLUS                 the alternate SK clock to be selected. Resetting SKSEL
                                                                                 causes the MICROWIRE/PLUS logic to be clocked from the
                                          SK Master                              normal SK signal. Setting the SKSEL flag selects the alter-
                                                                                 nate SK clock. The SKSEL is mapped into the G6 configu-
               0                 1        TRI- Int. MICROWIRE/PLUS               ration bit. The SKSEL flag will power up in the reset condi-
                                                                                 tion, selecting the normal SK signal.
                                          STATE SK Master

               1                 0        SO Ext. MICROWIRE/PLUS

                                          SK Slave

               0                 0        TRI- Ext. MICROWIRE/PLUS

                                          STATE SK Slave

                                          TABLE 12. MICROWIRE/PLUS Shift Clock Polarity and Sample/Shift Phase

               SK Phase                            Port G  G5 Data    SO Clocked Out On:  SI Sampled On:        SK Idle
                                    G6 (SKSEL)                Bit                                               Phase
                 Normal             Config. Bit                0         SK Falling Edge  SK Rising Edge
                Alternate                                      0          SK Rising Edge  SK Falling Edge            Low
                Alternate                  0                   1          SK Rising Edge  SK Falling Edge            Low
                 Normal                    1                   1         SK Falling Edge  SK Rising Edge            High
                                           0                                                                        High
                                           1

                                                                                                                                                                                                                                                10131733

                  FIGURE 29. MICROWIRE/PLUS SPI Mode Interface Timing, Normal SK Mode, SK Idle Phase being Low

               www.national.com                                              44
12.0 MICROWIRE/PLUS (Continued)                                                                                                                                                                                                                                COP8SG Family

                                                                                                                                                                                                                                                     10131734

          FIGURE 30. MICROWIRE/PLUS SPI Mode Interface Timing, Alternate SK Mode, SK Idle Phase being Low

                                                                                                                                                                                                                                                  10131735

           FIGURE 31. MICROWIRE/PLUS SPI Mode Interface Timing, Normal SK Mode, SK Idle Phase being High

                                                                                                                                                                                                                                                     10131731

         FIGURE 32. MICROWIRE/PLUS SPI Mode Interface Timing, Alternate SK Mode, SK Idle Phase being High

45  www.national.com
COP8SG Family  13.0 Memory Map                                                 Address                  Contents

               All RAM, ports and registers (except A and PC) are mapped       S/ADD REG
               into data memory address space.
                                                                               xxC9       MIWU Enable Register (Reg:WKEN)

                   Address                             Contents                xxCA       MIWU Pending Register (Reg:WKPND)
                S/ADD REG
               0000 to 006F      On-Chip RAM bytes (112 bytes)                 xxCB to xxCF Reserved
               0070 to 007F      Unused RAM Address Space (Reads As
                                 All Ones)                                     xxD0       Port L Data Register
               xx80 to xx93      Unused RAM Address Space (Reads
                                 Undefined Data)                               xxD1       Port L Configuration Register
               xx94              Port F data register, PORTFD
               xx95              Port F configuration register, PORTFC         xxD2       Port L Input Pins (Read Only)
               xx96              Port F input pins (read only), PORTFP
               xx97 to xxAF      Unused address space (Reads Undefined         xxD3       Reserved for Port L
                                 Data)
               xxB0              Timer T3 Lower Byte                           xxD4       Port G Data Register
               xxB1              Timer T3 Upper Byte
               xxB2              Timer T3 Autoload Register T3RA Lower         xxD5       Port G Configuration Register
                                 Byte
               xxB3              Timer T3 Autoload Register T3RA Upper         xxD6       Port G Input Pins (Read Only)
                                 Byte
               xxB4              Timer T3 Autoload Register T3RB Lower         xxD7       Port I Input Pins (Read Only) (Actually
                                 Byte
               xxB5              Timer T3 Autoload Register T3RB Upper                    reads Port F input pins)
                                 Byte
               xxB6              Timer T3 Control Register                     xxD8       Port C Data Register
               xxB7              Comparator Select Register (Reg:CMPSL)
               xxB8              UART Transmit Buffer (Reg:TBUF)               xxD9       Port C Configuration Register
               xxB9              UART Receive Buffer (Reg:RBUF)
               xxBA              UART Control and Status Register              xxDA       Port C Input Pins (Read Only)
                                 (Reg:ENU)
               xxBB              UART Receive Control and Status               xxDB       Reserved for Port C
                                 Register (Reg:ENUR)
               xxBC              UART Interrupt and Clock Source Register      xxDC       Port D
                                 (Reg:ENUI)
               xxBD              UART Baud Register (Reg:BAUD)                 xxDD to xxDF Reserved for Port D
               xxBE              UART Prescale Select Register (Reg:PSR)
               xxBF              Reserved for UART                             xxE0 to xxE5 Reserved for EE Control Registers
               xxC0              Timer T2 Lower Byte
               xxC1              Timer T2 Upper Byte                           xxE6       Timer T1 Autoload Register T1RB Lower
               xxC2              Timer T2 Autoload Register T2RA Lower
                                 Byte                                                     Byte
               xxC3              Timer T2 Autoload Register T2RA Upper
                                 Byte                                          xxE7       Timer T1 Autoload Register T1RB Upper
               xxC4              Timer T2 Autoload Register T2RB Lower
                                 Byte                                                     Byte
               xxC5              Timer T2 Autoload Register T2RB Upper
                                 Byte                                          xxE8       ICNTRL Register
               xxC6              Timer T2 Control Register
               xxC7              WATCHDOG Service Register                     xxE9       MICROWIRE/PLUS Shift Register
                                 (Reg:WDSVR)
               xxC8              MIWU Edge Select Register                     xxEA       Timer T1 Lower Byte
                                 (Reg:WKEDG)
                                                                               xxEB       Timer T1 Upper Byte

                                                                               xxEC       Timer T1 Autoload Register T1RA Lower

                                                                                          Byte

                                                                               xxED       Timer T1 Autoload Register T1RA Upper

                                                                                          Byte

                                                                               xxEE       CNTRL Control Register

                                                                               xxEF       PSW Register

                                                                               xxF0 to FB On-Chip RAM Mapped as Registers

                                                                               xxFC       X Register

                                                                               xxFD       SP Register

                                                                               xxFE       B Register

                                                                               xxFF       S Register

                                                                               0100017F On-Chip 128 RAM Bytes

                                                                               0200027F On-Chip 128 RAM Bytes (Reads as

                                                                                          undefined data on COP8SGE)

                                                                               0300037F On-Chip 128 RAM Bytes (Reads as

                                                                                          undefined data on COP8SGE)

                                                                               Note: Reading memory locations 0070H007FH (Segment 0) will return all
                                                                                       ones. Reading unused memory locations 0080H0093H (Segment 0)
                                                                                       will return undefined data. Reading memory locations from other Seg-
                                                                                       ments (i.e., Segment 4, Segment 5, ... etc.) will return undefined data.

               www.national.com                                            46
14.0 Instruction Set                                                The available addressing modes are:                              COP8SG Family
                                                                     Direct
14.1 INTRODUCTION                                                    Register B or X Indirect
                                                                     Register B or X Indirect with Post-Incrementing/
This section defines the instruction set of the COP8 Family
members. It contains information about the instruction set              Decrementing
features, addressing modes and types.                               Immediate
                                                                     Immediate Short
14.2 INSTRUCTION FEATURES                                           Indirect from Program Memory
                                                                    The addressing modes are described below. Each descrip-
The strength of the instruction set is based on the following       tion includes an example of an assembly language instruc-
features:                                                           tion using the described addressing mode.

Mostly single-byte opcode instructions minimize program           Direct. The memory address is specified directly as a byte in
    size.                                                           the instruction. In assembly language, the direct address is
                                                                    written as a numerical value (or a label that has been defined
One instruction cycle for the majority of single-byte in-         elsewhere in the program as a numerical value).
    structions to minimize program execution time.                  Example: Load Accumulator Memory Direct

Many single-byte, multiple function instructions such as                        LD A,05
    DRSZ.
                                                                         Reg/Data    Contents  Contents
Three memory mapped pointers: two for register indirect                Memory       Before      After
    addressing, and one for the software stack.                        Accumulator    XX Hex
                                                                    Memory Location   A6 Hex    A6 Hex
Sixteen memory mapped registers that allow an opti-                    0005 Hex               A6 Hex
    mized implementation of certain instructions.
                                                                    Register B or X Indirect. The memory address is specified
Ability to set, reset, and test any individual bit in data        by the contents of the B Register or X register (pointer
    memory address space, including the memory-mapped               register). In assembly language, the notation [B] or [X] speci-
    I/O ports and registers.                                        fies which register serves as the pointer.

Register-Indirect LOAD and EXCHANGE instructions                  Example: Exchange Memory with Accumulator, B Indirect
    with optional automatic post-incrementing or decrement-
    ing of the register pointer. This allows for greater effi-                    X A,[B]
    ciency (both in cycle time and program code) in loading,
    walking across and processing fields in data memory.                 Reg/Data    Contents  Contents
                                                                         Memory       Before      After
Unique instructions to optimize program size and                     Accumulator    01 Hex    87 Hex
    throughput efficiency. Some of these instructions are           Memory Location   87 Hex    01 Hex
    DRSZ, IFBNE, DCOR, RETSK, VIS and RRC.                               0005 Hex
                                                                         B Pointer    05 Hex    05 Hex
14.3 ADDRESSING MODES
                                                                    Register B or X Indirect with Post-Incrementing/
The instruction set offers a variety of methods for specifying      Decrementing. The relevant memory address is specified
memory addresses. Each method is called an addressing               by the contents of the B Register or X register (pointer
mode. These modes are classified into two categories: op-           register). The pointer register is automatically incremented
erand addressing modes and transfer-of-control addressing           or decremented after execution, allowing easy manipulation
modes. Operand addressing modes are the various meth-               of memory blocks with software loops. In assembly lan-
ods of specifying an address for accessing (reading or writ-        guage, the notation [B+], [B-], [X+], or [X-] specifies which
ing) data. Transfer-of-control addressing modes are used in         register serves as the pointer, and whether the pointer is to
conjunction with jump instructions to control the execution         be incremented or decremented.
sequence of the software program.
                                                                    Example: Exchange Memory with Accumulator, B Indirect
14.3.1 Operand Addressing Modes                                                   with Post-Increment

The operand of an instruction specifies what memory loca-                         X A,[B+]
tion is to be affected by that instruction. Several different
operand addressing modes are available, allowing memory                  Reg/Data    Contents  Contents
locations to be specified in a variety of ways. An instruction           Memory       Before      After
can specify an address directly by supplying the specific              Accumulator    03 Hex    62 Hex
address, or indirectly by specifying a register pointer. The        Memory Location   62 Hex    03 Hex
contents of the register (or in some cases, two registers)               0005 Hex
point to the desired memory location. In the immediate                   B Pointer    05 Hex    06 Hex
mode, the data byte to be used is contained in the instruction
itself.

Each addressing mode has its own advantages and disad-
vantages with respect to flexibility, execution speed, and
program compactness. Not all modes are available with all
instructions. The Load (LD) instruction offers the largest
number of addressing modes.

                                                                    Intermediate. The data for the operation follows the instruc-
                                                                    tion opcode in program memory. In assembly language, the
                                                                    number sign character (#) indicates an immediate operand.

                                                                47                             www.national.com
COP8SG Family  14.0 Instruction Set (Continued)                                     Jump Indirect

               Example: Load Accumulator Immediate                                  The transfer-of-control addressing modes are described be-
                             LD A,#05                                               low. Each description includes an example of a Jump in-
                                                                                    struction using a particular addressing mode, and the effect
                Reg/Data         Contents           Contents                        on the Program Counter bytes of executing that instruction.
                 Memory           Before               After
               Accumulator        XX Hex             05 Hex                         Jump Relative. In this 1-byte instruction, six bits of the
                                                                                    instruction opcode specify the distance of the jump from the
               Immediate Short. This is a special case of an immediate              current program memory location. The distance of the jump
               instruction. In the "Load B immediate" instruction, the 4-bit        can range from -31 to +32. A JP+1 instruction is not allowed.
               immediate value in the instruction is loaded into the lower          The programmer should use a NOP instead.
               nibble of the B register. The upper nibble of the B register is
               reset to 0000 binary.                                                Example: Jump Relative

               Example: Load B Register Immediate Short                                           JP 0A

                             LD B,#7                                                Reg          Contents  Contents
                                                                                                  Before      After
               Reg/Data          Contents           Contents                        PCU           02 Hex    02 Hex
               Memory             Before               After                        PCL           05 Hex    0F Hex
               B Pointer          12 Hex             07 Hex
                                                                                    Jump Absolute. In this 2-byte instruction, 12 bits of the
               Indirect from Program Memory. This is a special case of              instruction opcode specify the new contents of the Program
               an indirect instruction that allows access to data tables            Counter. The upper three bits of the Program Counter re-
               stored in program memory. In the "Load Accumulator Indi-             main unchanged, restricting the new Program Counter ad-
               rect" (LAID) instruction, the upper and lower bytes of the           dress to the same 4 kbyte address space as the current
               Program Counter (PCU and PCL) are used temporarily as a              instruction.
               pointer to program memory. For purposes of accessing pro-
               gram memory, the contents of the Accumulator and PCL are             (This restriction is relevant only in devices using more than
               exchanged. The data pointed to by the Program Counter is             one 4 kbyte program memory space.)
               loaded into the Accumulator, and simultaneously, the original
               contents of PCL are restored so that the program can re-             Example: Jump Absolute
               sume normal execution.
                                                                                                  JMP 0125
               Example: Load Accumulator Indirect
                                                                                    Reg          Contents  Contents
                             LAID                                                                 Before      After
                                                                                    PCU           0C Hex    01 Hex
                                                                                    PCL           77 Hex    25 Hex

                    Reg/Data     Contents           Contents                        Jump Absolute Long. In this 3-byte instruction, 15 bits of
                    Memory        Before               After                        the instruction opcode specify the new contents of the Pro-
                                  04 Hex             04 Hex                         gram Counter.
                       PCU        35 Hex             36 Hex
                       PCL        1F Hex             25 Hex                         Example: Jump Absolute Long
                  Accumulator     25 Hex             25 Hex
               Memory Location                                                                    JMP 03625
                    041F Hex
                                                                                      Reg/       Contents  Contents
               14.3.2 Tranfer-of-Control Addressing Modes                           Memory        Before      After
                                                                                                  42 Hex    36 Hex
               Program instructions are usually executed in sequential or-            PCU         36 Hex    25 Hex
               der. However, Jump instructions can be used to change the              PCL
               normal execution sequence. Several transfer-of-control ad-
               dressing modes are available to specify jump addresses.              Jump Indirect. In this 1-byte instruction, the lower byte of
                                                                                    the jump address is obtained from a table stored in program
               A change in program flow requires a non-incremental                  memory, with the Accumulator serving as the low order byte
               change in the Program Counter contents. The Program                  of a pointer into program memory. For purposes of access-
               Counter consists of two bytes, designated the upper byte             ing program memory, the contents of the Accumulator are
               (PCU) and lower byte (PCL). The most significant bit of PCU          written to PCL (temporarily). The data pointed to by the
               is not used, leaving 15 bits to address the program memory.          Program Counter (PCH/PCL) is loaded into PCL, while PCH
                                                                                    remains unchanged.
               Different addressing modes are used to specify the new
               address for the Program Counter. The choice of addressing            Example: Jump Indirect
               mode depends primarily on the distance of the jump. Farther
               jumps sometimes require more instruction bytes in order to                         JID
               completely specify the new Program Counter contents.
                                                                                         Reg/    Contents  Contents
               The available transfer-of-control addressing modes are:                Memory      Before      After
                                                                                                  01 Hex    01 Hex
                Jump Relative                                                           PCU      C4 Hex    32 Hex
                                                                                         PCL      26 Hex    26 Hex
                Jump Absolute                                                      Accumulator
                                                                                      Memory
                Jump Absolute Long

               www.national.com                                                 48
14.0 Instruction Set (Continued)                                    14.4.3 Load and Exchange Instructions                                           COP8SG Family
                                                                    The load and exchange instructions write byte values in
   Reg/   Contents  Contents                                        registers or memory. The addressing mode determines the
Memory     Before      After                                        source of the data.
Location   32 Hex    32 Hex
0126 Hex                                                               Load (LD)
                                                                       Load Accumulator Indirect (LAID)
The VIS instruction is a special case of the Indirect Transfer         Exchange (X)
of Control addressing mode, where the double-byte vector
associated with the interrupt is transferred from adjacent          14.4.4 Logical Instructions
addresses in program memory into the Program Counter in             The logical instructions perform the operations AND, OR,
order to jump to the associated interrupt service routine.          and XOR (Exclusive OR). Other logical operations can be
                                                                    performed by combining these basic operations. For ex-
14.4 INSTRUCTION TYPES                                              ample, complementing is accomplished by exclusiveORing
                                                                    the Accumulator with FF Hex.
The instruction set contains a wide variety of instructions.
The available instructions are listed below, organized into            Logical AND (AND)
related groups.                                                        Logical OR (OR)
                                                                       Exclusive OR (XOR)
Some instructions test a condition and skip the next instruc-
tion if the condition is not true. Skipped instructions are         14.4.5 Accumulator Bit Manipulation Instructions
executed as no-operation (NOP) instructions.                        The Accumulator bit manipulation instructions allow the user
                                                                    to shift the Accumulator bits and to swap its two nibbles.
14.4.1 Arithmetic Instructions
The arithmetic instructions perform binary arithmetic such as          Rotate Right Through Carry (RRC)
addition and subtraction, with or without the Carry bit.               Rotate Left Through Carry (RLC)
                                                                       Swap Nibbles of Accumulator (SWAP)
   Add (ADD)
   Add with Carry (ADC)                                             14.4.6 Stack Control Instructions
   Subtract (SUB)                                                      Push Data onto Stack (PUSH)
   Subtract with Carry (SUBC)                                          Pop Data off of Stack (POP)
   Increment (INC)
   Decrement (DEC)                                                  14.4.7 Memory Bit Manipulation Instructions
   Decimal Correct (DCOR)                                              The memory bit manipulation instructions allow the user to
   Clear Accumulator (CLR)
   Set Carry (SC)                                                   set and reset individual bits in memory.
   Reset Carry (RC)                                                    Set Bit (SBIT)
                                                                       Reset Bit (RBIT)
14.4.2 Transfer-of-Control Instructions                                Reset Pending Bit (RPND)
The transfer-of-control instructions change the usual se-
quential program flow by altering the contents of the Pro-          14.4.8 Conditional Instructions
gram Counter. The Jump to Subroutine instructions save the          The conditional instruction test a condition. If the condition is
Program Counter contents on the stack before jumping; the           true, the next instruction is executed in the normal manner; if
Return instructions pop the top of the stack back into the          the condition is false, the next instruction is skipped.
Program Counter.
                                                                       If Equal (IFEQ)
   Jump Relative (JP)                                                  If Not Equal (IFNE)
   Jump Absolute (JMP)                                                 If Greater Than (IFGT)
   Jump Absolute Long (JMPL)                                           If Carry (IFC)
   Jump Indirect (JID)                                                 If Not Carry (IFNC)
   Jump to Subroutine (JSR)                                            If Bit (IFBIT)
   Jump to Subroutine Long (JSRL)                                      If B Pointer Not Equal (IFBNE)
   Return from Subroutine (RET)                                        And Skip if Zero (ANDSZ)
   Return from Subroutine and Skip (RETSK)                             Decrement Register and Skip if Zero (DRSZ)
   Return from Interrupt (RETI)
   Software Trap Interrupt (INTR)                                   14.4.9 No-Operation Instruction
   Vector Interrupt Select (VIS)                                    The no-operation instruction does nothing, except to occupy
                                                                    space in the program memory and time in execution.

                                                                       No-Operation (NOP)

                                                                    Note: The VIS is a special case of the Indirect Transfer of Control addressing
                                                                            mode, where the double byte vector associated with the interrupt is
                                                                            transferred from adjacent addresses in the program memory into the
                                                                            program counter (PC) in order to jump to the associated interrupt
                                                                            service routine.

                                                                49  www.national.com
COP8SG Family  14.0 Instruction Set (Continued)                                                       Registers
                                                                                       Interrupt Vector Upper Byte
               14.5 REGISTER AND SYMBOL DEFINITION                               VU    Interrupt Vector Lower Byte
                                                                                 VL
               The following abbreviations represent the nomenclature                                  Symbols
               used in the instruction description and the COP8                  [B]   Memory Indirectly Addressed by B Register
               cross-assembler.                                                  [X]   Memory Indirectly Addressed by X Register
                                                                                 MD    Direct Addressed Memory
                                           Registers                             Mem   Direct Addressed Memory or [B]
                                                                                 Meml  Direct Addressed Memory or [B] or
               A                 8-Bit Accumulator Register                            Immediate Data
                                                                                 Imm   8-Bit Immediate Data
               B                 8-Bit Address Register                          Reg   Register Memory: Addresses F0 to FF
                                                                                       (Includes B, X and SP)
               X                 8-Bit Address Register                          Bit   Bit Number (0 to 7)
                                                                                       Loaded with
               SP                8-Bit Stack Pointer Register                          Exchanged with

               PC                15-Bit Program Counter Register

               PU                Upper 7 Bits of PC

               PL                Lower 8 Bits of PC

               C                 1 Bit of PSW Register for Carry

               HC                1 Bit of PSW Register for Half Carry

               GIE               1 Bit of PSW Register for Global Interrupt

                                 Enable

               14.6 INSTRUCTION SET SUMMARY

               ADD               A,Meml    ADD                                   AA + Meml
               ADC               A,Meml    ADD with Carry                        AA + Meml + C, CCarry,
                                                                                 HCHalf Carry
               SUBC A,Meml                 Subtract with Carry                   AA - MemI + C, CCarry,
                                                                                 HCHalf Carry
               AND               A,Meml    Logical AND                           AA and Meml
               ANDSZ             A,Imm     Logical AND Immed., Skip if Zero      Skip next if (A and Imm) = 0
               OR                A,Meml    Logical OR                            AA or Meml
               XOR               A,Meml    Logical EXclusive OR                  AA xor Meml
               IFEQ              MD,Imm    IF EQual                              Compare MD and Imm, Do next if MD = Imm
               IFEQ              A,Meml    IF EQual                              Compare A and Meml, Do next if A = Meml
               IFNE              A,Meml    IF Not Equal                          Compare A and Meml, Do next if A  Meml
               IFGT              A,Meml    IF Greater Than
               IFBNE             #         If B Not Equal                        Compare A and Meml, Do next if A > Meml
               DRSZ              Reg       Decrement Reg., Skip if Zero
               SBIT              #,Mem     Set BIT                               Do next if lower 4 bits of B  Imm
               RBIT              #,Mem     Reset BIT                             RegReg - 1, Skip if Reg = 0
               IFBIT             #,Mem     IF BIT                                1 to bit, Mem (bit = 0 to 7 immediate)
               RPND                        Reset PeNDing Flag                    0 to bit, Mem
               X                 A,Mem     EXchange A with Memory                If bit #, A or Mem is true do next instruction
               X                 A,[X]     EXchange A with Memory [X]            Reset Software Interrupt Pending Flag
               LD                A,Meml    LoaD A with Memory                    AMem
               LD                A,[X]     LoaD A with Memory [X]                A[X]
               LD                B,Imm     LoaD B with Immed.                    AMeml
               LD                Mem,Imm   LoaD Memory Immed.                    A[X]
               LD                Reg,Imm   LoaD Register Memory Immed.           BImm
               X                 A, [B ]  EXchange A with Memory [B]            MemImm
               X                 A, [X ]  EXchange A with Memory [X]            RegImm
               LD                A, [B]   LoaD A with Memory [B]                A[B], (BB 1)
               LD                A, [X]   LoaD A with Memory [X]                A[X], (XX 1)
               LD                [B],Imm  LoaD Memory [B] Immed.                A[B], (BB 1)
               CLR               A         CLeaR A                               A[X], (XX1)
                                                                                 [B]Imm, (BB1)
                                                                                 A0

               www.national.com                                              50
14.0 Instruction Set (Continued)                                                                 COP8SG Family

INC    A      INCrement A                              AA + 1
DEC    A      DECrement A                              AA - 1
LAID          Load A InDirect from ROM                 AROM (PU,A)
DCOR   A      Decimal CORrect A                        ABCD correction of A (follows ADC, SUBC)
RRC    A      Rotate A Right thru C                    CA7...A0C
RLC    A      Rotate A Left thru C                     CA7...A0C, HCA0
SWAP   A      SWAP nibbles of A                        A7...A4A3...A0
SC            Set C                                    C1, HC1
RC     A      Reset C                                  C0, HC0
IFC    A      IF C                                     IF C is true, do next instruction
IFNC          IF Not C                                 If C is not true, do next instruction
POP    Addr.  POP the stack into A                     SPSP + 1, A[SP]
PUSH   Addr.  PUSH A onto the stack                    [SP]A, SPSP - 1
VIS    Disp.  Vector to Interrupt Service Routine      PU[VU], PL[VL]
JMPL   Addr.  Jump absolute Long                       PCii (ii = 15 bits, 0 to 32k)
JMP    Addr.  Jump absolute                            PC9...0i (i = 12 bits)
JP            Jump relative short                      PCPC + r (r is -31 to +32, except 1)
JSRL          Jump SubRoutine Long                     [SP]PL, [SP-1]PU,SP-2, PCii
JSR           Jump SubRoutine                          [SP]PL, [SP-1]PU,SP-2, PC9...0i
JID           Jump InDirect                            PLROM (PU,A)
RET           RETurn from subroutine                   SP + 2, PL[SP], PU[SP-1]
RETSK         RETurn and SKip                          SP + 2, PL[SP],PU[SP-1],
                                                       skip next instruction
RETI          RETurn from Interrupt                    SP + 2, PL [SP],PU[SP-1],GIE1
INTR          Generate an Interrupt                    [SP]PL, [SP-1]PU, SP-2, PC0FF
NOP           No OPeration                             PCPC + 1

                                                   51  www.national.com
COP8SG Family  14.0 Instruction Set (Continued)                                         Instructions Using A & C

               14.7 INSTRUCTION EXECUTION TIME                                                    CLRA                    1/1

               Most instructions are single byte (with immediate addressing                       INCA                    1/1
               mode instructions taking two bytes).
                                                                                                  DECA                    1/1
               Most single byte instructions take one cycle time to execute.
                                                                                                  LAID                    1/3
               Skipped instructions require x number of cycles to be
               skipped, where x equals the number of bytes in the skipped                         DCORA                   1/1
               instruction opcode.
                                                                                                  RRCA                    1/1
               See the BYTES and CYCLES per INSTRUCTION table for
               details.                                                                           RLCA                    1/1

               Bytes and Cycles per Instruction                                                   SWAPA                   1/1

               The following table shows the number of bytes and cycles for                       SC                      1/1
               each instruction in the format of byte/cycle.
                                                                                                  RC                      1/1
               Arithmetic and Logic Instructions
                                                                                                  IFC                     1/1

                                                                                                  IFNC                    1/1

                                 [B]   Direct      Immed.                                         PUSHA                   1/3

               ADD               1/1   3/4         2/2                                            POPA                    1/3
               ADC
               SUBC              1/1   3/4         2/2                                            ANDSZ                   2/2
               AND
               OR                1/1   3/4         2/2                                  Transfer of Control Instructions
               XOR
               IFEQ              1/1   3/4         2/2                                            JMPL                    3/4
               IFGT
               IFBNE             1/1   3/4         2/2                                            JMP                     2/3
               DRSZ
               SBIT              1/1   3/4         2/2                                            JP                      1/3
               RBIT
               IFBIT             1/1   3/4         2/2                                            JSRL                    3/5

                                 1/1   3/4         2/2                                            JSR                     2/5

                                 1/1                                                              JID                     1/3

                                       1/3                                                        VIS                     1/5

                                 1/1   3/4                                                        RET                     1/5

                                 1/1   3/4                                                        RETSK                   1/5

                                 1/1   3/4                                                        RETI                    1/5

                                 RPND  1/1                                                        INTR                    1/7

                                                                                                  NOP                     1/1

                                                                                        Memory Transfer Instructions

                                         Register  Direct Immed.                        Register Indirect
                                         Indirect
                                       [B] [X]                                          Auto Incr. & Decr.
                                       1/1 1/3
                                       1/1 1/3                                          [B+, B-]       [X+, X-]

                      X A, (Note 18)   2/2                                    2/3       1/2             1/3
                      LD A, (Note 18)
                      LD B, Imm                                               2/3  2/2  1/2             1/3
                      LD B, Imm
                      LD Mem, Imm                                                  1/1                                    (If B < 16)
                      LD Reg, Imm                                                                                         (If B > 15)
                      IFEQ MD, Imm                                                 2/2

                                                                              3/3       2/2

                                                                              2/3

                                                                              3/3

               Note 18: = > Memory location addressed by B or X or directly.

               www.national.com                                                    52
                  14.0 Instruction Set (Continued)

                                                                                  14.8 OPCODE TABLE

                                                                                                       Upper Nibble

                     F    E  D                        C    B      A      9        8                    7      6      5      4        3    2                                              1  0
                  JP-15
                  JP-14   JP-31 LD 0F0, #i DRSZ 0F0 RRCA RC ADC ADC IFBIT ANDSZ LD IFBNE 0                                           JSR  JMP                                            JP+17 INTR 0
                  JP-13
                  JP-12                                                  A,#i A,[B] 0,[B] A, #i B,#0F                                x000x0FF x000x0FF
                  JP-11
                  JP-10   JP-30 LD 0F1, #i DRSZ 0F1 *             SC SUBC SUBC IFBIT                          *      LD IFBNE 1      JSR  JMP                                            JP+18 JP+2 1
                   JP-9
                   JP-8                                                  A, #i A,[B] 1,[B]                           B,#0E           x100x1FF x100x1FF
                   JP-7
                   JP-6   JP-29 LD 0F2, #i DRSZ 0F2 X A,[X+] X           IFEQ IFEQ IFBIT                      *      LD IFBNE 2      JSR  JMP                                            JP+19 JP+3 2
                   JP-5
                   JP-4                                           A,[B+] A,#i A,[B] 2,[B]                            B,#0D           x200x2FF x200x2FF
                   JP-3
                   JP-2   JP-28 LD 0F3, #i DRSZ 0F3 X A,[X-] X           IFGT IFGT IFBIT                      *      LD IFBNE 3      JSR  JMP                                            JP+20 JP+4 3
                   JP-1
                   JP-0                                           A,[B-] A,#i A,[B] 3,[B]                            B,#0C           x300x3FF x300x3FF

                  Where,  JP-27 LD 0F4, #i DRSZ 0F4 VIS LAID ADD ADD IFBIT CLRA                                      LD     IFBNE 4  JSR  JMP                                            JP+21 JP+5 4

                                                                         A,#i A,[B] 4,[B]                            B,#0B           x400x4FF x400x4FF

                          JP-26 LD 0F5, #i DRSZ 0F5 RPND JID AND AND IFBIT SWAPA LD IFBNE 5                                          JSR  JMP                                            JP+22 JP+6 5

                                                                         A,#i A,[B] 5,[B]                            B,#0A           x500x5FF x500x5FF

                          JP-25 LD 0F6, #i DRSZ 0F6 X A,[X] X            XOR XOR IFBIT DCORA LD IFBNE 6                              JSR  JMP                                            JP+23 JP+7 6

                                                                  A,[B] A,#i A,[B] 6,[B]                             B,#09           x600x6FF x600x6FF

53                        JP-24 LD 0F7, #i DRSZ 0F7 *             * OR A,#i OR A,[B] IFBIT PUSHA LD IFBNE 7                          JSR  JMP                                            JP+24 JP+8 7

                                                                                                       7,[B]         B,#08           x700x7FF x700x7FF                                                Lower Nibble

                          JP-23 LD 0F8, #i DRSZ 0F8 NOP RLCA LD A,#i IFC SBIT RBIT                                   LD IFBNE 8      JSR  JMP                                            JP+25 JP+9 8

                                                                                                       0,[B] 0,[B] B,#07             x800x8FF x800x8FF

                          JP-22 LD 0F9, #i DRSZ 0F9 IFNE IFEQ IFNE IFNC SBIT RBIT                                    LD IFBNE 9      JSR  JMP                                            JP+26 JP+10 9

                                                           A,[B] Md,#i A,#i                            1,[B] 1,[B] B,#06             x900x9FF x900x9FF

                          JP-21 LD 0FA, #i DRSZ 0FA LD            LD     LD       INCA SBIT RBIT                     LD IFBNE 0A     JSR  JMP                                            JP+27 JP+11 A

                                                           A,[X+] A,[B+] [B+],#i                       2,[B] 2,[B] B,#05             xA00xAFF xA00xAFF

                          JP-20 LD 0FB, #i DRSZ            LD     LD     LD DECA SBIT RBIT                           LD IFBNE 0B     JSR  JMP                                            JP+28 JP+12 B

                                                      0FB  A,[X-] A,[B-] [B-],#i                       3,[B] 3,[B] B,#04             xB00xBFF xB00xBFF

                          JP-19 LD 0FC, #i DRSZ            LD JMPL X A,Md POPA SBIT RBIT                             LD IFBNE 0C     JSR  JMP                                            JP+29 JP+13 C

                                                      0FC  Md,#i                                       4,[B] 4,[B] B,#03             xC00xCFF xC00xCFF

                          JP-18 LD 0FD, #i DRSZ            DIR JSRL LD A,Md RETSK SBIT RBIT                          LD IFBNE 0D     JSR  JMP                                            JP+30 JP+14 D

                                                      0FD                                              5,[B] 5,[B] B,#02             xD00xDFF xD00xDFF

                          JP-17 LD 0FE, #i DRSZ LD A,[X] LD LD [B],#i RET SBIT RBIT                                  LD IFBNE 0E     JSR  JMP                                            JP+31 JP+15 E

www.national.com                                      0FE         A,[B]                                6,[B] 6,[B] B,#01             xE00xEFF xE00xEFF

                          JP-16 LD 0FF, #i DRSZ 0FF *             * LD B,#i RETI SBIT RBIT                           LD IFBNE 0F     JSR  JMP                                            JP+32 JP+16 F

                                                                                                       7,[B] 7,[B] B,#00             xF00xFFF xF00xFFF

                             i is the immediate data       Md is a directly addressed memory location         * is an unused opcode The opcode 60 Hex is also the opcode for IFBIT #i,A

                                                                                                                                                                                            COP8SG Family
COP8SG Family

               www.national.com  54
15.0 Mask Options                                                    EWCOP8, EWCOP8-M, EWCOP8-BL: IAR - ANSI                        COP8SG Family
                                                                        C-Compiler and Embedded Workbench. (M version in-
See Section 5.5 ECON (CONFIGURATION) REGISTER.                          cludes MetaLink debugger support) (BL version: 4k code
                                                                        limit; no FP). A fully integrated Win32 IDE, ANSI
16.0 COP8 Tools Overview                                                C-Compiler, macro assembler, editor, linker, librarian,
                                                                        and C-Spy high-level simulator/debugger.
National is engaged with an international community of in-
dependent 3rd party vendors who provide hardware and                COP8 Development Productivity Tools
software development tool support. Through National's inter-
action and guidance, these tools cooperate to form a choice          DriveWay-COP8: Aisys Corporation - COP8 Peripherals
of tools that fits each developer's needs.                              Code Generation tool. Automatically generates tested
                                                                        and documented C or Assembly source code modules
This section provides a summary of the tool and develop-                containing I/O drivers and interrupt handlers for each
ment kits currently available. Up-to-date information, selec-           on-chip peripheral. Application specific code can be in-
tion guides, free tools, demos, updates, and purchase infor-            serted for customization using the integrated editor.
mation can be obtained at our web site at:
www.national.com/cop8.                                              COP8-UTILS: COP8 assembly code examples, device
                                                                        drivers, and utilities to speed up code development. (In-
16.1 SUMMARY OF TOOLS                                                   cluded with COP8-NSDEV and COP8-NSEVAL.)

COP8 Evaluation Software and Reference Designs                      COP8 Hardware Debug Tools

COP8NSEVAL: Software Evaluation package for Win-                  COP8-EM-xx: Metalink COP8 Emulation Module for
    dows. A fully integrated evaluation environment for                 OTP/ROM COP8 Families. Windows based development
    COP8. Includes WCOP8 IDE evaluation version (Inte-                  and real-time in-circuit emulation tool, with 100 frame
    grated Development Environment), COP8-NSASM (Full                   trace, 32k s/w breaks, Enhanced User Interface, Met-
    COP8 Assembler), COP8-MLSIM (COP8 Instruction                       aLink Debugger. Includes COP8-NSDEV, power supply,
    Level Simulator), COP8C Compiler Demo, DriveWayTM                   DIP emulation cables.
    COP8 Device-Driver-Builder Demo, Manuals, Applica-
    tions Software, and other COP8 technical information.            COP8-DM-xx: Metalink COP8 Debug Module for
                                                                        OTP/ROM COP8 Families. Windows based development
COP8REF-xx: Reference Designs for COP8 Families.                     and real-time in-circuit emulation tool, with 100 frame
    Realtime hardware environment with a variety of func-               trace, 32k s/w breaks, Basic User Interface, MetaLink
    tions for demonstrating the various capabilities and fea-           Debugger, and COP8 OTP Programmer with sockets.
    tures of specific COP8 device families. Run Win 95 demo             Includes COP8-NSDEV, power supply, DIP and/or SMD
    reference software and exercise specific device capabili-           emulation cables and adapters.
    ties.
                                                                     COP8-IM: MetaLink iceMASTER for OTP/ROM COP8
COP8 Starter Kits and Hardware Target Solutions                         devices. Windows based, full featured real-time in-circuit
                                                                        emulator, with 4k trace, 32k s/w breaks, and MetaLink
COP8-EVAL-xxx: A variety of Multifunction Evaluation,                 Windows Debugger. Includes COP8-NSDEV and power
    Design Test, and Target Boards for COP8 Families. Re-               supply. Package-specific probes and surface mount
    altime target design environments with a selection of               adaptors are ordered separately. (Add COP8-PM and
    peripherals and features including multi I/O, LCD display,          adapters for OTP programming.)
    keyboard, A/D, D/A, EEPROM, USART, LEDs, and
    bread-board area. Quickly design, test, and implement a         COP8 Development and OTP Programming Tools
    custom target system (some target boards are stand-
    alone, and ready for mounting into a standard enclosure),       COP8-PM: COP8 Development Programming Module.
    or just evaluate and test your code.                                Windows programming tool for COP8 OTP/Flash Fami-
                                                                        lies. Includes 40 DIP programming socket, control soft-
COP8 Software Development Languages and Integrated                      ware, RS232 cable, and power supply. (Programming
Environments                                                            adapters are extra.)

COP8-NSDEV: National's COP8 Software Development                   Development: Metalink's Debug Module includes devel-
    package for Windows on CD. A fully Integrated Develop-              opment device programming capability for COP8 de-
    ment Environment for COP8. Includes a fully licensed                vices. Many other third-party programmers are approved
    WCOP8 IDE, COP8-NSASM. Plus Manuals, Applications                   for development and engineering use.
    Software, and other COP8 technical information.
                                                                     Production: Third-party programmers and automatic
COP8C: ByteCraft - C Cross-Compiler and Code Devel-                   handling equipment cover needs from engineering proto-
    opment System. Includes BCLIDE (Integrated Develop-                 type and pilot production, to full production environments.
    ment Environment) for Win32, editor, optimizing C Cross-
    Compiler, macro cross assembler, BC-Linker, and                  Factory Programming: Factory programming available
    MetaLinktools support. (DOS/SUN versions available.                 for high-volume requirements.

                                                                55  www.national.com
COP8SG Family  16.0 COP8 Tools Overview (Continued)

               16.2 TOOLS ORDERING NUMBERS FOR THE COP8SGx FAMILY DEVICES
               The COP8-IM/400 ICE can be used for emulation with the limitation of 10 MHz emulation speed maximum. For full speed
               COP8SGx emulation, use the 15 MHz COP8-DM-SG or COP8-EM-SG.
               Note: The following order numbers apply to the COP8 devices in this datasheet only.

               Vendor            Tools                 Order Number    Cost                            Notes

                                 COP8-NSEVAL COP8-NSEVAL               VL Order from web site.

                                 COP8-REF       COP8-REF-SG            VL Order from web site

                                 COP8-EVAL      COP8-EVAL-COB1         VL Order from web site

                                 COP8-NSDEV     COP8-NSDEV             VL Included in EM. Order CD from web site

                                 COP8-EM        COP8-EM-SG             M Included p/s, 28/40 pin DIP target cable, manuals,

                                                                             software

                                 EM Target Cables COP8-EMC-44P         VL 44 PLCC Target Cable

                                 and Converters COP8-EMC-28CSP         L     28 CSP Target Cable

                                                COP8-EMA-xxSO          L     DIP to SOIC Cable Converter

                                                COP8-EMA-44QFP         L     44 pin PLCC to 44 QFP Cable Converter

                                 Development    COP8SGR7, COP8SGE7 VL 32k or 8k Eraseable/OTP devices

                                 Devices

                                 COP8-PM        COP8-PM-00             L     Included p/s, manuals, software, 16/20/28/40 DIP/SO

                                                                             and 44 PLCC programming socket; add OTP adapter

                                                                             or target adapter (if needed)

                                 OTP Programming COP8-PGMA-44QFP       L     For programming 44 QFP on any programmer

                                 Adapters       COP8-PGMA-28CSP        L     For programming 28 CSP on any programmer

                                                COP8-PGMA-44CSP        L     For programming 44 CSP on any programmer

                                                COP8-PGMA-28SO         VL For programming 16/20/28 SOIC on any programmer

               MetaLink COP8-DM                 DM5-KCOP8-SG           M Included p/s (PS-10), target cables (DIP and PLCC),

                                                                             16/20/28/40 DIP/SO and 44 PLCC programming

                                                                             sockets. Add OTP adapter (if needed) and target

                                                                             adapter (if needed)

                                 DM Target      MHW-CNVxx (xx = 33, 34 L     DM target converters for

                                 Adapters       etc.)                        16DIP/20SO/28SO/44QFP/28CSP; (i.e. MHW-CNV38

                                                                             for 20 pin DIP to SO package converter)

                                 OTP Programming MHW-COP8-PGMA-DS L          For programming 16/20/28 SOIC and 44 PLCC on the

                                 Adapters                                    EPU

                                                MHW-COP8-PGMA-44QFP L        For programming 44 QFP on any programmer

                                                MHW-COP8-PGMA-28CSP L        For programming 28 CSP on any programmer

                                 COP8-IM        IM-COP8-AD-464 (-220) H Base unit 10 MHz; -220 = 220V; add probe card

                                                (10 MHz maximum)             (required) and target adapter (if needed); included

                                                                             software and manuals

                                 IM Probe Card  PC-COP8SG44PW-AD-10 M 10 MHz 44 PLCC probe card; 2.5V to 6.0V

                                                PC-COP8SG40DW-AD-10 M 10 MHz 40 DIP probe card; 2.5V to 6.0V

                                 IM Probe Target MHW-SOICxx (xx = 16, 20, L  16 or 20 or 28 pin SOIC adapter for probe card

                                 Adapters       28)

                                                MHW-CONV33             L     44 pin QFP adapter for 44 PLCC probe card

               KKD WCOP8-IDE                    WCOP8-IDE              VL Included in DM and EM

               IAR EWCOP8-xx                    See summary above      L - H Included all software and manuals

               Byte COP8C                       COP8C COP8CWIN         M Included all software and manuals

               Craft

               Aisys DriveWay COP8 DriveWay COP8                       L     Included all software and manuals

               OTP Programmers                  Go to:                 L - H A wide variety world-wide
                                                www.national.com/cop8

               Cost: Free; VL =< $100; L = $100 - $300; M = $300 - $1k; H = $1k - $3k; VH = $3k - $5k

               www.national.com                                        56
16.0 COP8 Tools Overview (Continued)                                                                                                  COP8SG Family

16.3 WHERE TO GET TOOLS

Tools can be ordered directly from National, National's e-store, a National Distributor, or from the tool vendor. Go to the vendor's
web site for current listings of distributors.

         Vendor                   Home Office                Electronic Sites        Other Main Offices
Byte Craft Limited  421 King Street North        www.bytecraft.com             Distributors Worldwide
                    Waterloo, Ontario            info@bytecraft.com
IAR Systems AB      Canada N2J 4E4                                             USA:: San Francisco
                    Tel: 1-(519) 888-6911        www.iar.se                    Tel: +1-415-765-5500
                    Fax: (519) 746-6751          info@iar.se                   Fax: +1-415-765-5503
                    PO Box 23051                 info@iar.com                  UK: London
                    S-750 23 Uppsala             info@iarsys.co.uk             Tel: +44 171 924 33 34
                    Sweden                       info@iar.de                   Fax: +44 171 924 53 41
                    Tel: +46 18 16 78 00                                       Germany: Munich
                    Fax +46 18 16 78 38                                        Tel: +49 89 470 6022
                                                                               Fax: +49 89 470 956
KANDA Systems       Unit 17 -18                  www.kanda.com                 USA:
LTD.                Glanyrafon Enterprise Park,  support@kanda.com             Tel: 800-331-7766
                    Aberystwyth, Ceredigion,     usasupport@kanda.com          Fax: 303-456-2404
K and K             SY23 3JQ, UK
Development ApS     Kaergaardsvej 42 DK-8355     www.kkd.dk kkd@kkd.dk         Europe:
                    Solbjerg Denmark Fax:                                      Tel: 49(0) 180 530 8585
National            +45-8692-8500                www.national.com/cop8         Fax: 49(0) 180 530 8586
Semiconductor       2900 Semiconductor Dr.       support@nsc.com               Hong Kong:
                    Santa Clara, CA 95051        europe.support@nsc.com        Distributors Worldwide
                    USA
                    Tel: 1-800-272-9959
                    Fax: 1-800-737-7018

The following companies have approved COP8 programmers in a variety of configurations. Contact your vendor's local office or
distributor and request a COP8FLASH update. You can link to their web sites and get the latest listing of approved programmers
at: www.national.com/cop8.

Advantech; American Reliance; BP Microsystems; Data I/O; Dataman; EE Tools, Hi-Lo Systems; ICE Technology; KANDA, Lloyd
Research; Logical Devices; Minato; MQP; Needhams; Phyton; SMS(Data I/O); Stag Programmers; System General; and Tribal
Microsystems.

17.0 REVISION HISTORY

Date                Section                                                   Summary of Changes
                                         Added spec. for comparator enable time.
October 2001 Electrical Characteristics  Changed comparator response time to 600 ns.
                                         Added note regarding comparator enable time.
      Comparators

                                                 57                                               www.national.com
COP8SG Family  Physical Dimensions inches (millimeters) unless otherwise noted

                                      Chip Scale Package CSP
                                 Order Number COP8SGR7HLQ8

                                  NS Package Number LQA44A

               www.national.com  Molded SO Wide Body Package (WM)
                                     Order Number COP8SGx528Mx,
                                        NS Package Number M28B

                                                               58
Physical Dimensions inches (millimeters) unless otherwise noted (Continued)                                     COP8SG Family

                                                             Molded Dual-In-Line Package (N)
                                                               Order Number COP8SGx728Nx

                                                                  NS Package Number N28B

Molded Dual-In-Line Package (N)                                                               www.national.com
Order Number COP8SGx540Nx

    NS Package Number N40A

                          59
COP8SG Family  Physical Dimensions inches (millimeters) unless otherwise noted (Continued)

                                 44-Lead EPROM Leaded Chip Carrier (EL)
                                        Order Number COP8SGR744J3
                                           NS Package Number EL44C

               www.national.com  60
Physical Dimensions inches (millimeters) unless otherwise noted (Continued)                                     COP8SG Family

                                                             Molded Dual-In-Line Package (N)
                                                               Order Number COP8SGx544Vx

                                                                  NS Package Number V44A

61                                                                                            www.national.com
COP8SG Family, 8-Bit CMOS ROM Based and OTP Microcontrollers with 8k to 32k Memory, Two  Physical Dimensions inches (millimeters) unless otherwise noted (Continued)
   Comparators and USART
                                                                                                                           Plastic Quad Flat Package (VEJ)
                                                                                                                           Order Number COP8SGx544VEJx

                                                                                                                              NS Package Number VEJ44A

                                                                                         LIFE SUPPORT POLICY

                                                                                         NATIONAL'S PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE SUPPORT
                                                                                         DEVICES OR SYSTEMS WITHOUT THE EXPRESS WRITTEN APPROVAL OF THE PRESIDENT AND GENERAL
                                                                                         COUNSEL OF NATIONAL SEMICONDUCTOR CORPORATION. As used herein:

                                                                                         1. Life support devices or systems are devices or                         2. A critical component is any component of a life
                                                                                             systems which, (a) are intended for surgical implant                      support device or system whose failure to perform
                                                                                             into the body, or (b) support or sustain life, and                        can be reasonably expected to cause the failure of
                                                                                             whose failure to perform when properly used in                            the life support device or system, or to affect its
                                                                                             accordance with instructions for use provided in the                      safety or effectiveness.
                                                                                             labeling, can be reasonably expected to result in a
                                                                                             significant injury to the user.

                                                                                                   National Semiconductor  National Semiconductor                  National Semiconductor     National Semiconductor
                                                                                                   Corporation             Europe                                  Asia Pacific Customer      Japan Ltd.
                                                                                                   Americas                                                        Response Group             Tel: 81-3-5639-7560
                                                                                                   Email: support@nsc.com             Fax: +49 (0) 180-530 85 86   Tel: 65-2544466            Fax: 81-3-5639-7507
                                                                                                                                    Email: europe.support@nsc.com  Fax: 65-2504466
                                                                                         www.national.com                  Deutsch Tel: +49 (0) 69 9508 6208       Email: ap.support@nsc.com
                                                                                                                           English Tel: +44 (0) 870 24 0 2171
                                                                                                                           Franais Tel: +33 (0) 1 41 91 8790

                                                                                         National does not assume any responsibility for use of any circuitry described, no circuit patent licenses are implied and National reserves the right at any time without notice to change said circuitry and specifications.
This datasheet has been downloaded from:
             www.EEworld.com.cn

                 Free Download
           Daily Updated Database
      100% Free Datasheet Search Site
  100% Free IC Replacement Search Site
     Convenient Electronic Dictionary

               Fast Search System
             www.EEworld.com.cn

                                                 All Datasheets Cannot Be Modified Without Permission
                                                                Copyright Each Manufacturing Company
压力传感器的原理与组成
压力传感器是检测压力,并将压力信号转换为电信号并成线性输出的装置。压力传感器可分为机械压力传感器和气压(液压)传感器。 机械压力传感器也就是测力传感器,单位通常为N、KN、KGf等等。 沧正机械压力传感器为电阻应变片式,主要由弹性体、电阻应变片、测量电路和传输电缆4部分组成。 应变片式压力传感器测量原理:当压力传感器弹性体在外力的作用下产生形变,附着于弹性体上的电阻应变片随即弯曲,电阻应变片阻值发生变化,再经测量电路将阻值变化转换为电信号(一般为毫伏信号)。 弹性体:弹性体即压力传感器外...
cazsensor 工控电子
关于TMS320DM6437视频采集DMA到SDRAM存储问题
由于初次接触dm6437,发现由YUV422视频信号经CCDC传输到SDRAM中的Y,CB,CR数据好像不太对,用的video_preview示例, 采用的是DSP/BIOS进行任务管理,发现frame缓冲器里存的数据有问题,但视频能正常输出,肯定是自己理解错误了。 利用的是fvid_frame结构体,FVID_ALLOCBUF()后,经在线仿真缓冲区的Y地址为0x80000480,Cb,CR的地址都为0x800003E0,这 怎么可能?Cb,Cr的地址和Y...
suihong 嵌入式系统
如何修改WINCE4.2开机LOGO(急用,在线等)
如题,由于工作需要,刚接触这方面内容,完全新手。 请高手指教,最好有详细过程,先谢谢…… 补充个问题,我用platformbuilder4.2编译WINCE4.2的内核,输出的内核文件在800*480的屏上显示异常,只有最左边开始菜单那里显示了一条很窄的屏幕,其他地方是蓝色和黑色的,这个是跟我本来编译的BSP有关,还是可以再platformbuilder里设置的?如何修改WINCE4.2开机LOGO(急用,在线等)...
一无所知 WindowsCE
初学Windows驱动开发, 请推荐些资料和书籍, 谢谢!
初学Windows驱动开发,主要是做网络方面的,比如数据报的抓包、发包之类。 请推荐些资料和书籍,谢谢!初学Windows驱动开发,请推荐些资料和书籍,谢谢!...
mlbshymv 嵌入式系统
【工程源码】Quartus时序约束教程
http://bbs.eeworld.com.cn/forum.php?mod=attachment&aid=NDYxNDMxfDJjOGFmMWU5YmNhYmI4ZTAwODQ1NjUwZDY5MTI3Mjk0fDE1ODI4OTMyMzQ%3D&request=yes&_f=.rar 【工程源码】Quartus时序约束教程...
小梅哥 Altera SoC
CCS编译生成二进制文件方法
CCS默认生成的文件时coff格式的,默认.out文件即为该文件格式,如果想生成二进制文件,如下设置CCS。 1、工程-右键-showbuildsettings... 2、右侧Build,--左边Setps--buildsteps填入下列内容。 "${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin""${BuildArtifactFileName}""${BuildAr...
fish001 DSP 与 ARM 处理器

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 大学堂 TI培训 Datasheet 电子工程

器件索引   0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved