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

产品描述

搜索
 

PIC16LCR72T-20E/JW

器件型号:PIC16LCR72T-20E/JW
器件类别:半导体    嵌入式处理器和控制器   
厂商名称:Microchip
厂商官网:https://www.microchip.com
下载文档

器件描述

8-BIT, MROM, 20 MHz, RISC MICROCONTROLLER, PDSO28

8位, 掩膜只读存储器, 20 MHz, 精简指令集微控制器, PDSO28

参数
PIC16LCR72T-20E/JW外部数据总线宽度 0.0
PIC16LCR72T-20E/JW输入输出总线数量 22
PIC16LCR72T-20E/JW端子数量 28
PIC16LCR72T-20E/JW最小工作温度 -40 Cel
PIC16LCR72T-20E/JW最大工作温度 85 Cel
PIC16LCR72T-20E/JW线速度 20 MHz
PIC16LCR72T-20E/JW加工封装描述 0.300 INCH, PLASTIC, SO-28
PIC16LCR72T-20E/JWreach_compliant Yes
PIC16LCR72T-20E/JW欧盟RoHS规范 Yes
PIC16LCR72T-20E/JW中国RoHS规范 Yes
PIC16LCR72T-20E/JW状态 Active
PIC16LCR72T-20E/JWmicroprocessor_microcontroller_peripheral_ic_type MICROCONTROLLER, RISC
PIC16LCR72T-20E/JWADC通道 YES
PIC16LCR72T-20E/JW地址总线宽度 0.0
PIC16LCR72T-20E/JW位数 8
PIC16LCR72T-20E/JWclock_frequency_max 20 MHz
PIC16LCR72T-20E/JWcpu_family PIC
PIC16LCR72T-20E/JWDAC通道 NO
PIC16LCR72T-20E/JWDMA通道 NO
PIC16LCR72T-20E/JWjesd_30_code R-PDSO-G28
PIC16LCR72T-20E/JWjesd_609_code e3
PIC16LCR72T-20E/JWmoisture_sensitivity_level 1
PIC16LCR72T-20E/JW包装材料 PLASTIC/EPOXY
PIC16LCR72T-20E/JWpackage_code SOP
PIC16LCR72T-20E/JWpackage_equivalence_code SOP28,.4
PIC16LCR72T-20E/JW包装形状 RECTANGULAR
PIC16LCR72T-20E/JW包装尺寸 SMALL OUTLINE
PIC16LCR72T-20E/JWpeak_reflow_temperature__cel_ 260
PIC16LCR72T-20E/JWpower_supplies 5
PIC16LCR72T-20E/JWPWM通道 YES
PIC16LCR72T-20E/JWqualification_status COMMERCIAL
PIC16LCR72T-20E/JWram__bytes_ 128
PIC16LCR72T-20E/JWROM编程 MROM
PIC16LCR72T-20E/JWrom__words_ 2048
PIC16LCR72T-20E/JWseated_height_max 2.64 mm
PIC16LCR72T-20E/JWsub_category Microcontrollers
PIC16LCR72T-20E/JW最大供电电压 20 mA
PIC16LCR72T-20E/JW额定供电电压 5 V
PIC16LCR72T-20E/JW最小供电电压 4.5 V
PIC16LCR72T-20E/JW最大供电电压 5.5 V
PIC16LCR72T-20E/JW表面贴装 YES
PIC16LCR72T-20E/JW工艺 CMOS
PIC16LCR72T-20E/JW温度等级 INDUSTRIAL
PIC16LCR72T-20E/JW端子涂层 MATTE TIN
PIC16LCR72T-20E/JW端子形式 GULL WING
PIC16LCR72T-20E/JW端子间距 1.27 mm
PIC16LCR72T-20E/JW端子位置 DUAL
PIC16LCR72T-20E/JWtime_peak_reflow_temperature_max__s_ 40
PIC16LCR72T-20E/JWlength 17.89 mm
PIC16LCR72T-20E/JWwidth 7.51 mm

文档预览

PIC16LCR72T-20E/JW器件文档内容

M PIC16C72 SERIES

      8-Bit CMOS Microcontrollers with A/D Converter

Devices included:                                         Pin Diagrams

PIC16C72                                               SDIP, SOIC, SSOP,
PIC16CR72                                              Windowed Side Brazed Ceramic

Microcontroller Core Features:                                       MCLR/VPP       1  28     RB7
                                                                       RA0/AN0                 RB6
High-performance RISC CPU                                            RA1/AN1      2   27     RB5
Only 35 single word instructions to learn                            RA2/AN2                 RB4
All single cycle instructions except for program                                  3   26     RB3
                                                                RA3/AN3/VREF                   RB2
   branches which are two cycle                                      RA4/T0CKI      4   25     RB1
Operating speed: DC - 20 MHz clock input                                                     RB0/INT
                                                                   RA5/SS/AN4       5   24     VDD
                           DC - 200 ns instruction cycle                       VSS             VSS
2K x 14 words of Program Memory,                                                  6   23     RC7
                                                                  OSC1/CLKIN                   RC6
   128 x 8 bytes of Data Memory (RAM)                          OSC2/CLKOUT          7   22     RC5/SDO
Interrupt capability                                    RC0/T1OSO/T1CKI                      RC4/SDI/SDA
Eight level deep hardware stack                                                   8   21
Direct, indirect, and relative addressing modes                   RC1/T1OSI
Power-on Reset (POR)                                               RC2/CCP1       9   20
Power-up Timer (PWRT) and                                     RC3/SCK/SCL
                                                                                    10  19
   Oscillator Start-up Timer (OST)
Watchdog Timer (WDT) with its own on-chip RC                                      11  18

   oscillator for reliable operation                                                12  17
Programmable code-protection
Power saving SLEEP mode                                                           13  16
Selectable oscillator options
Low-power, high-speed CMOS technology                                             14  15
Fully static design
Wide operating voltage range:                                                      PIC16C72
                                                                                    PIC16CR72
   - 2.5V to 6.0V (PIC16C72)
   - 2.5V to 5.5V (PIC16CR72)                             Peripheral Features:
High Sink/Source Current 25/25 mA
Commercial, Industrial and Extended temperature          Timer0: 8-bit timer/counter with 8-bit prescaler
   ranges                                                 Timer1: 16-bit timer/counter with prescaler,
Low-power consumption:
   - < 2 mA @ 5V, 4 MHz                                      can be incremented during sleep via external
   - 15 A typical @ 3V, 32 kHz                              crystal/clock
   - < 1 A typical standby current                        Timer2: 8-bit timer/counter with 8-bit period
                                                             register, prescaler and postscaler
                                                          Capture, Compare, PWM (CCP) module
                                                             - Capture is 16-bit, max. resolution is 12.5 ns
                                                             - Compare is 16-bit, max. resolution is 200 ns
                                                             - PWM max. resolution is 10-bit
                                                          8-bit 5-channel analog-to-digital converter
                                                          Synchronous Serial Port (SSP) with
                                                             SPITM and I2CTM
                                                          Brown-out detection circuitry for
                                                             Brown-out Reset (BOR)

1998 Microchip Technology Inc.  Preliminary                                                  DS39016A-page 1
PIC16C72 Series

Table of Contents

1.0 Device Overview .......................................................................................................................................................................... 3
2.0 Memory Organization ................................................................................................................................................................... 5
3.0 I/O Ports ..................................................................................................................................................................................... 19
4.0 Timer0 Module ........................................................................................................................................................................... 25
5.0 Timer1 Module ........................................................................................................................................................................... 27
6.0 Timer2 Module ........................................................................................................................................................................... 31
7.0 Capture/Compare/PWM (CCP) Module ..................................................................................................................................... 33
8.0 Synchronous Serial Port (SSP) Module ..................................................................................................................................... 39
9.0 Analog-to-Digital Converter (A/D) Module.................................................................................................................................. 53
10.0 Special Features of the CPU...................................................................................................................................................... 59
11.0 Instruction Set Summary ............................................................................................................................................................ 73
12.0 Development Support................................................................................................................................................................. 75
13.0 Electrical Characteristics - PIC16C72 Series ............................................................................................................................. 77
14.0 DC and AC Characteristics Graphs and Tables - PIC16C72 ..................................................................................................... 97
15.0 DC and AC Characteristics Graphs and Tables - PIC16CR72 ................................................................................................ 107
16.0 Packaging Information.............................................................................................................................................................. 109
Appendix A: What's New in this Data Sheet .................................................................................................................................. 115
Appendix B: What's Changed in this Data Sheet........................................................................................................................... 115
Appendix C: Device Differences..................................................................................................................................................... 115
Index .................................................................................................................................................................................................. 117
On-Line Support................................................................................................................................................................................. 121
Reader Response .............................................................................................................................................................................. 122
PIC16C72 Series Product Identification System................................................................................................................................ 125
Sales and Support.............................................................................................................................................................................. 125

                              To Our Valued Customers

  We constantly strive to improve the quality of all our products and documentation. We have spent an exceptional
  amount of time to ensure that these documents are correct. However, we realize that we may have missed a few
  things. If you find any information that is missing or appears in error, please use the reader response form in the
  back of this data sheet to inform us. We appreciate your assistance in making this a better document.

                  Key Reference Manual Features            PIC16C72               PIC16CR72

Operating Frequency                              DC - 20MHz              DC - 20MHz
Resets                                           POR, PWRT, OST, BOR     POR, PWRT, OST, BOR
Program Memory - (14-bit words)                  2K (EPROM)              2K (ROM)
Data Memory - RAM (8-bit bytes)                  128                     128
Interrupts                                       8                       8
I/O Ports                                        PortA, PortB, PortC     PortA, PortB, PortC
Timers                                           Timer0, Timer1, Timer2  Timer0, Timer1, Timer2
Capture/Compare/PWM Modules                      1                       1
Serial Communications                            Basic SSP               SSP
8-Bit A/D Converter                              5 channels              5 channels
Instruction Set (No. of Instructions)            35                      35

DS39016A-page 2                                  Preliminary   1998 Microchip Technology Inc.
                                                                                                 PIC16C72 Series

1.0 DEVICE OVERVIEW                                            The program memory contains 2K words which trans-
                                                               late to 2048 instructions, since each 14-bit program
This document contains device-specific information for         memory word is the same width as each device instruc-
the operation of the PIC16C72 device. Additional infor-        tion. The data memory (RAM) contains 128 bytes.
mation may be found in the PICmicroTM Mid-Range
MCU Reference Manual (DS33023) which may be                    There are also 22 I/O pins that are user-configurable on
downloaded from the Microchip website. The Refer-              a pin-to-pin basis. Some pins are multiplexed with other
ence Manual should be considered a complementary               device functions. These functions include:
document to this data sheet, and is highly recom-
mended reading for a better understanding of the                External interrupt
device architecture and operation of the peripheral             Change on PORTB interrupt
modules.                                                       Timer0 clock input
                                                                Timer1 clock/oscillator
The PIC16C72 belongs to the Mid-Range family of the             Capture/Compare/PWM
PICmicro devices. A block diagram of the device is             A/D converter
shown in Figure 1-1.                                           SPI/I2C

                                                               Table 1-1 details the pinout of the device with descrip-
                                                               tions and details for each pin.

FIGURE 1-1: PIC16C72/CR72 BLOCK DIAGRAM

                                  13                         Data Bus         8                  PORTA
                                         Program Counter                                         PORTB
             EPROM/                                                                              PORTC
               ROM                8 Level Stack                RAM                                      RA0/AN0
                                      (13-bit)                  File                                    RA1/AN1
             Program                                         Registers                                  RA2/AN2
             Memory                                                                                     RA3/AN3/VREF
                                                              128 x 8                                   RA4/T0CKI
             2K x 14                                                                                    RA5/SS/AN4

Program      14                                   RAM Addr(1)            9                              RB0/INT
   Bus
                                                                                                        RB7:RB1
             Instruction reg                                 Addr MUX
                                                                                                        RC0/T1OSO/T1CKI
                                  Direct Addr 7                                Indirect                 RC1/T1OSI
                                                                         8 Addr                         RC2/CCP1
                                                                                                        RC3/SCK/SCL
                                                               FSR reg                                  RC4/SDI/SDA
                                                                                                        RC5/SDO
                                                                                     STATUS reg         RC6
                                  8                                                                     RC7

                                     Power-up             3              MUX
                                       Timer
             Instruction                                           ALU
             Decode &                Oscillator           8
                                  Start-up Timer
               Control                                            W reg
                                     Power-on
                Timing                 Reset
             Generation
                                    Watchdog
OSC1/CLKIN                             Timer
OSC2/CLKOUT
                                    Brown-out
                                       Reset

                                  MCLR VDD, VSS

Timer0                Timer1      Timer2

A/D              Synchronous      CCP1

                 Serial Port

Note 1: Higher order bits are from the STATUS register.

1998 Microchip Technology Inc.                  Preliminary                                           DS39016A-page 3
PIC16C72 Series

TABLE 1-1 PIC16C72/CR72 PINOUT DESCRIPTION

Pin Name         Pin#           I/O/P  Buffer     Description
                                Type    Type

OSC1/CLKIN       9              I      ST/CMOS(3) Oscillator crystal input/external clock source input.

OSC2/CLKOUT      10             O      --         Oscillator crystal output. Connects to crystal or resonator in crystal

                                                  oscillator mode. In RC mode, the OSC2 pin outputs CLKOUT which

                                                  has 1/4 the frequency of OSC1, and denotes the instruction cycle rate.

MCLR/VPP         1              I/P    ST         Master clear (reset) input or programming voltage input. This pin is an

                                                  active low reset to the device.

                                                  PORTA is a bi-directional I/O port.

RA0/AN0          2              I/O    TTL                 RA0 can also be analog input0.

RA1/AN1          3              I/O    TTL                 RA1 can also be analog input1.

RA2/AN2          4              I/O    TTL                 RA2 can also be analog input2.

RA3/AN3/VREF     5              I/O    TTL                 RA3 can also be analog input3 or analog reference voltage

RA4/T0CKI        6              I/O    ST                  RA4 can also be the clock input to the Timer0 module. Output is
                                                           open drain type.

RA5/SS/AN4       7              I/O    TTL                 RA5 can also be analog input4 or the slave select for the
                                                           synchronous serial port.

                                                  PORTB is a bi-directional I/O port. PORTB can be software

                                                  programmed for internal weak pull-up on all inputs.

RB0/INT          21             I/O    TTL/ST(1)           RB0 can also be the external interrupt pin.

RB1              22             I/O    TTL

RB2              23             I/O    TTL

RB3              24             I/O    TTL

RB4              25             I/O    TTL                 Interrupt on change pin.

RB5              26             I/O    TTL                 Interrupt on change pin.
RB6                                                        Interrupt on change pin. Serial programming clock.
RB7              27             I/O    TTL/ST(2)           Interrupt on change pin. Serial programming data.

                 28             I/O    TTL/ST(2)

                                                  PORTC is a bi-directional I/O port.

RC0/T1OSO/T1CKI  11             I/O    ST                  RC0 can also be the Timer1 oscillator output or Timer1 clock
                                                           input.

RC1/T1OSI        12             I/O    ST                  RC1 can also be the Timer1 oscillator input.

RC2/CCP1         13             I/O    ST                  RC2 can also be the Capture1 input/Compare1 output/PWM1
                                                           output.

RC3/SCK/SCL      14             I/O    ST                  RC3 can also be the synchronous serial clock input/output for both
                                                           SPI and I2C modes.

RC4/SDI/SDA      15             I/O    ST                  RC4 can also be the SPI Data In (SPI mode) or
                                                           data I/O (I2C mode).

RC5/SDO          16             I/O    ST                  RC5 can also be the SPI Data Out (SPI mode).

RC6              17             I/O    ST

RC7              18             I/O    ST

VSS              8, 19          P      --         Ground reference for logic and I/O pins.

VDD              20             P      --         Positive supply for logic and I/O pins.

Legend: I = input O = output           I/O = input/output      P = power

                 -- = Not used         TTL = TTL input         ST = Schmitt Trigger input

Note 1: This buffer is a Schmitt Trigger input when configured as the external interrupt.

     2: This buffer is a Schmitt Trigger input when used in serial programming mode.

     3: This buffer is a Schmitt Trigger input when configured in RC oscillator mode and a CMOS input otherwise.

DS39016A-page 4                                Preliminary                                  1998 Microchip Technology Inc.
                                                                       PIC16C72 Series

2.0 MEMORY ORGANIZATION                                   FIGURE 2-1: PROGRAM MEMORY MAP
                                                                               AND STACK
There are two memory blocks in PIC16C72 Series
devices. These are the program memory and the data                       PC<12:0>
memory. Each block has its own bus, so that access to
both blocks can occur during the same oscillator cycle.   CALL, RETURN   13
                                                          RETFIE, RETLW
The data memory can further be broken down into the
general purpose RAM and the Special Function                           Stack Level 1
Registers (SFRs). The operation of the SFRs that
control the "core" are described here. The SFRs used                   Stack Level 8        0000h
to control the peripheral modules are described in the                 Reset Vector
section discussing each individual peripheral module.
                                                          User Memory     Interrupt Vector  0004h
Additional information on device memory may be found         Space                          0005h
in the PICmicroTM Mid-Range Reference Manual,                          On-chip Program
DS33023.                                                                     Memory         07FFh
                                                                                            0800h
2.1 Program Memory Organization

PIC16C72 Series devices have a 13-bit program
counter capable of addressing a 2K x 14 program
memory space. The address range for this program
memory is 0000h - 07FFh. Accessing a location above
the physically implemented address will cause a wrap-
around.

The reset vector is at 0000h and the interrupt vector is
at 0004h.

                                                                                            1FFFh

1998 Microchip Technology Inc.  Preliminary                                               DS39016A-page 5
PIC16C72 Series                                             FIGURE 2-2: REGISTER FILE MAP

2.2 Data Memory Organization                                   File                            File
                                                            Address                         Address
The data memory is partitioned into multiple banks
which contain the General Purpose Registers and the         00h INDF(1)            INDF(1)    80h
Special Function Registers. Bits RP1 and RP0 are the                              OPTION      81h
bank select bits.                                           01h TMR0                          82h
                                                                                     PCL      83h
RP1* RP0 (STATUS<6:5>)                                     02h      PCL          STATUS      84h
                                                                                              85h
= 00  Bank0                                                03h STATUS               FSR      86h
= 01  Bank1                                                                        TRISA     87h
= 10  Bank2 (not implemented)                              04h      FSR            TRISB     88h
= 11  Bank3 (not implemented)                                                      TRISC     89h
                                                            05h PORTA                         8Ah
   * Maintain this bit clear to ensure upward com-                                PCLATH      8Bh
         patibility with future products.                   06h PORTB             INTCON      8Ch
                                                                                              8Dh
Each bank extends up to 7Fh (128 bytes). The lower          07h PORTC                PIE1     8Eh
locations of each bank are reserved for the Special                                 PCON      8Fh
Function Registers. Above the Special Function Regis-       08h                               90h
ters are General Purpose Registers, implemented as                                   PR2      91h
static RAM.                                                 09h                   SSPADD      92h
                                                                                  SSPSTAT     93h
All implemented banks contain special function regis-       0Ah PCLATH                        94h
ters. Some "high use" special function registers from                             ADCON1      95h
one bank may be mirrored in another bank for code           0Bh INTCON            General     96h
reduction and quicker access (ex; the STATUS register                             Purpose     97h
is in Bank 0 and Bank 1).                                   0Ch PIR1              Register    98h
                                                                                              99h
2.2.1 GENERAL PURPOSE REGISTER FILE                         0Dh                               9Ah
                                                                                              9Bh
The register file can be accessed either directly or indi-  0Eh TMR1L                         9Ch
rectly through the File Select Register FSR                                                   9Dh
(Section 2.5).                                              0Fh TMR1H                         9Eh
                                                                                              9Fh
                                                            10h T1CON
                                                                                              A0h
                                                            11h TMR2
                                                                                              BFh
                                                            12h T2CON                         C0h

                                                            13h SSPBUF

                                                            14h SSPCON

                                                            15h CCPR1L

                                                            16h CCPR1H

                                                            17h CCP1CON

                                                            18h

                                                            19h

                                                            1Ah

                                                            1Bh

                                                            1Ch

                                                            1Dh

                                                            1Eh ADRES

                                                            1Fh ADCON0

                                                            20h

                                                                         General
                                                                        Purpose
                                                                        Register

                                                            7Fh                                    FFh
                                                                       Bank 0     Bank 1

                                                                  Unimplemented data memory locations, read as '0'.
                                                            Note 1: Not a physical register.

DS39016A-page 6  Preliminary                                                    1998 Microchip Technology Inc.
                                                                                  PIC16C72 Series

2.2.2 SPECIAL FUNCTION REGISTERS                                       The special function registers can be classified into two
                                                                       sets (core and peripheral). Those registers associated
The Special Function Registers are registers used by                   with the "core" functions are described in this section,
the CPU and Peripheral Modules for controlling the                     and those related to the operation of the peripheral fea-
desired operation of the device. These registers are                   tures are described in the section of that peripheral fea-
implemented as static RAM.                                             ture.

TABLE 2-1 SPECIAL FUNCTION REGISTER SUMMARY

                                                                                                                   Value on: Value on all

Address Name            Bit 7     Bit 6           Bit 5       Bit 4    Bit 3      Bit 2              Bit 1  Bit 0  POR, other resets

                                                                                                                   BOR  (3)

Bank 0

00h(1) INDF             Addressing this location uses contents of FSR to address data memory (not a physical register) 0000 0000 0000 0000

01h         TMR0        Timer0 module's register                                                                   xxxx xxxx uuuu uuuu

02h(1) PCL              Program Counter's (PC) Least Significant Byte                                              0000 0000 0000 0000

03h(1) STATUS           IRP(4)    RP1(4)          RP0         TO       PD         Z                  DC     C      0001 1xxx 000q quuu

04h(1) FSR              Indirect data memory address pointer                                                       xxxx xxxx uuuu uuuu

05h         PORTA       --             -- PORTA Data Latch when written: PORTA pins when read                      --0x 0000 --0u 0000

06h         PORTB       PORTB Data Latch when written: PORTB pins when read                                        xxxx xxxx uuuu uuuu

07h         PORTC       PORTC Data Latch when written: PORTC pins when read                                        xxxx xxxx uuuu uuuu

08h               --    Unimplemented                                                                              --   --

09h                 --  Unimplemented                                                                              --   --
0Ah(1,2)    PCLATH
0Bh(1)      INTCON      --             --          --    Write Buffer for the upper 5 bits of the Program Counter  ---0 0000 ---0 0000
                                                  T0IE
                        GIE       PEIE                        INTE     RBIE       T0IF               INTF   RBIF   0000 000x 0000 000u

0Ch         PIR1        --        ADIF            --          --       SSPIF CCP1IF TMR2IF TMR1IF -0-- 0000 -0-- 0000

0Dh               --    Unimplemented                                                                              --   --

0Eh         TMR1L       Holding register for the Least Significant Byte of the 16-bit TMR1 register                xxxx xxxx uuuu uuuu

0Fh         TMR1H       Holding register for the Most Significant Byte of the 16-bit TMR1 register                 xxxx xxxx uuuu uuuu

10h         T1CON       --             --         T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON --00 0000 --uu uuuu

11h         TMR2        Timer2 module's register                                                                   0000 0000 0000 0000

12h         T2CON       --        TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0 -000 0000 -000 0000

13h         SSPBUF      Synchronous Serial Port Receive Buffer/Transmit Register                                   xxxx xxxx uuuu uuuu

14h         SSPCON      WCOL SSPOV SSPEN                      CKP      SSPM3 SSPM2 SSPM1 SSPM0 0000 0000 0000 0000

15h         CCPR1L      Capture/Compare/PWM Register (LSB)                                                         xxxx xxxx uuuu uuuu

16h         CCPR1H      Capture/Compare/PWM Register (MSB)                                                         xxxx xxxx uuuu uuuu

17h         CCP1CON     --             --         CCP1X CCP1Y CCP1M3 CCP1M2 CCP1M1 CCP1M0 --00 0000 --00 0000

18h-1Dh           --    Unimplemented                                                                              --   --

1Eh         ADRES       A/D Result Register                                                                        xxxx xxxx uuuu uuuu

1Fh         ADCON0      ADCS1 ADCS0 CHS2                      CHS1     CHS0 GO/DONE                  --     ADON 0000 00-0 0000 00-0

Legend:     x = unknown, u = unchanged, q = value depends on condition, - = unimplemented read as '0'.
            Shaded locations are unimplemented, read as `0'.
Note 1:     These registers can be addressed from either bank.
        2:  The upper byte of the program counter is not directly accessible. PCLATH is a holding register for the PC<12:8> whose con-
            tents are transferred to the upper byte of the program counter.
        3:  Other (non power-up) resets include external reset through MCLR and Watchdog Timer Reset.
        4:  The IRP and RP1 bits are reserved on the PIC16C72/CR72. Always maintain these bits clear.
        5:  SSPSTAT<7:6> are not implemented on the PIC16C72, read as '0'.

1998 Microchip Technology Inc.                         Preliminary                                               DS39016A-page 7
PIC16C72 Series

TABLE 2-1 SPECIAL FUNCTION REGISTER SUMMARY (CONTINUED)

                                                                                                               Value on: Value on all

Address Name            Bit 7   Bit 6           Bit 5         Bit 4    Bit 3     Bit 2  Bit 1           Bit 0  POR, other resets

                                                                                                               BOR  (3)

  Bank 1                Addressing this location uses contents of FSR to address data memory (not a physical register) 0000 0000 0000 0000
80h(1) INDF

81h         OPTION_REG RBPU INTEDG T0CS                       T0SE     PSA       PS2    PS1             PS0 1111 1111 1111 1111

82h(1) PCL              Program Counter's (PC) Least Significant Byte                                          0000 0000 0000 0000

83h(1) STATUS           IRP(4)  RP1(4)          RP0           TO       PD        Z                  DC  C      0001 1xxx 000q quuu

84h(1) FSR              Indirect data memory address pointer                                                   xxxx xxxx uuuu uuuu

85h         TRISA       --             -- PORTA Data Direction Register                                        --11 1111 --11 1111

86h         TRISB       PORTB Data Direction Register                                                          1111 1111 1111 1111

87h         TRISC       PORTC Data Direction Register                                                          1111 1111 1111 1111

88h               --    Unimplemented                                                                          --   --

89h                 --  Unimplemented                                                                          --   --
8Ah(1,2)    PCLATH
8Bh(1)      INTCON      --             --        --    Write Buffer for the upper 5 bits of the PC             ---0 0000 ---0 0000
                                                T0IE
                        GIE     PEIE                          INTE     RBIE      T0IF   INTF            RBIF   0000 000x 0000 000u

8Ch         PIE1        --      ADIE            --            --       SSPIE CCP1IE TMR2IE TMR1IE -0-- 0000 -0-- 0000

8Dh               --    Unimplemented                                                                          --   --

8Eh         PCON        --             --       --            --             --  --     POR             BOR ---- --qq ---- --uu

8Fh               --    Unimplemented                                                                          --   --

90h               --    Unimplemented                                                                          --   --

91h               --    Unimplemented                                                                          --   --

92h         PR2         Timer2 Period Register                                                                     1111 1111 1111 1111
                                                                                                                   0000 0000 0000 0000
93h         SSPADD      Synchronous Serial Port (I2C mode) Address Register                             BF 0000 0000 0000 0000

94h         SSPSTAT     SMP(5)  CKE(5)          D/A           P              S   R/W                UA

95h               --    Unimplemented                                                                          --   --

96h               --    Unimplemented                                                                          --   --

97h               --    Unimplemented                                                                          --   --

98h               --    Unimplemented                                                                          --   --

99h               --    Unimplemented                                                                          --   --

9Ah               --    Unimplemented                                                                          --   --

9Bh               --    Unimplemented                                                                          --   --

9Ch               --    Unimplemented                                                                          --   --

9Dh               --    Unimplemented                                                                          --   --

9Eh               --    Unimplemented                                                                          --   --

9Fh         ADCON1      --             --       --            --             --  PCFG2 PCFG1 PCFG0 ---- -000 ---- -000

Legend:     x = unknown, u = unchanged, q = value depends on condition, - = unimplemented read as '0'.
            Shaded locations are unimplemented, read as `0'.
Note 1:     These registers can be addressed from either bank.
        2:  The upper byte of the program counter is not directly accessible. PCLATH is a holding register for the PC<12:8> whose con-
            tents are transferred to the upper byte of the program counter.
        3:  Other (non power-up) resets include external reset through MCLR and Watchdog Timer Reset.
        4:  The IRP and RP1 bits are reserved on the PIC16C72/CR72. Always maintain these bits clear.
        5:  SSPSTAT<7:6> are not implemented on the PIC16C72, read as '0'.

DS39016A-page 8                                        Preliminary                                       1998 Microchip Technology Inc.
                                                                           PIC16C72 Series

2.2.2.1 STATUS REGISTER                                             It is recommended, therefore, that only BCF, BSF,
                                                                    SWAPF and MOVWF instructions are used to alter the
The STATUS register, shown in Figure 2-3, contains                  STATUS register because these instructions do not
the arithmetic status of the ALU, the RESET status and              affect the Z, C or DC bits from the STATUS register. For
the bank select bits for data memory.                               other instructions, not affecting any status bits, see the
                                                                    "Instruction Set Summary."
The STATUS register can be the destination for any
instruction, as with any other register. If the STATUS                  Note 1: These devices do not use bits IRP and
register is the destination for an instruction that affects                         RP1 (STATUS<7:6>). Maintain these bits
the Z, DC or C bits, then the write to these three bits is                          clear to ensure upward compatibility with
disabled. These bits are set or cleared according to the                            future products.
device logic. Furthermore, the TO and PD bits are not
writable. Therefore, the result of an instruction with the              Note 2: The C and DC bits operate as a borrow
STATUS register as destination may be different than                                and digit borrow bit, respectively, in sub-
intended.                                                                           traction. See the SUBLW and SUBWF
                                                                                    instructions for examples.
For example, CLRF STATUS will clear the upper-three
bits and set the Z bit. This leaves the STATUS register
as 000u u1uu (where u = unchanged).

FIGURE 2-3: STATUS REGISTER (ADDRESS 03h, 83h)

R/W-0 R/W-0 R/W-0                 R-1  R-1                   R/W-x  R/W-x  R/W-x
                                                                              C
IRP     RP1  RP0                  TO   PD                    Z      DC                R = Readable bit
                                                                                bit0  W = Writable bit
bit7                                                                                  U = Unimplemented bit,

                                                                                           read as `0'
                                                                                      - n = Value at POR reset

bit 7:  IRP: Register Bank Select bit (used for indirect addressing)
        1 = Bank 2, 3 (100h - 1FFh)
        0 = Bank 0, 1 (00h - FFh)

bit 6-5: RP1:RP0: Register Bank Select bits (used for direct addressing)
            11 = Bank 3 (180h - 1FFh)
            10 = Bank 2 (100h - 17Fh)
            01 = Bank 1 (80h - FFh)
            00 = Bank 0 (00h - 7Fh)
            Each bank is 128 bytes. For devices with only Bank0 and Bank1, the IRP bit is reserved. Always maintain
            this bit clear.

bit 4:  TO: Time-out bit
        1 = After power-up, CLRWDT instruction, or SLEEP instruction
        0 = A WDT time-out occurred

bit 3:  PD: Power-down bit
        1 = After power-up or by the CLRWDT instruction
        0 = By execution of the SLEEP instruction

bit 2:  Z: Zero bit
        1 = The result of an arithmetic or logic operation is zero
        0 = The result of an arithmetic or logic operation is not zero

bit 1:  DC: Digit carry/borrow bit (ADDWF, ADDLW,SUBLW,SUBWF instructions) (for borrow the polarity is reversed)
        1 = A carry-out from the 4th low order bit of the result occurred
        0 = No carry-out from the 4th low order bit of the result

bit 0:  C: Carry/borrow bit (ADDWF, ADDLW,SUBLW,SUBWF instructions)
        1 = A carry-out from the most significant bit of the result occurred
        0 = No carry-out from the most significant bit of the result occurred
        Note: For borrow the polarity is reversed. A subtraction is executed by adding the two's complement of the
        second operand. For rotate (RRF, RLF) instructions, this bit is loaded with either the high or low order bit of
        the source register.

1998 Microchip Technology Inc.            Preliminary                               DS39016A-page 9
PIC16C72 Series

2.2.2.2 OPTION_REG REGISTER                                Note:         To achieve a 1:1 prescaler assignment for
                                                                         the TMR0 register, assign the prescaler to
The OPTION_REG register is a readable and writable                       the Watchdog Timer.
register which contains various control bits to configure
the TMR0 prescaler/WDT postscaler (single assign-
able register known also as the prescaler), the External
INT Interrupt, TMR0, and the weak pull-ups on PORTB.

FIGURE 2-4: OPTION_REG REGISTER (ADDRESS 81h)

  R/W-1   R/W-1   R/W-1    R/W-1  R/W-1       R/W-1        R/W-1         R/W-1       R = Readable bit
  RBPU   INTEDG   T0CS     T0SE    PSA         PS2          PS1           PS0        W = Writable bit
bit7                                                                                 U = Unimplemented bit,
                                                                               bit0
                                                                                             read as `0'
                                                                                     - n = Value at POR reset

bit 7:   RBPU: PORTB Pull-up Enable bit
         1 = PORTB pull-ups are disabled
         0 = PORTB pull-ups are enabled by individual port latch values

bit 6:   INTEDG: Interrupt Edge Select bit
         1 = Interrupt on rising edge of RB0/INT pin
         0 = Interrupt on falling edge of RB0/INT pin

bit 5:   T0CS: TMR0 Clock Source Select bit
         1 = Transition on RA4/T0CKI pin
         0 = Internal instruction cycle clock (CLKOUT)

bit 4:   T0SE: TMR0 Source Edge Select bit
         1 = Increment on high-to-low transition on RA4/T0CKI pin
         0 = Increment on low-to-high transition on RA4/T0CKI pin

bit 3:   PSA: Prescaler Assignment bit
         1 = Prescaler is assigned to the WDT
         0 = Prescaler is assigned to the Timer0 module

bit 2-0: PS2:PS0: Prescaler Rate Select bits

         Bit Value TMR0 Rate WDT Rate

         000      1:2      1:1

         001      1:4      1:2

         010      1:8      1:4

         011      1 : 16   1:8

         100      1 : 32   1 : 16

         101      1 : 64   1 : 32

         110      1 : 128  1 : 64

         111      1 : 256  1 : 128

DS39016A-page 10                              Preliminary                            1998 Microchip Technology Inc.
                                                                 PIC16C72 Series

2.2.2.3 INTCON REGISTER                                   Note:  Interrupt flag bits get set when an interrupt
                                                                 condition occurs regardless of the state of
The INTCON Register is a readable and writable regis-            its corresponding enable bit or the global
ter which contains various enable and flag bits for the          enable bit, GIE (INTCON<7>). User soft-
TMR0 register overflow, RB Port change and External              ware should ensure the appropriate inter-
RB0/INT pin interrupts.                                          rupt flag bits are clear prior to enabling an
                                                                 interrupt.

FIGURE 2-5: INTCON REGISTER (ADDRESS 0Bh, 8Bh)

  R/W-0  R/W-0  R/W-0             R/W-0  R/W-0     R/W-0  R/W-0  R/W-x       R = Readable bit
    GIE  PEIE    T0IE             INTE   RBIE       T0IF  INTF   RBIF        W = Writable bit
                                                                             U = Unimplemented bit,
bit7                                                                   bit0
                                                                                     read as `0'
                                                                             - n = Value at POR reset

bit 7:   GIE: Global Interrupt Enable bit
         1 = Enables all un-masked interrupts
         0 = Disables all interrupts

bit 6:   PEIE: Peripheral Interrupt Enable bit
         1 = Enables all un-masked peripheral interrupts
         0 = Disables all peripheral interrupts

bit 5:   T0IE: TMR0 Overflow Interrupt Enable bit
         1 = Enables the TMR0 interrupt
         0 = Disables the TMR0 interrupt

bit 4:   INTE: RB0/INT External Interrupt Enable bit
         1 = Enables the RB0/INT external interrupt
         0 = Disables the RB0/INT external interrupt

bit 3:   RBIE: RB Port Change Interrupt Enable bit
         1 = Enables the RB port change interrupt
         0 = Disables the RB port change interrupt

bit 2:   T0IF: TMR0 Overflow Interrupt Flag bit
         1 = TMR0 register has overflowed (must be cleared in software)
         0 = TMR0 register did not overflow

bit 1:   INTF: RB0/INT External Interrupt Flag bit
         1 = The RB0/INT external interrupt occurred (must be cleared in software)
         0 = The RB0/INT external interrupt did not occur

bit 0:   RBIF: RB Port Change Interrupt Flag bit
         1 = At least one of the RB7:RB4 pins changed state (must be cleared in software)
         0 = None of the RB7:RB4 pins have changed state

1998 Microchip Technology Inc.                Preliminary                                DS39016A-page 11
PIC16C72 Series

2.2.2.4 PIE1 REGISTER                                          Note: Bit PEIE (INTCON<6>) must be set to
This register contains the individual enable bits for the                  enable any peripheral interrupt.
peripheral interrupts.

FIGURE 2-6: PIE1 REGISTER (ADDRESS 8Ch)

U-0       R/W-0   U-0  U-0           R/W-0          R/W-0 R/W-0   R/W-0
                                                                 TMR1IE
      --  ADIE    --   --            SSPIE CCP1IE TMR2IE                      R = Readable bit
                                                                        bit0  W = Writable bit
bit7                                                                          U = Unimplemented bit,

                                                                                      read as `0'
                                                                              - n = Value at POR reset

bit 7: Unimplemented: Read as '0'

bit 6:    ADIE: A/D Converter Interrupt Enable bit
          1 = Enables the A/D interrupt
          0 = Disables the A/D interrupt

bit 5-4: Unimplemented: Read as '0'

bit 3:    SSPIE: Synchronous Serial Port Interrupt Enable bit
          1 = Enables the SSP interrupt
          0 = Disables the SSP interrupt

bit 2:    CCP1IE: CCP1 Interrupt Enable bit
          1 = Enables the CCP1 interrupt
          0 = Disables the CCP1 interrupt

bit 1:    TMR2IE: TMR2 to PR2 Match Interrupt Enable bit
          1 = Enables the TMR2 to PR2 match interrupt
          0 = Disables the TMR2 to PR2 match interrupt

bit 0:    TMR1IE: TMR1 Overflow Interrupt Enable bit
          1 = Enables the TMR1 overflow interrupt
          0 = Disables the TMR1 overflow interrupt

DS39016A-page 12                             Preliminary                      1998 Microchip Technology Inc.
                                                                      PIC16C72 Series

2.2.2.5 PIR1 REGISTER                                    Note:        Interrupt flag bits get set when an interrupt
This register contains the individual flag bits for the               condition occurs regardless of the state of
Peripheral interrupts.                                                its corresponding enable bit or the global
                                                                      enable bit, GIE (INTCON<7>). User soft-
FIGURE 2-7: PIR1 REGISTER (ADDRESS 0Ch)                               ware should ensure the appropriate inter-
                                                                      rupt flag bits are clear prior to enabling an
                                                                      interrupt.

U-0       R/W-0  U-0              U-0  R/W-0   R/W-0      R/W-0        R/W-0
                                              CCP1IF     TMR2IF       TMR1IF
      --  ADIF   --               --   SSPIF                                        R = Readable bit
                                                                             bit0   W = Writable bit
bit7                                                                                U = Unimplemented bit,

                                                                                            read as `0'
                                                                                    - n = Value at POR reset

bit 7: Unimplemented: Read as '0'

bit 6:    ADIF: A/D Converter Interrupt Flag bit
          1 = An A/D conversion completed (must be cleared in software)
          0 = The A/D conversion is not complete

bit 5-4: Unimplemented: Read as '0'

bit 3:    SSPIF: Synchronous Serial Port Interrupt Flag bit
          1 = The transmission/reception is complete (must be cleared in software)
          0 = Waiting to transmit/receive

bit 2:    CCP1IF: CCP1 Interrupt Flag bit
          Capture Mode
          1 = A TMR1 register capture occurred (must be cleared in software)
          0 = No TMR1 register capture occurred
          Compare Mode
          1 = A TMR1 register compare match occurred (must be cleared in software)
          0 = No TMR1 register compare match occurred
          PWM Mode
          Unused in this mode

bit 1:    TMR2IF: TMR2 to PR2 Match Interrupt Flag bit
          1 = TMR2 to PR2 match occurred (must be cleared in software)
          0 = No TMR2 to PR2 match occurred

bit 0:    TMR1IF: TMR1 Overflow Interrupt Flag bit
          1 = TMR1 register overflowed (must be cleared in software)
          0 = TMR1 register did not overflow

1998 Microchip Technology Inc.              Preliminary                           DS39016A-page 13
PIC16C72 Series

2.2.2.6 PCON REGISTER                                      Note:  BOR is unknown on Power-on Reset. It
                                                                  must then be set by the user and checked
The Power Control (PCON) register contains a flag bit             on subsequent resets to see if BOR is
to allow differentiation between a Power-on Reset                 clear, indicating a brown-out has occurred.
(POR) to an external MCLR Reset or WDT Reset.                     The BOR status bit is a don't care and is
Those devices with brown-out detection circuitry con-             not necessarily predictable if the brown-out
tain an additional bit to differentiate a Brown-out Reset         circuit is disabled (by clearing the BODEN
condition from a Power-on Reset condition.                        bit in the Configuration word).

FIGURE 2-8: PCON REGISTER (ADDRESS 8Eh)

U-0       U-0     U-0  U-0           U-0  U-0              R/W-0 R/W-q

      --  --      --   --            --   --               POR    BOR R = Readable bit

bit7                                                              bit0 W = Writable bit
                                                                          U = Unimplemented bit,

                                                                        read as `0'

                                                                        - n = Value at POR reset

bit 7-2: Unimplemented: Read as '0'

bit 1:    POR: Power-on Reset Status bit
          1 = No Power-on Reset occurred
          0 = A Power-on Reset occurred (must be set in software after a Power-on Reset occurs)

bit 0:    BOR: Brown-out Reset Status bit
          1 = No Brown-out Reset occurred
          0 = A Brown-out Reset occurred (must be set in software after a Brown-out Reset occurs)

DS39016A-page 14                          Preliminary                   1998 Microchip Technology Inc.
                                                                                          PIC16C72 Series

2.3 PCL and PCLATH                                                           Figure 2-9 shows the four situations for the loading of
                                                                             the PC. Example 1 shows how the PC is loaded on a
The program counter (PC) specifies the address of the                        write to PCL (PCLATH<4:0>  PCH). Example 2
instruction to fetch for execution. The PC is 13 bits                        shows how the PC is loaded during a GOTO instruction
wide. The low byte is called the PCL register. This reg-                     (PCLATH<4:3>  PCH). Example 3 shows how the PC
ister is readable and writable. The high byte is called                      is loaded during a CALL instruction (PCLATH<4:3>
the PCH register. This register contains the PC<12:8>                        PCH), with the PC loaded (PUSHed) onto the Top of
bits and is not directly readable or writable. All updates                   Stack. Finally, example 4 shows how the PC is loaded
to the PCH register go through the PCLATH register.                          during one of the return instructions where the PC is
                                                                             loaded (POPed) from the Top of Stack.

FIGURE 2-9: LOADING OF PC IN DIFFERENT SITUATIONS

Situation 1 - Instruction with PCL as destination                                         STACK (13-bits x 8)
                                                                                             Top of STACK
          PCH                     PCL

      12           87                      0
PC                                     8

                  PCLATH<4:0>
          5

                                       ALU result

                   PCLATH

Situation 2 - GOTO Instruction                                                            STACK (13-bits x 8)
                                                                                             Top of STACK

          PCH                     PCL

    12 11 10 8 7                       0

PC

    2 PCLATH<4:3>                      11
                                                    Opcode <10:0>

                   PCLATH

Situation 3 - CALL Instruction                                                            STACK (13-bits x 8)
                                                                         13                  Top of STACK

              PCH  87             PCL
      12 11 10                                        0
PC
                                             11
    2 PCLATH<4:3>                                        Opcode <10:0>

                   PCLATH

Situation 4 - RETURN, RETFIE, or RETLW Instruction                                        STACK (13-bits x 8)
                                                                        13                   Top of STACK

              PCH  87             PCL
      12 11 10                                        0
PC
                                             11
                                                         Opcode <10:0>

                   PCLATH

    Note: PCLATH is not updated with the contents of PCH.

1998 Microchip Technology Inc.                                             Preliminary                       DS39016A-page 15
PIC16C72 Series

2.3.1 STACK                                               2.4 Program Memory Paging

The stack allows a combination of up to 8 program calls   The CALL and GOTO instructions provide 11 bits of
and interrupts to occur. The stack contains the return    address to allow branching within any 2K program
address from this branch in program execution.            memory page. When doing a CALL or GOTO instruction
                                                          the upper 2 bits of the address are provided by
Midrange devices have an 8 level deep x 13-bit wide       PCLATH<4:3>. When doing a CALL or GOTO instruction,
hardware stack. The stack space is not part of either     the user must ensure that the page select bits are pro-
program or data space and the stack pointer is not        grammed so that the desired program memory page is
readable or writable. The PC is PUSHed onto the stack     addressed. If a return from a CALL instruction (or inter-
when a CALL instruction is executed or an interrupt       rupt) is executed, the entire 13-bit PC is pushed onto
causes a branch. The stack is POPed in the event of a     the stack. Therefore, manipulation of the
RETURN, RETLW or a RETFIE instruction execution.          PCLATH<4:3> bits are not required for the return
PCLATH is not modified when the stack is PUSHed or        instructions (which POPs the address from the stack).
POPed.
                                                          Note:  PIC16C72 Series devices ignore paging
After the stack has been PUSHed eight times, the ninth           bit PCLATH<4>. The use of PCLATH<4>
push overwrites the value that was stored from the first         as a general purpose read/write bit is not
push. The tenth push overwrites the second push (and             recommended since this may affect
so on). An example of the overwriting of the stack is            upward compatibility with future products.
shown in Figure 2-10.

FIGURE 2-10: STACK MODIFICATION

   STACK          Top of STACK

Push1 Push9
Push2 Push10
Push3
Push4
Push5
Push6
Push7
Push8

DS39016A-page 16                Preliminary                      1998 Microchip Technology Inc.
                                                                          PIC16C72 Series

2.5 Indirect Addressing, INDF and FSR                           A simple program to clear RAM locations 20h-2Fh
          Registers                                             using indirect addressing is shown in Example 2-2.

The INDF register is not a physical register. Address-          EXAMPLE 2-2: HOW TO CLEAR RAM
ing INDF actually addresses the register whose                                          USING INDIRECT
address is contained in the FSR register (FSR is a                                      ADDRESSING
pointer). This is indirect addressing.
                                                                NEXT      movlw  0x20 ;initialize pointer
EXAMPLE 2-1: INDIRECT ADDRESSING                                CONTINUE  movwf  FSR ; to RAM
Register file 05 contains the value 10h                                 clrf   INDF ;clear INDF register
Register file 06 contains the value 0Ah                                 incf   FSR ;inc pointer
Load the value 05 into the FSR register                                 btfss  FSR,4 ;all done?
A read of the INDF register will return the value of                    goto   NEXT ;NO, clear next

   10h                                                                    :                ;YES, continue
Increment the value of the FSR register by one
                                                                An effective 9-bit address is obtained by concatenating
   (FSR = 06)                                                   the 8-bit FSR register and the IRP bit (STATUS<7>), as
A read of the INDR register now will return the               shown in Figure 2-11. However, IRP is not used in the
                                                                PIC16C72 Series.
   value of 0Ah.

Reading INDF itself indirectly (FSR = 0) will produce
00h. Writing to the INDF register indirectly results in a
no-operation (although STATUS bits may be affected).

FIGURE 2-11: DIRECT/INDIRECT ADDRESSING

         Direct Addressing                                                       Indirect Addressing

RP1:RP0  6  from opcode                0                                  IRP    7      FSR register    0
(2)
                                                                          (2)

bank select location select                                               bank select   location select

                                        00     01      10          11
                                  00h       80h    100h         180h

                                                           not used
                                                           (3)       (3)
            Data
            Memory(1)

                                  7Fh       FFh    17Fh         1FFh

                                  Bank 0 Bank 1 Bank 2 Bank 3

Note 1: For register file map detail see Figure 2-2.
       2: Maintain RP1 and IRP as clear for upward compatibility with future products.
       3: Not implemented.

1998 Microchip Technology Inc.                 Preliminary                            DS39016A-page 17
PIC16C72 Series

NOTES:

DS39016A-page 18  Preliminary   1998 Microchip Technology Inc.
                                                                    PIC16C72 Series

3.0 I/O PORTS                                                 FIGURE 3-1: BLOCK DIAGRAM OF
                                                                                   RA3:RA0 AND RA5 PINS
Some pins for these I/O ports are multiplexed with an
alternate function for the peripheral features on the         Data  D  Q
device. In general, when a peripheral is enabled, that        bus
pin may not be used as a general purpose I/O pin.                   CK Q                                            VDD
                                                              WR                                                    P
Additional information on I/O ports may be found in the       Port
PICmicroTM Mid-Range MCU Reference Manual,
DS33023.                                                            Data Latch

3.1 PORTA and the TRISA Register                                    D  Q                                            N    I/O pin(1)

PORTA is a 6-bit wide bi-directional port. The corre-         WR     CK Q                     VSS
sponding data direction register is TRISA. Setting a          TRIS  TRIS Latch
TRISA bit (=1) will make the corresponding PORTA pin                                  Analog
an input, i.e., put the corresponding output driver in a                              input
hi-impedance mode. Clearing a TRISA bit (=0) will                                     mode
make the corresponding PORTA pin an output, i.e., put
the contents of the output latch on the selected pin.                  RD TRIS                                           TTL
                                                                                                                         input
Reading the PORTA register reads the status of the                                                                       buffer
pins whereas writing to it will write to the port latch. All
write operations are read-modify-write operations.                                 Q   D
Therefore a write to a port implies that the port pins are
read, this value is modified, and then written to the port                                                      EN
data latch.                                                   RD PORT

Pin RA4 is multiplexed with the Timer0 module clock           To A/D Converter
input to become the RA4/T0CKI pin. The RA4/T0CKI
pin is a Schmitt Trigger input and an open drain output.      Note 1: I/O pins have protection diodes to VDD and
All other RA port pins have TTL input levels and full                       VSS.
CMOS output drivers.
                                                              FIGURE 3-2: BLOCK DIAGRAM OF RA4/
Other PORTA pins are multiplexed with analog inputs                                T0CKI PIN
and analog VREF input. The operation of each pin is
selected by clearing/setting the control bits in the          Data       DQ
ADCON1 register (A/D Control Register1).                      bus
                                                                          CK Q
   Note: On a Power-on Reset, these pins are con-             WR       Data Latch
               figured as analog inputs and read as '0'.      PORT

The TRISA register controls the direction of the RA                                         N                            I/O pin(1)
pins, even when they are being used as analog inputs.
The user must ensure the bits in the TRISA register are
maintained set when using them as analog inputs.

EXAMPLE 3-1: INITIALIZING PORTA                               WR          DQ                VSS
                                                              TRIS        CK Q
BCF STATUS, RP0 ;                                                      TRIS Latch     Schmitt
                                                                                      Trigger
CLRF PORTA   ; Initialize PORTA by                                                    input
                                                                                      buffer
             ; clearing output

             ; data latches

BSF STATUS, RP0 ; Select Bank 1

MOVLW 0xCF   ; Value used to                                           RD TRIS

             ; initialize data

             ; direction                                                           QD

MOVWF TRISA  ; Set RA<3:0> as inputs

             ; RA<5:4> as outputs                                                     ENEN

             ; TRISA<7:6> are always

             ; read as '0'.                                   RD PORT

                                                               TMR0 clock input
                                                              Note 1: I/O pin has protection diodes to VSS only.

1998 Microchip Technology Inc.    Preliminary                                        DS39016A-page 19
PIC16C72 Series

TABLE 3-1 PORTA FUNCTIONS

Name              Bit# Buffer Function

RA0/AN0           bit0  TTL Input/output or analog input

RA1/AN1           bit1  TTL Input/output or analog input

RA2/AN2           bit2  TTL Input/output or analog input

RA3/AN3/VREF bit3       TTL Input/output or analog input or VREF

RA4/T0CKI         bit4  ST    Input/output or external clock input for Timer0
                              Output is open drain type

RA5/SS/AN4 bit5         TTL Input/output or slave select input for synchronous serial port or analog input

Legend: TTL = TTL input, ST = Schmitt Trigger input

TABLE 3-2 SUMMARY OF REGISTERS ASSOCIATED WITH PORTA

Address Name            Bit 7 Bit 6 Bit 5  Bit 4 Bit 3       Bit 2  Bit 1      Bit 0  Value on:  Value on all
                                                                                         POR,    other resets
                                                                                         BOR

05h      PORTA          ----  RA5          RA4 RA3           RA2    RA1 RA0 --0x 0000 --0u 0000

85h      TRISA          -- -- PORTA Data Direction Register                           --11 1111 --11 1111

9Fh      ADCON1         ----  --           --        --      PCFG2 PCFG1 PCFG0 ---- -000 ---- -000

Legend: x = unknown, u = unchanged, - = unimplemented locations read as '0'. Shaded cells are not used by PORTA.

DS39016A-page 20                           Preliminary                         1998 Microchip Technology Inc.
                                                                                  PIC16C72 Series

3.2 PORTB and the TRISB Register                                        Four of PORTB's pins, RB7:RB4, have an interrupt on
                                                                        change feature. Only pins configured as inputs can
PORTB is an 8-bit wide bi-directional port. The corre-                  cause this interrupt to occur (i.e. any RB7:RB4 pin con-
sponding data direction register is TRISB. Setting a                    figured as an output is excluded from the interrupt on
TRISB bit (=1) will make the corresponding PORTB pin                    change comparison). The input pins (of RB7:RB4) are
an input, i.e., put the corresponding output driver in a                compared with the old value latched on the last read of
hi-impedance mode. Clearing a TRISB bit (=0) will                       PORTB. The "mismatch" outputs of RB7:RB4 are
make the corresponding PORTB pin an output, i.e., put                   OR'ed together to generate the RB Port Change Inter-
the contents of the output latch on the selected pin.                   rupt with flag bit RBIF (INTCON<0>).

EXAMPLE 3-1: INITIALIZING PORTB                                         This interrupt can wake the device from SLEEP. The
                                                                        user, in the interrupt service routine, can clear the inter-
BCF STATUS, RP0 ;                                                       rupt in the following manner:

CLRF PORTB       ; Initialize PORTB by                                  a) Any read or write of PORTB. This will end the
                                                                              mismatch condition.
                 ; clearing output
                                                                        b) Clear flag bit RBIF.
                 ; data latches
                                                                        A mismatch condition will continue to set flag bit RBIF.
BSF STATUS, RP0 ; Select Bank 1                                         Reading PORTB will end the mismatch condition, and
                                                                        allow flag bit RBIF to be cleared.
MOVLW 0xCF       ; Value used to
                                                                        The interrupt on change feature is recommended for
                 ; initialize data                                      wake-up on key depression operation and operations
                                                                        where PORTB is only used for the interrupt on change
                 ; direction                                            feature. Polling of PORTB is not recommended while
                                                                        using the interrupt on change feature.
MOVWF TRISB      ; Set RB<3:0> as inputs

                 ; RB<5:4> as outputs

                 ; RB<7:6> as inputs

Each of the PORTB pins has a weak internal pull-up. A                   FIGURE 3-4:   BLOCK DIAGRAM OF
single control bit can turn on all the pull-ups. This is per-                         RB7:RB4 PINS
formed by clearing bit RBPU (OPTION<7>). The weak                         RBPU(2)
pull-up is automatically turned off when the port pin is                 Data bus
configured as an output. The pull-ups are disabled on a                   WR Port
Power-on Reset.

FIGURE 3-3:  BLOCK DIAGRAM OF                                                                                   VDD
             RB3:RB0 PINS
  RBPU(2)                                                                                                           P  weak
Data bus                                                  VDD                                                         pull-up
WR Port
                                              P  weak                                 Data Latch                       I/O
WR TRIS                                         pull-up                               DQ                              pin(1)

             Data Latch                                                                 CK
              DQ
                                                                                      TRIS Latch
             CK                                                 I/O                    DQ

                                                                pin(1)

             TRIS Latch                                                 WR TRIS       CK                    TTL
              DQ                                                                                            Input
                                  TTL                                                                       Buffer         ST
               CK                 Input                                                                                Buffer
                                  Buffer

                                                                                      RD TRIS        Latch
                                                                                                  QD

             RD TRIS                                                                  RD Port               EN         Q1
             RD Port
                                  QD                                    Set RBIF
                                          EN
                                                                                                  QD
                                                                        From other                       EN            RD Port
                                                                        RB7:RB4 pins                                        Q3

RB0/INT

                 Schmitt Trigger              RD Port                   RB7:RB6 in serial programming mode
                 Buffer

Note 1: I/O pins have diode protection to VDD and VSS.                  Note 1: I/O pins have diode protection to VDD and VSS.

       2: To enable weak pull-ups, set the appropriate TRIS bit(s)             2: To enable weak pull-ups, set the appropriate TRIS bit(s)
           and clear the RBPU bit (OPTION<7>).                                     and clear the RBPU bit (OPTION<7>).

1998 Microchip Technology Inc.                                Preliminary                                 DS39016A-page 21
PIC16C72 Series

TABLE 3-3 PORTB FUNCTIONS

Name     Bit#     Buffer             Function

RB0/INT  bit0     TTL/ST(1) Input/output pin or external interrupt input. Internal software

                                     programmable weak pull-up.

RB1      bit1            TTL         Input/output pin. Internal software programmable weak pull-up.

RB2      bit2            TTL         Input/output pin. Internal software programmable weak pull-up.

RB3      bit3            TTL         Input/output pin. Internal software programmable weak pull-up.

RB4      bit4            TTL         Input/output pin (with interrupt on change). Internal software programmable

                                     weak pull-up.

RB5      bit5            TTL         Input/output pin (with interrupt on change). Internal software programmable

                                     weak pull-up.

RB6      bit6     TTL/ST(2) Input/output pin (with interrupt on change). Internal software programmable

                                     weak pull-up. Serial programming clock.

RB7      bit7     TTL/ST(2) Input/output pin (with interrupt on change). Internal software programmable

                                     weak pull-up. Serial programming data.

Legend: TTL = TTL input, ST = Schmitt Trigger input
Note 1: This buffer is a Schmitt Trigger input when configured as the external interrupt.

       2: This buffer is a Schmitt Trigger input when used in serial programming mode.

TABLE 3-4 SUMMARY OF REGISTERS ASSOCIATED WITH PORTB

Address Name      Bit 7       Bit 6  Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0                    Value on:  Value on all
                                                                                               POR,    other resets
06h, 106h PORTB   RB7         RB6    RB5 RB4 RB3 RB2 RB1 RB0                                   BOR
                                                                                                       uuuu uuuu
86h, 186h TRISB PORTB Data Direction Register                                              xxxx xxxx   1111 1111
                                                                                                       1111 1111
81h, 181h OPTION RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0                                     1111 1111
Legend: x = unknown, u = unchanged. Shaded cells are not used by PORTB.
                                                                                           1111 1111

DS39016A-page 22                     Preliminary                               1998 Microchip Technology Inc.
                                                                      PIC16C72 Series

3.3 PORTC and the TRISC Register                          FIGURE 3-5:       PORTC BLOCK DIAGRAM
                                                                            (PERIPHERAL OUTPUT
PORTC is an 8-bit wide bi-directional port. The corre-                      OVERRIDE)
sponding data direction register is TRISC. Setting a
TRISC bit (=1) will make the corresponding PORTC pin      PORT/PERIPHERAL Select(2)
an input, i.e., put the corresponding output driver in a
hi-impedance mode. Clearing a TRISC bit (=0) will         Peripheral Data Out      0                 VDD
make the corresponding PORTC pin an output, i.e., put                                                 P
the contents of the output latch on the selected pin.     Data bus D Q
                                                          WR                                                I/O
PORTC is multiplexed with several peripheral functions                             1                        pin(1)
(Table 3-5). PORTC pins have Schmitt Trigger input        PORT                                       N
buffers.                                                                  CK Q
                                                                                                    VSS
When enabling peripheral functions, care should be                    Data Latch            Schmitt
taken in defining TRIS bits for each PORTC pin. Some                                        Trigger
peripherals override the TRIS bit to make a pin an out-   WR              DQ             D
put, while other peripherals override the TRIS bit to     TRIS             CK Q
make a pin an input. Since the TRIS bit override is in
effect while the peripheral is enabled, read-modify-                  TRIS Latch
write instructions (BSF, BCF, XORWF) with TRISC as
destination should be avoided. The user should refer to                   RD TRIS
the corresponding peripheral section for the correct
TRIS bit settings.                                        Peripheral

                                                          OE(3)                       Q

                                                                      RD                 EN

                                                                      PORT

                                                          Peripheral input

EXAMPLE 3-1: INITIALIZING PORTC                           Note 1:     I/O pins have diode protection to VDD and VSS.
                                                                  2:  Port/Peripheral select signal selects between port
BCF STATUS, RP0 ; Select Bank 0                                       data and peripheral output.
                                                                  3:  Peripheral OE (output enable) is only activated if
CLRF PORTC   ; Initialize PORTC by                                    peripheral select is active.

             ; clearing output

             ; data latches

BSF STATUS, RP0 ; Select Bank 1

MOVLW 0xCF   ; Value used to

             ; initialize data

             ; direction

MOVWF TRISC  ; Set RC<3:0> as inputs

             ; RC<5:4> as outputs

             ; RC<7:6> as inputs

1998 Microchip Technology Inc.    Preliminary                                              DS39016A-page 23
PIC16C72 Series

TABLE 3-5 PORTC FUNCTIONS

Name              Bit# Buffer Type       Function

RC0/T1OSO/T1CKI   bit0               ST  Input/output port pin or Timer1 oscillator output/Timer1 clock input
RC1/T1OSI                                Input/output port pin or Timer1 oscillator input
RC2/CCP1          bit1               ST  Input/output port pin or Capture1 input/Compare1 output/PWM1
                                         output
                  bit2               ST  RC3 can also be the synchronous serial clock for both SPI and I2C
                                         modes.
RC3/SCK/SCL       bit3               ST  RC4 can also be the SPI Data In (SPI mode) or data I/O (I2C mode).
                                         Input/output port pin or Synchronous Serial Port data output
RC4/SDI/SDA       bit4               ST  Input/output port pin
                                         Input/output port pin
RC5/SDO           bit5               ST

RC6               bit6               ST

RC7               bit7               ST

Legend: ST = Schmitt Trigger input

TABLE 3-6 SUMMARY OF REGISTERS ASSOCIATED WITH PORTC

Address Name      Bit 7 Bit 6 Bit 5 Bit 4         Bit 3  Bit 2  Bit 1  Bit 0  Value on:  Value on all
                                                  RC3    RC2    RC1    RC0       POR,    other resets
                                                                                 BOR

07h  PORTC RC7          RC6              RC5 RC4                              xxxx xxxx uuuu uuuu
                                                                              1111 1111 1111 1111
87h  TRISC PORTC Data Direction Register

Legend: x = unknown, u = unchanged.

DS39016A-page 24                          Preliminary                   1998 Microchip Technology Inc.
                                                                       PIC16C72 Series

4.0 TIMER0 MODULE                                          Additional information on external clock requirements
                                                           is available in the PICmicroTM Mid-Range MCU Refer-
The Timer0 module timer/counter has the following fea-     ence Manual, DS33023.
tures:
                                                           4.2 Prescaler
8-bit timer/counter
Readable and writable                                    An 8-bit counter is available as a prescaler for the
Internal or external clock select                        Timer0 module, or as a postscaler for the Watchdog
Edge select for external clock                           Timer, respectively (Figure 4-2). For simplicity, this
8-bit software programmable prescaler                    counter is being referred to as "prescaler" throughout
Interrupt on overflow from FFh to 00h                    this data sheet. Note that there is only one prescaler
                                                           available which is mutually exclusively shared between
Figure 4-1 is a simplified block diagram of the Timer0     the Timer0 module and the Watchdog Timer. Thus, a
module.                                                    prescaler assignment for the Timer0 module means
                                                           that there is no prescaler for the Watchdog Timer, and
Additional information on timer modules is available in    vice-versa.
the PICmicroTM Mid-Range MCU Reference Manual,
DS33023.                                                   The prescaler is not readable or writable.

4.1 Timer0 Operation                                       The PSA and PS2:PS0 bits (OPTION_REG<3:0>)
                                                           determine the prescaler assignment and prescale ratio.
Timer0 can operate as a timer or as a counter.
                                                           Clearing bit PSA will assign the prescaler to the Timer0
Timer mode is selected by clearing bit T0CS                module. When the prescaler is assigned to the Timer0
(OPTION_REG<5>). In timer mode, the Timer0 mod-            module, prescale values of 1:2, 1:4, ..., 1:256 are
ule will increment every instruction cycle (without pres-  selectable.
caler). If the TMR0 register is written, the increment is
inhibited for the following two instruction cycles. The    Setting bit PSA will assign the prescaler to the Watch-
user can work around this by writing an adjusted value     dog Timer (WDT). When the prescaler is assigned to
to the TMR0 register.                                      the WDT, prescale values of 1:1, 1:2, ..., 1:128 are
                                                           selectable.
Counter mode is selected by setting bit T0CS
(OPTION_REG<5>). In counter mode, Timer0 will              When assigned to the Timer0 module, all instructions
increment either on every rising or falling edge of pin    writing to the TMR0 register (e.g. CLRF 1, MOVWF 1,
RA4/T0CKI. The incrementing edge is determined by          BSF 1,x....etc.) will clear the prescaler. When assigned
the Timer0 Source Edge Select bit T0SE                     to WDT, a CLRWDT instruction will clear the prescaler
(OPTION_REG<4>). Clearing bit T0SE selects the ris-        along with the WDT.
ing edge. Restrictions on the external clock input are
discussed in below.                                             Note:  Writing to TMR0 when the prescaler is
                                                                       assigned to Timer0 will clear the prescaler
When an external clock input is used for Timer0, it must               count, but will not change the prescaler
meet certain requirements. The requirements ensure                     assignment.
the external clock can be synchronized with the internal
phase clock (TOSC). Also, there is a delay in the actual
incrementing of Timer0 after synchronization.

FIGURE 4-1: TIMER0 BLOCK DIAGRAM

                    FOSC/4           0    Programmable         PSout   Sync with       PSout  Data bus
                                     1        Prescaler    1            Internal                        8
RA4/T0CKI                                                                clocks
pin                               T0CS              3      0                                  TMR0
                                        PS2, PS1, PS0
                T0SE                                                  (2 cycle delay)                        Set interrupt
                                                                                                             flag bit T0IF
                                                           PSA                                               on overflow

Note 1: T0CS, T0SE, PSA, PS2:PS0 (OPTION_REG<5:0>).
       2: The prescaler is shared with Watchdog Timer (refer to Figure 4-2 for detailed block diagram).

1998 Microchip Technology Inc.        Preliminary                                           DS39016A-page 25
PIC16C72 Series

4.2.1 SWITCHING PRESCALER ASSIGNMENT                                4.3 Timer0 Interrupt

The prescaler assignment is fully under software con-               The TMR0 interrupt is generated when the TMR0 reg-
trol, i.e., it can be changed "on the fly" during program           ister overflows from FFh to 00h. This overflow sets bit
execution.                                                          T0IF (INTCON<2>). The interrupt can be masked by
                                                                    clearing bit T0IE (INTCON<5>). Bit T0IF must be
Note:  To avoid an unintended device RESET, a                       cleared in software by the Timer0 module interrupt ser-
       specific instruction sequence (shown in the                  vice routine before re-enabling this interrupt. The TMR0
       PICmicroTM Mid-Range MCU Reference                           interrupt cannot awaken the processor from SLEEP
       Manual, DS3023) must be executed when                        since the timer is shut off during SLEEP.
       changing the prescaler assignment from
       Timer0 to the WDT. This sequence must be
       followed even if the WDT is disabled.

FIGURE 4-2: BLOCK DIAGRAM OF THE TIMER0/WDT PRESCALER                                           Data Bus

      CLKOUT (=Fosc/4)

RA4/T0CKI                          0M                      1                    SYNC                      8
     pin                                U                        M                 2            TMR0 reg
                                        X
                                                           0  U                 Cycles                            Set flag bit T0IF
                                   1                          X                                                      on Overflow

                     T0SE            T0CS

                                                              PSA

       Watchdog            0               8-bit Prescaler                      PS2:PS0
          Timer                 M              8
                                U
     WDT Enable bit                        8 - to - 1MUX
                           1X

                              PSA

                                           0               1

                                              MUX                          PSA

                                                                    WDT
                                                                 Time-out

       Note: T0CS, T0SE, PSA, PS2:PS0 are (OPTION_REG<5:0>).

TABLE 4-1 REGISTERS ASSOCIATED WITH TIMER0

Address Name               Bit 7   Bit 6   Bit 5 Bit 4 Bit 3 Bit 2 Bit 1                 Bit 0  Value on:  Value on all
                                                                                                   POR,    other resets
                                                                                                   BOR

01h,101h TMR0              Timer0 module's register                                             xxxx xxxx uuuu uuuu

0Bh,8Bh, INTCON            GIE PEIE T0IE INTE RBIE T0IF INTF RBIF 0000 000x 0000 000u
10Bh,18Bh

81h,181h OPTION_REG RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 1111 1111 1111 1111

85h    TRISA               --      -- PORTA Data Direction Register                             --11 1111 --11 1111

Legend: x = unknown, u = unchanged, - = unimplemented locations read as '0'. Shaded cells are not used by Timer0.

DS39016A-page 26                                     Preliminary                         1998 Microchip Technology Inc.
                                                                   PIC16C72 Series

5.0 TIMER1 MODULE                                        5.1 Timer1 Operation

The Timer1 module timer/counter has the following fea-   Timer1 can operate in one of these modes:
tures:
                                                          As a timer
16-bit timer/counter                                    As a synchronous counter
   (Two 8-bit registers; TMR1H and TMR1L)                As an asynchronous counter

Readable and writable (Both registers)                 The operating mode is determined by the clock select
Internal or external clock select                      bit, TMR1CS (T1CON<1>).
Interrupt on overflow from FFFFh to 0000h
Reset from CCP module trigger                          In timer mode, Timer1 increments every instruction
                                                         cycle. In counter mode, it increments on every rising
Timer1 has a control register, shown in Figure 5-1.      edge of the external clock input.
Timer1 can be enabled/disabled by setting/clearing
control bit TMR1ON (T1CON<0>).                           When the Timer1 oscillator is enabled (T1OSCEN is
                                                         set), the RC1/T1OSI and RC0/T1OSO/T1CKI pins
Figure 5-2 is a simplified block diagram of the Timer1   become inputs. That is, the TRISC<1:0> value is
module.                                                  ignored.

Additional information on timer modules is available in  Timer1 also has an internal "reset input". This reset can
the PICmicroTM Mid-Range MCU Reference Manual,           be generated by the CCP module (Section 7.0).
DS33023.

FIGURE 5-1: T1CON: TIMER1 CONTROL REGISTER (ADDRESS 10h)

    U-0  U-0  R/W-0 R/W-0 R/W-0      R/W-0                 R/W-0 R/W-0
     --                                                  TMR1CS TMR1ON
bit7     -- T1CKPS1 T1CKPS0 T1OSCEN T1SYNC                                            R = Readable bit
                                                                                bit0  W = Writable bit
                                                                                      U = Unimplemented bit,

                                                                                              read as `0'
                                                                                      - n = Value at POR reset

bit 7-6: Unimplemented: Read as '0'

bit 5-4: T1CKPS1:T1CKPS0: Timer1 Input Clock Prescale Select bits
            11 = 1:8 Prescale value
            10 = 1:4 Prescale value
            01 = 1:2 Prescale value
            00 = 1:1 Prescale value

bit 3:   T1OSCEN: Timer1 Oscillator Enable Control bit
         1 = Oscillator is enabled
         0 = Oscillator is shut off
         Note: The oscillator inverter and feedback resistor are turned off to eliminate power drain

bit 2: T1SYNC: Timer1 External Clock Input Synchronization Control bit

         TMR1CS = 1
         1 = Do not synchronize external clock input
         0 = Synchronize external clock input

bit 1:   TMR1CS = 0
bit 0:   This bit is ignored. Timer1 uses the internal clock when TMR1CS = 0.

         TMR1CS: Timer1 Clock Source Select bit
         1 = External clock from pin RC0/T1OSO/T1CKI (on the rising edge)
         0 = Internal clock (FOSC/4)

         TMR1ON: Timer1 On bit
         1 = Enables Timer1
         0 = Stops Timer1

1998 Microchip Technology Inc.     Preliminary                                      DS39016A-page 27
PIC16C72 Series

FIGURE 5-2: TIMER1 BLOCK DIAGRAM

               Set flag bit                                          0                                 Synchronized
               TMR1IF on
               Overflow      TMR1                                                                      clock input

RC0/T1OSO/T1CKI              TMR1H TMR1L
RC1/T1OSI                                                                                           1

                                                   TMR1ON            T1SYNC
                                                     on/off

                             T1OSC

                                    T1OSCEN FOSC/4           1                                         Synchronize
                                    Enable         Internal               Prescaler                           det
                                    Oscillator(1)  Clock                  1, 2, 4, 8
                                                                                                       SLEEP input
                                                             0
                                                                                    2

                                                                   T1CKPS1:T1CKPS0

                                                             TMR1CS

Note 1: When the T1OSCEN bit is cleared, the inverter and feedback resistor are turned off. This eliminates power drain.

DS39016A-page 28                                   Preliminary                                          1998 Microchip Technology Inc.
                                                                           PIC16C72 Series

5.2 Timer1 Oscillator                                               5.3 Timer1 Interrupt

A crystal oscillator circuit is built in between pins T1OSI         The TMR1 Register pair (TMR1H:TMR1L) increments
(input) and T1OSO (amplifier output). It is enabled by              from 0000h to FFFFh and rolls over to 0000h. The
setting control bit T1OSCEN (T1CON<3>). The oscilla-                TMR1 Interrupt, if enabled, is generated on overflow
tor is a low power oscillator rated up to 200 kHz. It will          which is latched in interrupt flag bit TMR1IF (PIR1<0>).
continue to run during SLEEP. It is primarily intended              This interrupt can be enabled/disabled by setting/clear-
for a 32 kHz crystal. Table 5-1 shows the capacitor                 ing TMR1 interrupt enable bit TMR1IE (PIE1<0>).
selection for the Timer1 oscillator.
                                                                    5.4 Resetting Timer1 using a CCP Trigger
The Timer1 oscillator is identical to the LP oscillator.                      Output
The user must provide a software time delay to ensure
proper oscillator start-up.                                         If the CCP module is configured in compare mode to
                                                                    generate a "special event trigger" (CCP1M3:CCP1M0
TABLE 5-1         CAPACITOR SELECTION                               = 1011), this signal will reset Timer1 and start an A/D
                  FOR THE TIMER1                                    conversion (if the A/D module is enabled).
                  OSCILLATOR

                                                                    Note:  The special event triggers from the CCP1
                                                                           module will not set interrupt flag bit
Osc Type        Freq              C1          C2                           TMR1IF (PIR1<0>).

LP              32 kHz            33 pF       33 pF

                100 kHz           15 pF       15 pF                 Timer1 must be configured for either timer or synchro-
                200 kHz           15 pF       15 pF                 nized counter mode to take advantage of this feature. If
                                                                    Timer1 is running in asynchronous counter mode, this
These values are for design guidance only.                          reset operation may not work.

Crystals Tested:                                                    In the event that a write to Timer1 coincides with a spe-
                                                                    cial event trigger from CCP1, the write will take prece-
32.768 kHz Epson C-001R32.768K-A 20 PPM                           dence.

100 kHz Epson C-2 100.00 KC-P 20 PPM

200 kHz         STD XTL 200.000 kHz            20 PPM              In this mode of operation, the CCPR1H:CCPR1L regis-
                                                                    ters pair effectively becomes the period register for
Note 1: Higher capacitance increases the stability                  Timer1.

         of oscillator but also increases the start-up

         time.

2: Since each resonator/crystal has its own

         characteristics, the user should consult the

         resonator/crystal manufacturer for appropri-

         ate values of external components.

TABLE 5-2 REGISTERS ASSOCIATED WITH TIMER1 AS A TIMER/COUNTER

Address Name Bit 7 Bit 6 Bit 5                Bit 4          Bit 3  Bit 2  Bit 1            Bit 0  Value on:        Value on
                                                                                                      POR,          all other
                                                                                                      BOR            resets

0Bh,8Bh  INTCON GIE PEIE T0IE                 INTE           RBIE   T0IF   INTF             RBIF 0000 000x 0000 000u
0Ch
8Ch      PIR1     (1) ADIF               (1)  (1)            SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000
0Eh
0Fh      PIE1     (1) ADIE               (1)  (1)            SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000
10h
         TMR1L Holding register for the Least Significant Byte of the 16-bit TMR1 register         xxxx xxxx uuuu uuuu

         TMR1H Holding register for the Most Significant Byte of the 16-bit TMR1 register          xxxx xxxx uuuu uuuu

         T1CON --        -- T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON --00 0000 --uu uuuu

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by the Timer1 module.
Note 1: These bits are unimplemented, read as '0'.

1998 Microchip Technology Inc.                     Preliminary                                   DS39016A-page 29
PIC16C72 Series

NOTES:

DS39016A-page 30  Preliminary   1998 Microchip Technology Inc.
                                                          PIC16C72 Series

6.0 TIMER2 MODULE                                         6.2 Timer2 Interrupt

The Timer2 module timer has the following features:       The Timer2 module has an 8-bit period register PR2.
                                                          Timer2 increments from 00h until it matches PR2 and
8-bit timer (TMR2 register)                             then resets to 00h on the next increment cycle. PR2 is
8-bit period register (PR2)                             a readable and writable register. The PR2 register is ini-
Readable and writable (Both registers)                  tialized to FFh upon reset.
Software programmable prescaler (1:1, 1:4, 1:16)
Software programmable postscaler (1:1 to 1:16)          6.3 Output of TMR2
Interrupt on TMR2 match of PR2
SSP module optional use of TMR2 output to gen-          The output of TMR2 (before the postscaler) is fed to the
                                                          Synchronous Serial Port module which optionally uses
   erate clock shift                                      it to generate shift clock.

Timer2 has a control register, shown in Figure 6-2.       FIGURE 6-1: TIMER2 BLOCK DIAGRAM
Timer2 can be shut off by clearing control bit TMR2ON
(T2CON<2>) to minimize power consumption.                 Sets flag      TMR2    (1)
                                                          bit TMR2IF     output
Figure 6-1 is a simplified block diagram of the Timer2
module.                                                                  Reset                     Prescaler
                                                                                      TMR2 reg   1:1, 1:4, 1:16 FOSC/4
Additional information on timer modules is available in
the PICmicroTM Mid-Range MCU Reference Manual,            Postscaler                                         2
DS33023.                                                                             Comparator

6.1 Timer2 Operation                                      1:1 to 1:16 EQ

Timer2 can be used as the PWM time-base for PWM                       4               PR2 reg
mode of the CCP module.
                                                          Note 1: TMR2 register output can be software selected
The TMR2 register is readable and writable, and is                     by the SSP Module as a baud clock.
cleared on any device reset.

The input clock (FOSC/4) has a prescale option of 1:1,
1:4 or 1:16, selected by control bits
T2CKPS1:T2CKPS0 (T2CON<1:0>).

The match output of TMR2 goes through a 4-bit
postscaler (which gives a 1:1 to 1:16 scaling inclusive)
to generate a TMR2 interrupt (latched in flag bit
TMR2IF, (PIR1<1>)).

The prescaler and postscaler counters are cleared
when any of the following occurs:

a write to the TMR2 register
a write to the T2CON register
any device reset (Power-on Reset, MCLR reset,

   Watchdog Timer reset, or Brown-out Reset)

TMR2 is not cleared when T2CON is written.

1998 Microchip Technology Inc.  Preliminary                                                    DS39016A-page 31
PIC16C72 Series

FIGURE 6-2: T2CON: TIMER2 CONTROL REGISTER (ADDRESS 12h)

    U-0      R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0                                                               R = Readable bit
     --   TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0                                                     W = Writable bit
bit7                                                                                                                 U = Unimplemented bit,
                                                                                                               bit0
bit 7:                                                                                                                       read as `0'
bit 6-3:  Unimplemented: Read as '0'                                                                                 - n = Value at POR reset
          TOUTPS3:TOUTPS0: Timer2 Output Postscale Select bits
bit 2:    0000 = 1:1 Postscale
bit 1-0:  0001 = 1:2 Postscale
         
         
         
          1111 = 1:16 Postscale
          TMR2ON: Timer2 On bit
          1 = Timer2 is on
          0 = Timer2 is off
          T2CKPS1:T2CKPS0: Timer2 Clock Prescale Select bits
          00 = Prescaler is 1
          01 = Prescaler is 4
          1x = Prescaler is 16

TABLE 6-1 REGISTERS ASSOCIATED WITH TIMER2 AS A TIMER/COUNTER

Address Name      Bit 7  Bit 6            Bit 5  Bit 4  Bit 3  Bit 2  Bit 1                                          Bit 0  Value on:          Value on
                                                                                                                               POR,            all other
                                                                                                                               BOR              resets

0Bh,8Bh   INTCON GIE     PEIE             T0IE   INTE   RBIE   T0IF   INTF                                           RBIF 0000 000x 0000 000u
0Ch
8Ch       PIR1    (1)    ADIF             (1)    (1)    SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000
11h
12h       PIE1    (1)    ADIE             (1)    (1)    SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000
92h
          TMR2 Timer2 module's register                                                                                     0000 0000 0000 0000

          T2CON   --     TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0 -000 0000 -000 0000

          PR2     Timer2 Period Register                                                                                    1111 1111 1111 1111

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by the Timer2 module.
         2: These bits are unimplemented, read as '0'.

DS39016A-page 32                                 Preliminary                                                          1998 Microchip Technology Inc.
                                                       PIC16C72 Series

7.0 CAPTURE/COMPARE/PWM                                Additional information on the CCP module is available
         (CCP) MODULE                                  in the PICmicroTM Mid-Range MCU Reference Manual,
                                                       DS33023.
The CCP (Capture/Compare/PWM) module contains a
16-bit register which can operate as a 16-bit capture  TABLE 7-1  CCP MODE - TIMER
register, as a 16-bit compare register or as a PWM                RESOURCE
master/slave Duty Cycle register. Table 7-1 shows the
timer resources of the CCP module modes.               CCP Mode   Timer Resource

Capture/Compare/PWM Register1 (CCPR1) is com-            Capture        Timer1
prised of two 8-bit registers: CCPR1L (low byte) and    Compare         Timer1
CCPR1H (high byte). The CCP1CON register controls                       Timer2
the operation of CCP1. All are readable and writable.     PWM

FIGURE 7-1: CCP1CON REGISTER (ADDRESS 17h)

U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

-- -- CCP1X CCP1Y CCP1M3 CCP1M2 CCP1M1 CCP1M0 R = Readable bit

bit7                                                              bit0 W = Writable bit

                                                                  U = Unimplemented bit,

                                                                  read as `0'

                                                                  - n =Value at POR reset

bit 7-6: Unimplemented: Read as '0'

bit 5-4: CCP1X:CCP1Y: PWM Least Significant bits
            Capture Mode: Unused
            Compare Mode: Unused
            PWM Mode: These bits are the two LSbs of the PWM duty cycle. The eight MSbs are found in CCPR1L.

bit 3-0: CCP1M3:CCP1M0: CCP1 Mode Select bits
            0000 = Capture/Compare/PWM off (resets CCP1 module)
            0100 = Capture mode, every falling edge
            0101 = Capture mode, every rising edge
            0110 = Capture mode, every 4th rising edge
            0111 = Capture mode, every 16th rising edge
            1000 = Compare mode, set output on match (CCP1IF bit is set)
            1001 = Compare mode, clear output on match (CCP1IF bit is set)
            1010 = Compare mode, generate software interrupt on match (CCP1IF bit is set, CCP1 pin is unaffected)
            1011 = Compare mode, trigger special event (CCP1IF bit is set; CCP1 resets TMR1 and starts an A/D
                       conversion (if A/D module is enabled))
            11xx = PWM mode

1998 Microchip Technology Inc.     Preliminary                  DS39016A-page 33
PIC16C72 Series

7.1 Capture Mode                                          7.1.4 CCP PRESCALER

In Capture mode, CCPR1H:CCPR1L captures the               There are four prescaler settings, specified by bits
16-bit value of the TMR1 register when an event occurs    CCP1M3:CCP1M0. Whenever the CCP module is
on pin RC2/CCP1. An event is defined as:                  turned off, or the CCP module is not in capture mode,
                                                          the prescaler counter is cleared. This means that any
every falling edge                                      reset will clear the prescaler counter.
every rising edge
every 4th rising edge                                   Switching from one capture prescaler to another may
every 16th rising edge                                  generate an interrupt. Also, the prescaler counter will
                                                          not be cleared, therefore the first capture may be from
An event is selected by control bits CCP1M3:CCP1M0        a non-zero prescaler. Example 7-1 shows the recom-
(CCP1CON<3:0>). When a capture is made, the inter-        mended method for switching between capture pres-
rupt request flag bit CCP1IF (PIR1<2>) is set. It must    calers. This example also clears the prescaler counter
be cleared in software. If another capture occurs before  and will not generate the "false" interrupt.
the value in register CCPR1 is read, the old captured
value will be lost.                                       EXAMPLE 7-1: CHANGING BETWEEN

7.1.1 CCP PIN CONFIGURATION                                              CAPTURE PRESCALERS

                                                          CLRF CCP1CON   ;Turn CCP module off

In Capture mode, the RC2/CCP1 pin should be config-       MOVLW NEW_CAPT_PS ;Load the W reg with
ured as an input by setting the TRISC<2> bit.
                                                                         ; the new prescaler

                                                                         ; mode value and CCP ON

Note:     If the RC2/CCP1 is configured as an out-        MOVWF CCP1CON  ;Load CCP1CON with this
          put, a write to the port can cause a capture
          condition.                                                     ; value

FIGURE 7-2:       CAPTURE MODE
                  OPERATION BLOCK
                  DIAGRAM

                       Set flag bit CCP1IF

          Prescaler    (PIR1<2>)

          1, 4, 16

RC2/CCP1                          CCPR1H    CCPR1L
Pin                                         TMR1L

              and              Capture
          edge detect          Enable

                                  TMR1H

                 CCP1CON<3:0>
          Q's

7.1.2 TIMER1 MODE SELECTION

Timer1 must be running in timer mode or synchronized
counter mode for the CCP module to use the capture
feature. In asynchronous counter mode, the capture
operation may not work.

7.1.3 SOFTWARE INTERRUPT

When the Capture mode is changed, a false capture
interrupt may be generated. The user should keep bit
CCP1IE (PIE1<2>) clear to avoid false interrupts and
should clear the flag bit CCP1IF following any such
change in operating mode.

DS39016A-page 34                            Preliminary                   1998 Microchip Technology Inc.
                                                                                   PIC16C72 Series

7.2 Compare Mode                                                     7.2.1 CCP PIN CONFIGURATION

In Compare mode, the 16-bit CCPR1 register value is                  The user must configure the RC2/CCP1 pin as an out-
constantly compared against the TMR1 register pair                   put by clearing the TRISC<2> bit.
value. When a match occurs, the RC2/CCP1 pin is:
                                                                            Note:  Clearing the CCP1CON register will force
driven High                                                                      the RC2/CCP1 compare output latch to the
driven Low                                                                       default low level. This is not the data latch.
remains Unchanged
                                                                     7.2.2 TIMER1 MODE SELECTION
The action on the pin is based on the value of control
bits CCP1M3:CCP1M0 (CCP1CON<3:0>). At the                            Timer1 must be running in Timer mode or Synchro-
same time, interrupt flag bit CCP1IF is set.                         nized Counter mode if the CCP module is using the
                                                                     compare feature. In Asynchronous Counter mode, the
FIGURE 7-3: COMPARE MODE                                             compare operation may not work.
                     OPERATION BLOCK
                     DIAGRAM                                         7.2.3 SOFTWARE INTERRUPT MODE

     Special event trigger will:                                     When generate software interrupt is chosen the CCP1
     reset Timer1, but not set interrupt flag bit TMR1IF (PIR1<0>),  pin is not affected. Only a CCP interrupt is generated (if
     and set bit GO/DONE (ADCON0<2>)                                 enabled).
     which starts an A/D conversion
                                                                     7.2.4 SPECIAL EVENT TRIGGER

               Special Event Trigger                                 In this mode, an internal hardware trigger is generated
                                                                     which may be used to initiate an action.
                          Set flag bit CCP1IF
                          (PIR1<2>)                                  The special event trigger output of CCP1 resets the
                                                                     TMR1 register pair. This allows the CCPR1 register to
                                           CCPR1H CCPR1L             effectively be a 16-bit programmable period register for
                                                                     Timer1.
          Q S Output                       Comparator
                                         TMR1H TMR1L                 The special trigger output of CCP1 resets the TMR1
RC2/CCP1         R Logic          match                              register pair, and starts an A/D conversion (if the A/D
Pin                                                                  module is enabled).
     TRISC<2>

     Output Enable CCP1CON<3:0>

                  Mode Select

                                                                            Note:  The special event trigger from the CCP1
                                                                                   module will not set interrupt flag bit
                                                                                   TMR1IF (PIR1<0>).

TABLE 7-2 REGISTERS ASSOCIATED WITH CAPTURE, COMPARE, AND TIMER1

Address Name      Bit 7 Bit 6 Bit 5            Bit 4                 Bit 3  Bit 2 Bit 1      Bit 0  Value on:  Value on
                                                                                                       POR,    all other
                                                                                                       BOR      resets

0Bh,8Bh   INTCON  GIE PEIE T0IE                INTE                  RBIE     T0IF INTF RBIF 0000 000x 0000 000u
0Ch       PIR1                                                       SSPIF  CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000
8Ch       PIE1    (1)             ADIF   (1)     (1)                 SSPIE  CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

                  (1)             ADIE   (1)     (1)

87h       TRISC PORTC Data Direction Register                                                       1111 1111 1111 1111

0Eh       TMR1L Holding register for the Least Significant Byte of the 16-bit TMR1 register         xxxx xxxx uuuu uuuu

0Fh       TMR1H Holding register for the Most Significant Byte of the 16-bit TMR1register           xxxx xxxx uuuu uuuu

10h       T1CON   --              -- T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON --00 0000 --uu uuuu

15h       CCPR1L Capture/Compare/PWM register1 (LSB)                                                xxxx xxxx uuuu uuuu

16h       CCPR1H Capture/Compare/PWM register1 (MSB)                                                xxxx xxxx uuuu uuuu

17h       CCP1CON --              -- CCP1X CCP1Y CCP1M3 CCP1M2 CCP1M1 CCP1M0 --00 0000 --00 0000

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by Capture and Timer1.
Note 1: These bits/registers are unimplemented, read as '0'.

1998 Microchip Technology Inc.               Preliminary                                          DS39016A-page 35
PIC16C72 Series

7.3 PWM Mode                                                      7.3.1 PWM PERIOD

In Pulse Width Modulation (PWM) mode, the CCP1 pin                The PWM period is specified by writing to the PR2 reg-
produces up to a 10-bit resolution PWM output. Since              ister. The PWM period can be calculated using the fol-
the CCP1 pin is multiplexed with the PORTC data latch,            lowing formula:
the TRISC<2> bit must be cleared to make the CCP1
pin an output.                                                         PWM period = [(PR2) + 1] 4 TOSC
                                                                                           (TMR2 prescale value)
Note:  Clearing the CCP1CON register will force
       the CCP1 PWM output latch to the default                   PWM frequency is defined as 1 / [PWM period].
       low level. This is not the PORTC I/O data
       latch.                                                     When TMR2 is equal to PR2, the following three events
                                                                  occur on the next increment cycle:
Figure 7-4 shows a simplified block diagram of the CCP
module in PWM mode.                                                TMR2 is cleared
                                                                   The CCP1 pin is set (exception: if PWM duty
For a step by step procedure on how to set up the CCP
module for PWM operation, see Section 7.3.3.                         cycle = 0%, the CCP1 pin will not be set)
                                                                   The PWM duty cycle is latched from CCPR1L into

                                                                     CCPR1H

FIGURE 7-4: SIMPLIFIED PWM BLOCK                                  Note:  The Timer2 postscaler (see Section 6.0) is
                     DIAGRAM                                             not used in the determination of the PWM
                                                                         frequency. The postscaler could be used to
    Duty cycle registers     CCP1CON<5:4>                                have a servo update rate at a different fre-
CCPR1L                                                                   quency than the PWM output.

                                                                  7.3.2 PWM DUTY CYCLE

CCPR1H (Slave)                                                    The PWM duty cycle is specified by writing to the
                                                                  CCPR1L register and to the CCP1CON<5:4> bits. Up
       Comparator                       R  Q                      to 10-bit resolution is available: the CCPR1L contains
                                                       RC2/CCP1   the eight MSbs and the CCP1CON<5:4> contains the
TMR2               (Note 1)                                       two LSbs. This 10-bit value is represented by
                                             TRISC<2>             CCPR1L:CCP1CON<5:4>. The following equation is
                                        S                         used to calculate the PWM duty cycle in time:

Comparator                Clear Timer,                                PWM duty cycle = (CCPR1L:CCP1CON<5:4>)
    PR2                   CCP1 pin and                                                        Tosc (TMR2 prescale value)
                          latch D.C.
                                                                  CCPR1L and CCP1CON<5:4> can be written to at any
Note 1: 8-bit timer is concatenated with 2-bit internal Q clock   time, but the duty cycle value is not latched into
          or 2 bits of the prescaler to create 10-bit time-base.  CCPR1H until after a match between PR2 and TMR2
                                                                  occurs (i.e., the period is complete). In PWM mode,
A PWM output (Figure 7-5) has a time base (period)                CCPR1H is a read-only register.
and a time that the output stays high (duty cycle). The
frequency of the PWM is the inverse of the period                 The CCPR1H register and a 2-bit internal latch are
(1/period).                                                       used to double buffer the PWM duty cycle. This double
                                                                  buffering is essential for glitchless PWM operation.
FIGURE 7-5: PWM OUTPUT
                                                                  When the CCPR1H and 2-bit latch match TMR2 con-
                Period                                            catenated with an internal 2-bit Q clock or 2 bits of the
                                                                  TMR2 prescaler, the CCP1 pin is cleared.

                                                                  Maximum PWM resolution (bits) for a given PWM
                                                                  frequency:

                                                                           ( ) logFOSC
                                                                         FPWM
                                                                         =
     Duty Cycle                                                                         bits
                           TMR2 = PR2
                                                                         log(2)
                  TMR2 = Duty Cycle
TMR2 = PR2                                                        Note:  If the PWM duty cycle value is longer than
                                                                         the PWM period the CCP1 pin will not be
                                                                         cleared.

DS39016A-page 36                           Preliminary                   1998 Microchip Technology Inc.
For an example PWM period and duty cycle calcula-                 PIC16C72 Series
tion, see the PICmicroTM Mid-Range MCU Reference
Manual (DS33023).                                            3. Make the CCP1 pin an output by clearing the
                                                                   TRISC<2> bit.
7.3.3 SET-UP FOR PWM OPERATION
                                                             4. Set the TMR2 prescale value and enable Timer2
The following steps should be taken when configuring               by writing to T2CON.
the CCP module for PWM operation:
                                                             5. Configure the CCP1 module for PWM operation.
1. Set the PWM period by writing to the PR2 regis-
      ter.

2. Set the PWM duty cycle by writing to the
      CCPR1L register and CCP1CON<5:4> bits.

TABLE 7-3 EXAMPLE PWM FREQUENCIES AND RESOLUTIONS AT 20 MHz

         PWM Frequency                          1.22 kHz 4.88 kHz 19.53 kHz 78.12 kHz 156.3 kHz 208.3 kHz

Timer Prescaler (1, 4, 16)                         16          4     1        1            1                       1
PR2 Value                                         0xFF       0xFF  0xFF     0x3F         0x1F                    0x17
Maximum Resolution (bits)                                                                                         5.5
                                                   10         10    10        8            7

TABLE 7-4 REGISTERS ASSOCIATED WITH PWM AND TIMER2

Address Name     Bit 7            Bit 6    Bit 5  Bit 4      Bit 3 Bit 2 Bit 1    Bit 0  Value on:               Value on
                                                                                            POR,                 all other
                                                                                            BOR                   resets

0Bh,8Bh  INTCON  GIE              PEIE     T0IE   INTE       RBIE  T0IF  INTF     RBIF 0000 000x 0000 000u
0Ch      PIR1
8Ch      PIE1    (1)              ADIF     (1)          (1)  SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

                 (1)              ADIE     (1)          (1)  SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

87h      TRISC PORTC Data Direction Register                                             1111 1111 1111 1111

11h      TMR2    Timer2 module's register                                                0000 0000 0000 0000

92h      PR2     Timer2 module's period register                                         1111 1111 1111 1111

12h      T2CON   -- TOUTPS TOUTPS TOUTPS TOUTPS TMR2O T2CKPS T2CKPS -000 0000 -000 0000

                                  3        2            1    0     N     1        0

15h      CCPR1L Capture/Compare/PWM register1 (LSB)                                      xxxx xxxx uuuu uuuu

16h      CCPR1H Capture/Compare/PWM register1 (MSB)                                      xxxx xxxx uuuu uuuu

17h      CCP1CON --               --     CCP1X CCP1Y CCP1M3 CCP1M2 CCP1M1 CCP1M0 --00 0000 --00 0000

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by PWM and Timer2.
Note 1: These bits/registers are unimplemented, read as '0'.

1998 Microchip Technology Inc.                  Preliminary                            DS39016A-page 37
PIC16C72 Series

NOTES:

DS39016A-page 38  Preliminary   1998 Microchip Technology Inc.
                                                                     PIC16C72 Series

8.0 SYNCHRONOUS SERIAL
         PORT (SSP) MODULE

8.1 SSP Module Overview

The Synchronous Serial Port (SSP) module is a serial
interface useful for communicating with other periph-
eral or microcontroller devices. These peripheral
devices may be Serial EEPROMs, shift registers, dis-
play drivers, A/D converters, etc. The SSP module can
operate in one of two modes:

Serial Peripheral Interface (SPI)
Inter-Integrated Circuit (I2C)
The SSP module in I2C mode works the same in all
PIC16C72 series devices that have an SSP module.
However the SSP Module in SPI mode has differences
between the PIC16C72 and the PIC16CR72 device.

The register definitions and operational description of
SPI mode has been split into two sections because of
the differences between the PIC16C72 and the
PIC16CR72 device. The default reset values of both
the SPI modules is the same regardless of the device:

8.2 SPI Mode for PIC16C72 .................................. 40

8.3 SPI Mode for PIC16CR72 ............................... 43
8.4 SSP I2C Operation .......................................... 47
For an I2C Overview, refer to the PICmicroTM Mid-
Range MCU Reference Manual (DS33023). Also, refer
to Application Note AN578, "Use of the SSP Module in
the I 2C Multi-Master Environment."

1998 Microchip Technology Inc.  Preliminary                        DS39016A-page 39
PIC16C72 Series

8.2 SPI Mode for PIC16C72                                   Additional information on SPI operation may be found
                                                            in the PICmicroTM Mid-Range MCU Reference Manual,
This section contains register definitions and opera-       DS33023.
tional characteristics of the SPI module on the
PIC16C72 device only.

FIGURE 8-1: SSPSTAT: SYNC SERIAL PORT STATUS REGISTER (ADDRESS 94h) (PIC16C72)

  U-0     U-0 R-0      R-0            R-0              R-0  R-0  R-0
   --
bit7      --      D/A  P              S    R/W              UA   BF             R = Readable bit

bit 7-6:                                                                        bit0 W = Writable bit
bit 5:                                                                                   U = Unimplemented bit,
bit 4:
bit 3:                                                                                    read as `0'
bit 2:
                                                                                - n =Value at POR reset
bit 1:
          Unimplemented: Read as '0'

          D/A: Data/Address bit (I2C mode only)
          1 = Indicates that the last byte received or transmitted was data
          0 = Indicates that the last byte received or transmitted was address

          P: Stop bit (I2C mode only. This bit is cleared when the SSP module is disabled, SSPEN is cleared)
          1 = Indicates that a stop bit has been detected last (this bit is '0' on RESET)
          0 = Stop bit was not detected last

          S: Start bit (I2C mode only. This bit is cleared when the SSP module is disabled, SSPEN is cleared)
          1 = Indicates that a start bit has been detected last (this bit is '0' on RESET)
          0 = Start bit was not detected last

          R/W: Read/Write bit information (I2C mode only)
          This bit holds the R/W bit information following the last address match. This bit is valid from the address
          match to the next start bit, stop bit, or ACK bit.
          1 = Read
          0 = Write

          UA: Update Address (10-bit I2C mode only)
          1 = Indicates that the user needs to update the address in the SSPADD register
          0 = Address does not need to be updated

bit 0:    BF: Buffer Full Status bit

          Receive (SPI and I2C modes)
          1 = Receive complete, SSPBUF is full
          0 = Receive not complete, SSPBUF is empty

          Transmit (I2C mode only)
          1 = Transmit in progress, SSPBUF is full
          0 = Transmit complete, SSPBUF is empty

DS39016A-page 40                           Preliminary                           1998 Microchip Technology Inc.
                                                        PIC16C72 Series

FIGURE 8-2: SSPCON: SYNC SERIAL PORT CONTROL REGISTER (ADDRESS 14h) (PIC16C72)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

WCOL SSPOV SSPEN                 CKP  SSPM3 SSPM2 SSPM1 SSPM0                             R = Readable bit
bit7                                                                                 bit0  W = Writable bit
                                                                                           U = Unimplemented bit,

                                                                                                 read as `0'
                                                                                           - n =Value at POR reset

bit 7: WCOL: Write Collision Detect bit

1 = The SSPBUF register is written while it is still transmitting the previous word
(must be cleared in software)

0 = No collision

bit 6: SSPOV: Receive Overflow Detect bit

In SPI mode
1 = A new byte is received while the SSPBUF register is still holding the previous data. In case of over-
flow, the data in SSPSR register is lost. Overflow can only occur in slave mode. The user must read the
SSPBUF, even if only transmitting data, to avoid setting overflow. In master operation, the overflow bit is
not set since each new reception (and transmission) is initiated by writing to the SSPBUF register.
0 = No overflow

In I2C mode
1 = A byte is received while the SSPBUF register is still holding the previous byte. SSPOV is a "don't
care" in transmit mode. SSPOV must be cleared in software in either mode.
0 = No overflow

bit 5: SSPEN: Synchronous Serial Port Enable bit

In SPI mode
1 = Enables serial port and configures SCK, SDO, and SDI as serial port pins
0 = Disables serial port and configures these pins as I/O port pins

In I2C mode
1 = Enables the serial port and configures the SDA and SCL pins as serial port pins
0 = Disables serial port and configures these pins as I/O port pins
In both modes, when enabled, these pins must be properly configured as input or output.

bit 4: CKP: Clock Polarity Select bit

In SPI mode
1 = Idle state for clock is a high level. Transmit happens on falling edge, receive on rising edge.
0 = Idle state for clock is a low level. Transmit happens on rising edge, receive on falling edge.

In I2C mode
SCK release control
1 = Enable clock
0 = Holds clock low (clock stretch) (Used to ensure data setup time)

bit 3-0: SSPM3:SSPM0: Synchronous Serial Port Mode Select bits

            0000 = SPI master operation, clock = Fosc/4

            0001 = SPI master operation, clock = Fosc/16

            0010 = SPI master operation, clock = Fosc/64

            0011 = SPI master operation, clock = TMR2 output/2

            0100 = SPI slave mode, clock = SCK pin. SS pin control enabled.

            0101 = SPI slave mode, clock = SCK pin. SS pin control disabled. SS can be used as I/O pin.
            0110 = I2C slave mode, 7-bit address
            0111 = I2C slave mode, 10-bit address
            1011 = I2C firmware controlled master operation (slave idle)
            1110 = I2C slave mode, 7-bit address with start and stop bit interrupts enabled
            1111 = I2C slave mode, 10-bit address with start and stop bit interrupts enabled

1998 Microchip Technology Inc.           Preliminary                                     DS39016A-page 41
PIC16C72 Series

8.2.1 OPERATION OF SSP MODULE IN SPI                            SCK (Slave mode) must have TRISC<3> set
            MODE - PIC16C72                                     SS must have TRISA<5> set (if implemented)

A block diagram of the SSP Module in SPI Mode is               FIGURE 8-3: SSP BLOCK DIAGRAM
shown in Figure 8-3.                                                                (SPI MODE)

The SPI mode allows 8-bits of data to be synchro-                                                           Internal
nously transmitted and received simultaneously. To                                                          data bus
accomplish communication, typically three pins are
used:                                                                                                Write

Serial Data Out (SDO) RC5/SDO                                             Read

Serial Data In (SDI) RC4/SDI/SDA

Serial Clock (SCK)  RC3/SCK/SCL                                                  SSPBUF reg

Additionally a fourth pin may be used when in a slave
mode of operation:

Slave Select (SS)   RA5/SS/AN4                                                          SSPSR reg
                                                                                   bit0
When initializing the SPI, several options need to be          RC4/SDI/SDA                              shift
specified. This is done by programming the appropriate         RC5/SDO                                  clock
control bits in the SSPCON register (SSPCON<5:0>).
These control bits allow the following to be specified:

Master Operation (SCK is the clock output)                   RA5/SS/AN4   SS Control
Slave Mode (SCK is the clock input)                                            Enable
Clock Polarity (Output/Input data on the Rising/
                                                                               Edge
   Falling edge of SCK)                                                        Select
Clock Rate (master operation only)
Slave Select Mode (Slave mode only)                                                            2
                                                                                          Clock Select
To enable the serial port, SSP enable bit SSPEN
(SSPCON<5>) must be set. To reset or reconfigure SPI                               SSPM3:SSPM0          TMR2 output
mode, clear enable bit SSPEN, re-initialize SSPCON                                               4              2
register, and then set enable bit SSPEN. This config-
ures the SDI, SDO, SCK, and SS pins as serial port                                  Edge             Prescaler TCY
pins. For the pins to behave as the serial port function,                          Select            4, 16, 64
they must have their data direction bits (in the TRIS reg-
ister) appropriately programmed. That is:                      RC3/SCK/
                                                               SCL

SDI must have TRISC<4> set                                                       TRISC<3>
SDO must have TRISC<5> cleared
SCK (master operation) must have TRISC<3>

   cleared

TABLE 8-1 REGISTERS ASSOCIATED WITH SPI OPERATION

Address Name          Bit 7  Bit 6 Bit 5 Bit 4 Bit 3             Bit 2      Bit 1  Bit 0     Value on:         Value on
                                                                                                POR,           all other
                                                                                                BOR             resets

0Bh,8Bh  INTCON       GIE    PEIE T0IE INTE                 RBIE T0IF INTF RBIF 0000 000x 0000 000u
0Ch      PIR1                                               SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000
8Ch      PIE1         (1)    ADIF   (1)              (1)    SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000
87h      TRISC
                      (1)    ADIE   (1)              (1)                                                        1111 1111 1111 1111

                      PORTC Data Direction Register

13h      SSPBUF Synchronous Serial Port Receive Buffer/Transmit Register                     xxxx xxxx uuuu uuuu

14h      SSPCON WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 0000 0000 0000 0000

85h      TRISA        --     -- PORTA Data Direction Register                                --11 1111 --11 1111

94h      SSP-         --     --     D/A              P      S    R/W        UA     BF --00 0000 --00 0000

         STAT

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by the SSP in SPI mode.
Note 1: These bits are unimplemented, read as '0'.

DS39016A-page 42                                    Preliminary                     1998 Microchip Technology Inc.
                                                              PIC16C72 Series

8.3 SPI Mode for PIC16CR72                             Additional information on SPI operation may be found
                                                       in the PICmicroTM Mid-Range MCU Reference Manual,
This section contains register definitions and opera-  DS33023.
tional characteristics of the SPI module on the
PIC16CR72 device only.

FIGURE 8-4: SSPSTAT: SYNC SERIAL PORT STATUS REGISTER (ADDRESS 94h) (PIC16CR72)

R/W-0 R/W-0 R-0                   R-0  R-0  R-0        R-0    R-0

SMP CKE D/A                       P    S    R/W        UA     BF       R = Readable bit
                                                                 bit0  W = Writable bit
bit7                                                                   U = Unimplemented bit,

                                                                             read as `0'
                                                                       - n =Value at POR reset

bit 7:  SMP: SPI data input sample phase
        SPI Master Operation
        1 = Input data sampled at end of data output time
        0 = Input data sampled at middle of data output time
        SPI Slave Mode
        SMP must be cleared when SPI is used in slave mode

bit 6:  CKE: SPI Clock Edge Select
        CKP = 0
bit 5:  1 = Data transmitted on rising edge of SCK
bit 4:  0 = Data transmitted on falling edge of SCK
bit 3:  CKP = 1
bit 2:  1 = Data transmitted on falling edge of SCK
bit 1:  0 = Data transmitted on rising edge of SCK

        D/A: Data/Address bit (I2C mode only)
        1 = Indicates that the last byte received or transmitted was data
        0 = Indicates that the last byte received or transmitted was address

        P: Stop bit (I2C mode only. This bit is cleared when the SSP module is disabled, or when the Start bit is
        detected last, SSPEN is cleared)
        1 = Indicates that a stop bit has been detected last (this bit is '0' on RESET)
        0 = Stop bit was not detected last

        S: Start bit (I2C mode only. This bit is cleared when the SSP module is disabled, or when the Stop bit is
        detected last, SSPEN is cleared)
        1 = Indicates that a start bit has been detected last (this bit is '0' on RESET)
        0 = Start bit was not detected last

        R/W: Read/Write bit information (I2C mode only)
        This bit holds the R/W bit information following the last address match. This bit is only valid from the
        address match to the next start bit, stop bit, or ACK bit.
        1 = Read
        0 = Write

        UA: Update Address (10-bit I2C mode only)
        1 = Indicates that the user needs to update the address in the SSPADD register
        0 = Address does not need to be updated

bit 0:  BF: Buffer Full Status bit

        Receive (SPI and I2C modes)
        1 = Receive complete, SSPBUF is full
        0 = Receive not complete, SSPBUF is empty

        Transmit (I2C mode only)
        1 = Transmit in progress, SSPBUF is full
        0 = Transmit complete, SSPBUF is empty

1998 Microchip Technology Inc.            Preliminary                DS39016A-page 43
PIC16C72 Series

FIGURE 8-5: SSPCON: SYNC SERIAL PORT CONTROL REGISTER (ADDRESS 14h) (PIC16CR72)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 R = Readable bit

bit7                                                       bit0 W = Writable bit
                                                                              U = Unimplemented bit,

                                                                                    read as `0'
                                                                              - n =Value at POR reset

bit 7: WCOL: Write Collision Detect bit

        1 = The SSPBUF register is written while it is still transmitting the previous word
        (must be cleared in software)
        0 = No collision

bit 6: SSPOV: Receive Overflow Indicator bit

        In SPI mode
        1 = A new byte is received while the SSPBUF register is still holding the previous data. In case of over-
        flow, the data in SSPSR is lost. Overflow can only occur in slave mode. The user must read the SSPBUF,
        even if only transmitting data, to avoid setting overflow. In master operation, the overflow bit is not set
        since each new reception (and transmission) is initiated by writing to the SSPBUF register.
        0 = No overflow

        In I2C mode
        1 = A byte is received while the SSPBUF register is still holding the previous byte. SSPOV is a "don't
        care" in transmit mode. SSPOV must be cleared in software in either mode.
        0 = No overflow

bit 5: SSPEN: Synchronous Serial Port Enable bit

        In SPI mode
        1 = Enables serial port and configures SCK, SDO, and SDI as serial port pins
        0 = Disables serial port and configures these pins as I/O port pins

        In I2C mode
        1 = Enables the serial port and configures the SDA and SCL pins as serial port pins
        0 = Disables serial port and configures these pins as I/O port pins
        In both modes, when enabled, these pins must be properly configured as input or output.

bit 4:  CKP: Clock Polarity Select bit
        In SPI mode
        1 = Idle state for clock is a high level
        0 = Idle state for clock is a low level
        In I2C mode
        SCK release control
        1 = Enable clock
        0 = Holds clock low (clock stretch) (Used to ensure data setup time)

bit 3-0: SSPM3:SSPM0: Synchronous Serial Port Mode Select bits

            0000 = SPI master operation, clock = FOSC/4

            0001 = SPI master operation, clock = FOSC/16

            0010 = SPI master operation, clock = FOSC/64

            0011 = SPI master operation, clock = TMR2 output/2

            0100 = SPI slave mode, clock = SCK pin. SS pin control enabled.

            0101 = SPI slave mode, clock = SCK pin. SS pin control disabled. SS can be used as I/O pin
            0110 = I2C slave mode, 7-bit address
            0111 = I2C slave mode, 10-bit address
            1011 = I2C firmware controlled master operation (slave idle)
            1110 = I2C slave mode, 7-bit address with start and stop bit interrupts enabled
            1111 = I2C slave mode, 10-bit address with start and stop bit interrupts enabled

DS39016A-page 44                              Preliminary                      1998 Microchip Technology Inc.
                                                                    PIC16C72 Series

8.3.1 OPERATION OF SSP MODULE IN SPI                      FIGURE 8-6: SSP BLOCK DIAGRAM
            MODE - PIC16CR72                                                   (SPI MODE)(PIC16CR72)

A block diagram of the SSP Module in SPI Mode is                                                  Internal
shown in Figure 8-6.                                                                              data bus

The SPI mode allows 8-bits of data to be synchro-                      Read              Write
nously transmitted and received simultaneously. To
accomplish communication, typically three pins are                           SSPBUF reg
used:

Serial Data Out (SDO) RC5/SDO

Serial Data In (SDI) RC4/SDI/SDA                                            SSPSR reg
                                                                       bit0
Serial Clock (SCK)  RC3/SCK/SCL                         RC4/SDI/SDA                             shift
                                                          RC5/SDO                                 clock
Additionally a fourth pin may be used when in a slave
mode of operation:

Slave Select (SS)   RA5/SS/AN4

When initializing the SPI, several options need to be     RA5/SS/AN4   SS Control
specified. This is done by programming the appropriate                      Enable
control bits in the SSPCON register (SSPCON<5:0>)
and SSPSTAT<7:6>. These control bits allow the fol-                       Edge
lowing to be specified:                                                   Select

Master Operation (SCK is the clock output)                                               2
Slave Mode (SCK is the clock input)                                               Clock Select
Clock Polarity (Idle state of SCK)
Clock Edge (Output data on rising/falling edge of                    SSPM3:SSPM0          TMR2 output
                                                                                     4              2
   SCK)
Clock Rate (master operation only)                                    Edge             Prescaler TCY
Slave Select Mode (Slave mode only)                                  Select            4, 16, 64

To enable the serial port, SSP Enable bit, SSPEN          RC3/SCK/
(SSPCON<5>) must be set. To reset or reconfigure SPI      SCL
mode, clear bit SSPEN, re-initialize the SSPCON reg-
ister, and then set bit SSPEN. This configures the SDI,                TRISC<3>
SDO, SCK, and SS pins as serial port pins. For the pins
to behave as the serial port function, they must have
their data direction bits (in the TRISC register) appro-
priately programmed. That is:

SDI must have TRISC<4> set
SDO must have TRISC<5> cleared
SCK (master operation) must have TRISC<3>

   cleared
SCK (Slave mode) must have TRISC<3> set
SS must have TRISA<5> set

Note:  When the SPI is in Slave Mode with SS pin
Note:  control enabled, (SSPCON<3:0> = 0100)
       the SPI module will reset if the SS pin is set
       to VDD.

       If the SPI is used in Slave Mode with
       CKE = '1', then the SS pin control must be
       enabled.

1998 Microchip Technology Inc.             Preliminary                                 DS39016A-page 45
PIC16C72 Series

TABLE 8-2 REGISTERS ASSOCIATED WITH SPI OPERATION (PIC16CR72)

Address Name      Bit 7  Bit 6 Bit 5 Bit 4 Bit 3         Bit 2            Bit 1  Bit 0  Value on:  Value on
                                                                                           POR,    all other
                                                                                           BOR      resets

0Bh,8Bh  INTCON   GIE    PEIE T0IE INTE               RBIE T0IF INTF RBIF 0000 000x 0000 000u
0Ch      PIR1                                         SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000
8Ch      PIE1     (1)    ADIF  (1)               (1)  SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000
87h      TRISC
                  (1)    ADIE  (1)               (1)                                                       1111 1111 1111 1111

                  PORTC Data Direction Register

13h      SSPBUF Synchronous Serial Port Receive Buffer/Transmit Register                xxxx xxxx uuuu uuuu

14h      SSPCON WCOL     SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 0000 0000 0000 0000

85h      TRISA    --     -- PORTA Data Direction Register                               --11 1111 --11 1111

94h      SSPSTAT SMP     CKE D/A                 P    S  R/W              UA     BF 0000 0000 0000 0000

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used by the SSP in SPI mode.
Note 1: Always maintain these bits clear.

DS39016A-page 46                    Preliminary                                  1998 Microchip Technology Inc.
8.4 SSP I2C Operation                                             PIC16C72 Series

The SSP module in I2C mode fully implements all slave        The SSPCON register allows control of the I2C opera-
functions, except general call support, and provides         tion. Four mode selection bits (SSPCON<3:0>) allow
interrupts on start and stop bits in hardware to facilitate  one of the following I2C modes to be selected:
firmware implementations of the master functions. The         I2C Slave mode (7-bit address)
SSP module implements the standard mode specifica-            I2C Slave mode (10-bit address)
tions as well as 7-bit and 10-bit addressing.                I2C Slave mode (7-bit address), with start and

Two pins are used for data transfer. These are the RC3/         stop bit interrupts enabled
SCK/SCL pin, which is the clock (SCL), and the RC4/          I2C Slave mode (10-bit address), with start and
SDI/SDA pin, which is the data (SDA). The user must
configure these pins as inputs or outputs through the           stop bit interrupts enabled
TRISC<4:3> bits.                                              I2C Firmware controlled master operation, slave

The SSP module functions are enabled by setting SSP             is idle
Enable bit SSPEN (SSPCON<5>).                                Selection of any I2C mode, with the SSPEN bit set,
                                                             forces the SCL and SDA pins to be open drain, pro-
FIGURE 8-7: SSP BLOCK DIAGRAM                                vided these pins are programmed to inputs by setting
                     (I2C MODE)                              the appropriate TRISC bits.
                                                             Additional information on SSP I2C operation may be
             Read                         Internal           found in the PICmicroTM Mid-Range MCU Reference
                                         data bus            Manual, DS33023.

                                     Write                   8.4.1 SLAVE MODE

RC3/SCK/SCL         SSPBUF reg                               In slave mode, the SCL and SDA pins must be config-
                                                             ured as inputs (TRISC<4:3> set). The SSP module will
             shift                                           override the input state with the output data when
             clock                                           required (slave-transmitter).

                    SSPSR reg                                When an address is matched or the data transfer after
                                                             an address match is received, the hardware automati-
RC4/         MSb                  LSb                        cally will generate the acknowledge (ACK) pulse, and
SDI/                                                         then load the SSPBUF register with the received value
                                                             currently in the SSPSR register.
SDA
                                                             There are certain conditions that will cause the SSP
                    Match detect       Addr Match            module not to give this ACK pulse. These are if either
                                                             (or both):
                    SSPADD reg
                                                             a) The buffer full bit BF (SSPSTAT<0>) was set
                       Start and          Set, Reset               before the transfer was received.
                    Stop bit detect       S, P bits
                                       (SSPSTAT reg)         b) The overflow bit SSPOV (SSPCON<6>) was set
                                                                   before the transfer was received.
The SSP module has five registers for I2C operation.
These are the:                                               In this case, the SSPSR register value is not loaded
                                                             into the SSPBUF, but bit SSPIF (PIR1<3>) is set.
SSP Control Register (SSPCON)                              Table 8-3 shows what happens when a data transfer
SSP Status Register (SSPSTAT)                              byte is received, given the status of bits BF and
Serial Receive/Transmit Buffer (SSPBUF)                    SSPOV. The shaded cells show the condition where
SSP Shift Register (SSPSR) - Not directly acces-           user software did not properly clear the overflow condi-
                                                             tion. Flag bit BF is cleared by reading the SSPBUF reg-
   sible                                                     ister while bit SSPOV is cleared through software.
SSP Address Register (SSPADD)
                                                             The SCL clock input must have a minimum high and
                                                             low for proper operation. The high and low times of the
                                                             I2C specification as well as the requirement of the SSP
                                                             module is shown in timing parameter #100 and param-
                                                             eter #101.

1998 Microchip Technology Inc.                    Preliminary  DS39016A-page 47
PIC16C72 Series

8.4.1.1 ADDRESSING                                            `1111 0 A9 A8 0', where A9 and A8 are the two MSbs
                                                              of the address. The sequence of events for 10-bit
Once the SSP module has been enabled, it waits for a          address is as follows, with steps 7- 9 for slave-transmit-
START condition to occur. Following the START condi-          ter:
tion, the 8-bits are shifted into the SSPSR register. All
incoming bits are sampled with the rising edge of the         1. Receive first (high) byte of Address (bits SSPIF,
clock (SCL) line. The value of register SSPSR<7:1> is               BF, and bit UA (SSPSTAT<1>) are set).
compared to the value of the SSPADD register. The
address is compared on the falling edge of the eighth         2. Update the SSPADD register with second (low)
clock (SCL) pulse. If the addresses match, and the BF               byte of Address (clears bit UA and releases the
and SSPOV bits are clear, the following events occur:               SCL line).

a) The SSPSR register value is loaded into the                3. Read the SSPBUF register (clears bit BF) and
      SSPBUF register.                                              clear flag bit SSPIF.

b) The buffer full bit, BF is set.                            4. Receive second (low) byte of Address (bits
                                                                    SSPIF, BF, and UA are set).
c) An ACK pulse is generated.
                                                              5. Update the SSPADD register with the first (high)
d) SSP interrupt flag bit, SSPIF (PIR1<3>) is set                   byte of Address, if match releases SCL line, this
      (interrupt is generated if enabled) - on the falling          will clear bit UA.
      edge of the ninth SCL pulse.
                                                              6. Read the SSPBUF register (clears bit BF) and
In 10-bit address mode, two address bytes need to be                clear flag bit SSPIF.
received by the slave. The five Most Significant bits
(MSbs) of the first address byte specify if this is a 10-bit  7. Receive repeated START condition.
address. Bit R/W (SSPSTAT<2>) must specify a write
so the slave device will receive the second address           8. Receive first (high) byte of Address (bits SSPIF
byte. For a 10-bit address the first byte would equal               and BF are set).

                                                              9. Read the SSPBUF register (clears bit BF) and
                                                                    clear flag bit SSPIF.

TABLE 8-3 DATA TRANSFER RECEIVED BYTE ACTIONS

Status Bits as Data                                                               Set bit SSPIF
Transfer is Received                                                        (SSP Interrupt occurs

BF  SSPOV             SSPSR  SSPBUF                           Generate ACK         if enabled)
                                 Yes                                Pulse
0                 0               No                                                     Yes
                                  No                                 Yes                 Yes
1                 0               No                                  No                 Yes
                                                                      No                 Yes
1                 1                                                   No

0                 1

DS39016A-page 48      Preliminary                                           1998 Microchip Technology Inc.
                                                                    PIC16C72 Series

8.4.1.2 RECEPTION                                         When the address byte overflow condition exists, then
                                                          no acknowledge (ACK) pulse is given. An overflow con-
When the R/W bit of the address byte is clear and an      dition is defined as either bit BF (SSPSTAT<0>) is set
address match occurs, the R/W bit of the SSPSTAT          or bit SSPOV (SSPCON<6>) is set.
register is cleared. The received address is loaded into
the SSPBUF register.                                      An SSP interrupt is generated for each data transfer
                                                          byte. Flag bit SSPIF (PIR1<3>) must be cleared in soft-
                                                          ware. The SSPSTAT register is used to determine the
                                                          status of the byte.

FIGURE 8-8: I2C WAVEFORMS FOR RECEPTION (7-BIT ADDRESS)

                 Receiving Address R/W=0  Receiving Data            ACK  Receiving Data                                              ACK

SDA  A7 A6 A5 A4 A3 A2 A1         ACK D7 D6 D5 D4 D3 D2 D1 D0            D7 D6 D5 D4 D3 D2 D1 D0

SCL S 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9                                                                               P

SSPIF (PIR1<3>)                                Cleared in software                                                                        Bus Master
BF (SSPSTAT<0>)                           SSPBUF register is read                                                                         terminates
                                                                                                                                          transfer

SSPOV (SSPCON<6>)

                                                          Bit SSPOV is set because the SSPBUF register is still full.
                                                                                                                   ACK is not sent.

1998 Microchip Technology Inc.          Preliminary                                    DS39016A-page 49
PIC16C72 Series

8.4.1.3 TRANSMISSION                                       An SSP interrupt is generated for each data transfer
                                                           byte. Flag bit SSPIF must be cleared in software, and
When the R/W bit of the incoming address byte is set       the SSPSTAT register is used to determine the status
and an address match occurs, the R/W bit of the            of the byte. Flag bit SSPIF is set on the falling edge of
SSPSTAT register is set. The received address is           the ninth clock pulse.
loaded into the SSPBUF register. The ACK pulse will
be sent on the ninth bit, and pin RC3/SCK/SCL is held      As a slave-transmitter, the ACK pulse from the master-
low. The transmit data must be loaded into the SSP-        receiver is latched on the rising edge of the ninth SCL
BUF register, which also loads the SSPSR register.         input pulse. If the SDA line was high (not ACK), then the
Then pin RC3/SCK/SCL should be enabled by setting          data transfer is complete. When the ACK is latched by
bit CKP (SSPCON<4>). The master must monitor the           the slave, the slave logic is reset (resets SSPSTAT reg-
SCL pin prior to asserting another clock pulse. The        ister) and the slave then monitors for another occur-
slave devices may be holding off the master by stretch-    rence of the START bit. If the SDA line was low (ACK),
ing the clock. The eight data bits are shifted out on the  the transmit data must be loaded into the SSPBUF reg-
falling edge of the SCL input. This ensures that the SDA   ister, which also loads the SSPSR register. Then pin
signal is valid during the SCL high time (Figure 8-9).     RC3/SCK/SCL should be enabled by setting bit CKP.

FIGURE 8-9: I2C WAVEFORMS FOR TRANSMISSION (7-BIT ADDRESS)

                          Receiving Address  R/W = 1                                                  Transmitting Data ACK
                                                                         D7 D6 D5 D4 D3 D2 D1 D0
SDA              A7 A6 A5 A4 A3 A2 A1        ACK

SCL              1 2 345 6 7 8 9                                         1234 56789                                                     P
             S
                 Data in                                   SCL held low

                 sampled                                      while CPU
                                                           responds to SSPIF

SSPIF (PIR1<3>)                                                               cleared in software

BF (SSPSTAT<0>)

                                                                                                                    From SSP interrupt
                                                                         SSPBUF is written in software service routine

CKP (SSPCON<4>)

                                                                              Set bit after writing to SSPBUF
                                                                              (the SSPBUF must be written-to

                                                                              before the CKP bit can be set)

DS39016A-page 50                             Preliminary                      1998 Microchip Technology Inc.
                                                                             PIC16C72 Series

8.4.2 MASTER OPERATION                                       8.4.3 MULTI-MASTER OPERATION

Master operation is supported in firmware using inter-       In multi-master operation, the interrupt generation on
rupt generation on the detection of the START and            the detection of the START and STOP conditions
STOP conditions. The STOP (P) and START (S) bits             allows the determination of when the bus is free. The
are cleared from a reset or when the SSP module is           STOP (P) and START (S) bits are cleared from a reset
disabled. The STOP (P) and START (S) bits will toggle        or when the SSP module is disabled. The STOP (P)
based on the START and STOP conditions. Control of           and START (S) bits will toggle based on the START and
the I2C bus may be taken when the P bit is set, or the       STOP conditions. Control of the I2C bus may be taken
bus is idle and both the S and P bits are clear.             when bit P (SSPSTAT<4>) is set, or the bus is idle and
                                                             both the S and P bits clear. When the bus is busy,
In master operation, the SCL and SDA lines are manip-        enabling the SSP Interrupt will generate the interrupt
ulated in firmware by clearing the corresponding             when the STOP condition occurs.
TRISC<4:3> bit(s). The output level is always low, irre-
spective of the value(s) in PORTC<4:3>. So when              In multi-master operation, the SDA line must be moni-
transmitting data, a '1' data bit must have the              tored to see if the signal level is the expected output
TRISC<4> bit set (input) and a '0' data bit must have        level. This check only needs to be done when a high
the TRISC<4> bit cleared (output). The same scenario         level is output. If a high level is expected and a low level
is true for the SCL line with the TRISC<3> bit.              is present, the device needs to release the SDA and
                                                             SCL lines (set TRISC<4:3>). There are two stages
The following events will cause SSP Interrupt Flag bit,      where this arbitration can be lost, these are:
SSPIF, to be set (SSP Interrupt if enabled):
                                                             Address Transfer
START condition
                                                             Data Transfer
STOP condition
                                                             When the slave logic is enabled, the slave continues to
Data transfer byte transmitted/received                    receive. If arbitration was lost during the address trans-
                                                             fer stage, communication to the device may be in
Master operation can be done with either the slave           progress. If addressed an ACK pulse will be generated.
mode idle (SSPM3:SSPM0 = 1011) or with the slave             If arbitration was lost during the data transfer stage, the
active. When both master operation and slave modes           device will need to re-transfer the data at a later time.
are used, the software needs to differentiate the
source(s) of the interrupt.                                  For more information on master operation, see AN578
                                                             - Use of the SSP Module in the of I2C Multi-Master
For more information on master operation, see AN554          Environment.
- Software Implementation of I2C Bus Master.

TABLE 8-4 REGISTERS ASSOCIATED WITH I2C OPERATION

Address Name      Bit 7           Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0      Value on  Value on
                                                                                   POR,    all other
                                                                                   BOR      resets

0Bh, 8Bh, INTCON  GIE             PEIE T0IE INTE RBIE T0IF INTF RBIF 0000 000x 0000 000u

10Bh,18Bh

0Ch         PIR1  (1)             ADIF  (1)      (1) SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

8Ch         PIE1  (1)             ADIE  (1)      (1) SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

13h         SSPBUF Synchronous Serial Port Receive Buffer/Transmit Register      xxxx xxxx uuuu uuuu

93h         SSPADD Synchronous Serial Port (I2C mode) Address Register           0000 0000 0000 0000

14h         SSPCON WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 0000 0000 0000 0000

94h         SSPSTAT SMP(2) CKE(2) D/A            P        S   R/W            UA  BF 0000 0000 0000 0000

87h         TRISC PORTC Data Direction register                                  1111 1111 1111 1111

Legend:     x = unknown, u = unchanged, - = unimplemented locations read as '0'.
            Shaded cells are not used by SSP module in SPI mode.
Note 1:     These bits are unimplemented, read as '0'.
        2:  The SMP and CKE bits are implemented on the PIC16CR72 only. On the PIC16C72, these two bits are unimplemented,
            read as '0'.

1998 Microchip Technology Inc.                 Preliminary                     DS39016A-page 51
PIC16C72 Series

NOTES:

DS39016A-page 52  Preliminary   1998 Microchip Technology Inc.
                                                                        PIC16C72 Series

9.0 ANALOG-TO-DIGITAL                                      Additional information on the A/D module is available in
         CONVERTER (A/D) MODULE                            the PICmicroTM Mid-Range MCU Reference Manual,
                                                           DS33023.
The analog-to-digital (A/D) converter module has five
inputs for the PIC16C72/R72.                               The A/D module has three registers. These registers
                                                           are:
The A/D allows conversion of an analog input signal to
a corresponding 8-bit digital number (refer to Applica-          A/D Result Register (ADRES)
tion Note AN546 for use of A/D Converter). The output             A/D Control Register 0 (ADCON0)
of the sample and hold is the input into the converter,          A/D Control Register 1 (ADCON1)
which generates the result via successive approxima-
tion. The analog reference voltage is software select-     A device reset forces all registers to their reset state.
able to either the device's positive supply voltage (VDD)  This forces the A/D module to be turned off, and any
or the voltage level on the RA3/AN3/VREF pin.              conversion is aborted.

The A/D converter has a unique feature of being able       The ADCON0 register, shown in Figure 9-1, controls
to operate while the device is in SLEEP mode. To oper-     the operation of the A/D module. The ADCON1 regis-
ate in sleep, the A/D conversion clock must be derived     ter, shown in Figure 9-2, configures the functions of the
from the A/D's internal RC oscillator.                     port pins. The port pins can be configured as analog
                                                           inputs (RA3 can also be a voltage reference) or as dig-
                                                           ital I/O.

FIGURE 9-1: ADCON0 REGISTER (ADDRESS 1Fh)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0                                U-0  R/W-0
                                                                        ADON
ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/DONE --                                              R = Readable bit
                                                                             bit0  W = Writable bit
bit7                                                                               U = Unimplemented bit,

                                                                                         read as `0'
                                                                                   - n = Value at POR reset

bit 7-6:  ADCS1:ADCS0: A/D Conversion Clock Select bits
          00 = FOSC/2
          01 = FOSC/8
          10 = FOSC/32
          11 = FRC (clock derived from an internal RC oscillator)

bit 5-3: CHS2:CHS0: Analog Channel Select bits
            000 = channel 0, (RA0/AN0)
            001 = channel 1, (RA1/AN1)
            010 = channel 2, (RA2/AN2)
            011 = channel 3, (RA3/AN3)
            100 = channel 4, (RA5/AN4)

bit 2: GO/DONE: A/D Conversion Status bit

          If ADON = 1
          1 = A/D conversion in progress (setting this bit starts the A/D conversion)
          0 = A/D conversion not in progress (This bit is automatically cleared by hardware when the A/D conver-
          sion is complete)

bit 1: Unimplemented: Read as '0'

bit 0:    ADON: A/D On bit
          1 = A/D converter module is operating
          0 = A/D converter module is shutoff and consumes no operating current

1998 Microchip Technology Inc.           Preliminary                             DS39016A-page 53
PIC16C72 Series

FIGURE 9-2: ADCON1 REGISTER (ADDRESS 9Fh)

U-0   U-0         U-0   U-0   U-0         R/W-0            R/W-0  R/W-0
                                                           PCFG1  PCFG0
--    --          --    --    --          PCFG2                               R = Readable bit
                                                                        bit0  W = Writable bit
bit7                                                                          U = Unimplemented

                                                                                    bit, read as `0'
                                                                              - n = Value at POR reset

bit 7-3: Unimplemented: Read as '0'
bit 2-0: PCFG2:PCFG0: A/D Port Configuration Control bits

           PCFG2:PCFG0   RA0   RA1   RA2   RA5              RA3    VREF
                   000
                   001  A     A     A     A                A      VDD
                   010  A     A     A     A                VREF   RA3
                   011  A     A     A     A                A      VDD
                   100  A     A     A     A                VREF   RA3
                   101  A     A     D     D                A      VDD
                   11x  A     A     D     D                VREF   RA3
                        D     D     D     D                D      GND
      A = Analog input
      D = Digital I/O

DS39016A-page 54                    Preliminary                           1998 Microchip Technology Inc.
                                                                   PIC16C72 Series

The ADRES register contains the result of the A/D con-          2. Configure A/D interrupt (if desired):
version. When the A/D conversion is complete, the                      Clear ADIF bit
result is loaded into the ADRES register, the GO/DONE                  Set ADIE bit
bit (ADCON0<2>) is cleared, and A/D interrupt flag bit                Set GIE bit
ADIF is set. The block diagram of the A/D module is
shown in Figure 9-3.                                            3. Wait the required acquisition time.
                                                                4. Start conversion:
The value that is in the ADRES register is not modified
for a Power-on Reset. The ADRES register will contain                  Set GO/DONE bit (ADCON0)
unknown data after a Power-on Reset.                            5. Wait for A/D conversion to complete, by either:

After the A/D module has been configured as desired,                   Polling for the GO/DONE bit to be cleared
the selected channel must be acquired before the con-                 OR
version is started. The analog input channels must                     Waiting for the A/D interrupt
have their corresponding TRIS bits selected as an               6. Read A/D Result register (ADRES), clear bit
input. To determine acquisition time, see Section 9.1.                ADIF if required.
After this acquisition time has elapsed the A/D conver-         7. For next conversion, go to step 1 or step 2 as
sion can be started. The following steps should be fol-               required. The A/D conversion time per bit is
lowed for doing an A/D conversion:                                    defined as TAD. A minimum wait of 2TAD is
                                                                      required before next acquisition starts.
1. Configure the A/D module:
       Configure analog pins / voltage reference /                           CHS2:CHS0
         and digital I/O (ADCON1)
       Select A/D input channel (ADCON0)
       Select A/D conversion clock (ADCON0)
       Turn on A/D module (ADCON0)

FIGURE 9-3: A/D BLOCK DIAGRAM

                                              VAIN                 100
                                        (Input voltage)                                         RA5/AN4

                                                                   011
                                                                                                RA3/AN3/VREF

    A/D                                                            010
Converter                                                                                       RA2/AN2

                                                                   001
                                                                                                RA1/AN1

                                                         VDD       000
                                                                                                RA0/AN0

                                  VREF                     000 or
                                                           010 or

                                                           100

                                  (Reference               001 or
                                   voltage)                011 or

                                                           101

                                              PCFG2:PCFG0

1998 Microchip Technology Inc.              Preliminary          DS39016A-page 55
PIC16C72 Series

9.1 A/D Acquisition Requirements                                     To calculate the minimum acquisition time, TACQ, see
                                                                     the PICmicroTM Mid-Range MCU Reference Manual,
For the A/D converter to meet its specified accuracy,                DS33023. This equation calculates the acquisition time
the charge holding capacitor (CHOLD) must be allowed                 to within 1/2 LSb error (512 steps for the A/D). The 1/2
to fully charge to the input channel voltage level. The              LSb error is the maximum error allowed for the A/D to
analog input model is shown in Figure 9-4. The source                meet its specified accuracy.
impedance (RS) and the internal sampling switch (RSS)
impedance directly affect the time required to charge
the capacitor CHOLD. The sampling switch (RSS)
impedance varies over the device voltage (VDD). The
source impedance affects the offset voltage at the ana-
log input (due to pin leakage current). The maximum
recommended impedance for analog sources is 10
k. After the analog input channel is selected
(changed) this acquisition must be done before the
conversion can be started.

FIGURE 9-4: ANALOG INPUT MODEL

                      Rs ANx         VDD                                        Sampling
                                           VT = 0.6V                            Switch

                                                                     RIC  1k    SS RSS

                  VA           CPIN                                  I leakage              CHOLD
                                                                      500 nA               = DAC capacitance
                               5 pF                     VT = 0.6V                           = 51.2 pF

                                                                                          VSS

                  Legend CPIN  = input capacitance                                    6V
                                                                                      5V
                      VT       = threshold voltage                              VDD 4V
                                                                                      3V
                      I leakage = leakage current at the pin due to                   2V

                                     various junctions                                             5 6 7 8 9 10 11
                                                                                                  Sampling Switch
                      RIC      = interconnect resistance
                      SS       = sampling switch                                                          ( k )
                      CHOLD    = sample/hold capacitance (from DAC)

DS39016A-page 56                                        Preliminary                        1998 Microchip Technology Inc.
                                                                   PIC16C72 Series

9.2 Selecting the A/D Conversion Clock                  9.3 Configuring Analog Port Pins

The A/D conversion time per bit is defined as TAD. The  The ADCON1, TRISA, and TRISE registers control the
A/D conversion requires 9.5TAD per 8-bit conversion.    operation of the A/D port pins. The port pins that are
The source of the A/D conversion clock is software      desired as analog inputs must have their correspond-
selectable. The four possible options for TAD are:      ing TRIS bits set (input). If the TRIS bit is cleared (out-
                                                        put), the digital output level (VOH or VOL) will be
       2TOSC                                           converted.
       8TOSC
       32TOSC                                          The A/D operation is independent of the state of the
       Internal RC oscillator                          CHS2:CHS0 bits and the TRIS bits.

For correct A/D conversions, the A/D conversion clock       Note 1: When reading the port register, all pins
(TAD) must be selected to ensure a minimum TAD time                     configured as analog input channels will
of 1.6 s.                                                              read as cleared (a low level). Pins config-
                                                                        ured as digital inputs, will convert an ana-
Table 9-1 shows the resultant TAD times derived from                    log input. Analog levels on a digitally
the device operating frequencies and the A/D clock                      configured input will not affect the conver-
source selected.                                                        sion accuracy.

                                                            Note 2: Analog levels on any pin that is defined as
                                                                        a digital input (including the AN4:AN0
                                                                        pins), may cause the input buffer to con-
                                                                        sume current that is out of the devices
                                                                        specification.

TABLE 9-1 TAD vs. DEVICE OPERATING FREQUENCIES

       AD Clock Source (TAD)                            Device Frequency

Operation  ADCS1:ADCS0            20 MHz                5 MHz          1.25 MHz           333.33 kHz

2TOSC      00                     100 ns(2)             400 ns(2)      1.6 s             6 s

8TOSC      01                     400 ns(2)             1.6 s         6.4 s             24 s(3)

32TOSC     10                     1.6 s                6.4 s         25.6 s(3)         96 s(3)

RC(5)      11                     2 - 6 s(1,4)         2 - 6 s(1,4)  2 - 6 s(1,4)      2 - 6 s(1)

Legend: Shaded cells are outside of recommended range.

Note 1: The RC source has a typical TAD time of 4 s.

2: These values violate the minimum required TAD time.

3: For faster conversion times, the selection of another clock source is recommended.

4: When device frequency is greater than 1 MHz, the RC A/D conversion clock source is recommended for

        sleep operation only.

5: For extended voltage devices (LC), please refer to Electrical Specifications section.

1998 Microchip Technology Inc.  Preliminary                                             DS39016A-page 57
PIC16C72 Series

9.4 A/D Conversions                                             GO/DONE bit will be set, starting the A/D conversion,
                                                                and the Timer1 counter will be reset to zero. Timer1 is
   Note: The GO/DONE bit should NOT be set in                   reset to automatically repeat the A/D acquisition period
               the same instruction that turns on the A/D.      with minimal software overhead (moving the ADRES to
                                                                the desired location). The appropriate analog input
9.5 Use of the CCP Trigger                                      channel must be selected and the minimum acquisition
                                                                done before the "special event trigger" sets the
An A/D conversion can be started by the "special event          GO/DONE bit (starts a conversion).
trigger" of the CCP1 module. This requires that the
CCP1M3:CCP1M0 bits (CCP1CON<3:0>) be pro-                       If the A/D module is not enabled (ADON is cleared),
grammed as 1011 and that the A/D module is enabled              then the "special event trigger" will be ignored by the
(ADON bit is set). When the trigger occurs, the                 A/D module, but will still reset the Timer1 counter.

TABLE 9-2 REGISTERS/BITS ASSOCIATED WITH A/D

Address Name      Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2                Bit 1  Bit 0  Value on:  Value on all
                                                                                      POR,    other Resets
                                                                                      BOR

0Bh,8Bh  INTCON GIE PEIE T0IE INTE RBIE T0IF                         INTF RBIF 0000 000x      0000 000u
0Ch                                                                                           -0-- 0000
8Ch      PIR1     -- ADIF -- -- SSPIF CCP1IF TMR2IF TMR1IF -0-- 0000                          -0-- 0000
1Eh                                                                                           uuuu uuuu
1Fh      PIE1     -- ADIE -- -- SSPIE CCP1IE TMR2IE TMR1IE -0-- 0000                          0000 00-0
9Fh                                                                                           ---- -000
         ADRES A/D Result Register                                                 xxxx xxxx

         ADCON0 ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/DONE --                       ADON 0000 00-0

         ADCON1 --    --            --  --                  --  PCFG2 PCFG1 PCFG0 ---- -000

05h      PORTA    --  -- RA5 RA4 RA3                            RA2  RA1    RA0 --0x 0000 --0u 0000

85h      TRISA    --  -- PORTA Data Direction Register                             --11 1111 --11 1111

Legend: x = unknown, u = unchanged, - = unimplemented read as '0'. Shaded cells are not used for A/D conversion.

DS39016A-page 58                        Preliminary                         1998 Microchip Technology Inc.
                                                                PIC16C72 Series

10.0 SPECIAL FEATURES OF THE                                  ble. The other is the Power-up Timer (PWRT), which
         CPU                                                  provides a fixed delay of 72 ms (nominal) on power-up
                                                              only, designed to keep the part in reset while the power
The PIC16C72 series has a host of such features               supply stabilizes. With these two timers on-chip, most
intended to maximize system reliability, minimize cost        applications need no external reset circuitry.
through elimination of external components, provide
power saving operating modes and offer code protec-           SLEEP mode is designed to offer a very low current
tion. These are:                                              power-down mode. The user can wake-up from SLEEP
                                                              through external reset, Watchdog Timer Wake-up, or
Oscillator selection                                        through an interrupt. Several oscillator options are also
Reset                                                       made available to allow the part to fit the application.
                                                              The RC oscillator option saves system cost while the
   - Power-on Reset (POR)                                     LP crystal option saves power. A set of configuration
   - Power-up Timer (PWRT)                                    bits are used to select various options.
   - Oscillator Start-up Timer (OST)
   - Brown-out Reset (BOR)                                    Additional information on special features is available in
Interrupts                                                  the PICmicroTM Mid-Range MCU Family Reference
Watchdog Timer (WDT)                                        Manual, DS33023.
SLEEP
Code protection                                             10.1 Configuration Bits
ID locations
In-Circuit Serial ProgrammingTM                             The configuration bits can be programmed (read as '0')
                                                              or left unprogrammed (read as '1') to select various
The PIC16CXXX family has a Watchdog Timer which               device configurations. These bits are mapped in pro-
can be shut off only through configuration bits. It runs      gram memory location 2007h.
off its own RC oscillator for added reliability. There are
two timers that offer necessary delays on power-up.           The user will note that address 2007h is beyond the
One is the Oscillator Start-up Timer (OST), intended to       user program memory space. In fact, it belongs to the
keep the chip in reset until the crystal oscillator is sta-   special test/configuration memory space (2000h -
                                                              3FFFh), which can be accessed only during program-
                                                              ming.

FIGURE 10-1: CONFIGURATION WORD FOR PIC16C72/R72

CP1 CP0 CP1 CP0 CP1 CP0 -- BODEN CP1 CP0 PWRTE                  WDTE  FOSC1  FOSC0      Register:CONFIG
                                                                                  bit0  Address2007h
bit13
           CP1:CP0: Code Protection bits (2)
bit 13-8   11 = Code protection off
     5-4:  10 = Upper half of program memory code protected
           01 = Upper 3/4th of program memory code protected
           00 = All memory is code protected

bit 7:     Unimplemented: Read as '1'
bit 6:
           BODEN: Brown-out Reset Enable bit (1)
bit 3:     1 = BOR enabled
           0 = BOR disabled

           PWRTE: Power-up Timer Enable bit (1)
           1 = PWRT disabled
           0 = PWRT enabled

bit 2:     WDTE: Watchdog Timer Enable bit
           1 = WDT enabled
           0 = WDT disabled

bit 1-0:   FOSC1:FOSC0: Oscillator Selection bits
           11 = RC oscillator
           10 = HS oscillator
           01 = XT oscillator
           00 = LP oscillator

Note 1: Enabling Brown-out Reset automatically enables Power-up Timer (PWRT) regardless of the value of bit PWRTE.
             Ensure the Power-up Timer is enabled anytime Brown-out Reset is enabled.

        2: All of the CP1:CP0 pairs have to be given the same value to enable the code protection scheme listed.

1998 Microchip Technology Inc.                   Preliminary                          DS39016A-page 59
PIC16C72 Series

10.2 Oscillator Configurations                           TABLE 10-1 CERAMIC RESONATORS

10.2.1 OSCILLATOR TYPES                                  Ranges Tested:

The PIC16CXXX family can be operated in four differ-     Mode      Freq     OSC1            OSC2
ent oscillator modes. The user can program two config-
uration bits (FOSC1 and FOSC0) to select one of these    XT        455 kHz 68 - 100 pF 68 - 100 pF
four modes:
                                                                   2.0 MHz 15 - 68 pF 15 - 68 pF

                                                                   4.0 MHz 15 - 68 pF 15 - 68 pF

LP      Low Power Crystal                              HS        8.0 MHz 10 - 68 pF 10 - 68 pF

XT      Crystal/Resonator                                        16.0 MHz 10 - 22 pF 10 - 22 pF

HS      High Speed Crystal/Resonator                        These values are for design guidance only. See
                                                              notes at bottom of page.
RC Resistor/Capacitor

10.2.2 CRYSTAL OSCILLATOR/CERAMIC                        Resonators Used:
            RESONATORS
                                                         455 kHz Panasonic EFO-A455K04B 0.3%
In XT, LP or HS modes a crystal or ceramic resonator     2.0 MHz Murata Erie CSA2.00MG 0.5%
is connected to the OSC1/CLKIN and OSC2/CLKOUT           4.0 MHz Murata Erie CSA4.00MG 0.5%
pins to establish oscillation (Figure 10-2). The         8.0 MHz Murata Erie CSA8.00MT 0.5%
PIC16CXXX family oscillator design requires the use of   16.0 MHz Murata Erie CSA16.00MX 0.5%
a parallel cut crystal. Use of a series cut crystal may
give a frequency out of the crystal manufacturers spec-        All resonators used did not have built-in capacitors.
ifications. When in XT, LP or HS modes, the device can
have an external clock source to drive the OSC1/         TABLE 10-2 CAPACITOR SELECTION
CLKIN pin (Figure 10-3).                                                      FOR CRYSTAL OSCILLATOR

                                                         Osc Type  Crystal  Cap. Range Cap. Range
                                                                    Freq
                                                                                     C1     C2

FIGURE 10-2: CRYSTAL/CERAMIC                                  LP   32 kHz   33 pF           33 pF
                     RESONATOR OPERATION
                     (HS, XT OR LP                                 200 kHz  15 pF           15 pF
                     OSC CONFIGURATION)
                                                              XT   200 kHz  47-68 pF        47-68 pF

                                                                   1 MHz    15 pF           15 pF

      C1(1)            OSC1                                        4 MHz    15 pF           15 pF

                                            To                HS   4 MHz    15 pF           15 pF
                                            internal
               XTAL                         logic                  8 MHz    15-33 pF        15-33 pF
                                    SLEEP
                       OSC2  RF(3)    PIC16CXXX                    20 MHz   15-33 pF        15-33 pF
               RS(2)
      C2(1)                                                   These values are for design guidance only. See
                                                              notes at bottom of page.

                                                                           Crystals Used

Note1:    See Table 10-1 and Table 10-2 for recom-            32 kHz Epson C-001R32.768K-A   20 PPM
      2:  mended values of C1 and C2.
      3:  A series resistor (RS) may be required for     200 kHz STD XTL 200.000KHz          20 PPM
          AT strip cut crystals.
          RF varies with the crystal chosen.                  1 MHz ECS ECS-10-13-1          50 PPM

                                                              4 MHz ECS ECS-40-20-1          50 PPM

                                                              8 MHz EPSON CA-301 8.000M-C 30 PPM

                                                         20 MHz EPSON CA-301 20.000M-C 30 PPM

FIGURE 10-3: EXTERNAL CLOCK INPUT                        Note 1: Recommended values of C1 and C2 are
                     OPERATION (HS, XT OR LP                         identical to the ranges tested (Table 10-1).
                     OSC CONFIGURATION)
                                                                2: Higher capacitance increases the stability
Clock from                   OSC1                                    of oscillator but also increases the start-up
ext. system                           PIC16CXXX                      time.

                 Open        OSC2                               3: Since each resonator/crystal has its own
                                                                     characteristics, the user should consult the
                                                                     resonator/crystal manufacturer for appropri-
                                                                     ate values of external components.

                                                                4: Rs may be required in HS mode as well as
                                                                     XT mode to avoid overdriving crystals with
                                                                     low drive level specification.

DS39016A-page 60                                 Preliminary                1998 Microchip Technology Inc.
10.2.3 RC OSCILLATOR                                            PIC16C72 Series

For timing insensitive applications the "RC" device        10.3 Reset
option offers additional cost savings. The RC oscillator
frequency is a function of the supply voltage, the resis-  The PIC16CXXX family differentiates between various
tor (REXT) and capacitor (CEXT) values, and the operat-    kinds of reset:
ing temperature. In addition to this, the oscillator
frequency will vary from unit to unit due to normal pro-    Power-on Reset (POR)
cess parameter variation. Furthermore, the difference       MCLR reset during normal operation
in lead frame capacitance between package types will       MCLR reset during SLEEP
also affect the oscillation frequency, especially for low   WDT Reset (normal operation)
CEXT values. The user also needs to take into account       Brown-out Reset (BOR)
variation due to tolerance of external R and C compo-
nents used. Figure 10-4 shows how the R/C combina-         Some registers are not affected in any reset condition;
tion is connected to the PIC16CXXX family.                 their status is unknown on POR and unchanged in any
                                                           other reset. Most other registers are reset to a "reset
FIGURE 10-4: RC OSCILLATOR MODE                            state" on Power-on Reset (POR), on the MCLR and
                                                           WDT Reset, on MCLR reset during SLEEP, and Brown-
      VDD                                                  out Reset (BOR). They are not affected by a WDT
                                                           Wake-up, which is viewed as the resumption of normal
Rext                                                       operation. The TO and PD bits are set or cleared differ-
                                                           ently in different reset situations as indicated in
           OSC1                               Internal     Table 10-4. These bits are used in software to deter-
                                               clock       mine the nature of the reset. See Table 10-6 for a full
                                                           description of reset states of all registers.
Cext                                          PIC16CXXX
                                                           A simplified block diagram of the on-chip reset circuit is
VSS                                                        shown in Figure 10-5.
                                 OSC2/CLKOUT
                                                           The PIC16C72/CR72 have a MCLR noise filter in the
                    Fosc/4                                 MCLR reset path. The filter will detect and ignore small
                                                           pulses.
Recommended values: 3 k  Rext  100 k
                                  Cext > 20pF              It should be noted that a WDT Reset does not drive
                                                           MCLR pin low.

1998 Microchip Technology Inc.                        Preliminary  DS39016A-page 61
PIC16C72 Series

FIGURE 10-5: SIMPLIFIED BLOCK DIAGRAM OF ON-CHIP RESET CIRCUIT

                                             External
                                              Reset

MCLR                      SLEEP
VDD   WDT WDT
      Module Time-out

                   Reset

      VDD rise
       detect

                       Power-on Reset

      Brown-out                                                                        S

                  Reset BODEN

      OST/PWRT                                                                                 Chip_Reset
                     OST                                                                  Q

                   10-bit Ripple counter                                               R

OSC1

              (1)  PWRT
                        10-bit Ripple counter
      On-chip
      RC OSC

                                                                          Enable PWRT
                                                                           Enable OST
Note 1: This is a separate oscillator from the RC oscillator of the CLKIN pin.

DS39016A-page 62                               Preliminary                              1998 Microchip Technology Inc.
10.4 Power-On Reset (POR)                                          PIC16C72 Series

A Power-on Reset pulse is generated on-chip when              10.5 Power-up Timer (PWRT)
VDD rise is detected (in the range of 1.5V - 2.1V). To
take advantage of the POR, just tie the MCLR pin              The Power-up Timer provides a fixed 72 ms nominal
directly (or through a resistor) to VDD. This will eliminate  time-out on power-up only, from the POR. The Power-
external RC components usually needed to create a             up Timer operates on an internal RC oscillator. The
Power-on Reset. A maximum rise time for VDD is spec-          chip is kept in reset as long as the PWRT is active. The
ified. See Electrical Specifications for details. For a       PWRT's time delay allows VDD to rise to an acceptable
slow rise time, see Figure 10-6.                              level. A configuration bit is provided to enable/disable
                                                              the PWRT.
When the device starts normal operation (exits the
reset condition), device operating parameters (voltage,       The power-up time delay will vary from chip to chip due
frequency, temperature,...) must be met to ensure oper-       to VDD, temperature, and process variation. See DC
ation. If these conditions are not met, the device must       parameters for details.
be held in reset until the operating conditions are met.
Brown-out Reset may be used to meet the startup con-          10.6 Oscillator Start-up Timer (OST)
ditions.
                                                              The Oscillator Start-up Timer (OST) provides 1024
FIGURE 10-6: EXTERNAL POWER-ON                                oscillator cycle (from OSC1 input) delay after the
                     RESET CIRCUIT (FOR SLOW                  PWRT delay is over. This ensures that the crystal oscil-
                     VDD POWER-UP)                            lator or resonator has started and stabilized.

   VDD                                                        The OST time-out is invoked only for XT, LP and HS
                                                              modes and only on Power-on Reset or wake-up from
D  R                                                          SLEEP.

        C  R1                                                 10.7 Brown-Out Reset (BOR)
                      MCLR
                                                              A configuration bit, BODEN, can disable (if clear/pro-
                     PIC16CXXX                                grammed) or enable (if set) the Brown-out Reset cir-
                                                              cuitry. If VDD falls below 4.0V (3.8V - 4.2V range) for
Note 1: External Power-on Reset circuit is                    greater than parameter #35, the brown-out situation will
            required only if VDD power-up slope is too        reset the chip. A reset may not occur if VDD falls below
            slow. The diode D helps discharge the             4.0V for less than parameter #35. The chip will remain
            capacitor quickly when VDD powers down.           in Brown-out Reset until VDD rises above BVDD. The
                                                              Power-up Timer will now be invoked and will keep the
       2: R < 40 k is recommended to make sure                chip in RESET an additional 72 ms. If VDD drops below
            that voltage drop across R does not violate       BVDD while the Power-up Timer is running, the chip will
            the device's electrical specification.            go back into a Brown-out Reset and the Power-up
                                                              Timer will be initialized. Once VDD rises above BVDD,
       3: R1 = 100 to 1 k will limit any current              the Power-up Timer will execute a 72 ms time delay.
            flowing into MCLR from external capacitor         The Power-up Timer should always be enabled when
            C in the event of MCLR/VPP pin break-             Brown-out Reset is enabled.
            down due to Electrostatic Discharge
            (ESD) or Electrical Overstress (EOS).

1998 Microchip Technology Inc.  Preliminary                 DS39016A-page 63
PIC16C72 Series

10.8 Time-out Sequence                                        10.9 Power Control/Status Register
                                                                        (PCON)
On power-up the time-out sequence is as follows: First
PWRT time-out is invoked after the POR time delay has         The Power Control/Status Register, PCON has up to
expired. Then OST is activated. The total time-out will       two bits, depending upon the device.
vary based on oscillator configuration and the status of
the PWRT. For example, in RC mode with the PWRT               Bit0 is Brown-out Reset Status bit, BOR. Bit BOR is
disabled, there will be no time-out at all. Figure 10-7,      unknown on a Power-on Reset. It must then be set by
Figure 10-8, Figure 10-9 and Figure 10-10 depict time-        the user and checked on subsequent resets to see if bit
out sequences on power-up.                                    BOR cleared, indicating a BOR occurred. The BOR bit
                                                              is a "Don't Care" bit and is not necessarily predictable
Since the time-outs occur from the POR pulse, if MCLR         if the Brown-out Reset circuitry is disabled (by clearing
is kept low long enough, the time-outs will expire. Then      bit BODEN in the Configuration Word).
bringing MCLR high will begin execution immediately
(Figure 10-9). This is useful for testing purposes or to      Bit1 is POR (Power-on Reset Status bit). It is cleared
synchronize more than one PIC16CXXX family device             on a Power-on Reset and unaffected otherwise. The
operating in parallel.                                        user must set this bit following a Power-on Reset.

Table 10-5 shows the reset conditions for some special
function registers, while Table 10-6 shows the reset
conditions for all the registers.

TABLE 10-3 TIME-OUT IN VARIOUS SITUATIONS

Oscillator Configura-                Power-up                             Brown-out    Wake-up from
            tion                                                     72 ms + 1024TOSC       SLEEP
                              PWRTE = 0  PWRTE = 1
       XT, HS, LP                                                            72 ms        1024TOSC
                               72 ms +         1024TOSC
            RC                1024TOSC                                                         --

                              72 ms                       --

TABLE 10-4 STATUS BITS AND THEIR SIGNIFICANCE

POR BOR TO PD

0          x      1 1 Power-on Reset

0          x      0 x Illegal, TO is set on POR

0          x      x 0 Illegal, PD is set on POR

1          0      x x Brown-out Reset

1          1      0 1 WDT Reset

1          1      0 0 WDT Wake-up

1          1      u u MCLR Reset during normal operation

1          1      1 0 MCLR Reset during SLEEP or interrupt wake-up from SLEEP

TABLE 10-5 RESET CONDITION FOR SPECIAL REGISTERS

                  Condition                               Program    STATUS             PCON
                                                          Counter    Register          Register

Power-on Reset                                            000h       0001 1xxx         ---- --0x

MCLR Reset during normal operation                        000h       000u uuuu         ---- --uu

MCLR Reset during SLEEP                                   000h       0001 0uuu         ---- --uu

WDT Reset                                                 000h       0000 1uuu         ---- --uu

WDT Wake-up                                               PC + 1     uuu0 0uuu         ---- --uu

Brown-out Reset                                             000h     0001 1uuu         ---- --u0
Interrupt wake-up from SLEEP                              PC + 1(1)  uuu1 0uuu         ---- --uu

Legend: u = unchanged, x = unknown, - = unimplemented bit read as '0'.
Note 1: When the wake-up is due to an interrupt and the GIE bit is set, the PC is loaded with the interrupt vector (0004h).

DS39016A-page 64                         Preliminary                            1998 Microchip Technology Inc.
                                                    PIC16C72 Series

TABLE 10-6 INITIALIZATION CONDITIONS FOR ALL REGISTERS

      Register  Power-on Reset,        MCLR Resets      Wake-up via WDT or Inter-
                Brown-out Reset         WDT Reset                      rupt

W               xxxx xxxx              uuuu uuuu        uuuu uuuu

INDF                              N/A  N/A              N/A

TMR0            xxxx xxxx               uuuu uuuu        uuuu uuuu
PCL                0000h                   0000h           PC + 1(2)
STATUS
                0001 1xxx              000q quuu(3)     uuuq quuu(3)

FSR             xxxx xxxx              uuuu uuuu        uuuu uuuu

PORTA           --0x 0000              --0u 0000        --uu uuuu

PORTB           xxxx xxxx              uuuu uuuu        uuuu uuuu

PORTC           xxxx xxxx              uuuu uuuu        uuuu uuuu

PCLATH          ---0 0000              ---0 0000         ---u uuuu
INTCON          0000 000x              0000 000u        uuuu uuuu(1)
PIR1            -0-- 0000              -0-- 0000        -u-- uuuu(1)

TMR1L           xxxx xxxx              uuuu uuuu        uuuu uuuu

TMR1H           xxxx xxxx              uuuu uuuu        uuuu uuuu

T1CON           --00 0000              --uu uuuu        --uu uuuu

TMR2            0000 0000              0000 0000        uuuu uuuu

T2CON           -000 0000              -000 0000        -uuu uuuu

SSPBUF          xxxx xxxx              uuuu uuuu        uuuu uuuu

SSPCON          0000 0000              0000 0000        uuuu uuuu

CCPR1L          xxxx xxxx              uuuu uuuu        uuuu uuuu

CCPR1H          xxxx xxxx              uuuu uuuu        uuuu uuuu

CCP1CON         --00 0000              --00 0000        --uu uuuu

ADRES           xxxx xxxx              uuuu uuuu        uuuu uuuu

ADCON0          0000 00-0              0000 00-0        uuuu uu-u

OPTION          1111 1111              1111 1111        uuuu uuuu

TRISA           --11 1111              --11 1111        --uu uuuu

TRISB           1111 1111              1111 1111        uuuu uuuu

TRISC           1111 1111              1111 1111        uuuu uuuu

PIE1            -0-- 0000              -0-- 0000        -u-- uuuu

PCON            ---- --0u              ---- --uu        ---- --uu

PR2             1111 1111              1111 1111        1111 1111

SSPADD          0000 0000              0000 0000        uuuu uuuu

SSPSTAT         --00 0000              --00 0000        --uu uuuu

ADCON1          ---- -000              ---- -000        ---- -uuu

Legend: u = unchanged, x = unknown, - = unimplemented bit, read as '0', q = value depends on condition
Note 1: One or more bits in INTCON, PIR1 and/or PIR2 will be affected (to cause wake-up).

       2: When the wake-up is due to an interrupt and the GIE bit is set, the PC is loaded with the interrupt vector
            (0004h).

       3: See Table 10-5 for reset value for specific condition.

1998 Microchip Technology Inc.       Preliminary      DS39016A-page 65
PIC16C72 Series

FIGURE 10-7: TIME-OUT SEQUENCE ON POWER-UP (MCLR TIED TO VDD)

VDD

               MCLR      TPWRT
  INTERNAL POR
                                       TOST
PWRT TIME-OUT
  OST TIME-OUT

INTERNAL RESET

FIGURE 10-8: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED TO VDD): CASE 1

                  VDD           TPWRT
               MCLR
  INTERNAL POR                               TOST

PWRT TIME-OUT
  OST TIME-OUT

INTERNAL RESET

FIGURE 10-9: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED TO VDD): CASE 2

                    VDD         TPWRT
                 MCLR
   INTERNAL POR                              TOST

PWRT TIME-OUT
    OST TIME-OUT

INTERNAL RESET

DS39016A-page 66         Preliminary                1998 Microchip Technology Inc.
                                                   PIC16C72 Series

FIGURE 10-10: SLOW RISE TIME (MCLR TIED TO VDD)

                 VDD              0V         1V    5V
             MCLR                                           TOST
INTERNAL POR                         TPWRT

PWRT TIME-OUT

    OST TIME-OUT
INTERNAL RESET

1998 Microchip Technology Inc.      Preliminary                 DS39016A-page 67
PIC16C72 Series

10.10 Interrupts                                                     For external interrupt events, such as the INT pin or
                                                                     PORTB change interrupt, the interrupt latency will be
The PIC16C72/CR72 has 8 sources of interrupt. The                    three or four instruction cycles. The exact latency
interrupt control register (INTCON) records individual               depends when the interrupt event occurs. The latency
interrupt requests in flag bits. It also has individual and          is the same for one or two cycle instructions. Individual
global interrupt enable bits.                                        interrupt flag bits are set regardless of the status of
                                                                     their corresponding mask bit or the GIE bit
Note:  Individual interrupt flag bits are set regard-
       less of the status of their corresponding                     10.10.1 INT INTERRUPT
       mask bit or the GIE bit.
                                                                     External interrupt on RB0/INT pin is edge triggered:
A global interrupt enable bit, GIE (INTCON<7>)                       either rising if bit INTEDG (OPTION<6>) is set, or fall-
enables (if set) all un-masked interrupts or disables (if            ing, if the INTEDG bit is clear. When a valid edge
cleared) all interrupts. When bit GIE is enabled, and an             appears on the RB0/INT pin, flag bit INTF
interrupt's flag bit and mask bit are set, the interrupt will        (INTCON<1>) is set. This interrupt can be disabled by
vector immediately. Individual interrupts can be dis-                clearing enable bit INTE (INTCON<4>). Flag bit INTF
abled through their corresponding enable bits in vari-               must be cleared in software in the interrupt service rou-
ous registers. Individual interrupt bits are set                     tine before re-enabling this interrupt. The INT interrupt
regardless of the status of the GIE bit. The GIE bit is              can wake-up the processor from SLEEP, if bit INTE was
cleared on reset.                                                    set prior to going into SLEEP. The status of global inter-
                                                                     rupt enable bit GIE decides whether or not the proces-
The "return from interrupt" instruction, RETFIE, exits               sor branches to the interrupt vector following wake-up.
the interrupt routine as well as sets the GIE bit, which             See Section 10.13 for details on SLEEP mode.
re-enables interrupts.
                                                                     10.10.2 TMR0 INTERRUPT
The RB0/INT pin interrupt, the RB port change inter-
rupt and the TMR0 overflow interrupt flags are con-                  An overflow (FFh  00h) in the TMR0 register will set
tained in the INTCON register.                                       flag bit T0IF (INTCON<2>). The interrupt can be
                                                                     enabled/disabled by setting/clearing enable bit T0IE
The peripheral interrupt flags are contained in the spe-             (INTCON<5>). (Section 4.0)
cial function registers PIR1 and PIR2. The correspond-
ing interrupt enable bits are contained in special                   10.10.3 PORTB INTCON CHANGE
function registers PIE1 and PIE2, and the peripheral
interrupt enable bit is contained in special function reg-           An input change on PORTB<7:4> sets flag bit RBIF
ister INTCON.                                                        (INTCON<0>). The interrupt can be enabled/disabled
                                                                     by setting/clearing enable bit RBIE (INTCON<4>).
When an interrupt is responded to, the GIE bit is                    (Section 3.2)
cleared to disable any further interrupt, the return
address is pushed onto the stack and the PC is loaded
with 0004h. Once in the interrupt service routine the
source(s) of the interrupt can be determined by polling
the interrupt flag bits. The interrupt flag bit(s) must be
cleared in software before re-enabling interrupts to
avoid recursive interrupts.

FIGURE 10-11: INTERRUPT LOGIC

       ADIF                                                    T0IF  Wake-up (If in SLEEP mode)
       ADIE                                                    T0IE
                                                               INTF             Interrupt to CPU
                  SSPIF                                        INTE             Clear GIE bit
                  SSPIE                                        RBIF
                                                               RBIE
                  CCP1IF
                  CCP1IE                                       PEIE

                    TMR1IF                                     GIE
                    TMR1IE

       TMR2IF
       TMR2IE

DS39016A-page 68               Preliminary                            1998 Microchip Technology Inc.
                                                          PIC16C72 Series

10.11 Context Saving During Interrupts                    The example:

During an interrupt, only the return PC value is saved    a) Stores the W register.
on the stack. Typically, users may wish to save key reg-  b) Stores the STATUS register in bank 0.
isters during an interrupt, i.e., W register and STATUS   c) Executes the ISR code.
register. This will have to be implemented in software.   d) Restores the STATUS register (and bank select

Example 10-1 stores and restores the W and STATUS               bit).
registers. The register, W_TEMP, must be defined in       e) Restores the W register.
each bank and must be defined at the same offset from
the bank base address (i.e., if W_TEMP is defined at
0x20 in bank 0, it must also be defined at 0xA0 in bank
1).

EXAMPLE 10-1: SAVING STATUS, W, AND PCLATH REGISTERS IN RAM

MOVWF W_TEMP                      ;Copy W to W_TEMP register, could be bank one or zero

SWAPF STATUS,W                    ;Swap status to be saved into W

CLRF  STATUS                      ;bank 0, regardless of current bank, Clears IRP,RP1,RP0

MOVWF STATUS_TEMP                 ;Save status to bank zero STATUS_TEMP register

:

:Interrupt Service Routine (ISR) - user defined

:

SWAPF STATUS_TEMP,W ;Swap STATUS_TEMP register into W

                                  ;(sets bank to original state)

MOVWF STATUS                      ;Move W into STATUS register

SWAPF W_TEMP,F                    ;Swap W_TEMP

SWAPF W_TEMP,W                    ;Swap W_TEMP into W

1998 Microchip Technology Inc.  Preliminary                                     DS39016A-page 69
PIC16C72 Series

10.12 Watchdog Timer (WDT)                                       WDT time-out period values may be found in the Elec-
                                                                 trical Specifications section under parameter #31. Val-
The Watchdog Timer is as a free running on-chip RC               ues for the WDT prescaler (actually a postscaler, but
oscillator which does not require any external compo-            shared with the Timer0 prescaler) may be assigned
nents. This RC oscillator is separate from the RC oscil-         using the OPTION_REG register.
lator of the OSC1/CLKIN pin. That means that the WDT
will run, even if the clock on the OSC1/CLKIN and                   Note:   The CLRWDT and SLEEP instructions clear
OSC2/CLKOUT pins of the device has been stopped,                            the WDT and the postscaler, if assigned to
for example, by execution of a SLEEP instruction.                           the WDT, and prevent it from timing out
                                                                            and generating a device RESET condition.
During normal operation, a WDT time-out generates a
device RESET (Watchdog Timer Reset). If the device is            .
in SLEEP mode, a WDT time-out causes the device to
wake-up and continue with normal operation (Watch-                  Note:   When a CLRWDT instruction is executed
dog Timer Wake-up). The TO bit in the STATUS register                       and the prescaler is assigned to the WDT,
will be cleared upon a Watchdog Timer time-out.                             the prescaler count will be cleared, but the
                                                                            prescaler assignment is not changed.
The WDT can be permanently disabled by clearing
configuration bit WDTE (Section 10.1).

FIGURE 10-12: WATCHDOG TIMER BLOCK DIAGRAM

                     From TMR0 Clock Source
                     (Figure 4-2)

                              0

                  WDT Timer   1      M                                  Postscaler
                                     U                                           8

                                     X

                                                                       8 - to - 1 MUX       PS2:PS0

                     WDT             PSA
                  Enable Bit

                                                                                       To TMR0 (Figure 4-2)

                                                                    0       1

                                                                       MUX             PSA

Note: PSA and PS2:PS0 are bits in the OPTION register.                   WDT
                                                                       Time-out

FIGURE 10-13: SUMMARY OF WATCHDOG TIMER REGISTERS

Address Name         Bit 7    Bit 6                       Bit 5  Bit 4         Bit 3    Bit 2   Bit 1         Bit 0
                                                                 CP0        PWRTE(1)   WDTE    FOSC1         FOSC0
2007h  Config. bits  (1)      BODEN(1) CP1                       T0SE
                                                                               PSA      PS2      PS1           PS0
81h,181h OPTION      RBPU INTEDG T0CS

Legend: Shaded cells are not used by the Watchdog Timer.
Note 1: See Figure 10-1 for operation of these bits.

DS39016A-page 70                     Preliminary                                        1998 Microchip Technology Inc.
10.13 Power-down Mode (SLEEP)                                   PIC16C72 Series

Power-down mode is entered by executing a SLEEP            Other peripherals cannot generate interrupts since dur-
instruction.                                               ing SLEEP, no on-chip clocks are present.

If enabled, the Watchdog Timer will be cleared but         When the SLEEP instruction is being executed, the next
keeps running, the PD bit (STATUS<3>) is cleared, the      instruction (PC + 1) is pre-fetched. For the device to
TO (STATUS<4>) bit is set, and the oscillator driver is    wake-up through an interrupt event, the corresponding
turned off. The I/O ports maintain the status they had,    interrupt enable bit must be set (enabled). Wake-up is
before the SLEEP instruction was executed (driving         regardless of the state of the GIE bit. If the GIE bit is
high, low, or hi-impedance).                               clear (disabled), the device continues execution at the
                                                           instruction after the SLEEP instruction. If the GIE bit is
For lowest current consumption in this mode, place all     set (enabled), the device executes the instruction after
I/O pins at either VDD, or VSS, ensure no external cir-    the SLEEP instruction and then branches to the inter-
cuitry is drawing current from the I/O pin, power-down     rupt address (0004h). In cases where the execution of
the A/D, disable external clocks. Pull all I/O pins, that  the instruction following SLEEP is not desirable, the
are hi-impedance inputs, high or low externally to avoid   user should have a NOP after the SLEEP instruction.
switching currents caused by floating inputs. The
T0CKI input should also be at VDD or VSS for lowest        10.13.2 WAKE-UP USING INTERRUPTS
current consumption. The contribution from on-chip
pull-ups on PORTB should be considered.                    When global interrupts are disabled (GIE cleared) and
                                                           any interrupt source has both its interrupt enable bit
The MCLR pin must be at a logic high level (VIHMC).        and interrupt flag bit set, one of the following will occur:

10.13.1 WAKE-UP FROM SLEEP                                  If the interrupt occurs before the execution of a
                                                              SLEEP instruction, the SLEEP instruction will com-
The device can wake up from SLEEP through one of              plete as a NOP. Therefore, the WDT and WDT
the following events:                                         postscaler will not be cleared, the TO bit will not
                                                              be set and PD bits will not be cleared.
1. External reset input on MCLR pin.
2. Watchdog Timer Wake-up (if WDT was                      If the interrupt occurs during or after the execu-
                                                              tion of a SLEEP instruction, the device will immedi-
      enabled).                                               ately wake up from sleep. The SLEEP instruction
3. Interrupt from INT pin, RB port change, or some            will be completely executed before the wake-up.
                                                              Therefore, the WDT and WDT postscaler will be
      Peripheral Interrupts.                                  cleared, the TO bit will be set and the PD bit will
                                                              be cleared.
External MCLR Reset will cause a device reset. All
other events are considered a continuation of program      Even if the flag bits were checked before executing a
execution and cause a "wake-up". The TO and PD bits        SLEEP instruction, it may be possible for flag bits to
in the STATUS register can be used to determine the        become set before the SLEEP instruction completes. To
cause of device reset. The PD bit, which is set on         determine whether a SLEEP instruction executed, test
power-up, is cleared when SLEEP is invoked. The TO bit     the PD bit. If the PD bit is set, the SLEEP instruction was
is cleared if a WDT time-out occurred (and caused          executed as a NOP.
wake-up).
                                                           To ensure that the WDT is cleared, a CLRWDT instruc-
The following peripheral interrupts can wake the device    tion should be executed before a SLEEP instruction.
from SLEEP:

1. TMR1 interrupt. Timer1 must be operating as
      an asynchronous counter.

2. SSP (Start/Stop) bit detect interrupt.
3. SSP transmit or receive in slave mode (SPI/I2C).
4. CCP capture mode interrupt.
5. A/D conversion (when A/D clock source is RC).
6. Special event trigger (Timer1 in asynchronous

      mode using an external clock).

1998 Microchip Technology Inc.  Preliminary              DS39016A-page 71
PIC16C72 Series

FIGURE 10-14: WAKE-UP FROM SLEEP THROUGH INTERRUPT

                   Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1                                  Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
        OSC1                                                    TOST(2)
CLKOUT(4)

         INT pin                                                              Interrupt Latency
                                                                                    (Note 2)
INTF flag
(INTCON<1>)                                       Processor in
                                                     SLEEP
GIE bit
(INTCON<7>)

INSTRUCTION FLOW

             PC   PC                  PC+1        PC+2               PC+2           PC + 2          0004h        0005h
                                    Inst(PC + 1)                Inst(PC + 2)  Dummy cycle        Inst(0004h)  Inst(0005h)
Instruction       Inst(PC) = SLEEP  SLEEP                       Inst(PC + 1)                     Dummy cycle  Inst(0004h)
fetched               Inst(PC - 1)

Instruction
executed

Note 1:      XT, HS or LP oscillator mode assumed.
         2:  TOST = 1024TOSC (drawing not to scale) This delay will not be there for RC osc mode.
         3:  GIE = '1' assumed. In this case after wake- up, the processor jumps to the interrupt routine. If GIE = '0', execution will continue in-line.
         4:  CLKOUT is not available in these osc modes, but shown here for timing reference.

10.14 Program Verification/Code Protection

If the code protection bit(s) have not been pro-
grammed, the on-chip program memory can be read
out for verification purposes.

   Note: Microchip does not recommend code pro-
               tecting windowed devices.

10.15 ID Locations

Four memory locations (2000h - 2003h) are designated
as ID locations where the user can store checksum or
other code-identification numbers. These locations are
not accessible during normal execution but are read-
able and writable during program/verify. It is recom-
mended that only the 4 least significant bits of the ID
location are used.

For ROM devices, these values are submitted along
with the ROM code.

10.16 In-Circuit Serial ProgrammingTM

PIC16CXXX family microcontrollers can be serially
programmed while in the end application circuit. This is
simply done with two lines for clock and data, and three
other lines for power, ground, and the programming
voltage. This allows customers to manufacture boards
with unprogrammed devices, and then program the
microcontroller just before shipping the product. This
also allows the most recent firmware or a custom firm-
ware to be programmed.

For complete details of serial programming, please
refer to the In-Circuit Serial Programming (ICSPTM)
Guide, DS30277.

DS39016A-page 72                                  Preliminary                                     1998 Microchip Technology Inc.
                                                                       PIC16C72 Series

11.0 INSTRUCTION SET SUMMARY                                   Table 11-2 lists the instructions recognized by the
                                                               MPASM assembler.
Each PIC16CXXX family instruction is a 14-bit word
divided into an OPCODE which specifies the instruc-            Figure 11-1 shows the general formats that the instruc-
tion type and one or more operands which further spec-         tions can have.
ify the operation of the instruction. The PIC16CXXX
family instruction set summary in Table 11-2 lists byte-       Note:   To maintain upward compatibility with
oriented, bit-oriented, and literal and control opera-                 future PIC16CXXX products, do not use
tions. Table 11-1 shows the opcode field descriptions.                 the OPTION and TRIS instructions.

For byte-oriented instructions, 'f' represents a file reg-     All examples use the following format to represent a
ister designator and 'd' represents a destination desig-       hexadecimal number:
nator. The file register designator specifies which file
register is to be used by the instruction.                           0xhh
                                                               where h signifies a hexadecimal digit.
The destination designator specifies where the result of
the operation is to be placed. If 'd' is zero, the result is   FIGURE 11-1: GENERAL FORMAT FOR
placed in the W register. If 'd' is one, the result is placed                       INSTRUCTIONS
in the file register specified in the instruction.
                                                                   Byte-oriented file register operations
For bit-oriented instructions, 'b' represents a bit field
designator which selects the number of the bit affected            13                8 76                           0
by the operation, while 'f' represents the number of the
file in which the bit is located.                                      OPCODE        d                  f (FILE #)

For literal and control operations, 'k' represents an                  d = 0 for destination W
eight or eleven bit constant or literal value.                         d = 1 for destination f
                                                                       f = 7-bit file register address
TABLE 11-1 OPCODE FIELD
                     DESCRIPTIONS                                  Bit-oriented file register operations

                                                                   13                10 9 7 6                       0

                                                                       OPCODE        b (BIT #) f (FILE #)

Field  Description                                                     b = 3-bit bit address
                                                                       f = 7-bit file register address
       Register file address (0x00 to 0x7F)
f

W      Working register (accumulator)                              Literal and control operations

b      Bit address within an 8-bit file register

k      Literal field, constant data or label                       General
                                                                      13
x      Don't care location (= 0 or 1)                                        OPCODE  87                                    0
                                                                                                          k (literal)
       The assembler will generate code with x = 0. It is the

       recommended form of use for compatibility with all

       Microchip software tools.                                       k = 8-bit immediate value

d      Destination select; d = 0: store result in W,

       d = 1: store result in file register f.                     CALL and GOTO instructions only

       Default is d = 1

PC     Program Counter                                             13  11 10                                        0

TO     Time-out bit                                                    OPCODE              k (literal)

PD     Power-down bit                                                  k = 11-bit immediate value

The instruction set is highly orthogonal and is grouped        A description of each instruction is available in the PIC-
into three basic categories:                                   microTM Mid-Range MCU Family Reference Manual,
                                                               DS33023.
Byte-oriented operations

Bit-oriented operations

Literal and control operations

All instructions are executed within one single instruc-
tion cycle, unless a conditional test is true or the pro-
gram counter is changed as a result of an instruction.
In this case, the execution takes two instruction cycles
with the second cycle executed as a NOP. One instruc-
tion cycle consists of four oscillator periods. Thus, for
an oscillator frequency of 4 MHz, the normal instruction
execution time is 1 s. If a conditional test is true or the
program counter is changed as a result of an instruc-
tion, the instruction execution time is 2 s.

1998 Microchip Technology Inc.                      Preliminary                                         DS39016A-page 73
PIC16C72 Series

TABLE 11-2 PIC16CXXX INSTRUCTION SET

Mnemonic,                       Description    Cycles                   14-Bit Opcode        Status Notes
Operands
                                                               MSb                     LSb Affected

                                BYTE-ORIENTED FILE REGISTER OPERATIONS

ADDWF   f, d Add W and f                                     1 00       0111  dfff     ffff  C,DC,Z   1,2
ANDWF                                                        1 00       0101  dfff     ffff      Z    1,2
CLRF    f, d AND W with f                                    1 00       0001  lfff     ffff      Z     2
CLRW                                                         1 00       0001  0xxx     xxxx      Z
COMF    f         Clear f                                    1 00       1001  dfff     ffff      Z    1,2
DECF                                                         1 00       0011  dfff     ffff      Z    1,2
DECFSZ  -         Clear W                                   1(2) 00     1011  dfff     ffff          1,2,3
INCF                                                         1 00       1010  dfff     ffff      Z    1,2
INCFSZ  f, d Complement f                                   1(2) 00     1111  dfff     ffff          1,2,3
IORWF                                                        1 00       0100  dfff     ffff      Z    1,2
MOVF    f, d Decrement f                                     1 00       1000  dfff     ffff      Z    1,2
MOVWF                                                        1 00       0000  lfff     ffff
NOP     f, d Decrement f, Skip if 0                          1 00       0000  0xx0     0000     C     1,2
RLF                                                          1 00       1101  dfff     ffff     C     1,2
RRF     f, d Increment f                                     1 00       1100  dfff     ffff  C,DC,Z   1,2
SUBWF                                                        1 00       0010  dfff     ffff           1,2
SWAPF   f, d Increment f, Skip if 0                          1 00       1110  dfff     ffff      Z    1,2
XORWF                                                        1 00       0110  dfff     ffff
        f, d Inclusive OR W with f

        f, d Move f

        f         Move W to f

        -         No Operation

        f, d Rotate Left f through Carry

        f, d Rotate Right f through Carry

        f, d Subtract W from f

        f, d Swap nibbles in f

        f, d Exclusive OR W with f

                                BIT-ORIENTED FILE REGISTER OPERATIONS

BCF     f, b Bit Clear f                                    1  01 00bb bfff ffff                     1,2
BSF     f, b Bit Set f
BTFSC   f, b Bit Test f, Skip if Clear                      1  01 01bb bfff ffff                     1,2
BTFSS   f, b Bit Test f, Skip if Set
                                               1 (2) 01 10bb bfff ffff                               3

                                               1 (2) 01 11bb bfff ffff                               3

                                        LITERAL AND CONTROL OPERATIONS

ADDLW   k         Add literal and W                         1  11 111x kkkk kkkk C,DC,Z
                  AND literal with W
ANDLW   k         Call subroutine                           1  11 1001 kkkk kkkk             Z
                  Clear Watchdog Timer
CALL    k         Go to address                             2  10 0kkk kkkk kkkk
                  Inclusive OR literal with W
CLRWDT -          Move literal to W                         1  00 0000 0110 0100 TO,PD
                  Return from interrupt
GOTO    k         Return with literal in W                  2  10 1kkk kkkk kkkk
                  Return from Subroutine
IORLW   k         Go into standby mode                      1  11 1000 kkkk kkkk             Z
                  Subtract W from literal
MOVLW k           Exclusive OR literal with W               1  11 00xx kkkk kkkk

RETFIE  -                                                   2  00 0000 0000 1001

RETLW   k                                                   2  11 01xx kkkk kkkk

RETURN -                                                    2  00 0000 0000 1000

SLEEP   -                                                   1  00 0000 0110 0011 TO,PD

SUBLW   k                                                   1  11 110x kkkk kkkk C,DC,Z

XORLW   k                                                   1  11 1010 kkkk kkkk             Z

Note 1: When an I/O register is modified as a function of itself ( e.g., MOVF PORTB, 1), the value used will be that value present
             on the pins themselves. For example, if the data latch is '1' for a pin configured as input and is driven low by an external
             device, the data will be written back with a '0'.

        2: If this instruction is executed on the TMR0 register (and, where applicable, d = 1), the prescaler will be cleared if assigned
             to the Timer0 Module.

        3: If Program Counter (PC) is modified or a conditional test is true, the instruction requires two cycles. The second cycle is
             executed as a NOP.

DS39016A-page 74                               Preliminary                     1998 Microchip Technology Inc.
                                                          PIC16C72 Series

12.0 DEVELOPMENT SUPPORT

12.1 Development Tools

The PICmicrTM microcontrollers are supported with a
full range of hardware and software development tools:
PICMASTER/PICMASTER CE Real-Time

   In-Circuit Emulator
ICEPICTM Low-Cost PIC16C5X and PIC16CXXX

   In-Circuit Emulator
PRO MATE II Universal Programmer
PICSTART Plus Entry-Level Prototype

   Programmer
PICDEM-1 Low-Cost Demonstration Board
PICDEM-2 Low-Cost Demonstration Board
PICDEM-3 Low-Cost Demonstration Board
MPASM Assembler
MPLABTM SIM Software Simulator
MPLAB-C17 (C Compiler)
Fuzzy Logic Development System

  (fuzzyTECH-MP)

A description of each development tool is available in
the Midrange Reference Manual, DS33023.

12.2 PICDEM-2 Low-Cost PIC16CXX
          Demonstration Board

The PICDEM-2 is a simple demonstration board that
supports the PIC16C62, PIC16C64, PIC16C65,
PIC16C73 and PIC16C74 microcontrollers. All the
necessary hardware and software is included to
run the basic demonstration programs. The user
can program the sample microcontrollers provided
with the PICDEM-2 board, on a PRO MATE II pro-
grammer or PICSTART-Plus, and easily test firmware.
The PICMASTER emulator may also be used with the
PICDEM-2 board to test firmware. Additional prototype
area has been provided to the user for adding addi-
tional hardware and connecting it to the microcontroller
socket(s). Some of the features include a RS-232 inter-
face, push-button switches, a potentiometer for simu-
lated analog input, a Serial EEPROM to demonstrate
usage of the I2C bus and separate headers for connec-
tion to an LCD module and a keypad.

1998 Microchip Technology Inc.  Preliminary             DS39016A-page 75
PIC16C72 Series

NOTES:

DS39016A-page 76  Preliminary   1998 Microchip Technology Inc.
                                                             PIC16C72 Series

13.0 ELECTRICAL CHARACTERISTICS - PIC16C72 SERIES

Absolute Maximum Ratings

                     Parameter                               PIC16C72         PIC16CR72

Ambient temperature under bias                               -55 to +125C    -55 to +125C

Storage temperature                                          -65C to +150C  -65C to +150C

Voltage on any pin with respect to VSS (except VDD, MCLR, and RA4) -0.3V to (VDD + 0.3V) -0.3V to (VDD + 0.3V)

Voltage on VDD with respect to VSS                           -0.3 to +7.5V    TBD

Voltage on MCLR with respect to VSS (Note 1)                 -0.3 to +14V     TBD

Voltage on RA4 with respect to Vss                           -0.3 to +14V     TBD

Total power dissipation (Note 2)                             1.0W             1.0W

Maximum current out of VSS pin                               300 mA           300 mA

Maximum current into VDD pin                                 250 mA           250 mA

Input clamp current, IIK (VI < 0 or VI > VDD)                20 mA          20 mA

Output clamp current, IOK (VO < 0 or VO > VDD)                20 mA          20 mA

Maximum output current sunk by any I/O pin                   25 mA            25 mA

Maximum output current sourced by any I/O pin                25 mA            25 mA

Maximum current sunk by PORTA and PORTB (combined)           200 mA           200 mA

Maximum current sourced by PORTA and PORTB (combined)        200 mA           200 mA

Maximum current sunk by PORTC                                200 mA           200 mA

Maximum current sourced by PORTC                             200 mA           200 mA

1. Voltage spikes below VSS at the MCLR pin, inducing currents greater than 80 mA, may cause latch-up. Thus,
      a series resistor of 50-100 should be used when applying a "low" level to the MCLR pin rather than pulling this
      pin directly to VSS.

2. Power dissipation is calculated as follows: Pdis = VDD x {IDD -  IOH} +  {(VDD - VOH) x IOH} + (VOl x IOL).

NOTICE: Stresses above those listed under "Absolute Maximum Ratings" may cause permanent damage to the device. This is a
stress rating only and functional operation of the device at those or any other conditions above those indicated in the operation list-
ings of this specification is not implied. Exposure to maximum rating conditions for extended periods may affect device reliability.

1998 Microchip Technology Inc.                Preliminary                   DS39016A-page 77
PIC16C72 Series

TABLE 13-1 CROSS REFERENCE OF DEVICE SPECS (PIC16C72) FOR OSCILLATOR
                     CONFIGURATIONS AND FREQUENCIES OF OPERATION (COMMERCIAL DEVICES)

OSC  PIC16C72-04               PIC16C72-10               PIC16C72-20               PIC16LC72-04              JW Devices

     VDD: 4.0V to 6.0V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 2.5V to 6.0V         VDD: 4.0V to 6.0V

RC   IDD: 5 mA max. at 5.5V    IDD: 2.7 mA typ. at 5.5V  IDD: 2.7 mA typ. at 5.5V  IDD: 3.8 mA max. at 3.0V IDD: 5 mA max. at 5.5V
     IPD: 16 A max. at 4V     IPD: 1.5 A typ. at 4V    IPD: 1.5 A typ. at 4V    IPD: 5.0 A max. at 3V IPD: 16 A max. at 4V

     Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.

     VDD: 4.0V to 6.0V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 2.5V to 6.0V         VDD: 4.0V to 6.0V

XT   IDD: 5 mA max. at 5.5V    IDD: 2.7 mA typ. at 5.5V  IDD: 2.7 mA typ. at 5.5V  IDD: 3.8 mA max. at 3.0V IDD: 5 mA max. at 5.5V
     IPD: 16 A max. at 4V     IPD: 1.5 A typ. at 4V    IPD: 1.5 A typ. at 4V    IPD: 5.0 A max. at 3V IPD: 16 A max. at 4V

     Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.

     VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V                                   VDD: 4.5V to 5.5V

HS   IDD: 13.5 mA typ. at 5.5V IDD: 10 mA max. at 5.5V IDD: 20 mA max. at 5.5V Not recommended for use IDD: 20 mA max. at 5.5V

     IPD: 1.5 A typ. at 4.5V IPD: 1.5 A typ. at 4.5V IPD: 1.5 A typ. at 4.5V    in HS mode                IPD: 1.5 A typ. at 4.5V

     Freq: 4 MHz max.          Freq: 10 MHz max.         Freq: 20 MHz max.                                   Freq: 20 MHz max.

     VDD: 4.0V to 6.0V                                                             VDD: 2.5V to 6.0V         VDD: 2.5V to 6.0V

LP   IDD: 52.5 A typ. at      Not recommended for use   Not recommended for use   IDD: 48 A max. at        IDD: 48 A max. at
            32 kHz, 4.0V                 in LP mode                in LP mode             32 kHz, 3.0V              32 kHz, 3.0V

     IPD: 0.9 A typ. at 4.0V                                                      IPD: 5.0 A max. at 3.0V  IPD: 5.0 A max. at 3.0V

     Freq: 200 kHz max.                                                            Freq: 200 kHz max.        Freq: 200 kHz max.

The shaded sections indicate oscillator selections which are tested for functionality, but not for MIN/MAX specifications.

It is recommended that the user select the device type that ensures the specifications required.

TABLE 13-2 CROSS REFERENCE OF DEVICE SPECS (PIC16CR72) FOR OSCILLATOR
                     CONFIGURATIONS AND FREQUENCIES OF OPERATION (COMMERCIAL DEVICES)

OSC  PIC16CR72-04              PIC16CR72-10              PIC16CR72-20              PIC16LCR72-04             JW Devices

     VDD: 4.0V to 5.5V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 2.5V to 5.5V         VDD: 4.0V to 5.5V

RC   IDD: 5 mA max. at 5.5V    IDD: 2.7 mA typ. at 5.5V  IDD: 2.7 mA typ. at 5.5V  IDD: 3.8 mA max. at 3.0V IDD: 5 mA max. at 5.5V
     IPD: 16 A max. at 4V     IPD: 1.5 A typ. at 4V    IPD: 1.5 A typ. at 4V    IPD: 5.0 A max. at 3V IPD: 16 A max. at 4V

     Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.

     VDD: 4.0V to 5.5V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 2.5V to 5.5V         VDD: 4.0V to 5.5V

XT   IDD: 5 mA max. at 5.5V    IDD: 2.7 mA typ. at 5.5V  IDD: 2.7 mA typ. at 5.5V  IDD: 3.8 mA max. at 3.0V IDD: 5 mA max. at 5.5V
     IPD: 16 A max. at 4V     IPD: 1.5 A typ. at 4V    IPD: 1.5 A typ. at 4V    IPD: 5.0 A max. at 3V IPD: 16 A max. at 4V

     Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.          Freq: 4 MHz max.

     VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V         VDD: 4.5V to 5.5V                                   VDD: 4.5V to 5.5V

HS   IDD: 13.5 mA typ. at 5.5V IDD: 10 mA max. at 5.5V IDD: 20 mA max. at 5.5V Not recommended for use IDD: 20 mA max. at 5.5V

     IPD: 1.5 A typ. at 4.5V IPD: 1.5 A typ. at 4.5V IPD: 1.5 A typ. at 4.5V    in HS mode                IPD: 1.5 A typ. at 4.5V

     Freq: 4 MHz max.          Freq: 10 MHz max.         Freq: 20 MHz max.                                   Freq: 20 MHz max.

     VDD: 4.0V to 5.5V                                                             VDD: 2.5V to 5.5V         VDD: 2.5V to 5.5V

LP   IDD: 52.5 A typ. at      Not recommended for use   Not recommended for use   IDD: 48 A max. at        IDD: 48 A max. at
            32 kHz, 4.0V                 in LP mode                in LP mode             32 kHz, 3.0V              32 kHz, 3.0V

     IPD: 0.9 A typ. at 4.0V                                                      IPD: 5.0 A max. at 3.0V  IPD: 5.0 A max. at 3.0V

     Freq: 200 kHz max.                                                            Freq: 200 kHz max.        Freq: 200 kHz max.

The shaded sections indicate oscillator selections which are tested for functionality, but not for MIN/MAX specifications.

It is recommended that the user select the device type that ensures the specifications required.

DS39016A-page 78                                         Preliminary                                  1998 Microchip Technology Inc.
                                                              PIC16C72 Series

13.1 DC Characteristics: PIC16C72/CR72-04 (Commercial, Industrial, Extended)
                                           PIC16C72/CR72-10 (Commercial, Industrial, Extended)
                                           PIC16C72/CR72-20 (Commercial, Industrial, Extended)

DC CHARACTERISTICS                Standard Operating Conditions (unless otherwise stated)
                                  Operating temperature -40C  TA  +125C for extended,

                                                                     -40C  TA  +85C for industrial and
                                                                        0C  TA  +70C for commercial

Param    Characteristic           Sym         PIC16C72       PIC16CR72                                          Conditions
  No.                                   Min Typ Max                                     Units

                                                        Min Typ Max

D001 Supply Voltage               VDD 4.0    -    6.0 4.0     -    5.5  V XT, RC and LP osc
D001A
                                        4.5  -    5.5 4.5     -    5.5  V HS osc

D002* RAM Data Retention          VDR   -    1.5  -     -     1.5  -    V

         Voltage (Note 1)

D003 VDD start voltage to         VPOR  -    VSS  -     -     VSS  -    V See section on Power-
                                                                                 on Reset for details
         ensure internal Power-

         on Reset Signal

D004* VDD rise rate to ensure SVDD 0.05      -    -     0.05  -    - V/ms See section on Power-
                                                                                       on Reset for details
         internal Power-on

         Reset Signal

D005 Brown-out Reset Volt- Bvdd 3.7 4.0 4.3 3.7 4.0 4.3                 V BODEN bit in configura-
             age                                                                 tion word enabled

                                        3.7 4.0 4.4 3.7 4.0 4.4         V Extended Only

D010     Supply Current           IDD   -    2.7 5.0    -     2.7 5.0 mA XT, RC osc
         (Note 2,5)
                                                                                                          FOSC = 4 MHz,

                                                                                                          VDD = 5.5V (Note 4)

D013                                    -    10   20    -     10   20   mA HS osc

                                                                                                          FOSC = 20 MHz,

                                                                                                          VDD = 5.5V

D015     Brown-out Reset          Ibor -     350 425    -     350 425 A BOR enabled,
         Current (Note 6)
                                                                                                          VDD = 5.0V

D020     Power-down Current       IPD   - 10.5 42       -     10.5 42   A VDD = 4.0V, WDT
         (Note 3,5)
                                                                                                          enabled, -40C to +85C

D021                                    -    1.5 16     -     1.5  16   A VDD = 4.0V, WDT dis-

                                                                                                          abled, -0C to +70C

D021A                                   -    1.5 19     -     1.5 19    A VDD = 4.0V, WDT dis-

                                                                                                          abled, -40C to +85C

D021B                                   -    2.5 19     -     2.5  19   A VDD = 4.0V, WDT dis-

                                                                                                          abled, -40C to +125C

D023     Brown-out Reset          Ibor -     350 425    -     350 425 A BOR enabled VDD =
         Current (Note 6)
                                                                                                          5.0V

   *     These parameters are characterized but not tested.
         Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
Note 1:  tested.
Note 2:  This is the limit to which VDD can be lowered without losing RAM data.
         The supply current is mainly a function of the operating voltage and frequency. Other factors such as I/O pin loading and
Note 3:  switching rate, oscillator type, internal code execution pattern, and temperature also have an impact on the current con-
Note 4:  sumption.
Note 5:
Note 6:                   The test conditions for all IDD measurements in active operation mode are:
                          OSC1 = external square wave, from rail to rail; all I/O pins tristated, pulled to VDD
         MCLR = VDD; WDT enabled/disabled as specified.
         The power-down current in SLEEP mode does not depend on the oscillator type. Power-down current is measured with
         the part in SLEEP mode, with all I/O pins in hi-impedance state and tied to VDD and VSS.
         For RC osc configuration, current through Rext is not included. The current through the resistor can be estimated by the
         formula Ir = VDD/2Rext (mA) with Rext in kOhm.
         Timer1 oscillator (when enabled) adds approximately 20 A to the specification. This value is from characterization and
         is for design guidance only. This is not tested.
         The  current is the additional current consumed when this peripheral is enabled. This current should be added to the
         base IDD or IPD measurement.

1998 Microchip Technology Inc.             Preliminary                                                        DS39016A-page 79
PIC16C72 Series

13.2 DC Characteristics: PIC16LC72/LCR72-04 (Commercial, Industrial)

DC CHARACTERISTICS               Standard Operating Conditions (unless otherwise stated)
                                 Operating temperature -40C  TA  +85C for industrial and

                                                                      0C  TA  +70C for commercial

Param    Characteristic          Sym         PIC16C72       PIC16CR72                                      Conditions
  No.                                  Min Typ Max                                     Units

                                                       Min Typ Max

D001 Supply Voltage              VDD 2.5  -    6.0 2.5       -    5.5  V LP, XT, RC (DC - 4 MHz)

D002* RAM Data Retention         VDR   -  1.5  -       -     1.5  -    V

         Voltage (Note 1)

D003 VDD start voltage to        VPOR  -  VSS  -       -     VSS  -    V See section on Power-
                                                                                on Reset for details
         ensure internal Power-

         on Reset signal

D004* VDD rise rate to ensure SVDD 0.05   -    -       0.05  -    - V/ms See section on Power-
                                                                                      on Reset for details
         internal Power-on

         Reset signal

D005 Brown-out Reset Volt- Bvdd 3.7 4.0 4.3 3.7 4.0 4.3                V BODEN bit in configura-
             age                                                                tion word enabled

D010     Supply Current          IDD   -  2.0 3.8      -     2.0 3.8 mA XT, RC osc configuration
         (Note 2,5)
                                                                                                     FOSC = 4 MHz, VDD =

                                                                                                     3.0V (Note 4)

D010A                                  - 22.5 48       -     22.5 48   A LP osc configuration

                                                                                                     FOSC = 32 kHz, VDD =

                                                                                                     3.0V, WDT disabled

D015* Brown-out Reset            Ibor -   350 425      -     350 425 A BOR enabled VDD =
             Current (Note 6)
                                                                                                     5.0V

D020     Power-down Current      IPD   -  7.5 30       -     7.5  30   A VDD = 3.0V, WDT
         (Note 3,5)
                                                                                                     enabled, -40C to +85C

D021                                   -  0.9  5       -     0.9  5    A VDD = 3.0V, WDT dis-

                                                                                                     abled, 0C to +70C

D021A                                  -  0.9  5       -     0.9  5    A VDD = 3.0V, WDT dis-

                                                                                                     abled, -40C to +85C

D023* Brown-out Reset            Ibor -   350 425      -     350 425 A BOR enabled VDD =
             Current (Note 6)
                                                                                                     5.0V

   *     These parameters are characterized but not tested.
         Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
Note 1:  tested.
Note 2:  This is the limit to which VDD can be lowered without losing RAM data.
         The supply current is mainly a function of the operating voltage and frequency. Other factors such as I/O pin loading and
Note 3:  switching rate, oscillator type, internal code execution pattern, and temperature also have an impact on the current con-
Note 4:  sumption.
Note 5:
Note 6:                   The test conditions for all IDD measurements in active operation mode are:
                          OSC1 = external square wave, from rail to rail; all I/O pins tristated, pulled to VDD
         MCLR = VDD; WDT enabled/disabled as specified.
         The power-down current in SLEEP mode does not depend on the oscillator type. Power-down current is measured with
         the part in SLEEP mode, with all I/O pins in hi-impedance state and tied to VDD and VSS.
         For RC osc configuration, current through Rext is not included. The current through the resistor can be estimated by the
         formula Ir = VDD/2Rext (mA) with Rext in kOhm.
         Timer1 oscillator (when enabled) adds approximately 20 A to the specification. This value is from characterization and
         is for design guidance only. This is not tested.
         The  current is the additional current consumed when this peripheral is enabled. This current should be added to the
         base IDD or IPD measurement.

DS39016A-page 80                          Preliminary                   1998 Microchip Technology Inc.
                                                                 PIC16C72 Series

13.3 DC Characteristics: PIC16C72/CR72-04 (Commercial, Industrial, Extended)
                                           PIC16C72/CR72-10 (Commercial, Industrial, Extended)
                                           PIC16C72/CR72-20 (Commercial, Industrial, Extended)
                                           PIC16LC72/LCR72-04 (Commercial, Industrial)

DC CHARACTERISTICS                           Standard Operating Conditions (unless otherwise stated)
                                             Operating temperature -40C  TA  +125C for extended,

                                                                              -40C  TA  +85C for industrial and
                                                                                 0C  TA  +70C for commercial

                                             Operating voltage VDD range as described in DC spec Section 13.1 and

                                             Section 13.2.

  Param                   Characteristic     Sym Min Typ Max Units              Conditions
    No.
         Input Low Voltage                   VIL              - 0.15VDD V For entire VDD range
D030     I/O ports                                       VSS
D030A    with TTL buffer                                 Vss  -  0.8V  V 4.5  VDD  5.5V
D031                                                     VSS
D032     with Schmitt Trigger buffer                     VSS  - 0.2VDD V
D033     MCLR, OSC1 (in RC mode)                         VSS
         OSC1 (in XT, HS and LP)                              - 0.2VDD V
D040     Input High Voltage
D040A    I/O ports                                            - 0.3VDD V Note1
         with TTL buffer
                                             VIH              -

                                                    2.0       -  VDD   V 4.5  VDD  5.5V

                                                    0.25VDD + -  VDD   V For entire VDD range
                                                       0.8V

D041     with Schmitt Trigger buffer                0.8VDD -     VDD   V For entire VDD range
D042
D042A    MCLR                                       0.8VDD -     VDD   V
D043
D070     OSC1 (XT, HS and LP)                       0.7VDD -     Vdd   V Note1

D060     OSC1 (in RC mode)                          0.9VDD -     VDD   V

D061     PORTB weak pull-up current          IPURB  50        250 400  A VDD = 5V, VPIN = VSS
D063
         Input Leakage Current (Notes 2, 3)
D080
         I/O ports                           IIL    -         -  1    A Vss  VPIN  VDD, Pin at hi-
D080A
                                                                          impedance
D083
         MCLR, RA4/T0CKI                            -         -  5    A Vss  VPIN  VDD
D083A
         OSC1                                       -         -  5    A Vss  VPIN  VDD, XT, HS and LP
   *
                                                                          osc configuration
Note 1:
Note 2:  Output Low Voltage
Note 3:
         I/O ports                           VOL    -         -  0.6   V IOL = 8.5 mA, VDD = 4.5V,

                                                                          -40C to +85C

                                                    -         -  0.6   V IOL = 7.0 mA, VDD = 4.5V,

                                                                          -40C to +125C

         OSC2/CLKOUT (RC osc config)                -         -  0.6   V IOL = 1.6 mA, VDD = 4.5V,

                                                                          -40C to +85C

                                                    -         -  0.6   V IOL = 1.2 mA, VDD = 4.5V,

                                                                          -40C to +125C

         These parameters are characterized but not tested.
         Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
         tested.
         In RC oscillator configuration, the OSC1/CLKIN pin is a Schmitt trigger input. It is not recommended that the PIC16C7X be
         driven with external clock in RC mode.
         The leakage current on the MCLR/VPP pin is strongly dependent on the applied voltage level. The specified levels repre-
         sent normal operating conditions. Higher leakage current may be measured at different input voltages.
         Negative current is defined as current sourced by the pin.

1998 Microchip Technology Inc.             Preliminary                             DS39016A-page 81
PIC16C72 Series

DC CHARACTERISTICS                           Standard Operating Conditions (unless otherwise stated)
                                             Operating temperature -40C  TA  +125C for extended,

                                                                              -40C  TA  +85C for industrial and
                                                                                 0C  TA  +70C for commercial

                                             Operating voltage VDD range as described in DC spec Section 13.1 and

                                             Section 13.2.

Param             Characteristic             Sym Min Typ Max Units               Conditions
  No.

         Output High Voltage

D090 I/O ports (Note 3)                      VOH VDD - 0.7 -     -    V IOH = -3.0 mA, VDD = 4.5V,

                                                                          -40C to +85C

D090A                                               VDD - 0.7 -  -    V IOH = -2.5 mA, VDD = 4.5V,

                                                                          -40C to +125C

D092 OSC2/CLKOUT (RC osc config)                    VDD - 0.7 -  -    V IOH = -1.3 mA, VDD = 4.5V,

                                                                          -40C to +85C

D092A                                               VDD - 0.7 -  -    V IOH = -1.0 mA, VDD = 4.5V,

                                                                          -40C to +125C

D150* Open-Drain High Voltage                Vod    -     -      14   V RA4 pin, PIC16C72/LC72

                                                    -     -      TBD  V RA4 pin, PIC16CR72/LCR72

         Capacitive Loading Specs on Output
         Pins

D100 OSC2 pin                                COSC2  -     -      15   pF In XT, HS and LP modes when

                                                                          external clock is used to drive

                                                                          OSC1.

D101     All I/O pins and OSC2 (in RC mode)  CIO    -     -      50   pF
D102     SCL, SDA in I2C mode
                                             Cb     -     -      400  pF

   *     These parameters are characterized but not tested.
         Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
Note 1:  tested.
Note 2:  In RC oscillator configuration, the OSC1/CLKIN pin is a Schmitt trigger input. It is not recommended that the PIC16C7X be
Note 3:  driven with external clock in RC mode.
         The leakage current on the MCLR/VPP pin is strongly dependent on the applied voltage level. The specified levels repre-
         sent normal operating conditions. Higher leakage current may be measured at different input voltages.
         Negative current is defined as current sourced by the pin.

DS39016A-page 82                             Preliminary                   1998 Microchip Technology Inc.
                                                                      PIC16C72 Series

13.4 Timing Parameter Symbology

The timing parameter symbols have been created fol-
lowing one of the following formats:

1. TppS2ppS                                          3. TCC:ST        (I2C specifications only)
                                                     4. Ts            (I2C specifications only)
2. TppS
                                                     T                Time
T
                                                     osc              OSC1
F            Frequency                               rd               RD
                                                     rw               RD or WR
Lowercase letters (pp) and their meanings:           sc               SCK
                                                     ss               SS
pp                                                   t0               T0CKI
                                                     t1               T1CKI
cc           CCP1                                    wr               WR

ck           CLKOUT                                  P                Period
                                                     R                Rise
cs           CS                                      V                Valid
                                                     Z                Hi-impedance
di           SDI
                                                     High             High
do           SDO                                     Low              Low

dt           Data in                                 SU               Setup

io           I/O port                                STO              STOP condition

mc           MCLR

Uppercase letters and their meanings:

S

F            Fall

H            High

I            Invalid (Hi-impedance)

L            Low

I2C only

AA           output access

BUF          Bus free

TCC:ST (I2C specifications only)

CC

HD           Hold

ST

DAT          DATA input hold

STA          START condition

FIGURE 13-1: LOAD CONDITIONS

                   Load condition 1                                   Load condition 2

                                       VDD/2

                                            RL

                   Pin                        CL                 Pin        CL
                                                                      VSS
                                       VSS
                   RL = 464
                   CL = 50 pF          for all pins except OSC2
                                       for OSC2 output
                           15 pF

1998 Microchip Technology Inc.                  Preliminary                           DS39016A-page 83
PIC16C72 Series

13.5 Timing Diagrams and Specifications

FIGURE 13-2: EXTERNAL CLOCK TIMING

                  Q4                 Q1            Q2              Q3         Q4     Q1

    OSC1                             1                         3       3      4   4
CLKOUT
                                                            2

TABLE 13-3 EXTERNAL CLOCK TIMING REQUIREMENTS

Parameter  Sym             Characteristic          Min Typ Max Units                 Conditions
    No.

           Fosc External CLKIN Frequency               DC      --         4   MHz XT and RC osc mode
                     (Note 1)
                                                       DC      --         4   MHz HS osc mode (-04)

                                                       DC      --         10  MHz HS osc mode (-10)

                                                       DC      --         20  MHz HS osc mode (-20)

                                                       DC      --      200 kHz LP osc mode

                  Oscillator Frequency                 DC      --         4   MHz RC osc mode
                  (Note 1)
                                                       0.1     --         4   MHz XT osc mode

                                                       4       --         20  MHz HS osc mode

                                                       5       --      200 kHz LP osc mode

        1  Tosc External CLKIN Period              250 --                 --  ns XT and RC osc mode
                     (Note 1)                      250 --
        2                                                                 --  ns HS osc mode (-04)
        3
        4                                          100 --                 --  ns HS osc mode (-10)
   
Note 1:                                                50      --         --  ns HS osc mode (-20)

                                                       5       --         --  s LP osc mode

                  Oscillator Period                250 --                 --  ns RC osc mode
                  (Note 1)
                                                   250 -- 10,000 ns XT osc mode

                                                   250 --              250    ns HS osc mode (-04)

                                                   100 --              250    ns HS osc mode (-10)

                                                       50      --      250    ns HS osc mode (-20)

                                                       5       --         --  s LP osc mode

           TCY Instruction Cycle Time (Note 1)     200 --              DC     ns TCY = 4/FOSC

           TosL, External Clock in (OSC1) High or  100         --         --  ns XT oscillator

           TosH Low Time                               2.5     --         --  s LP oscillator

                                                       15      --         --  ns HS oscillator

           TosR, External Clock in (OSC1) Rise or      --      --         25  ns XT oscillator

           TosF Fall Time                              --      --         50  ns LP oscillator

                                                       --      --         15  ns HS oscillator

           Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
           tested.
           Instruction cycle period (TCY) equals four times the input oscillator time-base period. All specified values are based on
           characterization data for that particular oscillator type under standard operating conditions with the device executing
           code. Exceeding these specified limits may result in an unstable oscillator operation and/or higher than expected current
           consumption. All devices are tested to operate at "min." values with an external clock applied to the OSC1/CLKIN pin.
           When an external clock input is used, the "Max." cycle time limit is "DC" (no clock) for all devices.

DS39016A-page 84                           Preliminary                            1998 Microchip Technology Inc.
                                                                  PIC16C72 Series

FIGURE 13-3: CLKOUT AND I/O TIMING

                 Q4                            Q1                 Q2                                     Q3

OSC1

                                   10                                                            11

CLKOUT                             13                           19 18                            12
                                         14                                             15                16
  I/O Pin
  (input)                             17

I/O Pin          old value                                                                               new value
(output)

                                                        20, 21
           Note: Refer to Figure 13-1 for load conditions.

TABLE 13-4 CLKOUT AND I/O TIMING REQUIREMENTS

Parameter  Sym                    Characteristic                  Min                       Typ  Max              Units Conditions
    No.

10*        TosH2ckL OSC1 to CLKOUT                                --                        75   200              ns  Note 1

11*        TosH2ckH OSC1 to CLKOUT                                --                        75   200              ns  Note 1
                                                                                                                      Note 1
12*        TckR  CLKOUT rise time                                 --                        35   100              ns  Note 1
                                                                                                                      Note 1
13*        TckF  CLKOUT fall time                                 --                        35   100              ns  Note 1
                                                                                                                      Note 1
14*        TckL2ioV CLKOUT  to Port out valid                     --                        -- 0.5TCY + 20 ns

15*        TioV2ckH Port in valid before CLKOUT                   TOSC + 200 --                      --           ns

16*        TckH2ioI Port in hold after CLKOUT                     0                         --       --           ns

17*        TosH2ioV OSC1 (Q1 cycle) to Port out valid             --                        50   150              ns

18*        TosH2ioI OSC1 (Q2 cycle) to       PIC16C72/CR72        100                       --       --           ns

                 Port input invalid (I/O in PIC16LC72/LCR72       200                       --       --           ns
                 hold time)

19*        TioV2osH Port input valid to OSC1 (I/O in setup time)  0                         --       --           ns

20*        TioR  Port output rise time       PIC16C72/CR72        --                        10       40           ns

                                             PIC16LC72/LCR72      --                        --       80           ns

21*        TioF  Port output fall time       PIC16C72/CR72        --                        10       40           ns

                                             PIC16LC72/LCR72      --                        --       80           ns

22* Tinp         INT pin high or low time                         TCY                       --       --           ns

23* Trbp         RB7:RB4 change INT high or low time              TCY                       --       --           ns

   *       These parameters are characterized but not tested.
           Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance
           only and are not tested.
           These parameters are asynchronous events not related to any internal clock edges.
Note 1:    Measurements are taken in RC Mode where CLKOUT output is 4 x TOSC.

1998 Microchip Technology Inc.                Preliminary                                                   DS39016A-page 85
PIC16C72 Series

FIGURE 13-4: RESET, WATCHDOG TIMER, OSCILLATOR START-UP TIMER AND POWER-UP
                     TIMER TIMING

        VDD                                                           30

    MCLR              33
                                     32
   Internal
      POR                                                        34                      31

    PWRT                                                                                        34
  Time-out

      OSC
  Time-out

   Internal
   RESET
Watchdog

     Timer
   RESET

  I/O Pins

        Note: Refer to Figure 13-1 for load conditions.

FIGURE 13-5: BROWN-OUT RESET TIMING

VDD                                                      BVDD
                                                                                 35

TABLE 13-5 RESET, WATCHDOG TIMER, OSCILLATOR START-UP TIMER, POWER-UP TIMER,
                     AND BROWN-OUT RESET REQUIREMENTS

Parameter        Sym  Characteristic                        Min       Typ            Max Units  Conditions
    No.

   30        TmcL MCLR Pulse Width (low)                    2         --             --  s VDD = 5V, -40C to +125C

   31*       Twdt     Watchdog Timer Time-out Period        7         18             33 ms VDD = 5V, -40C to +125C

                      (No Prescaler)

   32        Tost     Oscillation Start-up Timer Period     -- 1024TOSC --               -- TOSC = OSC1 period

   33*       Tpwrt Power-up Timer Period                    28        72             132 ms VDD = 5V, -40C to +125C

   34        TIOZ     I/O Hi-impedance from MCLR Low --               --             2.1 s

                      or Watchdog Timer Reset

   35        TBOR Brown-out Reset pulse width               100       --             --  s VDD  BVDD (D005)

*       These parameters are characterized but not tested.

        Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not

        tested.

DS39016A-page 86                                         Preliminary                      1998 Microchip Technology Inc.
                                                                  PIC16C72 Series

FIGURE 13-6: TIMER0 AND TIMER1 EXTERNAL CLOCK TIMINGS

                RA4/T0CKI

                                                  40              41

                                                              42

       RC0/T1OSO/T1CKI

                                                  45              46

                                                              47                  48

                TMR0 or
                TMR1

            Note: Refer to Figure 13-1 for load conditions.

TABLE 13-6 TIMER0 AND TIMER1 EXTERNAL CLOCK REQUIREMENTS

Param       Sym                   Characteristic                  Min             Typ Max Units Conditions
  No.

40* Tt0H         T0CKI High Pulse Width  No Prescaler             0.5TCY + 20 -- -- ns Must also meet
                                         With Prescaler
                                                                  10              -- -- ns parameter 42

41* Tt0L         T0CKI Low Pulse Width   No Prescaler             0.5TCY + 20 -- -- ns Must also meet

                                         With Prescaler           10              -- -- ns parameter 42

42* Tt0P         T0CKI Period            No Prescaler             TCY + 40        -- -- ns

                                         With Prescaler           Greater of: -- -- ns N = prescale value

                                                                  20 or TCY + 40               (2, 4, ..., 256)
                                                                               N

45* Tt1H         T1CKI High Time Synchronous, Prescaler = 1       0.5TCY + 20 -- -- ns Must also meet

                                  Synchronous, PIC16C7X/CR72      15              -- -- ns parameter 47

                                  Prescaler = PIC16LC7X/LCR72     25              -- -- ns

                                  2,4,8

                                  Asynchronous PIC16C7X/CR72      30              -- -- ns

                                         PIC16LC7X/LCR72          50              -- -- ns

46* Tt1L         T1CKI Low Time Synchronous, Prescaler = 1        0.5TCY + 20 -- -- ns Must also meet

                                  Synchronous, PIC16C7X/CR72      15              -- -- ns parameter 47

                                  Prescaler = PIC16LC7X/LCR72     25              -- -- ns

                                  2,4,8

                                  Asynchronous PIC16C7X/CR72      30              -- -- ns

                                         PIC16LC7X/LCR72          50              -- -- ns

47* Tt1P         T1CKI input      Synchronous PIC16C7X/CR72       Greater of: -- -- ns N = prescale value

                 period                                           30 OR TCY + 40               (1, 2, 4, 8)

                                                                      N

                                         PIC16LC7X/LCR72 Greater of:                           N = prescale value

                                                                  50 OR TCY + 40               (1, 2, 4, 8)

                                                                      N

                                  Asynchronous PIC16C7X/CR72      60              -- -- ns

                                         PIC16LC7X/LCR72          100             -- -- ns

       Ft1       Timer1 oscillator input frequency range          DC              -- 200 kHz

                 (oscillator enabled by setting bit T1OSCEN)

48 TCKEZtmr1 Delay from external clock edge to timer increment    2Tosc           -- 7Tosc --

* These parameters are characterized but not tested.

Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not

       tested.

1998 Microchip Technology Inc.                  Preliminary                         DS39016A-page 87
PIC16C72 Series

FIGURE 13-7: CAPTURE/COMPARE/PWM TIMINGS (CCP1)

                  RC2/CCP1
            (Capture Mode)

                                            50                             51

                                                                   52

                   RC2/CCP1
(Compare or PWM Mode)

                                  53                                   54

                  Note: Refer to Figure 13-1 for load conditions.

TABLE 13-7 CAPTURE/COMPARE/PWM REQUIREMENTS (CCP1)

Param  Sym        Characteristic                                       Min        Typ Max Units Conditions
  No.

50* TccL CCP1 input low time No Prescaler                              0.5TCY + 20 -- -- ns

                                  With Prescaler PIC16C72/CR72         10         -- -- ns

                                            PIC16LC72/LCR72            20         -- -- ns

51* TccH CCP1 input high time No Prescaler                             0.5TCY + 20 -- -- ns

                                  With Prescaler PIC16C72/CR72         10         -- -- ns

                                            PIC16LC72/LCR72            20         -- -- ns

52* TccP CCP1 input period                                             3TCY + 40  ----  ns N = prescale
                                                                            N                 value (1,4 or 16)

53* TccR CCP1 output rise time              PIC16C72/CR72              --         10 25 ns

                                            PIC16LC72/LCR72            --         25 45 ns

54* TccF CCP1 output fall time              PIC16C72/CR72              --         10 25 ns

                                            PIC16LC72/LCR72            --         25 45 ns

* These parameters are characterized but not tested.
Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not

       tested.

DS39016A-page 88                            Preliminary                            1998 Microchip Technology Inc.
                                        PIC16C72 Series

FIGURE 13-8: SPI MASTER OPERATION TIMING (CKE = 0)

SS

                             70

SCK
(CKP = 0)

                                  71         72                                  78

SCK                                                                                  79
(CKP = 1)
                                                                                     78
SDO                              80                                     79           LSB
                                               MSB    BIT6 - - - - - -1
                                                                                        LSB IN
SDI                                      MSB IN       75, 76
                                                                  BIT6 - - - -1

                                                  74
                                         73

    Refer to Figure 13-1 for load conditions.

FIGURE 13-9: SPI MASTER OPERATION TIMING (CKE = 1)

SS         81

SCK                               71         72
(CKP = 0)
           73                                                                                 79
SCK
(CKP = 1)                                                                                     78
                                                                                  LSB
                                         80                                      LSB IN

SDO                              MSB                  BIT6 - - - - - -1
SDI
                                         75, 76

                                 MSB IN               BIT6 - - - -1

                                   74
           Refer to Figure 13-1 for load conditions.

1998 Microchip Technology Inc.                      Preliminary                                 DS39016A-page 89
PIC16C72 Series

FIGURE 13-10: SPI SLAVE MODE TIMING (CKE = 0)

SS

                             70                                                                         83
                                                                                                79
SCK                                                                                             78
(CKP = 0)                                                                                       LSB

                                 71      72                                             78                       77
                                                                                                  LSB IN
SCK
(CKP = 1)                                                                                                83

SDO                              80                                         79
                                               MSB        BIT6 - - - - - -1

SDI                                      MSB IN           75, 76
                                                                     BIT6 - - - -1

                                                      74
                                             73

     Refer to Figure 13-1 for load conditions.

FIGURE 13-11: SPI SLAVE MODE TIMING (CKE = 1)

                                 82
       SS

SCK               70
(CKP = 0)

                                 71      72

SCK
(CKP = 1)

                                                                                    80

SDO                              MSB                      BIT6 - - - - - -1             LSB
SDI
                                         75, 76                                                 77

                                 MSB IN                   BIT6 - - - -1                 LSB IN

                                      74
                                 Refer to Figure 13-1 for load conditions.

DS39016A-page 90                                          Preliminary                            1998 Microchip Technology Inc.
                                                                                PIC16C72 Series

TABLE 13-8 SPI SLAVE MODE REQUIREMENTS (CKE=0) - PIC16C72

Param      Sym                          Characteristic                     Min        Typ Max Units Conditions
  No.

70 TssL2scH, SS to SCK or SCK input                                        TCY        ----            ns
          TssL2scL

71 TscH          SCK input high time (slave mode)                     TCY + 20        --      --      ns

72 TscL          SCK input low time (slave mode)                      TCY + 20        --      --      ns

73 TdiV2scH, Setup time of SDI data input to SCK edge                      50         --      --      ns
          TdiV2scL

74 TscH2diL, Hold time of SDI data input to SCK edge                       50         --      --      ns
          TscL2diL

75 TdoR          SDO data output rise time                                 --         10 25           ns

76 TdoF          SDO data output fall time                                 --         10 25           ns

77 TssH2doZ SS to SDO output hi-impedance                                  10         --      50      ns

78 TscR          SCK output rise time (master mode)                        --         10 25           ns

79 TscF          SCK output fall time (master mode)                        --         10 25           ns

80 TscH2doV, SDO data output valid after SCK edge                          --         -- 50           ns
          TscL2doV

Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
       tested.

TABLE 13-9 SPI MODE REQUIREMENTS - PIC16CR72

Parameter       Sym               Characteristic                      Min       Typ Max Units Conditions
    No.

70*        TssL2scH, SS to SCK or SCK input                           TCY       --        --      ns

           TssL2scL

71*        TscH                   SCK input high time (slave mode) TCY + 20     --        --      ns

72*        TscL                   SCK input low time (slave mode)     TCY + 20  --        --      ns

73*        TdiV2scH, Setup time of SDI data input to SCK              100       --        --      ns

           TdiV2scL               edge

74*        TscH2diL, Hold time of SDI data input to SCK               100       --        --      ns

           TscL2diL               edge

75*        TdoR                   SDO data output rise time           --        10        25      ns

76*        TdoF                   SDO data output fall time           --        10        25      ns

77*        TssH2doZ SS to SDO output hi-impedance                     10        --        50      ns

78*        TscR                   SCK output rise time (master mode)  --        10        25      ns

79*        TscF                   SCK output fall time (master mode)  --        10        25      ns

80*        TscH2doV, SDO data output valid after SCK                  --        --        50      ns

           TscL2doV edge

81*        TdoV2scH, SDO data output setup to SCK                     TCY       --        --      ns

           TdoV2scL edge

82*        TssL2doV               SDO data output valid after SS      --        --        50      ns

                                  edge

83*        TscH2ssH, SS  after SCK edge                               1.5TCY + 40 --      --      ns

           TscL2ssH

* These parameters are characterized but not tested.
Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not

     tested.

1998 Microchip Technology Inc.                  Preliminary                                         DS39016A-page 91
PIC16C72 Series

FIGURE 13-12: I2C BUS START/STOP BITS TIMING

SCL                                 91                                                     93
SDA                 90                                                     92

                     START                                                   STOP
                    Condition                                              Condition

     Note: Refer to Figure 13-1 for load conditions

TABLE 13-10 I2C BUS START/STOP BITS REQUIREMENTS

Parameter  Sym                          Characteristic  Min Typ Max Units  Conditions
    No.

90         TSU:STA  START condition     100 kHz mode    4700 -- --   ns Only relevant for repeated START
                    Setup time          400 kHz mode    600 -- --           condition
91         THD:STA  START condition     100 kHz mode    4000 -- --
                    Hold time           400 kHz mode    600 -- --    ns After this period the first clock
92         TSU:STO  STOP condition      100 kHz mode    4700 -- --          pulse is generated
                    Setup time          400 kHz mode    600 -- --
93         THD:STO  STOP condition      100 kHz mode    4000 -- --   ns
                    Hold time           400 kHz mode    600 -- --
                                                                     ns

DS39016A-page 92                                        Preliminary         1998 Microchip Technology Inc.
                                                                                        PIC16C72 Series

FIGURE 13-13: I2C BUS DATA TIMING

                          103                      100                                                 102

          SCL       90                                              101                            92
                             91                         106                                                     110
          SDA
          In                                                                       107

                                  109                          109

          SDA
          Out

               Note: Refer to Figure 13-1 for load conditions

TABLE 13-11 I2C BUS DATA REQUIREMENTS

Parameter      Sym                 Characteristic                   Min                 Max Units         Conditions
    No.

     100   THIGH    Clock high time         100 kHz mode            4.0                 --   s Device must operate at a mini-

     101                                                                                           mum of 1.5 MHz

     102                                    400 kHz mode            0.6                 --   s Device must operate at a mini-
     103
     90                                                                                            mum of 10 MHz
     91
     106                                    SSP Module              1.5TCY              --
     107
     92    TLOW     Clock low time          100 kHz mode            4.7                 --   s Device must operate at a mini-
     109
     110                                                                                           mum of 1.5 MHz

Note 1:                                     400 kHz mode            1.3                 --   s Device must operate at a mini-
Note 2:
                                                                                                   mum of 10 MHz

                                            SSP Module              1.5TCY              --

           TR       SDA and SCL rise 100 kHz mode                   --                  1000 ns

                    time                    400 kHz mode            20 + 0.1Cb 300           ns Cb is specified to be from

                                                                                                   10 to 400 pF

           TF       SDA and SCL fall time 100 kHz mode              --                  300  ns

                                            400 kHz mode            20 + 0.1Cb 300           ns Cb is specified to be from
                                                                                                     10 to 400 pF

           TSU:STA  START condition         100 kHz mode            4.7                 --   s Only relevant for repeated
                    setup time              400 kHz mode
                                                                    0.6                 --   s START condition

           THD:STA  START condition hold 100 kHz mode               4.0                 --   s After this period the first clock

                    time                    400 kHz mode            0.6                 --   s pulse is generated

           THD:DAT Data input hold time 100 kHz mode                0                   --   ns

                                            400 kHz mode            0                   0.9  s

           TSU:DAT Data input setup time 100 kHz mode               250                 --   ns Note 2

                                            400 kHz mode            100                 --   ns

           TSU:STO  STOP condition setup 100 kHz mode               4.7                 --   s

                    time                    400 kHz mode            0.6                 --   s

           TAA      Output valid from       100 kHz mode            --                  3500 ns Note 1

                    clock                   400 kHz mode            --                  --   ns

           TBUF     Bus free time           100 kHz mode            4.7                 --   s Time the bus must be free
                                            400 kHz mode
                                                                    1.3                 --   s before a new transmission can
                                                                                                   start

           Cb       Bus capacitive loading                          --                  400 pF

          As a transmitter, the device must provide this internal minimum delay time to bridge the undefined region (min. 300 ns) of

          the falling edge of SCL to avoid unintended generation of START or STOP conditions.
          A fast-mode (400 kHz) I2C-bus device can be used in a standard-mode (100 kHz)S I2C-bus system, but the requirement

          tsu;DAT  250 ns must then be met. This will automatically be the case if the device does not stretch the LOW period of the
          SCL signal. If such a device does stretch the LOW period of the SCL signal, it must output the next data bit to the SDA line
          TR max.+tsu;DAT = 1000 + 250 = 1250 ns (according to the standard-mode I2C bus specification) before the SCL line is

          released.

1998 Microchip Technology Inc.                   Preliminary                                            DS39016A-page 93
PIC16C72 Series

TABLE 13-12       A/D CONVERTER CHARACTERISTICS:
                  PIC16C72/CR72-04 (Commercial, Industrial, Extended)
                  PIC16C72/CR72-10 (Commercial, Industrial, Extended)
                  PIC16C72/CR72-20 (Commercial, Industrial, Extended)
                  PIC16LC72/LCR72-04 (Commercial, Industrial)

Param    Sym           Characteristic        Min        Typ         Max Units            Conditions
  No.

A01 NR Resolution                            --           --        8 bits  bit VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A02 EABS Total Absolute error                --           --        <1     LSb VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A03 EIL Integral linearity error             --           --        <1     LSb VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A04 EDL Differential linearity error         --           --        <1     LSb VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A05 EFS Full scale error                     --           --        <1     LSb VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A06 EOFF Offset error                        --           --        <1     LSb VREF = VDD = 5.12V,

                                                                                  VSS  VAIN  VREF

A10 --        Monotonicity                   --         guaranteed  --      -- VSS  VAIN  VREF

A20 VREF Reference voltage                   2.5V         --        VDD + 0.3 V

A25 VAIN Analog input voltage                VSS - 0.3    --        VREF + 0.3 V

A30 ZAIN Recommended impedance of            --           --        10.0    k
                     analog voltage source

A40 IAD       A/D conversion PIC16C72/CR72   --           180       --      A Average current con-
              current (VDD) PIC16LC72/LCR72
                                             --           90        --      A sumption when A/D is
                                                                                  on. (Note 1)

A50 IREF VREF input current (Note 2)         10           --        1000    A During VAIN acquisition.

                                                                                  Based on differential of

                                                                                  VHOLD to VAIN to charge

                                                                                  CHOLD, see Section 9.1.

                                             --           --        10      A During A/D Conversion

                                                                                  cycle

   *     These parameters are characterized but not tested.
         Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
         tested.
Note 1:  When A/D is off, it will not consume any current other than minor leakage current.
         The power-down current spec includes any such leakage from the A/D module.
Note 2:  VREF current is from RA3 pin or VDD pin, whichever is selected as reference input.

DS39016A-page 94                             Preliminary                     1998 Microchip Technology Inc.
                                                                                  PIC16C72 Series

FIGURE 13-14: A/D CONVERSION TIMING

    BSF ADCON0, GO                (TOSC/2) (1)                                                                   1 TCY
                 134                                                    131
                                                                        130
         Q4
A/D CLK 132                      7             6            5       4      3     2   1    0
A/D DATA
                                                OLD_DATA                                                                NEW_DATA
   ADRES
      ADIF                                                                                                              DONE
        GO
                                                                SAMPLING STOPPED
SAMPLE

Note 1: If the A/D clock source is selected as RC, a time of TCY is added before the A/D clock starts. This allows the
             SLEEP instruction to be executed.

TABLE 13-13 A/D CONVERSION REQUIREMENTS

Param      Sym        Characteristic                          Min       Typ    Max Units                                Conditions
  No.
                                                              1.6        --
130 TAD A/D clock period PIC16C72/LCR72                       2.0        --       --  s TOSC based, VREF  2.5V
                                            PIC16LC72/LCR72   2.0        4.0
                                            PIC16C72/LCR72    2.5        6.0      --  s TOSC based, VREF full range
                                            PIC16LC72/LCR72    --        9.5
                                                                               6.0    s A/D RC Mode
131 TCNV Conversion time                                     Note 2      20
                    (not including S/H time) (Note 1)                          9.0    s A/D RC Mode

132 TACQ Acquisition time                                                         --  TAD

                                                                                  --  s

                                                                5*      --        --  s The minimum time is the amplifier

                                                                                           settling time. This may be used if

                                                                                           the "new" input voltage has not

                                                                                           changed by more than 1 LSb (i.e.,

                                                                                           20.0 mV @ 5.12V) from the last

                                                                                           sampled voltage (as stated on

                                                                                           CHOLD).

134 Tgo Q4 to A/D clock start                                   -- TOSC/2 --        -- If the A/D clock source is selected
                                                                                              as RC, a time of TCY is added
                                                                                              before the A/D clock starts. This
                                                                                              allows the SLEEP instruction to be
                                                                                              executed.

135 Tswc Switching from convert  sample time 1.5                       --        --  TAD

        *   These parameters are characterized but not tested.
            Data in "Typ" column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only and are not
            tested.
           This specification ensured by design.
Note 1:    ADRES register may be read on the following TCY cycle.
Note 2:    See Section 9.1 for min conditions.

1998 Microchip Technology Inc.                             Preliminary                                                DS39016A-page 95
PIC16C72 Series

NOTES:

DS39016A-page 96  Preliminary   1998 Microchip Technology Inc.
                                                      PIC16C72 PIC16C72 Series

14.0 DC AND AC CHARACTERISTICS GRAPHS AND TABLES - PIC16C72

The graphs and tables provided in this section are for design guidance and are not tested or guaranteed.
In some graphs or tables, the data presented are outside specified operating range (i.e., outside specified VDD
range). This is for information only and devices are guaranteed to operate properly only within the specified range.
The data presented in this section is a statistical summary of data collected on units from different lots over a period
of time and matrix samples. 'Typical' represents the mean of the distribution at 25C, while 'max' or 'min' represents
(mean + 3) and (mean - 3) respectively, where  is standard deviation.

FIGURE 14-1: TYPICAL IPD vs. VDD (WDT DISABLED, RC MODE)

                                        35

                    30

                    25

          IPD (nA)  20

                    15

                    10

                    5

                    0

                    2.5                3.0       3.5  4.0  4.5          5.0  5.5       6.0
                                                                                                85C
                                                           VDD (Volts)                          70C

FIGURE 14-2: MAXIMUM IPD vs. VDD (WDT DISABLED, RC MODE)

                         10.000

          1.000

IPD (A)  0.100                                                                        25C
          0.010
                                                                                       0C
                                                                                       -40C

          0.001

          2.5                     3.0       3.5       4.0  4.5          5.0       5.5  6.0

                                                      VDD (Volts)

1998 Microchip Technology Inc.                      Preliminary                           DS39016A-page 97
                                                                           PIC16C72 Series PIC16C72

                                                                           FIGURE 14-3: TYPICAL IPD vs. VDD @ 25C                                            FIGURE 14-5: TYPICAL RC OSCILLATOR
                                                                                                (WDT ENABLED, RC MODE)                                                             FREQUENCY vs. VDD

                                                                                      25                                                                                   6.0   Cext = 22 pF, T = 25C

                                                                                      20                                                                                   5.5

                                                                                      15                                                                                   5.0

                                                                                      10                                                                                   4.5                            R = 5k

                                                                                        5IPD (A)                                                             Fosc (MHz)   4.0

                                                                                        0                                                                                  3.5
                                                                                        2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0
                                                                                                                                                                           3.0
                                                                                                                        VDD (Volts)                                                                                                     R = 10k

                                                                                                                                                                           2.5

                                                                                                                                                                           2.0

                                                                                                                                                                           1.5

                                                                                                                                                                           1.0
                                                                                                                                                                                                                                        R = 100k

                                                                                                                                                                           0.5

                                                                                                                                                                           0.0
                                                                                                                                                                               2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

                                                                                                                                                                                                             VDD (Volts)

                                                                                                                                                              Shaded area is beyond recommended range.

                                                                           FIGURE 14-4: MAXIMUM IPD vs. VDD (WDT
                                                                                                ENABLED, RC MODE)

                                                                                     35                                                                       FIGURE 14-6: TYPICAL RC OSCILLATOR
                                                                                                                                                       -40C                       FREQUENCY vs. VDD

                                                                                     30            0C                                                                     2.4   Cext = 100 pF, T = 25C

                                                                                     25                                                                                    2.2

                                                                                                                                                                           2.0                            R = 3.3k

                                                                           IPD (A)  20                                                                                    1.8
                                                                                                                                                       70C
                                                                                                                                                              Fosc (MHz)   1.6
                                                                                     15
                                                                                                                                                                           1.4                            R = 5k

                                                                                     10      85C                                                                          1.2

                                                                                     5                                                                                     1.0
                                                                                                                                                                                                                                        R = 10k

                                                                                                                                                                           0.8

                                                                                                                                                                           0.6

Data based on matrix samples. See first page of this section for details.            0                                                                                     0.4
                                                                                      2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0                                                                                                                   R = 100k

                                                                                                                     VDD (Volts)                                           0.2

                                                                                                                                                                           0.0
                                                                                                                                                                               2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

                                                                                                                                                                                 VDD (Volts)

                                                                                                                                                              FIGURE 14-7: TYPICAL RC OSCILLATOR
                                                                                                                                                                                   FREQUENCY vs. VDD

                                                                                                                                                                                 Cext = 300 pF, T = 25C

                                                                                                                                                                           1000

                                                                                                                                                                           900

                                                                                                                                                                           800                            R = 3.3k

                                                                                                                                                              Fosc (kHz)   700

                                                                                                                                                                           600
                                                                                                                                                                                                                                         R = 5k

                                                                                                                                                                           500

                                                                                                                                                                           400

                                                                                                                                                                           300                            R = 10k

                                                                                                                                                                           200

                                                                                                                                                                           100                            R = 100k

                                                                                                                                                                           0
                                                                                                                                                                            2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

                                                                                                                                                                                                           VDD (Volts)

                                                                           DS39016A-page 98                                                                   Preliminary         1998 Microchip Technology Inc.
                                                   PIC16C72 PIC16C72 Series

FIGURE 14-8: TYPICAL IPD vs. VDD BROWN-                      FIGURE 14-10: TYPICAL IPD vs. TIMER1
                     OUT DETECT ENABLED (RC                                       ENABLED (32 kHz, RC0/RC1 =
                     MODE)                                                        33 pF/33 pF, RC MODE)

          1400

          1200                                                         30

          1000                                                         25

IPD (A)  800                      Device NOT in
                                  Brown-out Reset
                                                                       20

          600                                                IPD (A)

          400 Device in                                                15
                   Brown-out

          200   Reset                                                  10

          0                                                            5
          2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

                                           VDD (Volts)

The shaded region represents the built-in hysteresis of the            02.5  3.0  3.5  4.0  4.5     5.0  5.5  6.0
brown-out reset circuitry.
                                                                                       VDD (Volts)

FIGURE 14-9: MAXIMUM IPD vs. VDD                             FIGURE 14-11: MAXIMUM IPD vs. TIMER1
                     BROWN-OUT DETECT                                             ENABLED
                     ENABLED                                                      (32 kHz, RC0/RC1 = 33 pF/33
                     (85C TO -40C, RC MODE)                                     pF, 85C TO -40C, RC MODE)

IPD (A)  1600                     Device NOT in                       45
          1400                    Brown-out Reset                      40
          1200                                                         35
          1000                                                         30

           800  Device in                                    IPD (A)  25
           600  Brown-out                                              20
           400                                                                                                                         Data based on matrix samples. See first page of this section for details.
                  Reset

     200                                                               15
                                              4.3                      10

        0                                                               5
         2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0
                                                                       02.5  3.0  3.5  4.0  4.5     5.0  5.5  6.0
                                         VDD (Volts)                                   VDD (Volts)

The shaded region represents the built-in hysteresis of the
brown-out reset circuitry.

1998 Microchip Technology Inc.                   Preliminary                                      DS39016A-page 99
PIC16C72 Series PIC16C72

FIGURE 14-12: TYPICAL IDD vs. FREQUENCY (RC MODE @ 22 pF, 25C)

                                                                           2000                                                 6.0V

                                                                           1800                                                 5.5V

                                                                           1600                                                 5.0V

                                                                                                                                4.5V

                                                                           1400
                                                                                                                                                                                                                                                 4.0V

IDD (A)                                                                   1200                                                 3.5V

                                                                           1000                                                 3.0V

                                                                           800
                                                                                                                                                                                                                                               2.5V

                                                                           600

                                                                           400

                                                                           200

                                                                           0

                                                                           0.0   0.5  1.0  1.5  2.0  2.5         3.0  3.5  4.0  4.5

                                                                                                Frequency (MHz)       Shaded area is
                                                                                                                      beyond recommended range

FIGURE 14-13: MAXIMUM IDD vs. FREQUENCY (RC MODE @ 22 pF, -40C TO 85C)

                                                                           2000                                                 6.0V

                                                                           1800                                                 5.5V

                                                                           1600                                                 5.0V

                                                                                                                                4.5V

                                                                           1400
                                                                                                                                                                                                                                                 4.0V

Data based on matrix samples. See first page of this section for details.  1200                                                 3.5V
                  IDD (A)
                                                                           1000                                                 3.0V

                                                                           800
                                                                                                                                                                                                                                               2.5V

                                                                           600

                                                                           400

                                                                           200

                                                                           0

                                                                           0.0   0.5  1.0  1.5  2.0  2.5         3.0  3.5  4.0  4.5

                                                                                                Frequency (MHz)       Shaded area is
                                                                                                                      beyond recommended range

DS39016A-page 100                                                                               Preliminary            1998 Microchip Technology Inc.
                                               PIC16C72 PIC16C72 Series

FIGURE 14-14: TYPICAL IDD vs. FREQUENCY (RC MODE @ 100 pF, 25C)

          1600

                                                                                  6.0V

          1400                                                                    5.5V

                                                                                  5.0V

          1200                                                                    4.5V

                                                                                                                                                                                4.0V

          1000
                                                                                                                                                                                3.5V

IDD (A)  800                                                                     3.0V

                                                                                                                                                                               2.5V
          600

          400
          200

          0

                0  200            400     600  800  1000        1200  1400  1600  1800

                Shaded area is                 Frequency (kHz)                         6.0V
                beyond recommended range                                               5.5V
                                                                                       5.0V
FIGURE 14-15: MAXIMUM IDD vs. FREQUENCY (RC MODE @ 100 pF, -40C TO 85C)              4.5V
                                                                                       4.0V
          1600                                                                         3.5V
                                                                                       3.0V
          1400                                                                         2.5V

          1200                                                                                                                                                                        Data based on matrix samples. See first page of this section for details.

          1000

IDD (A)  800

          600

          400
          200

          0

                0  200            400     600  800  1000        1200  1400  1600  1800

                Shaded area is                 Frequency (kHz)
                beyond recommended range

1998 Microchip Technology Inc.               Preliminary                        DS39016A-page 101
PIC16C72 Series PIC16C72

FIGURE 14-16: TYPICAL IDD vs. FREQUENCY (RC MODE @ 300 pF, 25C)

                                                                           1200                                               6.0V

                                                                                                                              5.5V

                                                                           1000                                               5.0V

                                                                                                                              4.5V

                                                                           800                                                4.0V

                                                                                                                              3.5V

IDD (A)                                                                                                                                                                                                               3.0V

                                                                           600
                                                                                                                                                                                                                       2.5V

                                                                           400

                                                                           200

                                                                           0

                                                                                 0  100  200  300  400         500  600  700

                                                                                              Frequency (kHz)

FIGURE 14-17: MAXIMUM IDD vs. FREQUENCY (RC MODE @ 300 pF, -40C TO 85C)

                           1200
                                                                                                                                                                              6.0V

                                                                                                                              5.5V

                                                                           1000                                               5.0V

Data based on matrix samples. See first page of this section for details.                                                     4.5V
                            IDD (A)
                                                                           800                                                4.0V

                                                                                                                              3.5V

                                                                                                                                                                                                                       3.0V

                                                                           600
                                                                                                                                                                                                                       2.5V

                                                                           400

                                                                           200

                                                                           0

                                                                                 0  100  200  300  400         500  600  700

                                                                                              Frequency (kHz)

DS39016A-page 102                                                                             Preliminary                1998 Microchip Technology Inc.
                                                                            PIC16C72 PIC16C72 Series

FIGURE 14-18: TYPICAL IDD vs.                                               FIGURE 14-19: TRANSCONDUCTANCE(gm)
                     CAPACITANCE @ 500 kHz                                                       OF HS OSCILLATOR vs. VDD
                     (RC MODE)
                                                                                         4.0
      600
                                                                                                                                                 Max -40C
                                                                      5.0V               3.5
      500
                                                                                         3.0
                                                                      4.0V
      400                                                                   gm (mA/V)    2.5                       Typ 25C

                                                                      3.0VIDD (A)       2.0
      300
                                                                                         1.5                       Min 85C

          200                                                                            1.0

          100                                                                            0.5

            0                                                                            0.0
          20 pF                                                                           3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0

                         100 pF           300 pF                            Shaded area is     VDD (Volts)
                        Capacitance (pF)
                                                                            beyond recommended range

TABLE 14-1 RC OSCILLATOR                                                    FIGURE 14-20: TRANSCONDUCTANCE(gm)
                     FREQUENCIES                                                                 OF LP OSCILLATOR vs. VDD

                        Average                                                          110
                        Fosc @ 5V, 25C
          Cext    Rext                                                                   100          Max -40C

                                                                                         90

          22 pF   5k    4.12 MHz 1.4%                                                  80

                  10k   2.35 MHz 1.4%                                     gm (A/V)    70

                                                                                         60                 Typ 25C

                  100k  268 kHz            1.1%                                         50

          100 pF  3.3k  1.80 MHz 1.0%                                                  40

                  5k    1.27 MHz 1.0%                                                  30

                  10k   688 kHz            1.2%                                         20                 Min 85C

                                                                                         10

                  100k  77.2 kHz 1.0%                                                       02.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0

          300 pF  3.3k  707 kHz            1.4%                            Shaded areas are          VDD (Volts)

                  5k    501 kHz            1.2%                            beyond recommended range

                  10k   269 kHz            1.6%                                                                                                            Data based on matrix samples. See first page of this section for details.

                  100k  28.3 kHz 1.1%                                     FIGURE 14-21: TRANSCONDUCTANCE(gm)
                                                                                                 OF XT OSCILLATOR vs. VDD
  The percentage variation indicated here is part to
part variation due to normal process distribution. The                                   1000

   variation indicated is 3 standard deviation from                                     900          Max -40C
                average value for VDD = 5V.
                                                                                         800

                                                                                         700

                                                                            gm (A/V)    600          Typ 25C

                                                                                         500

                                                                                         400

                                                                                         300          Min 85C

                                                                                         200

                                                                                         100

                                                                                              02.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0

                                                                            Shaded areas are          VDD (Volts)

                                                                            beyond recommended range

1998 Microchip Technology Inc.                                            Preliminary                     DS39016A-page 103
PIC16C72 Series PIC16C72

FIGURE 14-22: TYPICAL XTAL STARTUP                                                                                                                      FIGURE 14-24: TYPICAL XTAL STARTUP
                     TIME vs. VDD (LP MODE, 25C)                                                                                                                            TIME vs. VDD (XT MODE, 25C)

      3.5

                        3.0                                                                                                                                                70

                                                                                                                                                                           60

Startup Time (Seconds)  2.5

                                                                                                                                                                           50

                        2.0                                                                                                                             Startup Time (ms)  40

                                                          32 kHz, 33 pF/33 pF                                                                                                                                                             200 kHz, 68 pF/68 pF
                        1.5
                                                                                                                                                                           30
                        1.0
                                                                                                                                                                                                                                          200 kHz, 47 pF/47 pF

                                                                                                                                                                           20

                                                                                                                                                                                                                                           1 MHz, 15 pF/15 pF

                                                                                                                                                                           10           4 MHz, 15 pF/15 pF

                        0.5                                                     200 kHz, 15 pF/15 pF

                        0.0                                                                                                                                                0
                          2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0                                                                                                                  2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0

                                                       VDD (Volts)                                                                                                                                    VDD (Volts)

FIGURE 14-23: TYPICAL XTAL STARTUP                                                                                                                      TABLE 14-2             CAPACITOR SELECTION
                     TIME vs. VDD (HS MODE,                                                                                                                                    FOR CRYSTAL
                     25C)                                                                                                                                                     OSCILLATORS

                                                                           7                                                                            Osc Type               Crystal  Cap. Range     Cap. Range
                                                                                                                                                            LP                   Freq         C1             C2
                                                                           6                                                                                XT
                                                                                                                                                                               32 kHz       33 pF          33 pF
Data based on matrix samples. See first page of this section for details.  5                          20 MHz, 33 pF/33 pF                                   HS                 200 kHz      15 pF          15 pF
             Startup Time (ms)                                                                                                                                                 200 kHz    47-68 pF       47-68 pF
                                                                           4                                                                                                    1 MHz       15 pF          15 pF
                                                                                                                                                                                4 MHz       15 pF          15 pF
                                                                                8 MHz, 33 pF/33 pF                                                                              4 MHz       15 pF          15 pF
                                                                                                                                                                                8 MHz     15-33 pF       15-33 pF
                                                                           3                                                                                                   20 MHz     15-33 pF       15-33 pF

                                                                                                                              20 MHz, 15 pF/15 pF

                                                                           2                          8 MHz, 15 pF/15 pF

                                                                           1

                                                                           4.0  4.5  5.0              5.5                                          6.0

                                                                                     VDD(Volts)                                                         Crystals
                                                                                                                                                          Used
                                                                                                                                                         32 kHz                Epson C-001R32.768K-A    20 PPM
                                                                                                                                                                               STD XTL 200.000KHz       20 PPM
                                                                                                                                                        200 kHz                ECS ECS-10-13-1          50 PPM
                                                                                                                                                         1 MHz                 ECS ECS-40-20-1          50 PPM
                                                                                                                                                         4 MHz                 EPSON CA-301 8.000M-C    30 PPM
                                                                                                                                                         8 MHz                 EPSON CA-301 20.000M-C   30 PPM
                                                                                                                                                        20 MHz

DS39016A-page 104                                                                                                                                  Preliminary                           1998 Microchip Technology Inc.
                                                     PIC16C72 PIC16C72 Series

FIGURE 14-25: TYPICAL IDD vs. FREQUENCY                   FIGURE 14-27: TYPICAL IDD vs. FREQUENCY
                     (LP MODE, 25C)                                           (XT MODE, 25C)

                                                             1800

                                                          1600                                           6.0V

120

                                                          1400                                           5.5V

100

                                                                                                                                                         5.0V
                                                          1200

          80                                                                                                                                             4.5V
                                                          1000
IDD (A)  60
                                                                                                                                                         4.0V

              6.0V                                        IDD (A)  800                                  3.5V

                     5.5V                                                                                                                                        3.0V
          40 5.0V                                                   600

              4.5V                                                                                                                                               2.5V

          20  4.0V
              3.5V

                   3.0V                                             400
                   2.5V
          0

          0                50  100              150  200            200

                               Frequency (kHz)

                                                                    0
                                                                    0.0 0.4 0.8 1.2 1.6 2.0 2.4 2.8 3.2 3.6 4.0

                                                                                                  Frequency (MHz)

FIGURE 14-26: MAXIMUM IDD vs.                             FIGURE 14-28: MAXIMUM IDD vs.
                     FREQUENCY                                                 FREQUENCY
                     (LP MODE, 85C TO -40C)                                  (XT MODE, -40C TO 85C)

                                                          1800
                                                                                                                                                         6.0V

140                                                       1600
                                                                                                                                                         5.5V

120                                                       1400                                           5.0V

100                                                       1200                                           4.5V

          80                                              1000                                           4.0V

IDD (A)  60 6.0V                                                   800                                  3.5V
                     5.5V                                 IDD (A)
                                                                                                         3.0V
              5.0V                                                                                                                   Data based on matrix samples. See first page of this section for details.

          40 4.5V                                                   600                                  2.5V

              4.0V

          20  3.5V                                                  400
              3.0V

              2.5V

          0                                                         200

          0                50  100              150  200

                               Frequency (kHz)                      0
                                                                    0.0 0.4 0.8 1.2 1.6 2.0 2.4 2.8 3.2 3.6 4.0

                                                                                                  Frequency (MHz)

1998 Microchip Technology Inc.                     Preliminary         DS39016A-page 105
                                                                           PIC16C72 Series PIC16C72

                                                                           FIGURE 14-29: TYPICAL IDD vs. FREQUENCY          FIGURE 14-30: MAXIMUM IDD vs.
                                                                                                (HS MODE, 25C)                                  FREQUENCY
                                                                                                                                                 (HS MODE, -40C TO 85C)
                                                                                7.0
                                                                                                                                 7.0

                                                                           6.0

                                                                                                                                                                                                  6.0

                                                                           5.0

                                                                                                                                                                                                  5.0

                                                                           4.0
                                                                           IDD(mA)
                                                                                                                                                                                        IDD (mA)  4.0

                                                                           3.0

                                                                                                                                                                                                  3.0

                                                                           2.0    6.0V

                                                                                  5.5V                                                                                                                 6.0V

                                                                                  5.0V                                                                                                            2.0  5.5V

                                                                           1.0 4.5V                                                                                                                    5.0V

                                                                                  4.0V                                                                                                            1.0 4.5V

                                                                           0.0                                                                                                                         4.0V
                                                                              12 4
                                                                                        6 8 10 12 14 16 18 20                                                                                     0.0
                                                                                              Frequency (MHz)                                                                                        12 4    6 8 10 12 14 16 18 20
                                                                                                                                                                                                                   Frequency (MHz)

                                                                           TABLE 14-3 TYPICAL EPROM ERASE TIME RECOMMENDATIONS

                                                                             Process          Wavelength   Intensity (W/ Distance from UV lamp                                                                        Typical Time (1)
                                                                           Technology         (Angstroms)                                                                                                                  (minutes)
                                                                                                                    cm2)                                                                                     (inches)
                                                                                                                                                                                                                             15 - 20
                                                                           57K                2537                  12,000                                                                                   1                  20
                                                                                                                                                                                                                                40
                                                                           77K                2537                  12,000                                                                                   1                  60

                                                                           90K                2537                  12,000                                                                                   1

                                                                           120K               2537                  12,000                                                                                   1

                                                                           Note 1: If these criteria are not met, the erase times will be different.

Data based on matrix samples. See first page of this section for details.  Note:  Fluorescent lights and sunlight both emit ultraviolet light at the erasure wavelength. Leaving a UV erasable
                                                                                  device's window uncovered could cause, over time, the devices memory cells to become erased. The era-
                                                                                  sure time for a fluorescent light is about three years. While sunlight requires only about one week. To pre-
                                                                                  vent the memory cells from losing data an opaque label should be placed over the erasure window.

                                                                           DS39016A-page 106               Preliminary                                                                                                 1998 Microchip Technology Inc.
                           PIC16CR72 PIC16C72 Series

15.0 DC AND AC CHARACTERISTICS GRAPHS AND TABLES - PIC16CR72

NO GRAPHS OR TABLES AVAILABLE AT THIS TIME

1998 Microchip Technology Inc.  Preliminary  DS39016A-page 107
PIC16C72 Series PIC16CR72

NOTES:

DS39016A-page 108  Preliminary   1998 Microchip Technology Inc.
                                                   PIC16C72 Series

16.0 PACKAGING INFORMATION                         Example

16.1 Package Marking Information                                                             PIC16C72/JW
                                                                                             9517CAT
         28-Lead Side Brazed Skinny Windowed
                                      XXXXXXXXXXX  Example
                                      XXXXXXXXXXX            PIC16C72-04/SP
                                      AABBCDE
                                                                   AABBCDE
         28-Lead PDIP (Skinny DIP)
                   MMMMMMMMMMMM
                   XXXXXXXXXXXXXXX
                        AABBCDE

28-Lead SOIC                                       Example
                                                     PIC16C72-04/SO
  MMMMMMMMMMMMMMMM                                           945/CAA
  XXXXXXXXXXXXXXXXXXXX
                                                   Example
          AABBCDE                                          PIC16C72
                                                           20I/SS025
28-Lead SSOP                                                 9517SBP
        XXXXXXXXXXXX
        XXXXXXXXXXXX
          AABBCAE

Legend: MM...M                    Microchip part number information
              XX...X              Customer specific information*
              AA                  Year code (last 2 digits of calendar year)
              BB                  Week code (week of January 1 is week `01')
              C                   Facility code of the plant at which wafer is manufactured
                                  O = Outside Vendor
              D                   C = 5" Line
              E                   S = 6" Line
                                  H = 8" Line
                                  Mask revision number
                                  Assembly code of the plant or country of origin in which
                                  part was assembled

Note:  In the event the full Microchip part number cannot be marked on one
       line, it will be carried over to the next line thus limiting the number of
       available characters for customer specific information.

* Standard OTP marking consists of Microchip part number, year code, week code,
   facility code, mask revision number, and assembly code. For OTP marking beyond
   this, certain price adders apply. Please check with your Microchip Sales Office.
   For QTP devices, any special marking adders are included in QTP price.

1998 Microchip Technology Inc.  Preliminary                                                DS39016A-page 109
PIC16C72 Series

16.2 28-Lead Ceramic Side Brazed Dual In-Line with Window (300 mil)(JW)

                                    E

W2                      D

       n                2                                                              A1
                 W1     1
                  E1                                                                       L
                                     A
              R              c                                B1
                  eB
                                  A2                          B               p

Units                                            INCHES*                    MILLIMETERS
                                                   NOM
Dimension Limits                        MIN           0.300   MAX      MIN    NOM          MAX
                                                          28
PCB Row Spacing                           0.098       0.100     0.102            7.62          2.59
                                          0.016       0.019     0.021                          0.53
Number of Pins                   n        0.050       0.058     0.065              28          1.65
                                          0.010       0.013     0.015                          0.38
Pitch                            p        0.008       0.010     0.012  2.49      2.54          0.30
                                          0.170       0.183     0.195                          4.95
Lower Lead Width                 B        0.107       0.125     0.143  0.41      0.47          3.63
                                          0.015       0.023     0.030                          0.76
Upper Lead Width                 B1       0.135       0.140     0.145  1.27      1.46          3.68
                                          1.430       1.458    &n