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

产品描述

搜索
 

PIC16LC505-04E/JW

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

器件描述

8-BIT, OTPROM, 4 MHz, RISC MICROCONTROLLER, PDSO14

8位, OTPROM, 4 MHz, 精简指令集微控制器, PDSO14

参数
PIC16LC505-04E/JW功能数量 1
PIC16LC505-04E/JW端子数量 14
PIC16LC505-04E/JW最大工作温度 85 Cel
PIC16LC505-04E/JW最小工作温度 -40 Cel
PIC16LC505-04E/JW最大供电/工作电压 5.5 V
PIC16LC505-04E/JW最小供电/工作电压 3 V
PIC16LC505-04E/JW额定供电电压 5 V
PIC16LC505-04E/JW外部数据总线宽度 0.0
PIC16LC505-04E/JW输入输出总线数量 12
PIC16LC505-04E/JW线速度 4 MHz
PIC16LC505-04E/JW加工封装描述 0.150 INCH, PLASTIC, SOIC-14
PIC16LC505-04E/JW无铅 Yes
PIC16LC505-04E/JW欧盟RoHS规范 Yes
PIC16LC505-04E/JW中国RoHS规范 Yes
PIC16LC505-04E/JW状态 ACTIVE
PIC16LC505-04E/JW工艺 CMOS
PIC16LC505-04E/JW包装形状 RECTANGULAR
PIC16LC505-04E/JW包装尺寸 SMALL OUTLINE
PIC16LC505-04E/JW表面贴装 Yes
PIC16LC505-04E/JW端子形式 GULL WING
PIC16LC505-04E/JW端子间距 1.27 mm
PIC16LC505-04E/JW端子涂层 MATTE TIN
PIC16LC505-04E/JW端子位置 DUAL
PIC16LC505-04E/JW包装材料 PLASTIC/EPOXY
PIC16LC505-04E/JW温度等级 INDUSTRIAL
PIC16LC505-04E/JWADC通道 Yes
PIC16LC505-04E/JW地址总线宽度 0.0
PIC16LC505-04E/JW位数 8
PIC16LC505-04E/JW最大FCLK时钟频率 4 MHz
PIC16LC505-04E/JW微处理器类型 RISC MICROCONTROLLER
PIC16LC505-04E/JWPWM通道 Yes
PIC16LC505-04E/JWROM编程 OTPROM

文档预览

PIC16LC505-04E/JW器件文档内容

                                                                 PIC16C505

                 14-Pin, 8-Bit CMOS Microcontroller

Device included in this Data Sheet:                   Special Microcontroller Features:

PIC16C505                                              In-Circuit Serial Programming (ICSPTM)

High-Performance RISC CPU:                            Power-on Reset (POR)

Only 33 instructions to learn                        Device Reset Timer (DRT)
Operating speed:
                                                       Watchdog Timer (WDT) with dedicated on-chip
   - DC - 20 MHz clock input
   - DC - 200 ns instruction cycle                       RC oscillator for reliable operation
                                                       Programmable Code Protection

                                                       Internal weak pull-ups on I/O pins

                                    Memory             Wake-up from Sleep on pin change

Device                                                 Power-saving Sleep mode

                 Program                    Data

PIC16C505        1024 x 12                  72 x 8    Selectable oscillator options:

Direct, indirect and relative addressing modes for  - INTRC: Precision internal 4 MHz oscillator
   data and instructions
                                                      - EXTRC: External low-cost RC oscillator
12 bit wide instructions
8 bit wide data path                                - XT: Standard crystal/resonator
2-level deep hardware stack
Eight special function hardware registers           - HS: High speed crystal/resonator
Direct, indirect and relative addressing modes for
                                                      - LP:      Power saving, low frequency
   data and instructions                                         crystal
All single cycle instructions (200 ns) except for
                                                      CMOS Technology:
   program branches which are two-cycle
                                                       Low-power, high-speed CMOS EPROM
Peripheral Features:                                     technology

11 I/O pins with individual direction control       Fully static design
                                                       Wide operating voltage range (2.5V to 5.5V)
1 input pin
                                                       Wide temperature ranges
High current sink/source for direct LED drive
Timer0: 8-bit timer/counter with 8-bit                 - Commercial: 0C to +70C

   programmable prescaler                                - Industrial: -40C to +85C

FIGURE 1: PIN DIAGRAM:                                   - Extended: -40C to +125C
                                                         - < 1.0 A typical standby current @ 5V
                   PDIP, SOIC, Ceramic Side Brazed    Low power consumption
                                                         - < 2.0 mA @ 5V, 4 MHz
                                                         - 15 A typical @ 3.0V, 32 kHz for TMR0 run-

                                                            ning in SLEEP mode
                                                         - < 1.0 A typical standby current @ 5V

           VDD        1             14      VSS

RB5/OSC1/CLKIN        2  PIC16C505  13      RB0

RB4/OSC2/CLKOUT       3             12      RB1

RB3/MCLR/VPP          4             11      RB2

RC5/T0CKI             5             10      RC0

           RC4        6             9       RC1

           RC3        7             8       RC2

1998 Microchip Technology Inc.                    Preliminary                                DS40192A-page 1
PIC16C505

TABLE OF CONTENTS

1.0 General Description..................................................................................................................................................................... 3
2.0 PIC16C505 Device Varieties....................................................................................................................................................... 5
3.0 Architectural Overview ................................................................................................................................................................ 7
4.0 Memory Organization ................................................................................................................................................................ 11
5.0 I/O Port ...................................................................................................................................................................................... 19
6.0 Timer0 Module and TMR0 Register .......................................................................................................................................... 23
7.0 Special Features of the CPU..................................................................................................................................................... 27
8.0 Instruction Set Summary ........................................................................................................................................................... 39
9.0 Development Support................................................................................................................................................................ 51
10.0 Electrical Characteristics - PIC16C505 ..................................................................................................................................... 55
11.0 DC and AC Characteristics - PIC16C505.................................................................................................................................. 65
12.0 Packaging Information............................................................................................................................................................... 69
INDEX .................................................................................................................................................................................................. 73
PIC16C505 Product Identification System ........................................................................................................................................... 77

                             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.

DS40192A-page 2  Preliminary   1998 Microchip Technology Inc.
1.0 GENERAL DESCRIPTION                                                   PIC16C505

The PIC16C505 from Microchip Technology is a low-           1.1 Applications
cost, high performance, 8-bit, fully static, EPROM/
ROM-based CMOS microcontroller. It employs a RISC           The PIC16C505 fits perfectly in applications ranging
architecture with only 33 single word/single cycle          from personal care appliances and security systems to
instructions. All instructions are single cycle (1 s)      low-power remote transmitters/receivers. The EPROM
except for program branches which take two cycles.          technology makes customizing application programs
The PIC16C505 delivers performance an order of mag-         (transmitter codes, appliance settings, receiver fre-
nitude higher than its competitors in the same price cat-   quencies, etc.) extremely fast and convenient. The
egory. The 12-bit wide instructions are highly              small footprint packages, for through hole or surface
symmetrical resulting in 2:1 code compression over          mounting, make this microcontroller perfect for applica-
other 8-bit microcontrollers in its class. The easy to use  tions with space limitations. Low-cost, low-power, high
and easy to remember instruction set reduces                performance, ease of use and I/O flexibility make the
development time significantly.                             PIC16C505 very versatile even in areas where no
                                                            microcontroller use has been considered before (e.g.,
The PIC16C505 product is equipped with special fea-         timer functions, replacement of "glue" logic and PLD's
tures that reduce system cost and power requirements.       in larger systems, coprocessor applications).
The Power-On Reset (POR) and Device Reset Timer
(DRT) eliminate the need for external reset circuitry.
There are five oscillator configurations to choose from,
including INTRC internal oscillator mode and the
power-saving LP (Low Power) oscillator. Power saving
SLEEP mode, Watchdog Timer and code protection
features improve system cost, power and reliability.

The PIC16C505 is available in the cost-effective One-
Time-Programmable (OTP) version, which is suitable
for production in any volume. The customer can take
full advantage of Microchip's price leadership in OTP
microcontrollers while benefiting from the OTP's
flexibility.

The PIC16C505 product is supported by a full-featured
macro assembler, a software simulator, an in-circuit
emulator, a `C' compiler, a low-cost development pro-
grammer, and a full featured programmer. All the tools
are supported on IBM PC and compatible machines.

1998 Microchip Technology Inc.  Preliminary               DS40192A-page 3
PIC16C505

TABLE 1-1: PIC16C505 DEVICE

Clock            Maximum Frequency                        PIC16C505
Memory           of Operation (MHz)             20
Peripherals      EPROM Program Memory
                 Data Memory (bytes)            1024
Features         Timer Module(s)                72
                 Wake-up from SLEEP on          TMR0
                 pin change                     Yes
                 I/O Pins
                 Input Pins                     11
                 Internal Pull-ups              1
                 In-Circuit Serial Programming  Yes
                 Number of Instructions         Yes
                 Packages                       33
                                                14-pin DIP, SOIC, JW

The PIC16C505 device has Power-on Reset, selectable Watchdog Timer, selectable code protect,
high I/O current capability and precision internal oscillator.
The PIC16C505 device uses serial programming with data pin RB0 and clock pin RB1.

DS40192A-page 4                                 Preliminary            1998 Microchip Technology Inc.
2.0 PIC16C505 DEVICE VARIETIES                                               PIC16C505

A variety of packaging options are available.                  2.3 Quick-Turnaround-Production (QTP)
Depending on application and production                                  Devices
requirements, the proper device option can be
selected using the information in this section. When           Microchip offers a QTP Programming Service for
placing orders, please use the PIC16C505 Product               factory production orders. This service is made
Identification System at the back of this data sheet to        available for users who choose not to program a
specify the correct part number.                               medium to high quantity of units and whose code
                                                               patterns have stabilized. The devices are identical to
2.1 UV Erasable Devices                                        the OTP devices but with all EPROM locations and fuse
                                                               options already programmed by the factory. Certain
The UV erasable version, offered in ceramic side               code and prototype verification procedures do apply
brazed package, is optimal for prototype development           before production shipments are available. Please con-
and pilot programs.                                            tact your local Microchip Technology sales office for
                                                               more details.
The UV erasable version can be erased and
reprogrammed to any of the configuration modes.                2.4 Serialized Quick-Turnaround
                                                                         Production (SQTPSM) Devices
   Note: Please note that erasing the device will
               also erase the pre-programmed internal          Microchip offers a unique programming service where
               calibration value for the internal oscillator.  a few user-defined locations in each device are
               The calibration value must be saved prior       programmed with different serial numbers. The serial
               to erasing the part.                            numbers may be random, pseudo-random or
                                                               sequential.
Microchip's PICSTART PLUS and PRO MATE pro-
grammers all support programming of the PIC16C505.             Serial programming allows each device to have a
Third party programmers also are available; refer to the       unique number which can serve as an entry-code,
Microchip Third Party Guide for a list of sources.             password or ID number.

2.2 One-Time-Programmable (OTP)
          Devices

The availability of OTP devices is especially useful for
customers who need the flexibility for frequent code
updates or small volume applications.

The OTP devices, packaged in plastic packages permit
the user to program them once. In addition to the
program memory, the configuration bits must also be
programmed.

1998 Microchip Technology Inc.  Preliminary                  DS40192A-page 5
PIC16C505

NOTES:

DS40192A-page 6  Preliminary   1998 Microchip Technology Inc.
3.0 ARCHITECTURAL OVERVIEW                                               PIC16C505

The high performance of the PIC16C505 can be               The PIC16C505 device contains an 8-bit ALU and
attributed to a number of architectural features           working register. The ALU is a general purpose
commonly found in RISC microprocessors. To begin           arithmetic unit. It performs arithmetic and Boolean
with, the PIC16C505 uses a Harvard architecture in         functions between data in the working register and any
which program and data are accessed on separate            register file.
buses. This improves bandwidth over traditional von
Neumann architecture where program and data are            The ALU is 8-bits wide and capable of addition,
fetched on the same bus. Separating program and            subtraction, shift and logical operations. Unless
data memory further allows instructions to be sized        otherwise mentioned, arithmetic operations are two's
differently than the 8-bit wide data word. Instruction     complement in nature. In two-operand instructions,
opcodes are 12-bits wide, making it possible to have       typically one operand is the W (working) register. The
all single word instructions. A 12-bit wide program        other operand is either a file register or an immediate
memory access bus fetches a 12-bit instruction in a        constant. In single operand instructions, the operand
single cycle. A two-stage pipeline overlaps fetch and      is either the W register or a file register.
execution of instructions. Consequently, all instructions
(33) execute in a single cycle (200ns @ 20MHz)             The W register is an 8-bit working register used for
except for program branches.                               ALU operations. It is not an addressable register.

The PIC16C505 addresses 1K x 12 of program                 Depending on the instruction executed, the ALU may
memory. All program memory is internal.                    affect the values of the Carry (C), Digit Carry (DC),
                                                           and Zero (Z) bits in the STATUS register. The C and
The PIC16C505 can directly or indirectly address its       DC bits operate as a borrow and digit borrow out bit,
register files and data memory. All special function       respectively, in subtraction. See the SUBWF and ADDWF
registers, including the program counter, are mapped       instructions for examples.
in the data memory. The PIC16C505 has a highly
orthogonal (symmetrical) instruction set that makes it     A simplified block diagram is shown in Figure 3-1, with
possible to carry out any operation on any register        the corresponding device pins described in Table 3-1.
using any addressing mode. This symmetrical nature
and lack of `special optimal situations' make
programming with the PIC16C505 simple yet efficient.
In addition, the learning curve is reduced significantly.

1998 Microchip Technology Inc.  Preliminary              DS40192A-page 7
PIC16C505

FIGURE 3-1: PIC16C505 BLOCK DIAGRAM

                                  12                      Data Bus       8                PORTB
                                                                                          PORTC
                 EPROM                Program Counter

                 1K x 12              STACK1                 RAM                                 RB0
                 Program              STACK2               72 bytes                              RB1
                 Memory                                                                          RB2
                                                              File                               RB3/MCLR/Vpp
                                                          Registers                              RB4/OSC2/CLKOUT
                                                                                                 RB5/OSC1/CLKIN
Program          12                                   RAM Addr 9
   Bus                                                         Addr MUX                          RC0
                                                                                                 RC1
                 Instruction reg                                                                 RC2
                                                                                                 RC3
                                      Direct Addr 5             Indirect                         RC4
                                                          5-7 Addr                               RC5/T0CKI

                                                          FSR reg

                                                                              STATUS reg
                                  8

                                      Device Reset     3  MUX
                                           Timer
                 Instruction                                  ALU
                 Decode &               Power-on       8
                                           Reset
                   Control                                   W reg
                   Timing               Watchdog
OSC1/CLKIN       Generation                Timer
OSC2
                                       Internal RC
                                           OSC

                                                          Timer0

                                  MCLR
                                            Vdd, Vss

DS40192A-page 8                                      Preliminary                           1998 Microchip Technology Inc.
                                                                         PIC16C505

TABLE 3-1: PIC16C505 PINOUT DESCRIPTION

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

RB0              13               13  I/O TTL/ST Bi-directional I/O port/ serial programming data. Can

                                           be software programmed for internal weak pull-up and

                                           wake-up from SLEEP on pin change. This buffer is a

                                           Schmitt Trigger input when used in serial programming

                                           mode.

RB1              12               12  I/O TTL/ST Bi-directional I/O port/ serial programming clock. Can

                                           be software programmed for internal weak pull-up and

                                           wake-up from SLEEP on pin change. This buffer is a

                                           Schmitt Trigger input when used in serial programming

                                           mode.

RB2              11               11  I/O  TTL Bi-directional I/O port.

RC0              10               10  I/O  TTL Bi-directional I/O port.

RC1              9                9   I/O  TTL Bi-directional I/O port.

RC2              8                8   I/O  TTL Bi-directional I/O port.

RC3              7                7   I/O  TTL Bi-directional I/O port.

RC4              6                6   I/O  TTL Bi-directional I/O port.

RC5/T0CKI        5                5   I/O  ST Bi-directional I/O port. Can be configured as T0CKI.

RB3/MCLR/VPP     4                4   I    TTL Input port/master clear (reset) input/programming volt-

                                           age input. When configured as MCLR, this pin is an

                                           active low reset to the device. Voltage on MCLR/VPP

                                           must not exceed VDD during normal device operation.

                                           Can be software programmed for internal weak pull-up

                                           and wake-up from SLEEP on pin change. Weak pull-

                                           up only when configured as RB3.

RB4/OSC2/CLKOUT  3                3   I/O  TTL Bi-directional I/O port/oscillator crystal output. Con-

                                           nections to crystal or resonator in crystal oscillator

                                           mode (XT and LP modes only, RB4 in other modes).

                                           Can be software programmed for internal weak pull-up

                                           and wake-up from SLEEP on pin change. In EXTRC

                                           and INTRC modes, the pin output can be configured to

                                           CLKOUT, which has 1/4 the frequency of OSC1 and

                                           denotes the instruction cycle rate.

RB5/OSC1/CLKIN   2                2   I/O TTL/ST Bidirectional IO port/oscillator crystal input/external

                                           clock source input (RB5 in Internal RC mode only,

                                           OSC1 in all other oscillator modes). TTL input when

                                           RB5, ST input in external RC oscillator mode.

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

VSS              14               14  P    -- Ground reference 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

1998 Microchip Technology Inc.           Preliminary                                         DS40192A-page 9
PIC16C505

3.1 Clocking Scheme/Instruction Cycle                   3.2 Instruction Flow/Pipelining

The clock input (OSC1/CLKIN pin) is internally divided  An Instruction Cycle consists of four Q cycles (Q1, Q2,
by four to generate four non-overlapping quadrature     Q3 and Q4). The instruction fetch and execute are
clocks namely Q1, Q2, Q3 and Q4. Internally, the        pipelined such that fetch takes one instruction cycle
program counter is incremented every Q1, and the        while decode and execute takes another instruction
instruction is fetched from program memory and          cycle. However, due to the pipelining, each instruction
latched into instruction register in Q4. It is decoded  effectively executes in one cycle. If an instruction
and executed during the following Q1 through Q4. The    causes the program counter to change (e.g., GOTO)
clocks and instruction execution flow is shown in       then two cycles are required to complete the
Figure 3-2 and Example 3-1.                             instruction (Example 3-1).

                                                        A fetch cycle begins with the program counter (PC)
                                                        incrementing in Q1.

                                                        In the execution cycle, the fetched instruction is
                                                        latched into the Instruction Register (IR) in cycle Q1.
                                                        This instruction is then decoded and executed during
                                                        the Q2, Q3, and Q4 cycles. Data memory is read
                                                        during Q2 (operand read) and written during Q4
                                                        (destination write).

FIGURE 3-2: CLOCK/INSTRUCTION CYCLE

                  Q1 Q2 Q3 Q4            Q1 Q2 Q3 Q4                   Q1 Q2 Q3 Q4

OSC1                                                       PC+1                           PC+2
                                                    Fetch INST (PC+1)           Fetch INST (PC+2)
Q1                                                Execute INST (PC)            Execute INST (PC+1)

Q2                                                                                                  Internal
                                                                                                    phase
Q3
                                                                                                    clock

Q4

PC                  PC

                        Fetch INST (PC)
                    Execute INST (PC-1)

EXAMPLE 3-1: INSTRUCTION PIPELINE FLOW

1. MOVLW 03H        Fetch 1              Execute 1
2. MOVWF PORTB                            Fetch 2
3. CALL SUB_1                                           Execute 2
4. BSF PORTB, BIT1                                       Fetch 3   Execute 3

                                                                   Fetch 4    Flush

                                                                              Fetch SUB_1 Execute SUB_1

All instructions are single cycle, except for any program branches. These take two cycles since the fetch
instruction is "flushed" from the pipeline while the new instruction is being fetched and then executed.

DS40192A-page 10                         Preliminary                           1998 Microchip Technology Inc.
                                                                    PIC16C505

4.0 MEMORY ORGANIZATION                                FIGURE 4-1:  PROGRAM MEMORY MAP
                                                                    AND STACK FOR THE
PIC16C505 memory is organized into program mem-                     PIC16C505
ory and data memory. For the PIC16C505, a paging
scheme is used. Program memory pages are accessed                   PC<11:0>
using one STATUS register bit. Data memory banks
are accessed using the File Select Register (FSR).     CALL, RETLW                 12

4.1 Program Memory Organization                                     Stack Level 1
                                                                    Stack Level 2
The PIC16C505 devices have a 12-bit Program
Counter (PC).                                                       Reset Vector (note 1)  0000h

The 1K x 12 (0000h-03FFh) for the PIC16C505 are        User Memory                         01FFh
physically implemented. Refer to Figure 4-1.              Space                            0200h
Accessing a location above this boundary will cause a
wrap-around within the first 1K x 12 space. The                                            03FFh
effective reset vector is at 0000h, (see Figure 4-1).                                      0400h
Location 03FFh (PIC16C505) contains the internal
clock oscillator calibration value. This value should
never be overwritten.

                                                                    On-chip Program
                                                                          Memory

                                                                          1024 Word

                                                                                                                      7FFh

                                                       Note 1: Address 0000h becomes the
                                                                   effective reset vector. Location
                                                                   03FFh (PIC16C505) contains the
                                                                   MOVLW XX INTERNAL RC oscillator
                                                                   calibration value.

1998 Microchip Technology Inc.  Preliminary                                        DS40192A-page 11
PIC16C505

4.2 Data Memory Organization                                 For the PIC16C505, the register file is composed of 8
                                                             special function registers, 24 general purpose
Data memory is composed of registers, or bytes of            registers, and 48 general purpose registers that may
RAM. Therefore, data memory for a device is specified        be addressed using a banking scheme (Figure 4-2).
by its register file. The register file is divided into two
functional groups: special function registers and            4.2.1 GENERAL PURPOSE REGISTER FILE
general purpose registers.
                                                             The general purpose register file is accessed either
The special function registers include the TMR0              directly or indirectly through the file select register
register, the Program Counter (PC), the Status               FSR (Section 4.8).
Register, the I/O registers (ports), and the File Select
Register (FSR). In addition, special purpose registers
are used to control the I/O port configuration and
prescaler options.

The general purpose registers are used for data and
control information under command of the instructions.

FIGURE 4-2: PIC16C505 REGISTER FILE MAP

FSR<6:5>                      00                01                    10               11
File Address                           20h                   40h              60h
                             INDF(1)
           00h                TMR0                           Addresses map back to
           01h                 PCL                           addresses in Bank 0.
           02h              STATUS
           03h                 FSR
           04h              OSCCAL
           05h               PORTB
           06h

                  07h       PORTC

                  08h       General

                            Purpose

                  0Fh       Registers  2Fh                   4Fh              6Fh
                                       30h                   50h              70h
                       10h
                                            General               General          General
                            General         Purpose               Purpose          Purpose
                                            Registers             Registers        Registers
                            Purpose
                                       3Fh                   5Fh              7Fh
                            Registers
                                                Bank 1                Bank 2           Bank 3
                       1Fh

                            Bank 0

                  Note 1: Not a physical register.

DS40192A-page 12                                    Preliminary                      1998 Microchip Technology Inc.
                                                                                                    PIC16C505

4.2.2 SPECIAL FUNCTION REGISTERS                             The special registers can be classified into two sets.
                                                             The special function registers associated with the
The Special Function Registers (SFRs) are registers          "core" functions are described in this section. Those
used by the CPU and peripheral functions to control          related to the operation of the peripheral features are
the operation of the device (Table 4-1).                     described in the section for each peripheral feature.

TABLE 4-1: SPECIAL FUNCTION REGISTER (SFR) SUMMARY

                                                                                          Value on  Value on  Value on
                                                                                         Power-On
                                                                      Bit 1 Bit 0 Reset             MCLR and Wake-up on

Address Name    Bit 7 Bit 6 Bit 5 Bit 4 Bit 3             Bit 2                                     WDT Reset Pin Change

00h     INDF    Uses contents of FSR to address data memory (not a physical register) xxxx xxxx uuuu uuuu uuuu uuuu

01h     TMR0    8-bit real-time clock/counter                         xxxx xxxx uuuu uuuu uuuu uuuu

02h(1)  PCL     Low order 8 bits of PC                                1111 1111 1111 1111 1111 1111

03h     STATUS  RBWUF --              PAO TO          PD  Z           DC C 0001 1xxx 000q quuu 100q quuu

04h     FSR     Indirect data memory address pointer                  110x xxxx 11uu uuuu 11uu uuuu

05h     OSCCAL CAL5 CAL4 CAL3 CAL2 CAL1 CAL0 -- -- 1000 00-- uuuu uu-- uuuu uu--

N/A     TRISB   --                --           I/O control registers  --11 1111 --11 1111 --11 1111

N/A     TRISC   --                --           I/O control registers  --11 1111 --11 1111 --11 1111

N/A     OPTION RBWU RBPU TOCS TOSE PSA PS2 PS1 PS0 1111 1111 1111 1111 1111 1111

06h     PORTB   --                -- RB5 RB4 RB3 RB2 RB1 RB0 --xx xxxx --uu uuuu --uu uuuu

07h     PORTC   --                -- RC5 RC4 RC3 RC2 RC1 RC0 --xx xxxx --uu uuuu --uu uuuu

Legend: Shaded cellls not used by Port Registers, read as `0', -- = unimplemented, read as `0', x = unknown, u = unchanged.

1998 Microchip Technology Inc.                      Preliminary                                   DS40192A-page 13
PIC16C505                                                       For example, CLRF STATUS will clear the upper three
                                                                bits and set the Z bit. This leaves the STATUS register
4.3 STATUS Register                                             as 000u u1uu (where u = unchanged).

This register contains the arithmetic status of the ALU,        It is recommended, therefore, that only BCF, BSF and
the RESET status, and the page preselect bit.                   MOVWF instructions be used to alter the STATUS
The STATUS register can be the destination for any              register because these instructions do not affect the Z,
instruction, as with any other register. If the STATUS          DC or C bits from the STATUS register. For other
register is the destination for an instruction that affects     instructions, which do affect STATUS bits, see
the Z, DC or C bits, then the write to these three bits is      Instruction Set Summary.
disabled. These bits are set or cleared according to
the device logic. Furthermore, the TO and PD bits are
not writable. Therefore, the result of an instruction with
the STATUS register as destination may be different
than intended.

FIGURE 4-3: STATUS REGISTER (ADDRESS:03h)

R/W-0 R/W-0 R/W-0                  R-1  R-1    R/W-x                    R/W-x  R/W-x
                                                                         DC       C
RBWUF --          PA0              TO   PD                   Z                            R = Readable bit
                                                                           1        bit0  W = Writable bit
bit7    6         5                4    3                    2                            - n = Value at POR reset

bit 7:  RBWUF: IO reset bit
        1 = Reset due to wake-up from SLEEP on pin change
        0 = After power up or other reset

bit 6: Unimplemented

bit 5:  PA0: Program page preselect bits
        1 = Page 1 (200h - 3FFh)
        0 = Page 0 (000h - 1FFh)
        Each page is 512 bytes.
        Using the PA0 bit as a general purpose read/write bit in devices which do not use it for program
        page preselect is not recommended since this may affect upward compatibility with future products.

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 (for ADDWF and SUBWF instructions)
        ADDWF
        1 = A carry from the 4th low order bit of the result occurred
        0 = A carry from the 4th low order bit of the result did not occur
        SUBWF
        1 = A borrow from the 4th low order bit of the result did not occur
        0 = A borrow from the 4th low order bit of the result occurred

bit 0:  C: Carry/borrow bit (for ADDWF, SUBWF and RRF, RLF instructions)

        ADDWF                           SUBWF                                  RRF or RLF
                                                                               Load bit with LSB or MSB, respectively
        1 = A carry occurred            1 = A borrow did not occur

        0 = A carry did not occur       0 = A borrow occurred

DS40192A-page 14                               Preliminary                                 1998 Microchip Technology Inc.
                                                                                      PIC16C505

4.4 OPTION Register                                                 Note:  If TRIS bit is set to `0', the wake-up on
                                                                           change and pull-up functions are disabled
The OPTION register is a 8-bit wide, write-only                            for that pin; i.e., note that TRIS overrides
register which contains various control bits to                            OPTION control of RBPU and RBWU.
configure the Timer0/WDT prescaler and Timer0.

By executing the OPTION instruction, the contents of
the W register will be transferred to the OPTION
register. A RESET sets the OPTION<7:0> bits.

FIGURE 4-4: OPTION REGISTER

W-1     W-1  W-1                  W-1          W-1    W-1           W-1    W-1
                                                                           PS0
RBWU RBPU T0CS T0SE                            PSA    PS2           PS1               W = Writable bit
                                                                                bit0  U = Unimplemented bit
bit7    6    5                    4             3     2             1                 - n = Value at POR reset
                                                                                      Reference Table 4-1 for
                                                                                      other resets.

bit 7:  RBWU: Enable wake-up on pin change (RB0, RB1, RB3, RB4)
        1 = Disabled
        0 = Enabled

bit 6:  RBPU: Enable weak pull-ups (RB0, RB1, RB3, RB4)
        1 = Disabled
        0 = Enabled

bit 5:  T0CS: Timer0 clock source select bit
        1 = Transition on T0CKI pin
        0 = Transition on internal instruction cycle clock, Fosc/4

bit 4:  T0SE: Timer0 source edge select bit
        1 = Increment on high to low transition on the T0CKI pin
        0 = Increment on low to high transition on the T0CKI pin

bit 3:  PSA: Prescaler assignment bit
        1 = Prescaler assigned to the WDT
        0 = Prescaler assigned to Timer0

bit 2-0: PS2:PS0: Prescaler rate select bits

        Bit Value Timer0 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

1998 Microchip Technology Inc.                    Preliminary                       DS40192A-page 15
PIC16C505

4.5 OSCCAL Register
The Oscillator Calibration (OSCCAL) register is used to
calibrate the internal 4 MHz oscillator. It contains six
bits for fine calibration.

FIGURE 4-5: OSCCAL REGISTER (ADDRESS 05h)PIC16C505

R/W-1 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0                             U-0  U-0
                                                                     --
CAL5 CAL4 CAL3 CAL2 CAL1                                  CAL0  --             R = Readable bit
                                                                         bit0  W = Writable bit
bit7                                                                           U = Unimplemented bit,

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

bit 7-4: CAL<5:0>: Fine calibration

DS40192A-page 16                     Preliminary                               1998 Microchip Technology Inc.
4.6 Program Counter                                                    PIC16C505

As a program instruction is executed, the Program        4.6.1 EFFECTS OF RESET
Counter (PC) will contain the address of the next
program instruction to be executed. The PC value is      The Program Counter is set upon a RESET, which
increased by one every instruction cycle, unless an      means that the PC addresses the last location in the
instruction changes the PC.                              last page i.e., the oscillator calibration instruction. After
                                                         executing MOVLW XX, the PC will roll over to location
For a GOTO instruction, bits 8:0 of the PC are provided  00h, and begin executing user code.
by the GOTO instruction word. The PC Latch (PCL) is
mapped to PC<7:0>. Bit 5 of the STATUS register          The STATUS register page preselect bits are cleared
provides page information to bit 9 of the PC (Figure 4-  upon a RESET, which means that page 0 is pre-
6).                                                      selected.

For a CALL instruction, or any instruction where the     Therefore, upon a RESET, a GOTO instruction will
PCL is the destination, bits 7:0 of the PC again are     automatically cause the program to jump to page 0
provided by the instruction word. However, PC<8>         until the value of the page bits is altered.
does not come from the instruction word, but is always
cleared (Figure 4-6).                                    4.7 Stack

Instructions where the PCL is the destination, or        PIC16C505 devices have a 12-bit wide hardware
Modify PCL instructions, include MOVWF PC, ADDWF         push/pop stack.
PC, and BSF PC,5.
                                                         A CALL instruction will push the current value of stack
Note:  Because PC<8> is cleared in the CALL              1 into stack 2 and then push the current program
       instruction, or any Modify PCL instruction,       counter value, incremented by one, into stack level 1. If
       all subroutine calls or computed jumps are        more than two sequential CALL's are executed, only
       limited to the first 256 locations of any pro-    the most recent two return addresses are stored.
       gram memory page (512 words long).
                                                         A RETLW instruction will pop the contents of stack level
FIGURE 4-6:  LOADING OF PC                               1 into the program counter and then copy stack level 2
             BRANCH INSTRUCTIONS -                       contents into level 1. If more than two sequential
             PIC16C505                                   RETLW's are executed, the stack will be filled with the
                                                         address previously stored in level 2. Note that the
GOTO Instruction                                         W register will be loaded with the literal value specified
                                                         in the instruction. This is particularly useful for the
       11 10 9 8 7                     0                 implementation of data look-up tables within the
                                                         program memory.

PC                         PCL

                  Instruction Word

             PA0

       7                          0

             STATUS

CALL or Modify PCL Instruction

       11 10 9 8 7                     0

PC                         PCL

                     Instruction Word

             Reset to `0'

             PA0

       7                          0

             STATUS

1998 Microchip Technology Inc.          Preliminary    DS40192A-page 17
PIC16C505                                                       EXAMPLE 4-2: HOW TO CLEAR RAM

4.8 Indirect Data Addressing; INDF and                                             USING INDIRECT
          FSR Registers
                                                                                   ADDRESSING
The INDF register is not a physical register.
Addressing INDF actually addresses the register                            movlw 0x10 ;initialize pointer
whose address is contained in the FSR register (FSR
is a pointer). This is indirect addressing.                                movwf FSR  ; to RAM

EXAMPLE 4-1: INDIRECT ADDRESSING                                NEXT       clrf INDF ;clear INDF register
Register file 07 contains the value 10h
Register file 08 contains the value 0Ah                                  incf FSR,F ;inc pointer
Load the value 07 into the FSR register
A read of the INDF register will return the value                        btfsc FSR,4 ;all done?

   of 10h                                                                  goto NEXT ;NO, clear next
Increment the value of the FSR register by one
                                                                CONTINUE
   (FSR = 08)
A read of the INDR register now will return the                          :          ;YES, continue

   value of 0Ah.                                                The FSR is a 5-bit wide register. It is used in
                                                                conjunction with the INDF register to indirectly address
Reading INDF itself indirectly (FSR = 0) will produce           the data memory area.
00h. Writing to the INDF register indirectly results in a
no-operation (although STATUS bits may be affected).            The FSR<4:0> bits are used to select data memory
                                                                addresses 00h to 1Fh.
A simple program to clear RAM locations 10h-1Fh
using indirect addressing is shown in Example 4-2.              The device uses FSR6:5 to select between banks
                                                                0:3.

FIGURE 4-7: DIRECT/INDIRECT ADDRESSING

       Direct Addressing                                                             Indirect Addressing
                                                                                   6 5 4 (FSR) 0
(FSR)
                                                                                      bank location select
65                      4 (opcode) 0

bank select       location select

                                        00  01             10         11

                          00h

                                                                      Addresses
                                                                      map back to
                                                                      addresses
                                                                      in Bank 0.

                  Data    0Fh

                  Memory(1) 10h

                                   1Fh      3Fh            5Fh        7Fh

                                   Bank 0 Bank 1 Bank 2 Bank 3

                          Note 1: For register map detail see Section 4.2.

DS40192A-page 18                            Preliminary                            1998 Microchip Technology Inc.
                                                                                  PIC16C505

5.0 I/O PORT                                               5.4 I/O Interfacing

As with any other register, the I/O register can be        The equivalent circuit for an I/O port pin is shown in
written and read under program control. However,           Figure 5-1. All port pins, except RB3 which is input
read instructions (e.g., MOVF PORTB,W) always read         only, may be used for both input and output
the I/O pins independent of the pin's input/output         operations. For input operations these ports are non-
modes. On RESET, all I/O ports are defined as input        latching. Any input must be present until read by an
(inputs are at hi-impedance) since the I/O control         input instruction (e.g., MOVF PORTB,W). The outputs
registers are all set.                                     are latched and remain unchanged until the output
                                                           latch is rewritten. To use a port pin as output, the
5.1 PORTB                                                  corresponding direction control bit in TRIS must be
                                                           cleared (= 0). For use as an input, the corresponding
PORTB is an 8-bit I/O register. Only the low order 6       TRIS bit must be set. Any I/O pin (except RB3) can be
bits are used (RB5:RB0). Bits 7 and 6 are                  programmed individually as input or output.
unimplemented and read as '0's. Please note that RB3
is an input only pin. The configuration word can set       FIGURE 5-1: EQUIVALENT CIRCUIT
several I/O's to alternate functions. When acting as                            FOR A SINGLE I/O PIN
alternate functions the pins will read as `0' during port
read. Pins RB0, RB1, RB3 and RB4 can be configured         Data
with weak pull-ups and also with wake-up on change.
The wake-up on change and weak pull-up functions           Bus
are not pin selectable. If pin 4 is configured as MCLR,
weak pull-up is always off and wake-up on change for                 D         Q
this pin is not enabled.
                                                                        Data      VDD

                                                           WR           Latch

                                                           Port      CK Q

                                                                                  P

5.2 PORTC                                                  W                      N                   I/O
                                                           Reg
PORTC is an 8-bit I/O register. Only the low order 6                 D         Q                      pin(1)
bits are used (RC5:RC0). Bits 7 and 6 are unimple-         TRIS `f'
mented and read as `0's.                                                TRIS      VSS

                                                                        Latch

5.3 TRIS Registers                                                   CK Q

The output driver control register is loaded with the                   Reset
contents of the W register by executing the TRIS f
instruction. A '1' from a TRIS register bit puts the                                          RD Port
corresponding output driver in a hi-impedance mode.        Note 1: I/O pins have protection diodes to VDD and VSS.
A '0' puts the contents of the output data latch on the
selected pins, enabling the output buffer. The
exceptions are RB3 which is input only and RC5 which
may be controlled by the option register, see Figure 4-
4.

Note:  A read of the ports reads the pins, not the
       output data latches. That is, if an output
       driver on a pin is enabled and driven high,
       but the external system is holding it low, a
       read of the port will indicate that the pin is
       low.

The TRIS registers are "write-only" and are set (output
drivers disabled) upon RESET.

1998 Microchip Technology Inc.  Preliminary                                     DS40192A-page 19
PIC16C505

TABLE 5-1: SUMMARY OF PORT REGISTERS

                                                                                         Value on  Value on  Value on
                                                                                        Power-On
                                       Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Reset                         MCLR and Wake-up on

Address  Name     Bit 7  Bit 6  Bit 5                                                              WDT Reset Pin Change

N/A      TRISB    --     --            I/O control registers              --11 1111 --11 1111 --11 1111

N/A      TRISC    --     --            I/O control registers              --11 1111 --11 1111 --11 1111

N/A      OPTION RBWU RBPU TOCS TOSE PSA PS2 PS1 PS0 1111 1111 1111 1111 1111 1111

03h      STATUS RBWUF -- PAO TO PD Z DC C 0001 1xxx 000q quuu 100q quuu

06h      PORTB    --     -- RB5 RB4 RB3 RB2 RB1 RB0 --xx xxxx --uu uuuu --uu uuuu

07h      PORTC    --     -- RC5 RC4 RC3 RC2 RC1 RC0 --xx xxxx --uu uuuu --uu uuuu

Legend: Shaded cellls not used by Port Registers, read as `0', -- = unimplemented, read as `0', x = unknown, u = unchanged.

5.5 I/O Programming Considerations                         EXAMPLE 5-1: READ-MODIFY-WRITE

5.5.1 BI-DIRECTIONAL I/O PORTS                                            INSTRUCTIONS ON AN

Some instructions operate internally as read followed                     I/O PORT
by write operations. The BCF and BSF instructions, for
example, read the entire port into the CPU, execute        ;Initial PORTB Settings
the bit operation and re-write the result. Caution must
be used when these instructions are applied to a port      ; PORTB<5:3> Inputs
where one or more pins are used as input/outputs. For
example, a BSF operation on bit5 of PORTB will cause       ; PORTB<2:0> Outputs
all eight bits of PORTB to be read into the CPU, bit5 to
be set and the PORTB value to be written to the output     ;
latches. If another bit of PORTB is used as a bi-
directional I/O pin (say bit0) and it is defined as an     ;                    PORTB latch PORTB pins
input at this time, the input signal present on the pin
itself would be read into the CPU and rewritten to the     ;                     ---------- ----------
data latch of this particular pin, overwriting the
previous content. As long as the pin stays in the input       BCF PORTB, 5 ;--01 -ppp --11 pppp
mode, no problem occurs. However, if bit0 is switched
into output mode later on, the content of the data latch      BCF PORTB, 4 ;--10 -ppp --11 pppp
may now be unknown.
                                                              MOVLW 007h        ;
Example 5-1 shows the effect of two sequential read-
modify-write instructions (e.g., BCF, BSF, etc.) on an I/     TRIS PORTB        ;--10 -ppp --11 pppp
O port.
                                                           ;
A pin actively outputting a high or a low should not be
driven from external devices at the same time in order     ;Note that the user may have expected the pin
to change the level on this pin ("wired-or", "wired-
and"). The resulting high output currents may damage       ;values to be --00 pppp. The 2nd BCF caused
the chip.
                                                           ;RB5 to be latched as the pin value (High).

                                                           5.5.2 SUCCESSIVE OPERATIONS ON I/O
                                                                       PORTS

                                                           The actual write to an I/O port happens at the end of
                                                           an instruction cycle, whereas for reading, the data
                                                           must be valid at the beginning of the instruction cycle
                                                           (Figure 5-2). Therefore, care must be exercised if a
                                                           write followed by a read operation is carried out on the
                                                           same I/O port. The sequence of instructions should
                                                           allow the pin voltage to stabilize (load dependent)
                                                           before the next instruction, which causes that file to be
                                                           read into the CPU, is executed. Otherwise, the
                                                           previous state of that pin may be read into the CPU
                                                           rather than the new state. When in doubt, it is better to
                                                           separate these instructions with a NOP or another
                                                           instruction not accessing this I/O port.

DS40192A-page 20                       Preliminary                               1998 Microchip Technology Inc.
                                                               PIC16C505

FIGURE 5-2: SUCCESSIVE I/O OPERATION

             Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

Instruction         PC           PC + 1  PC + 2        PC + 3  This example shows a write to PORTB
   fetched   MOVWF PORTB  MOVF PORTB,W   NOP           NOP     followed by a read from PORTB.

RB5:RB0                  Port pin       Port pin              Data setup time = (0.25 TCY TPD)
                          written here   sampled here
Instruction                                                    where: TCY = instruction cycle.
executed
                                                                          TPD = propagation delay

                                                               Therefore, at higher clock frequencies, a
                                                               write followed by a read may be problematic.

                          MOVWF PORTB MOVF PORTB,W     NOP

                          (Write to      (Read

                          PORTB)         PORTB)

1998 Microchip Technology Inc.                Preliminary    DS40192A-page 21
PIC16C505

NOTES:

DS40192A-page 22  Preliminary   1998 Microchip Technology Inc.
                                                                                  PIC16C505

6.0 TIMER0 MODULE AND                                        Counter mode is selected by setting the T0CS bit
         TMR0 REGISTER                                       (OPTION<5>). In this mode, Timer0 will increment
                                                             either on every rising or falling edge of pin T0CKI. The
The Timer0 module has the following features:                T0SE bit (OPTION<4>) determines the source edge.
                                                             Clearing the T0SE bit selects the rising edge.
8-bit timer/counter register, TMR0                         Restrictions on the external clock input are discussed
   - Readable and writable                                   in detail in Section 6.1.

8-bit software programmable prescaler                      The prescaler may be used by either the Timer0
Internal or external clock select                          module or the Watchdog Timer, but not both. The
                                                             prescaler assignment is controlled in software by the
   - Edge select for external clock                          control bit PSA (OPTION<3>). Clearing the PSA bit
                                                             will assign the prescaler to Timer0. The prescaler is
Figure 6-1 is a simplified block diagram of the Timer0       not readable or writable. When the prescaler is
module.                                                      assigned to the Timer0 module, prescale values of 1:2,
                                                             1:4,..., 1:256 are selectable. Section 6.2 details the
Timer mode is selected by clearing the T0CS bit              operation of the prescaler.
(OPTION<5>). In timer mode, the Timer0 module will
increment every instruction cycle (without prescaler). If    A summary of registers associated with the Timer0
TMR0 register is written, the increment is inhibited for     module is found in Table 6-1.
the following two cycles (Figure 6-2 and Figure 6-3).
The user can work around this by writing an adjusted
value to the TMR0 register.

FIGURE 6-1: TIMER0 BLOCK DIAGRAM

                                                                                                 Data bus

RC5/T0CKI  FOSC/4                 0                             PSout                            8
     Pin
                                                             1
                                                                       Sync with
                                  1
                                                                       Internal                  TMR0 reg

                                           Programmable      0             Clocks
                                             Prescaler(2)                                 PSout

T0SE                                                                   (2 cycle delay) Sync

                                  T0CS(1)               3    PSA(1)
                                           PS2, PS1, PS0(1)

           Note 1: Bits T0CS, T0SE, PSA, PS2, PS1 and PS0 are located in the OPTION register.
                  2: The prescaler is shared with the Watchdog Timer (Figure 6-5).

1998 Microchip Technology Inc.           Preliminary                                           DS40192A-page 23
PIC16C505

FIGURE 6-2: TIMER0 TIMING: INTERNAL CLOCK/NO PRESCALE

PC                Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
(Program
Counter)                 PC-1         PC          PC+1        PC+2         PC+3     PC+4       PC+5       PC+6

Instruction                    MOVWF TMR0 MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W
Fetch

Timer0            T0                  T0+1        T0+2        NT0        NT0        NT0        NT0+1      NT0+2

     Instruction                                  Write TMR0  Read TMR0  Read TMR0  Read TMR0  Read TMR0  Read TMR0
     Executed                                     executed    reads NT0  reads NT0  reads NT0

                                                                                               reads NT0 + 1 reads NT0 + 2

FIGURE 6-3: TIMER0 TIMING: INTERNAL CLOCK/PRESCALE 1:2

PC                Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
(Program
Counter)                 PC-1         PC          PC+1        PC+2         PC+3     PC+4       PC+5       PC+6

Instruction                    MOVWF TMR0 MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W MOVF TMR0,W
Fetch

Timer0            T0                        T0+1                              NT0                         NT0+1             T0

Instruction                                       Write TMR0  Read TMR0  Read TMR0  Read TMR0  Read TMR0  Read TMR0
Execute                                           executed    reads NT0  reads NT0  reads NT0  reads NT0  reads NT0 + 1

TABLE 6-1: REGISTERS ASSOCIATED WITH TIMER0

Address Name                   Bit 7                                                                             Value on Value on Value on

                                                                                                                Power-On MCLR and Wake-up on
                                      Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Reset WDT Reset Pin Change

01h               TMR0 Timer0 - 8-bit real-time clock/counter                       xxxx xxxx uuuu uuuu uuuu uuuu

N/A               OPTION RBWU RBPU T0CS T0SE PSA PS2 PS1 PS0 1111 1111 1111 1111 1111 1111

N/A               TRISB                           I/O control registers             --11 1111 --11 1111 --11 1111

N/A               TRISC                           I/O control registers             --11 1111 --11 1111 --11 1111

Legend: Shaded cells not used by Timer0, - = unimplemented, x = unknown, u = unchanged,

DS40192A-page 24                                              Preliminary                      1998 Microchip Technology Inc.
6.1 Using Timer0 with an External Clock                                     PIC16C505

When an external clock input is used for Timer0, it           When a prescaler is used, the external clock input is
must meet certain requirements. The external clock            divided by the asynchronous ripple counter-type
requirement is due to internal phase clock (TOSC)             prescaler so that the prescaler output is symmetrical.
synchronization. Also, there is a delay in the actual         For the external clock to meet the sampling
incrementing of Timer0 after synchronization.                 requirement, the ripple counter must be taken into
                                                              account. Therefore, it is necessary for T0CKI to have a
6.1.1 EXTERNAL CLOCK SYNCHRONIZATION                          period of at least 4TOSC (and a small RC delay of
                                                              40 ns) divided by the prescaler value. The only
When no prescaler is used, the external clock input is        requirement on T0CKI high and low time is that they
the same as the prescaler output. The synchronization         do not violate the minimum pulse width requirement of
of T0CKI with the internal phase clocks is                    10 ns. Refer to parameters 40, 41 and 42 in the
accomplished by sampling the prescaler output on the          electrical specification of the desired device.
Q2 and Q4 cycles of the internal phase clocks
(Figure 6-4). Therefore, it is necessary for T0CKI to be      6.1.2 TIMER0 INCREMENT DELAY
high for at least 2TOSC (and a small RC delay of 20 ns)
and low for at least 2TOSC (and a small RC delay of           Since the prescaler output is synchronized with the
20 ns). Refer to the electrical specification of the          internal clocks, there is a small delay from the time the
desired device.                                               external clock edge occurs to the time the Timer0
                                                              module is actually incremented. Figure 6-4 shows the
                                                              delay from the external clock edge to the timer
                                                              incrementing.

FIGURE 6-4: TIMER0 TIMING WITH EXTERNAL CLOCK

    External Clock Input or       Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
    Prescaler Output (2)                                                                                                      Small pulse
                                                                                                                              misses sampling
External Clock/Prescaler
Output After Sampling                            (1)
                                  (3)

Increment Timer0 (Q4)                                     T0  T0 + 1  T0 + 2
                         Timer0

Note 1: Delay from clock input change to Timer0 increment is 3Tosc to 7Tosc. (Duration of Q = Tosc).
            Therefore, the error in measuring the interval between two edges on Timer0 input = 4Tosc max.

       2: External clock if no prescaler selected, Prescaler output otherwise.
       3: The arrows indicate the points in time where sampling occurs.

1998 Microchip Technology Inc.  Preliminary                         DS40192A-page 25
PIC16C505

6.2 Prescaler                                                EXAMPLE 6-1: CHANGING PRESCALER

An 8-bit counter is available as a prescaler for the                                   (TIMER0WDT)
Timer0 module, or as a postscaler for the Watchdog
Timer (WDT), respectively (Section 7.6). For simplicity,     1.CLRWDT                  ;Clear WDT
this counter is being referred to as "prescaler"
throughout this data sheet. Note that the prescaler          2.CLRF TMR0               ;Clear TMR0 & Prescaler
may be used by either the Timer0 module or the WDT,
but not both. Thus, a prescaler assignment for the           3.MOVLW '00xx1111'b; ;These 3 lines (5, 6, 7)
Timer0 module means that there is no prescaler for
the WDT, and vice-versa.                                     4.OPTION                  ; are required only if

The PSA and PS2:PS0 bits (OPTION<3:0>)                                                 ; desired
determine prescaler assignment and prescale ratio.
                                                             5.CLRWDT                  ;PS<2:0> are 000 or 001
When assigned to the Timer0 module, all instructions
writing to the TMR0 register (e.g., CLRF 1, MOVWF 1,         6.MOVLW '00xx1xxx'b ;Set Postscaler to
BSF 1,x, etc.) will clear the prescaler. When assigned
to WDT, a CLRWDT instruction will clear the prescaler        7.OPTION                  ; desired WDT rate
along with the WDT. The prescaler is neither readable
nor writable. On a RESET, the prescaler contains all         To change prescaler from the WDT to the Timer0
'0's.                                                        module, use the sequence shown in Example 6-2. This
                                                             sequence must be used even if the WDT is disabled. A
6.2.1 SWITCHING PRESCALER ASSIGNMENT                         CLRWDT instruction should be executed before switching
                                                             the prescaler.
The prescaler assignment is fully under software control
(i.e., it can be changed "on the fly" during program         EXAMPLE 6-2: CHANGING PRESCALER
execution). To avoid an unintended device RESET, the
following instruction sequence (Example 6-1) must be                                   (WDTTIMER0)
executed when changing the prescaler assignment from
Timer0 to the WDT.                                           CLRWDT                    ;Clear WDT and

                                                                                       ;prescaler

                                                             MOVLW 'xxxx0xxx'          ;Select TMR0, new

                                                                                       ;prescale value and

                                                                                       ;clock source

                                                             OPTION

FIGURE 6-5: BLOCK DIAGRAM OF THE TIMER0/WDT PRESCALER

TCY ( = Fosc/4)

RC5/T0CKI                       0                         1                            Data Bus
     Pin                             M                          M                               8
                                      U                         U
                                                                                Sync   TMR0 reg
                                1X                        0X                      2

                                                                               Cycles

                  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 bits in the OPTION register.

DS40192A-page 26                         Preliminary                                    1998 Microchip Technology Inc.
                                                                                       PIC16C505

7.0 SPECIAL FEATURES OF THE                                The PIC16C505 has a Watchdog Timer which can be
         CPU                                               shut off only through configuration bit WDTE. It runs
                                                           off of its own RC oscillator for added reliability. If using
What sets a microcontroller apart from other               HS, XT or LP selectable oscillator options, there is
processors are special circuits to deal with the needs     always an 18 ms (nominal) delay provided by the
of real-time applications. The PIC16C505 family of         Device Reset Timer (DRT), intended to keep the chip
microcontrollers has a host of such features intended      in reset until the crystal oscillator is stable. If using
to maximize system reliability, minimize cost through      INTRC or EXTRC there is an 18 ms delay only on VDD
elimination of external components, provide power          power-up. With this timer on-chip, most applications
saving operating modes and offer code protection.          need no external reset circuitry.
These features are:
                                                           The SLEEP mode is designed to offer a very low
Oscillator selection                                     current power-down mode. The user can wake-up
Reset                                                    from SLEEP through a change on input pins or
                                                           through a Watchdog Timer time-out. Several oscillator
   - Power-On Reset (POR)                                  options are also made available to allow the part to fit
   - Device Reset Timer (DRT)                              the application, including an internal 4 MHz oscillator.
   - Wake-up from SLEEP on pin change                      The EXTRC oscillator option saves system cost while
Watchdog Timer (WDT)                                     the LP crystal option saves power. A set of
SLEEP                                                    configuration bits are used to select various options.
Code protection
ID locations                                             7.1 Configuration Bits
In-circuit Serial Programming
Clock Out                                                The PIC16C505 configuration word consists of 6 bits.
                                                           Configuration bits can be programmed to select
                                                           various device configurations. Three bits are for the
                                                           selection of the oscillator type, one bit is the Watchdog
                                                           Timer enable bit, and one bit is the MCLR enable bit.
                                                           One bit is the code protection bit (Figure 7-1).

FIGURE 7-1: CONFIGURATION WORD FOR PIC16C505

CP CP CP CP CP CP MCLRE CP                                 WDTE FOSC2 FOSC1 FOSC0                Register: CONFIG
                                                                                                 Address(2): 0FFFh
bit11 10  9  8                    7          6  5       4  3                     2  1  bit0

bit 11-6, 4: CP Code Protection bits (1)(2)

bit 5:    MCLRE: RB3/MCLR pin function select
          1 = RB3/MCLR pin function is MCLR
          0 = RB3/MCLR pin function is digital I/O, MCLR internally tied to VDD

bit 3:    WDTE: Watchdog timer enable bit
          1 = WDT enabled
          0 = WDT disabled

bit 2-0:  FOSC1:FOSC0: Oscillator Selection bits
          111 = external RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin
Note 1:   110 = external RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin
Note 2:   101 = internal RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin
          100 = internal RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin
          011 = invalid selection
          010 = HS oscillator
          001 = XT oscillator
          000 = LP oscillator
          03FFh is always uncodeprtotected on the PIC16C505. This location contains the
          MOVLWxx calibration instruction for the INTRC.
          Refer to the PIC16C505 Programming Specifications to determine how to access the con-
          figuration word. This register is not user addressable during device operation.

1998 Microchip Technology Inc.                Preliminary                                      DS40192A-page 27
PIC16C505

7.2 Oscillator Configurations                               TABLE 7-1:  CAPACITOR SELECTION
                                                                        FOR CERAMIC RESONATORS
7.2.1 OSCILLATOR TYPES                                                  - PIC16C505

The PIC16C505 can be operated in four different             Osc Resonator Cap. Range Cap. Range
oscillator modes. The user can program three
configuration bits (FOSC2:FOSC0) to select one of           Type        Freq   C1        C2
these four modes:
                                                            XT 4.0 MHz         30 pF     30 pF
LP: Low Power Crystal
XT: Crystal/Resonator                                     HS 16 MHz          10-47 pF  10-47 pF
HS: High Speed Crystal/Resonator
INTRC: Internal 4 MHz Oscillator                          These values are for design guidance only. Since
EXTRC: External Resistor/Capacitor                        each resonator has its own characteristics, the user
                                                            should consult the resonator manufacturer for
                                                            appropriate values of external components.

                                                            TABLE 7-2:  CAPACITOR SELECTION
                                                                        FOR CRYSTAL OSCILLATOR
7.2.2 CRYSTAL OSCILLATOR / CERAMIC                                      - PIC16C505
            RESONATORS

                                                            Osc Resonator Cap.Range Cap. Range

In HS, XT or LP modes, a crystal or ceramic resonator       Type        Freq   C1        C2
is connected to the RB5/OSC1/CLKIN and RB4/
OSC2/CLKOUT pins to establish oscillation (Figure 7-         LP   32 kHz(1)    15 pF     15 pF
2). The PIC16C505 oscillator design requires the use
of a parallel cut crystal. Use of a series cut crystal may  XT    200 kHz 47-68 pF       47-68 pF
give a frequency out of the crystal manufacturers
specifications. When in HS, XT or LP modes, the                         1 MHz  15 pF     15 pF
device can have an external clock source drive the
RB5/OSC1/CLKIN pin (Figure 7-3).                                        4 MHz  15 pF     15 pF

                                                            HS    20 MHz       15-47 pF  15-47 pF

FIGURE 7-2:        CRYSTAL OPERATION (OR                    Note 1: For VDD > 4.5V, C1 = C2  30 pF is
                   CERAMIC RESONATOR) (HS,                              recommended.
            C1(1)  XT OR LP OSC
                   CONFIGURATION)                           These values are for design guidance only. Rs may
                                                            be required in XT mode to avoid overdriving crystals
                                                            with low drive level specification. Since each crystal
                                                            has its own characteristics, the user should consult
                                                            the crystal manufacturer for appropriate values of
                                                            external components.

                       OSC1         PIC16C505

          XTAL               RF(3)  SLEEP
                                    To internal
         RS(2) OSC2
C2(1)                                   logic

Note 1: See Capacitor Selection tables for
            recommended values of C1 and C2.

       2: A series resistor (RS) may be required for
            AT strip cut crystals.

       3: RF varies with the crystal chosen
            (approx. value = 10 M).

FIGURE 7-3: EXTERNAL CLOCK INPUT
                     OPERATION (HS, XT OR LP
                     OSC CONFIGURATION)

Clock from                   OSC1
ext. system                          PIC16C505

                 Open        OSC2

DS40192A-page 28                                Preliminary                     1998 Microchip Technology Inc.
                                                                                 PIC16C505

7.2.3 EXTERNAL CRYSTAL OSCILLATOR                                  7.2.4 EXTERNAL RC OSCILLATOR
            CIRCUIT
                                                                   For timing insensitive applications, the RC device
Either a prepackaged oscillator or a simple oscillator             option offers additional cost savings. The RC oscillator
circuit with TTL gates can be used as an external                  frequency is a function of the supply voltage, the
crystal oscillator circuit. Prepackaged oscillators                resistor (Rext) and capacitor (Cext) values, and the
provide a wide operating range and better stability. A             operating temperature. In addition to this, the oscillator
well-designed crystal oscillator will provide good                 frequency will vary from unit to unit due to normal
performance with TTL gates. Two types of crystal                   process parameter variation. Furthermore, the
oscillator circuits can be used: one with parallel                 difference in lead frame capacitance between package
resonance, or one with series resonance.                           types will also affect the oscillation frequency,
                                                                   especially for low Cext values. The user also needs to
Figure 7-4 shows implementation of a parallel                      take into account variation due to tolerance of external
resonant oscillator circuit. The circuit is designed to            R and C components used.
use the fundamental frequency of the crystal. The
74AS04 inverter performs the 180-degree phase shift                Figure 7-6 shows how the R/C combination is
that a parallel oscillator requires. The 4.7 k resistor            connected to the PIC16C505. For Rext values below
provides the negative feedback for stability. The 10 k             2.2 k, the oscillator operation may become unstable,
potentiometers bias the 74AS04 in the linear region.               or stop completely. For very high Rext values
This circuit could be used for external oscillator                 (e.g., 1 M) the oscillator becomes sensitive to noise,
designs.                                                           humidity and leakage. Thus, we recommend keeping
                                                                   Rext between 3 k and 100 k.
FIGURE 7-4: EXTERNAL PARALLEL
                     RESONANT CRYSTAL                              Although the oscillator will operate with no external
                     OSCILLATOR CIRCUIT                            capacitor (Cext = 0 pF), we recommend using values
                                                                   above 20 pF for noise and stability reasons. With no or
        +5V                            To Other                    small external capacitance, the oscillation frequency
                                       Devices                     can vary dramatically due to changes in external
            10k                                                    capacitances, such as PCB trace capacitance or
                   4.7k  74AS04                PIC16C505           package lead frame capacitance.

                 74AS04                          CLKIN             The Electrical Specifications sections show RC
                                                                   frequency variation from part to part due to normal
                                  10k                              process variation. The variation is larger for larger R
                 XTAL                                              (since leakage current variation will affect RC
10k                                                                frequency more for large R) and for smaller C (since
                                                                   variation of input capacitance will affect RC frequency
          20 pF 20 pF                                              more).

Figure 7-5 shows a series resonant oscillator circuit.             Also, see the Electrical Specifications sections for
This circuit is also designed to use the fundamental               variation of oscillator frequency due to VDD for given
frequency of the crystal. The inverter performs a 180-             Rext/Cext values as well as frequency variation due to
degree phase shift in a series resonant oscillator                 operating temperature for given R, C, and VDD values.
circuit. The 330  resistors provide the negative
feedback to bias the inverters in their linear region.             FIGURE 7-6: EXTERNAL RC OSCILLATOR
                                                                                        MODE

                                                                            VDD

FIGURE 7-5:   EXTERNAL SERIES                                      Rext                Internal
              RESONANT CRYSTAL                                                         clock
        330   OSCILLATOR CIRCUIT                                                 OSC1

                                               To Other            Cext           N
                                                                   VSS                                  PIC16C505
                330                            Devices
                                                                         FOSC/4  OSC2/CLKOUT
74AS04          74AS04                 74AS04           PIC16C505
                                                        CLKIN

        0.1 F

        XTAL

1998 Microchip Technology Inc.                         Preliminary                   DS40192A-page 29
PIC16C505

7.2.5 INTERNAL 4 MHz RC OSCILLATOR

The internal RC oscillator provides a fixed 4 MHz (nom-
inal) system clock at VDD = 5V and 25C, see "Electri-
cal Specifications" section for information on variation
over voltage and temperature..

In addition, a calibration instruction is programmed into
the last address of memory which contains the calibra-
tion value for the internal RC oscillator. This location is
always uncode protected regardless of the code pro-
tect settings. This value is programmed as a MOVLW XX
instruction where XX is the calibration value, and is
placed at the reset vector. This will load the W register
with the calibration value upon reset and the PC will
then roll over to the users program at address 0x000.
The user then has the option of writing the value to the
OSCCAL Register (05h) or ignoring it.

OSCCAL, when written to with the calibration value, will
"trim" the internal oscillator to remove process variation
from the oscillator frequency. .

Note:  Please note that erasing the device will
       also erase the pre-programmed internal
       calibration value for the internal oscillator.
       The calibration value must be read prior to
       erasing the part. so it can be repro-
       grammed correctly later.

For the PIC16C505, only bits <7:2> of OSCCAL are
implemented.

7.3 RESET

The device differentiates between various kinds of
reset:
a) Power on reset (POR)
b) MCLR reset during normal operation
c) MCLR reset during SLEEP
d) WDT time-out reset during normal operation
e) WDT time-out reset during SLEEP
f) Wake-up from SLEEP on pin change

Some registers are not reset in any way; they are
unknown on POR and unchanged in any other reset.
Most other registers are reset to "reset state" on power-
on reset (POR), on MCLR, WDT or wake-up on pin
change reset during normal operation. They are not
affected by a WDT reset during SLEEP or MCLR reset
during SLEEP, since these resets are viewed as
resumption of normal operation. The exceptions to this
are TO, PD, and RBWUF bits. They are set or cleared
differently in different reset situations. These bits are
used in software to determine the nature of reset. See
Table 7-3 for a full description of reset states of all
registers.

DS40192A-page 30                    Preliminary               1998 Microchip Technology Inc.
                                                                               PIC16C505

TABLE 7-3: RESET CONDITIONS FOR REGISTERS

Register                            Address                    Power-on Reset          MCLR Reset
                                                                                      WDT time-out
                                                                               Wake-up on Pin Change

W                                   --                         qqqq xxxx (1)   qqqq uuuu (1)

INDF                                00h                        xxxx xxxx       uuuu uuuu

TMR0                                01h                        xxxx xxxx       uuuu uuuu

PC                                  02h                        1111 1111       1111 1111

STATUS                              03h                        0001 1xxx       ?00? ?uuu (2)

FSR                                 04h                        110x xxxx       11uu uuuu

OSCCAL                              05h                        1000 00--       uuuu uu--

PORTB                               06h                        --xx xxxxx      --uu uuuu

PORTC                               07h                        --xx xxxxx      --uu uuuu

OPTION                              --                         1111 1111       1111 1111

TRISB                               --                         --11 1111       --11 1111

TRISC                               --                         --11 1111       --11 1111

Legend: u = unchanged, x = unknown, - = unimplemented bit, read as `0', ? = value depends on condition.

Note 1: Bits <7:4> of W register contain oscillator calibration values due to MOVLW XX instruction at top of memory.

Note 2: See Table 7-7 for reset value for specific conditions

TABLE 7-4: RESET CONDITION FOR SPECIAL REGISTERS

                                             STATUS Addr: 03h                  PCL Addr: 02h
                                                                                 1111 1111
Power on reset                               0001 1xxx                           1111 1111
MCLR reset during normal operation           000u uuuu                           1111 1111
                                                                                 1111 1111
MCLR reset during SLEEP                      0001 0uuuu                          1111 1111
WDT reset during SLEEP                       0000 0uuu                           1111 1111

WDT reset normal operation                   0000 1uuu
Wake-up from SLEEP on pin change             1001 0uuu

Legend: u = unchanged, x = unknown, - = unimplemented bit, read as `0'.

1998 Microchip Technology Inc.             Preliminary                       DS40192A-page 31
PIC16C505

7.3.1 MCLR ENABLE                                            The Power-On Reset circuit and the Device Reset
                                                             Timer (Section 7.5) circuit are closely related. On
This configuration bit when unprogrammed (left in the        power-up, the reset latch is set and the DRT is reset.
`1' state) enables the external MCLR function. When          The DRT timer begins counting once it detects MCLR
programmed, the MCLR function is tied to the internal        to be high. After the time-out period, which is typically
VDD, and the pin is assigned to be a I/O. See Figure 7-      18 ms, it will reset the reset latch and thus end the on-
7.                                                           chip reset signal.

FIGURE 7-7: MCLR SELECT                                      A power-up example where MCLR is held low is
                                                             shown in Figure 7-9. VDD is allowed to rise and
RBWU                                                         stabilize before bringing MCLR high. The chip will
                                                             actually come out of reset TDRT msec after MCLR
                  MCLRE                                      goes high.

         WEAK            INTERNAL MCLR                       In Figure 7-10, the on-chip Power-On Reset feature is
         PULL-UP                                             being used (MCLR and VDD are tied together or the
                                                             pin is programmed to be RB3.). The VDD is stable
RB3/MCLR/VPP                                                 before the start-up timer times out and there is no
                                                             problem in getting a proper reset. However, Figure 7-
7.4 Power-On Reset (POR)                                     11 depicts a problem situation where VDD rises too
                                                             slowly. The time between when the DRT senses that
The PIC16C505 family incorporates on-chip Power-On           MCLR is high and when MCLR (and VDD) actually
Reset (POR) circuitry which provides an internal chip        reach their full value, is too long. In this situation, when
reset for most power-up situations.                          the start-up timer times out, VDD has not reached the
                                                             VDD (min) value and the chip is, therefore, not
A Power-on Reset pulse is generated on-chip when             guaranteed to function correctly. For such situations,
VDD rise is detected (in the range of 2.3V - 2.8V). To       we recommend that external RC circuits be used to
take advantage of the internal POR, program the RB3/         achieve longer POR delay times (Figure 7-10).
MCLR/VPP pin as MCLR and tie directly to VDD or pro-
gram the pin as RB3. An internal weak pull-up resistor       Note:  When the device starts normal operation
is implemented using a transistor. Refer to Table 10-6              (exits the reset condition), device operat-
for the pull-up resistor ranges. This will eliminate exter-         ing parameters (voltage, frequency, tem-
nal RC components usually needed to create a Power-                 perature, etc.) must be meet to ensure
on Reset. A maximum rise time for VDD is specified.                 operation. If these conditions are not met,
See Electrical Specifications for details.                          the device must be held in reset until the
                                                                    operating conditions are met.
When the device starts normal operation (exits the
reset condition), device operating parameters (voltage,      For additional information refer to Application Notes
frequency, temperature, ...) must be met to ensure           "Power-Up Considerations" - AN522 and "Power-up
operation. If these conditions are not met, the device       Trouble Shooting" - AN607.
must be held in reset until the operating parameters are
met.

A simplified block diagram of the on-chip Power-On
Reset circuit is shown in Figure 7-8.

DS40192A-page 32         Preliminary                                 1998 Microchip Technology Inc.
                                                                              PIC16C505

FIGURE 7-8: SIMPLIFIED BLOCK DIAGRAM OF ON-CHIP RESET CIRCUIT

                                  Power-Up
                                    Detect

               VDD                          POR (Power-On Reset)  Pin Change  Wake-up on
RB3/MCLR/VPP                                                        SLEEP     pin change

                                                  WDT Time-out

MCLRE                                                             RESET

                                                  8-bit Asynch                S               Q

                                   On-Chip        Ripple Counter                              Q
                                  DRT OSC                                                           CHIP RESET
                                                  (Start-Up Timer)
                                                                                           R

FIGURE 7-9: TIME-OUT SEQUENCE ON POWER-UP (MCLR PULLED LOW)

                VDD
             MCLR
INTERNAL POR

                                                                                              TDRT

         DRT TIME-OUT
     INTERNAL RESET

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

                  VDD                       TDRT
               MCLR
INTERNAL POR

  DRT TIME-OUT
INTERNAL RESET

1998 Microchip Technology Inc.                  Preliminary                                 DS40192A-page 33
PIC16C505

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

                                                                            V1
                         VDD

             MCLR  TDRT
INTERNAL POR

DRT TIME-OUT

INTERNAL RESET

                    When VDD rises slowly, the TDRT time-out expires long before VDD has reached its final value. In
                    this example, the chip will reset properly if, and only if, V1  VDD min.

7.5 Device Reset Timer (DRT)                             7.6 Watchdog Timer (WDT)

In the PIC16C505, the DRT runs any time the device is    The Watchdog Timer (WDT) is a free running on-chip
powered up. DRT runs from RESET and varies based         RC oscillator which does not require any external
on oscillator selection (see Table 7-5.)                 components. This RC oscillator is separate from the
                                                         external RC oscillator of the RB5/OSC1/CLKIN pin
The Device Reset Timer (DRT) provides a fixed 18 ms      and the internal 4 MHz oscillator. That means that the
nominal time-out on reset. The DRT operates on an        WDT will run even if the main processor clock has
internal RC oscillator. The processor is kept in RESET   been stopped, for example, by execution of a SLEEP
as long as the DRT is active. The DRT delay allows       instruction. During normal operation or SLEEP, a WDT
VDD to rise above VDD min., and for the oscillator to    reset or wake-up reset generates a device RESET.
stabilize.
                                                         The TO bit (STATUS<4>) will be cleared upon a
Oscillator circuits based on crystals or ceramic         Watchdog Timer reset.
resonators require a certain time after power-up to
establish a stable oscillation. The on-chip DRT keeps    The WDT can be permanently disabled by
the device in a RESET condition for approximately 18     programming the configuration bit WDTE as a '0'
ms after MCLR has reached a logic high (VIHMCLR)         (Section 7.1). Refer to the PIC16C505 Programming
level. Thus, programming RB3/MCLR/VPP as MCLR            Specifications to determine how to access the
and using an external RC network connected to the        configuration word.
MCLR input is not required in most cases, allowing for
savings in cost-sensitive and/or space restricted        TABLE 7-5: DRT (DEVICE RESET TIMER
applications, as well as allowing the use of the RB3/                         PERIOD)
MCLR/VPP pin as a general purpose input.
                                                           Oscillator   POR Reset        Subsequent
The Device Reset time delay will vary from chip to chip  Configuration                      Resets
due to VDD, temperature, and process variation. See
AC parameters for details.                               IntRC &        18 ms (typical)   300 s (typi-
                                                         ExtRC          18 ms (typical)         cal)
The DRT will also be triggered upon a Watchdog Timer
time-out (only in HS, XT and LP modes). This is          HS, XT & LP                     18 ms (typical)
particularly important for applications using the WDT
to wake from SLEEP mode automatically.

DS40192A-page 34         Preliminary                                     1998 Microchip Technology Inc.
                                                                                                       PIC16C505

7.6.1 WDT PERIOD                                           7.6.2 WDT PROGRAMMING CONSIDERATIONS

The WDT has a nominal time-out period of 18 ms,            The CLRWDT instruction clears the WDT and the
(with no prescaler). If a longer time-out period is        postscaler, if assigned to the WDT, and prevents it
desired, a prescaler with a division ratio of up to 1:128  from timing out and generating a device RESET.
can be assigned to the WDT (under software control)
by writing to the OPTION register. Thus, a time-out        The SLEEP instruction resets the WDT and the
period of a nominal 2.3 seconds can be realized.           postscaler, if assigned to the WDT. This gives the
These periods vary with temperature, VDD and part-to-      maximum SLEEP time before a WDT wake-up reset.
part process variations (see DC specs).

Under worst case conditions (VDD = Min., Temperature
= Max., max. WDT prescaler), it may take several
seconds before a WDT time-out occurs.

FIGURE 7-12: WATCHDOG TIMER BLOCK DIAGRAM

                                             From Timer0 Clock Source
                                             (Figure 6-5)

                    Watchdog                    0                      PPoosststsccaalelerr
                       Timer                          M
                                                                       8 - to - 1 MUX             PS2:PS0
                 WDT Enable                     1
               Configuration Bit                      U
                                                      X

                                                    PSA

                                                                                             To Timer0 (Figure 6-4)

                                                           0                     1

                                                                       MUX                   PSA

         Note: T0CS, T0SE, PSA, PS2:PS0
                 are bits in the OPTION register.

                                                                         WDT
                                                                       Time-out

TABLE 7-6: SUMMARY OF REGISTERS ASSOCIATED WITH THE WATCHDOG TIMER

Address  Name  Bit 7              Bit 6  Bit 5  Bit 4 Bit 3 Bit 2 Bit 1 Bit 0                Value on   Value on       Value on
                                                                                             Power-On  MCLR and      Wake-up on
                                                                                                       WDT Reset     Pin Change
                                                                                               Reset

N/A      OPTION RBWU RBPU T0CS T0SE PSA PS2 PS1 PS0 1111 1111 1111 1111 1111 1111

Legend: Shaded boxes = Not used by Watchdog Timer, -- = unimplemented, read as '0', u = unchanged

1998 Microchip Technology Inc.                Preliminary                                                DS40192A-page 35
PIC16C505

7.7 Time-Out Sequence, Power Down,                             7.8 Reset on Brown-Out
          and Wake-up from SLEEP Status Bits
          (TO/PD/RBWUF)                                        A brown-out is a condition where device power (VDD)
                                                               dips below its minimum value, but not to zero, and then
The TO, PD, and RBWUF bits in the STATUS register              recovers. The device should be reset in the event of a
can be tested to determine if a RESET condition has            brown-out.
been caused by a power-up condition, a MCLR or
Watchdog Timer (WDT) reset, or a MCLR or WDT                   To reset PIC16C505 devices when a brown-out
reset.                                                         occurs, external brown-out protection circuits may be
                                                               built, as shown in Figure 7-13 and Figure 7-14.
TABLE 7-7: TO/PD/RBWUF STATUS
                     AFTER RESET                               FIGURE 7-13: BROWN-OUT PROTECTION
                                                                                    CIRCUIT 1

RBWUF TO PD           RESET caused by                             VDD
                                                               33k
0            0 0 WDT wake-up from
                                                                             10k
                   SLEEP                                                                    VDD

0            0 1 WDT time-out (not from                                           Q1
                                                                                           MCLR
                   SLEEP)
                                                                                  40k* PIC16C505
0            1 0 MCLR wake-up from

                   SLEEP

0            1 1 Power-up

0            u u MCLR not during SLEEP

1            1 0 Wake-up from SLEEP on

                   pin change                                  This circuit will activate reset when VDD goes below Vz +
                                                               0.7V (where Vz = Zener voltage).
Legend:   Legend:  u = unchanged
          Note 1:  The TO, PD, and RBWUF bits main-            *Refer to Figure 7-7 and Table 10-6 for internal weak pull-
                   tain their status (u) until a reset         up on MCLR.
                   occurs. A low-pulse on the MCLR
                   input does not change the TO, PD,           FIGURE 7-14: BROWN-OUT PROTECTION
                   and RBWUF status bits.                                           CIRCUIT 2

These STATUS bits are only affected by events listed                               VDD
in Table 7-8.

TABLE 7-8: EVENTS AFFECTING TO/PD                                                                  VDD
                     STATUS BITS                               R1

   Event           RBWUF TO PD Remarks                                            Q1
                                                                                            MCLR
Power-up           0       1   1

WDT Time-out       0       0 u No effect                       R2                 40k PIC16C505
                                          on PD

SLEEP instruction u        1   0

CLRWDT             u       1   1

instruction

Wake-up from       1       1   0                               This brown-out circuit is less expensive, although
                                                               less accurate. Transistor Q1 turns off when VDD
SLEEP on pin                                                   is below a certain level such that:

change

Legend: u = unchanged                                              VDD              R1 = 0.7V
A WDT time-out will occur regardless of the status of the                         R1 + R2
TO bit. A SLEEP instruction will be executed, regardless of
the status of the PD bit. Table 7-7 reflects the status of TO  *Refer to Figure 7-7 and Table 10-6 for internal weak
and PD after the corresponding event.                          pull-up on MCLR.

Table 7-4 lists the reset conditions for the special
function registers, while Table 7-3 lists the reset
conditions for all the registers.

DS40192A-page 36                         Preliminary                               1998 Microchip Technology Inc.
7.9 Power-Down Mode (SLEEP)                                            PIC16C505

A device may be powered down (SLEEP) and later           7.10 Program Verification/Code Protection
powered up (Wake-up from SLEEP).
                                                         If the code protection bit has not been programmed,
7.9.1 SLEEP                                              the on-chip program memory can be read out for
                                                         verification purposes.
The Power-Down mode is entered by executing a            The first 64 locations and the last location (OSCCAL)
SLEEP instruction.                                       can be read regardless of the code protection bit
                                                         setting.
If enabled, the Watchdog Timer will be cleared but
keeps running, the TO bit (STATUS<4>) is set, the PD     7.11 ID Locations
bit (STATUS<3>) is cleared and the oscillator driver is
turned off. The I/O ports maintain the status they had   Four memory locations are designated as ID locations
before the SLEEP instruction was executed (driving       where the user can store checksum or other code-
high, driving low, or hi-impedance).                     identification numbers. These locations are not
                                                         accessible during normal execution but are readable
It should be noted that a RESET generated by a WDT       and writable during program/verify.
time-out does not drive the MCLR pin low.                Use only the lower 4 bits of the ID locations and
                                                         always program the upper 8 bits as '0's.
For lowest current consumption while powered down,
the T0CKI input should be at VDD or VSS and the RB3/
MCLR/VPP pin must be at a logic high level (VIHMC) if
MCLR is enabled.

7.9.2 WAKE-UP FROM SLEEP

The device can wake-up from SLEEP through one of
the following events:

1. An external reset input on RB3/MCLR/VPP pin,
      when configured as MCLR.

2. A Watchdog Timer time-out reset (if WDT was
      enabled).

3. A change on input pin RB0, RB1, RB3 or RB4
      when wake-up on change is enabled.

These events cause a device reset. The TO, PD, and
RBWUF bits can be used to determine the cause of
device reset. The TO bit is cleared if a WDT time-out
occurred (and caused wake-up). The PD bit, which is
set on power-up, is cleared when SLEEP is invoked.
The RBWUF bit indicates a change in state while in
SLEEP at pins RB0, RB1, RB3 or RB4 (since the last
file or bit operation on RB port).

Caution: Right before entering SLEEP, read the
              input pins. When in SLEEP, wake up
              occurs when the values at the pins change
              from the state they were in at the last
              reading. If a wake-up on change occurs
              and the pins are not read before
              reentering SLEEP, a wake up will occur
              immediately even if no pins change while
              in SLEEP mode.

The WDT is cleared when the device wakes from
sleep, regardless of the wake-up source.

1998 Microchip Technology Inc.  Preliminary            DS40192A-page 37
PIC16C505                                                 FIGURE 7-15: TYPICAL IN-CIRCUIT SERIAL
                                                                               PROGRAMMING
7.12 In-Circuit Serial Programming                                             CONNECTION

The PIC16C505 microcontrollers can be serially            External   To Normal
programmed while in the end application circuit. This is  Connector  Connections
simply done with two lines for clock and data, and three  Signals
other lines for power, ground, and the programming                                PIC16C505
voltage. This allows customers to manufacture boards            +5V
with unprogrammed devices, and then program the                  0V               VDD
microcontroller just before shipping the product. This                            VSS
also allows the most recent firmware or a custom                VPP               MCLR/VPP
firmware to be programmed.
                                                               CLK                RB1
The device is placed into a program/verify mode by
holding the RB1 and RB0 pins low while raising the        Data I/O                RB0
MCLR (VPP) pin from VIL to VIHH (see programming
specification). RB1 becomes the programming clock                                              VDD
and RB0 becomes the programming data. Both RB1
and RB0 are Schmitt Trigger inputs in this mode.                     To Normal
                                                                     Connections
After reset, a 6-bit command is then supplied to the
device. Depending on the command, 14-bits of pro-
gram data are then supplied to or from the device,
depending if the command was a load or a read. For
complete details of serial programming, please refer to
the PIC16C505 Programming Specifications.

A typical in-circuit serial programming connection is
shown in Figure 7-15.

DS40192A-page 38  Preliminary                                        1998 Microchip Technology Inc.
                                                                               PIC16C505

8.0 INSTRUCTION SET SUMMARY                                     All instructions are executed within a single instruction
                                                                cycle, unless a conditional test is true or the program
Each PIC16C505 instruction is a 12-bit word divided             counter is changed as a result of an instruction. In this
into an OPCODE, which specifies the instruction type,           case, the execution takes two instruction cycles. One
and one or more operands which further specify the              instruction cycle consists of four oscillator periods.
operation of the instruction. The PIC16C505                     Thus, for an oscillator frequency of 4 MHz, the normal
instruction set summary in Table 8-2 groups the                 instruction execution time is 1 s. If a conditional test
instructions into byte-oriented, bit-oriented, and literal      is true or the program counter is changed as a result of
and control operations. Table 8-1 shows the opcode              an instruction, the instruction execution time is 2 s.
field descriptions.
                                                                Figure 8-1 shows the three general formats that the
For byte-oriented instructions, 'f' represents a file           instructions can have. All examples in the figure use the
register designator and 'd' represents a destination            following format to represent a hexadecimal number:
designator. The file register designator is used to
specify which one of the 32 file registers is to be used              0xhhh
by the instruction.
                                                                where 'h' signifies a hexadecimal digit.
The destination designator specifies where the result
of the operation is to be placed. If 'd' is '0', the result is  FIGURE 8-1: GENERAL FORMAT FOR
placed in the W register. If 'd' is '1', 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         11             654                                 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
8 or 9-bit constant or literal value.                               d = 1 for destination f
                                                                    f = 5-bit file register address
TABLE 8-1: OPCODE FIELD
                     DESCRIPTIONS                               Bit-oriented file register operations

                                                                11             87 5 4                              0

                                                                    OPCODE     b (BIT #) f (FILE #)

Field                        Description                            b = 3-bit bit address
   f                                                                f = 5-bit file register address
   W     Register file address (0x00 to 0x7F)
   b     Working register (accumulator)                         Literal and control operations (except GOTO)
   k     Bit address within an 8-bit file register
         Literal field, constant data or label                  11             87                                       0
   x     Don't care location (= 0 or 1)                                OPCODE                          k (literal)
         The assembler will generate code with x = 0. It is
   d     the recommended form of use for compatibility              k = 8-bit immediate value
         with all Microchip software tools.
label    Destination select;                                    Literal and control operations - GOTO instruction
TOS
  PC        d = 0 (store result in W)                           11             98                                      0
WDT        d = 1 (store result in file register 'f')                  OPCODE                          k (literal)
  TO     Default is d = 1
  PD     Label name                                                 k = 9-bit immediate value
dest     Top of Stack
  []     Program Counter
  ()     Watchdog Timer Counter
         Time-Out bit
<>      Power-Down bit
         Destination, either the W register or the specified
         register file location
italics
         Options

         Contents

         Assigned to

         Register bit field

         In the set of

         User defined term (font is courier)

1998 Microchip Technology Inc.  Preliminary                                                           DS40192A-page 39
PIC16C505

TABLE 8-2: INSTRUCTION SET SUMMARY

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

ADDWF f,d Add W and f                                        1 0001 11df ffff    C,DC,Z  1,2,4
                                                             1 0001 01df ffff        Z    2,4
ANDWF f,d AND W with f                                       1 0000 011f ffff        Z     4
                                                             1 0000 0100 0000        Z
CLRF   f          Clear f                                    1 0010 01df ffff        Z    2,4
                                                             1 0000 11df ffff        Z    2,4
CLRW             Clear W                                   1(2) 0010 11df ffff           2,4
                                                             1 0010 10df ffff     None    2,4
COMF   f, d Complement f                                    1(2) 0011 11df ffff      Z    2,4
                                                             1 0001 00df ffff             2,4
DECF   f, d Decrement f                                      1 0010 00df ffff     None    1,4
                                                             1 0000 001f ffff        Z
DECFSZ f, d Decrement f, Skip if 0                           1 0000 0000 0000        Z    2,4
                                                             1 0011 01df ffff             2,4
INCF   f, d Increment f                                      1 0011 00df ffff     None   1,2,4
                                                             1 0000 10df ffff     None    2,4
INCFSZ f, d Increment f, Skip if 0                           1 0011 10df ffff             2,4
                                                             1 0001 10df ffff       C
IORWF  f, d Inclusive OR W with f                                                   C
                                                                                 C,DC,Z
MOVF   f, d Move f                                                                None
                                                                                     Z
MOVWF f           Move W to f

NOP              No Operation

RLF    f, d Rotate left f through Carry

RRF    f, d Rotate right f through Carry

SUBWF f, d Subtract W from f

SWAPF f, d Swap f

XORWF f, d Exclusive OR W with f

BIT-ORIENTED FILE REGISTER OPERATIONS

BCF    f, b Bit Clear f                                       1 0100 bbbf ffff None 2,4
BSF    f, b Bit Set f                                         1 0101 bbbf ffff None 2,4
BTFSC  f, b Bit Test f, Skip if Clear                       1 (2) 0110 bbbf ffff None
BTFSS  f, b Bit Test f, Skip if Set                         1 (2) 0111 bbbf ffff None

LITERAL AND CONTROL OPERATIONS

ANDLW k           AND literal with W                        1 1110 kkkk kkkk     Z
                  Call subroutine
CALL   k          Clear Watchdog Timer                      2 1001 kkkk kkkk None        1
                  Unconditional branch
CLRWDT k          Inclusive OR Literal with W               1 0000 0000 0100 TO, PD
                  Move Literal to W
GOTO   k          Load OPTION register                      2 101k kkkk kkkk None
                  Return, place Literal in W
IORLW  k          Go into standby mode                      1 1101 kkkk kkkk     Z
                  Load TRIS register
MOVLW k           Exclusive OR Literal to W                 1 1100 kkkk kkkk None

OPTION                                                     1 0000 0000 0010 None

RETLW k                                                     2 1000 kkkk kkkk None

SLEEP                                                      1 0000 0000 0011 TO, PD

TRIS   f                                                    1 0000 0000 0fff None        3

XORLW k                                                     1 1111 kkkk kkkk     Z

Note 1: The 9th bit of the program counter will be forced to a '0' by any instruction that writes to the PC except for GOTO.
            (Section 4.6)

       2: 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'.

       3: The instruction TRIS f, where f = 6 causes the contents of the W register to be written to the tristate latches of
            PORTB. A '1' forces the pin to a hi-impedance state and disables the output buffers.

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

DS40192A-page 40                               Preliminary               1998 Microchip Technology Inc.
                                                                                     PIC16C505

ADDWF         Add W and f                                     ANDWF         AND W with f

Syntax:       [ label ] ADDWF f,d                             Syntax:       [ label ] ANDWF f,d

Operands:     0  f  31                                        Operands:     0  f  31
              d  [0,1]                                                      d  [0,1]

Operation:    (W) + (f)  (dest)                               Operation:    (W) .AND. (f)  (dest)

Status Affected: C, DC, Z                                     Status Affected: Z

Encoding:        0001 11df ffff                               Encoding:        0001 01df ffff

Description:  Add the contents of the W register and          Description:  The contents of the W register are
              register 'f'. If 'd' is 0 the result is stored                AND'ed with register 'f'. If 'd' is 0 the
              in the W register. If 'd' is '1' the result is                result is stored in the W register. If 'd' is
              stored back in register 'f'.                                  '1' the result is stored back in register 'f'.

Words:        1                                               Words:        1

Cycles:       1                                               Cycles:       1

Example:      ADDWF FSR, 0                                    Example:      ANDWF FSR, 1

Before Instruction                                            Before Instruction
      W = 0x17                                                       W = 0x17
      FSR = 0xC2                                                    FSR = 0xC2

After Instruction                                             After Instruction
      W = 0xD9                                                      W = 0x17
      FSR = 0xC2                                                    FSR = 0x02

ANDLW         And literal with W                              BCF           Bit Clear f

Syntax:       [ label ] ANDLW k                               Syntax:       [ label ] BCF f,b

Operands:     0  k  255                                       Operands:     0  f  31
                                                                            0b7
Operation:    (W).AND. (k)  (W)

Status Affected: Z                                            Operation:    0  (f)

Encoding:        1110 kkkk kkkk                               Status Affected: None

Description:  The contents of the W register are              Encoding:        0100 bbbf ffff
              AND'ed with the eight-bit literal 'k'. The
              result is placed in the W register.             Description:  Bit 'b' in register 'f' is cleared.

                                                              Words:        1

Words:        1                                               Cycles:       1

Cycles:       1                                               Example:      BCF      FLAG_REG, 7

Example:      ANDLW 0x5F                                      Before Instruction
                                                                    FLAG_REG = 0xC7
Before Instruction
      W = 0xA3                                                After Instruction
                                                                    FLAG_REG = 0x47
After Instruction
      W = 0x03

1998 Microchip Technology Inc.   Preliminary                                            DS40192A-page 41
PIC16C505

BSF               Bit Set f                                      BTFSS         Bit Test f, Skip if Set

Syntax:           [ label ] BSF f,b                              Syntax:       [ label ] BTFSS f,b

Operands:         0  f  31                                       Operands:     0  f  31
                  0b7                                                          0b<7

Operation:        1  (f)                                      Operation:    skip if (f) = 1

Status Affected: None                                            Status Affected: None

Encoding:            0101 bbbf ffff                              Encoding:        0111 bbbf ffff

Description:      Bit 'b' in register 'f' is set.                Description:  If bit 'b' in register 'f' is '1' then the next
                                                                               instruction is skipped.
Words:            1
                                                                               If bit 'b' is '1', then the next instruction
Cycles:           1                                                            fetched during the current instruction
                                                                               execution, is discarded and an NOP is
Example:          BSF        FLAG_REG, 7                                       executed instead, making this a 2 cycle
                                                                               instruction.
Before Instruction
      FLAG_REG = 0x0A                                            Words:        1

After Instruction                                                Cycles:       1(2)
      FLAG_REG = 0x8A

                                                                 Example:      HERE BTFSS          FLAG,1
                                                                                                   PROCESS_CODE
                                                                               FALSE GOTO
BTFSC             Bit Test f, Skip if Clear                                    TRUE

Syntax:           [ label ] BTFSC f,b                                                   
                                                                                         

Operands:         0  f  31                                       Before Instruction
                  0b7
                                                                          PC         = address (HERE)

Operation:        skip if (f) = 0                             After Instruction

Status Affected: None                                                     If FLAG<1> =  0,
                                                                                        address (FALSE);
                                                                          PC         =  1,
                                                                                        address (TRUE)
Encoding:            0110 bbbf ffff                                       if FLAG<1> =

Description:      If bit 'b' in register 'f' is 0 then the next           PC         =
                  instruction is skipped.

                  If bit 'b' is 0 then the next instruction
                  fetched during the current instruction
                  execution is discarded, and an NOP is
                  executed instead, making this a 2 cycle
                  instruction.

Words:            1

Cycles:           1(2)

Example:          HERE       BTFSC    FLAG,1
                  FALSE      GOTO     PROCESS_CODE
                  TRUE      
                             
                             

Before Instruction

         PC             = address (HERE)

After Instruction

         if FLAG<1> =        0,
                             address (TRUE);
         PC             =    1,
                             address(FALSE)
         if FLAG<1> =

         PC             =

DS40192A-page 42                                   Preliminary                           1998 Microchip Technology Inc.
                                                                                 PIC16C505

CALL          Subroutine Call                           CLRW          Clear W

Syntax:       [ label ] CALL k                          Syntax:       [ label ] CLRW

Operands:     0  k  255                                 Operands:     None

Operation:    (PC) + 1 Top of Stack;                    Operation:    00h  (W);
              k  PC<7:0>;                                             1Z
              (STATUS<6:5>)  PC<10:9>;
              0  PC<8>                                  Status Affected: Z

Status Affected: None                                   Encoding:        0000 0100 0000

Encoding:        1001 kkkk kkkk                         Description:  The W register is cleared. Zero bit (Z)
                                                                      is set.

Description:  Subroutine call. First, return address    Words:        1
              (PC+1) is pushed onto the stack. The
              eight bit immediate address is loaded     Cycles:       1
              into PC bits <7:0>. The upper bits
              PC<10:9> are loaded from STA-             Example:      CLRW
              TUS<6:5>, PC<8> is cleared. CALL is a
              two cycle instruction.                    Before Instruction
                                                              W = 0x5A

Words:        1                                         After Instruction
                                                              W = 0x00
Cycles:       2                                               Z=1

Example:      HERE CALL THERE

Before Instruction                                      CLRWDT        Clear Watchdog Timer
      PC = address (HERE)

After Instruction                                       Syntax:       [ label ] CLRWDT
      PC = address (THERE)
      TOS = address (HERE + 1)                          Operands:     None

                                                        Operation:    00h  WDT;
                                                                      0  WDT prescaler (if assigned);
CLRF          Clear f                                                 1  TO;
                                                                      1  PD
Syntax:       [ label ] CLRF f
                                                        Status Affected: TO, PD

Operands:     0  f  31                                  Encoding:        0000 0000 0100

Operation:    00h  (f);                                 Description:  The CLRWDT instruction resets the
              1Z                                                      WDT. It also resets the prescaler, if the
                                                                      prescaler is assigned to the WDT and
Status Affected: Z                                                    not Timer0. Status bits TO and PD are
                                                                      set.
Encoding:        0000 011f ffff

Description:  The contents of register 'f' are cleared  Words:        1
              and the Z bit is set.

Words:        1                                         Cycles:       1

Cycles:       1                                         Example:      CLRWDT

Example:      CLRF FLAG_REG                             Before Instruction
                                                              WDT counter = ?

Before Instruction                                      After Instruction
      FLAG_REG = 0x5A
                                                                 WDT counter =   0x00
                                                                                 0
After Instruction                                                WDT prescale =  1
                                                                                 1
         FLAG_REG =    0x00                                      TO         =
                       1
         Z          =                                            PD         =

1998 Microchip Technology Inc.        Preliminary                                    DS40192A-page 43
PIC16C505

COMF              Complement f                                   DECFSZ        Decrement f, Skip if 0

Syntax:           [ label ] COMF f,d                             Syntax:       [ label ] DECFSZ f,d

Operands:         0  f  31                                       Operands:     0  f  31
                  d  [0,1]                                                     d  [0,1]

Operation:        (f)  (dest)                                    Operation:    (f) 1  d; skip if result = 0

Status Affected: Z                                               Status Affected: None

Encoding:            0010 01df ffff                              Encoding:          0010 11df ffff

Description:      The contents of register 'f' are comple-       Description:  The contents of register 'f' are decre-
                  mented. If 'd' is 0 the result is stored in                  mented. If 'd' is 0 the result is placed in
                  the W register. If 'd' is 1 the result is                    the W register. If 'd' is 1 the result is
                  stored back in register 'f'.                                 placed back in register 'f'.

Words:            1                                                            If the result is 0, the next instruction,
                                                                               which is already fetched, is discarded
Cycles:           1                                                            and an NOP is executed instead mak-
                                                                               ing it a two cycle instruction.
Example:          COMF REG1,0

Before Instruction                                               Words:        1
      REG1 = 0x13
                                                                 Cycles:       1(2)

After Instruction                                                Example:      HERE      DECFSZ  CNT, 1
                                                                                                 LOOP
         REG1 = 0x13                                                                     GOTO

         W        = 0xEC                                                       CONTINUE

                                                                                         

                                                                                         

DECF              Decrement f                                    Before Instruction

Syntax:           [ label ] DECF f,d                                      PC   = address (HERE)

Operands:         0  f  31                                       After Instruction
                  d  [0,1]
                                                                          CNT =      CNT - 1;
                                                                                     0,
                                                                          if CNT =   address (CONTINUE);
                                                                                     0,
Operation:        (f) 1  (dest)                                         PC   =     address (HERE+1)

Status Affected: Z                                                        if CNT

                                                                          PC   =

Encoding:            0000 11df ffff

Description:      Decrement register 'f'. If 'd' is 0 the
                  result is stored in the W register. If 'd' is
                  1 the result is stored back in register 'f'.   GOTO          Unconditional Branch

                                                                 Syntax:       [ label ] GOTO k

Words:            1                                              Operands:     0  k  511

Cycles:           1                                              Operation:    k  PC<8:0>;
                                                                               STATUS<6:5>  PC<10:9>
Example:          DECF CNT, 1

Before Instruction                                               Status Affected: None

         CNT = 0x01                                              Encoding:          101k kkkk kkkk

         Z        =0

After Instruction                                                Description:  GOTO is an unconditional branch. The
                                                                               9-bit immediate value is loaded into PC
         CNT = 0x00                                                            bits <8:0>. The upper bits of PC are
                                                                               loaded from STATUS<6:5>. GOTO is a
         Z        =1                                                           two cycle instruction.

                                                                 Words:        1

                                                                 Cycles:       2

                                                                 Example:      GOTO THERE

                                                                 After Instruction
                                                                       PC = address (THERE)

DS40192A-page 44                      Preliminary                                        1998 Microchip Technology Inc.
                                                                                    PIC16C505

INCF          Increment f                                  IORLW         Inclusive OR literal with W

Syntax:       [ label ] INCF f,d                           Syntax:       [ label ] IORLW k

Operands:     0  f  31                                     Operands:     0  k  255
              d  [0,1]
                                                           Operation:    (W) .OR. (k)  (W)

Operation:    (f) + 1  (dest)                              Status Affected: Z

Status Affected: Z                                         Encoding:          1101 kkkk kkkk

Encoding:          0010 10df ffff                          Description:  The contents of the W register are
                                                                         OR'ed with the eight bit literal 'k'. The
Description:  The contents of register 'f' are incre-                    result is placed in the W register.
              mented. If 'd' is 0 the result is placed in
              the W register. If 'd' is 1 the result is    Words:        1
              placed back in register 'f'.

Words:        1                                            Cycles:       1

Cycles:       1                                            Example:      IORLW 0x35

Example:      INCF CNT, 1                                       Before Instruction
                                                                      W = 0x9A

Before Instruction                                              After Instruction
                                                                      W = 0xBF
         CNT = 0xFF                                                   Z=0

         Z    =0

After Instruction

         CNT = 0x00

         Z    =1                                           IORWF         Inclusive OR W with f

                                                           Syntax:       [ label ] IORWF f,d

INCFSZ        Increment f, Skip if 0                       Operands:     0  f  31
                                                                         d  [0,1]
Syntax:       [ label ] INCFSZ f,d

Operands:     0  f  31                                     Operation:    (W).OR. (f)  (dest)
              d  [0,1]
                                                           Status Affected: Z

Operation:    (f) + 1  (dest), skip if result = 0          Encoding:          0001 00df ffff

Status Affected: None                                      Description:  Inclusive OR the W register with regis-
                                                                         ter 'f'. If 'd' is 0 the result is placed in
Encoding:          0011 11df ffff                                        the W register. If 'd' is 1 the result is
                                                                         placed back in register 'f'.
Description:  The contents of register 'f' are incre-
              mented. If 'd' is 0 the result is placed in
              the W register. If 'd' is 1 the result is    Words:        1
              placed back in register 'f'.
                                                           Cycles:       1
              If the result is 0, then the next instruc-
              tion, which is already fetched, is dis-      Example:      IORWF            RESULT, 0
              carded and an NOP is executed
              instead making it a two cycle instruc-            Before Instruction
              tion.
                                                                    RESULT = 0x13

                                                                    W    = 0x91

Words:        1                                                 After Instruction

Cycles:       1(2)                                                  RESULT =        0x13
                                                                                    0x93
                                                                    W    =          0

Example:      HERE      INCFSZ         CNT, 1                       Z    =
                                      LOOP
                        GOTO

              CONTINUE

                        

                        

Before Instruction

         PC   = address (HERE)

After Instruction

         CNT =      CNT + 1;
                    0,
         if CNT =   address (CONTINUE);
                    0,
         PC   =     address (HERE +1)

         if CNT

         PC   =

1998 Microchip Technology Inc.                   Preliminary                            DS40192A-page 45
PIC16C505

MOVF              Move f                                            MOVWF         Move W to f

Syntax:           [ label ] MOVF f,d                                Syntax:       [ label ] MOVWF f

Operands:         0  f  31                                          Operands:     0  f  31
                  d  [0,1]
                                                                    Operation:    (W)  (f)

Operation:        (f)  (dest)                                       Status Affected: None

Status Affected: Z                                                  Encoding:        0000 001f ffff

Encoding:            0010 00df ffff                                 Description:  Move data from the W register to regis-
                                                                                  ter 'f'.
Description:      The contents of register 'f' is moved to
                  destination 'd'. If 'd' is 0, destination is
                  the W register. If 'd' is 1, the destination      Words:        1
                  is file register 'f'. 'd' is 1 is useful to test
                  a file register since status flag Z is            Cycles:       1
                  affected.
                                                                    Example:      MOVWF TEMP_REG

Words:            1                                                 Before Instruction

                                                                             TEMP_REG =    0xFF
                                                                                           0x4F
Cycles:           1                                                          W          =

Example:          MOVF FSR, 0                                       After Instruction

After Instruction                                                            TEMP_REG =    0x4F
      W = value in FSR register                                                            0x4F
                                                                             W          =

                                                                    NOP           No Operation

MOVLW             Move Literal to W                                 Syntax:       [ label ] NOP

Syntax:           [ label ] MOVLW k                                 Operands:     None

Operands:         0  k  255                                         Operation:    No operation

Operation:        k  (W)                                            Status Affected: None

Status Affected: None                                               Encoding:        0000 0000    0000

Encoding:            1100 kkkk kkkk                                 Description:  No operation.

Description:      The eight bit literal 'k' is loaded into the      Words:        1
                  W register. The don't cares will assem-
                  ble as 0s.                                        Cycles:       1

Words:            1                                                 Example:      NOP

Cycles:           1

Example:          MOVLW 0x5A

After Instruction
      W = 0x5A

DS40192A-page 46                      Preliminary                                           1998 Microchip Technology Inc.
                                                                                     PIC16C505

OPTION        Load OPTION Register                     RLF           Rotate Left f through Carry

Syntax:       [ label ] OPTION                         Syntax:       [ label ] RLF f,d

Operands:     None                                     Operands:     0  f  31
                                                                     d  [0,1]
Operation:    (W)  OPTION

Status Affected: None                                  Operation:    See description below

Encoding:     0000 0000 0010                           Status Affected: C

Description:  The content of the W register is loaded  Encoding:        0011 01df ffff
              into the OPTION register.
                                                       Description:  The contents of register 'f' are rotated
Words:        1                                                      one bit to the left through the Carry
                                                                     Flag. If 'd' is 0 the result is placed in the
Cycles:       1                                                      W register. If 'd' is 1 the result is stored
                                                                     back in register 'f'.
Example       OPTION

Before Instruction                                                                C  register 'f'

         W    = 0x07

After Instruction                                      Words:        1
      OPTION = 0x07

                                                       Cycles:       1

                                                       Example:      RLF             REG1,0

RETLW         Return with Literal in W                        Before Instruction

Syntax:       [ label ] RETLW k                                 REG1 = 1110 0110

Operands:     0  k  255                                         C    =0

Operation:    k  (W);                                         After Instruction
              TOS  PC
                                                                REG1 =            1110 0110
                                                                                  1100 1100
                                                                W    =            1

Status Affected: None                                           C    =

Encoding:        1000 kkkk kkkk

Description:  The W register is loaded with the eight  RRF           Rotate Right f through Carry
              bit literal 'k'. The program counter is
              loaded from the top of the stack (the    Syntax:       [ label ] RRF f,d
              return address). This is a two cycle
              instruction.                             Operands:     0  f  31
                                                                     d  [0,1]
Words:        1
                                                       Operation:    See description below

Cycles:       2                                        Status Affected: C

Example:      CALL TABLE ;W contains                   Encoding:        0011 00df ffff
TABLE
                                  ;table offset

                                  ;value.              Description:  The contents of register 'f' are rotated
                                                                     one bit to the right through the Carry
                                 ;W now has table                   Flag. If 'd' is 0 the result is placed in the
                                                                     W register. If 'd' is 1 the result is placed
                                 ;value.                            back in register 'f'.

              

              ADDWF PC ;W = offset

              RETLW k1 ;Begin table

              RETLW k2 ;                                                          C  register 'f'

              

                                                      Words:        1

                                                      Cycles:       1

              RETLW kn ; End of table

Before Instruction                                     Example:      RRF             REG1,0
      W = 0x07
                                                              Before Instruction

After Instruction                                               REG1 = 1110 0110
      W = value of k8
                                                                C    =0

                                                              After Instruction

                                                                REG1 =            1110 0110
                                                                                  0111 0011
                                                                W    =            0

                                                                C    =

1998 Microchip Technology Inc.                 Preliminary                                 DS40192A-page 47
PIC16C505

SLEEP             Enter SLEEP Mode                        SUBWF         Subtract W from f

Syntax:           [label] SLEEP                           Syntax:       [label] SUBWF f,d

Operands:         None                                    Operands:     0  f  31
                                                                        d  [0,1]
Operation:        00h  WDT;
                  0  WDT prescaler;
                  1  TO;                                  Operation:    (f) (W)  (dest)
                  0  PD
                                                          Status Affected: C, DC, Z

                                                          Encoding:        0000 10df ffff

Status Affected: TO, PD, RBWUF                            Description:  Subtract (2's complement method) the
                                                                        W register from register 'f'. If 'd' is 0 the
Encoding:            0000 0000 0011                                     result is stored in the W register. If 'd' is
                                                                        1 the result is stored back in register 'f'.
Description:      Time-out status bit (TO) is set. The
                  power down status bit (PD) is cleared.
                                                          Words:        1
                  RBWUF is unaffected.
                                                          Cycles:       1
                  The WDT and its prescaler are
                  cleared.                                Example 1:    SUBWF REG1, 1

                  The processor is put into SLEEP mode    Before Instruction
                  with the oscillator stopped. See sec-
                  tion on SLEEP for more details.                  REG1 = 3

Words:            1                                                W    =2

                                                                   C    =?

Cycles:           1                                       After Instruction

Example:          SLEEP                                            REG1 = 1

                                                                   W    =2

                                                                   C    =1           ; result is positive

                                                          Example 2:

                                                          Before Instruction

                                                                   REG1 = 2

                                                                   W    =2

                                                                   C    =?

                                                          After Instruction

                                                                   REG1 = 0

                                                                   W    =2

                                                                   C    =1           ; result is zero

                                                          Example 3:

                                                          Before Instruction

                                                                   REG1 = 1

                                                                   W    =2

                                                                   C    =?

                                                          After Instruction

                                                                   REG1 = FF

                                                                   W    =2

                                                                   C    =0           ; result is negative

DS40192A-page 48                     Preliminary                               1998 Microchip Technology Inc.
                                                                                         PIC16C505

SWAPF         Swap Nibbles in f                             XORLW         Exclusive OR literal with W

Syntax:       [ label ] SWAPF f,d                           Syntax:       [label] XORLW k

Operands:     0  f  31                                      Operands:     0  k  255
              d  [0,1]
                                                            Operation:    (W) .XOR. k  (W)

Operation:    (f<3:0>)  (dest<7:4>);                        Status Affected: Z
              (f<7:4>)  (dest<3:0>)

Status Affected: None                                       Encoding:        1111 kkkk kkkk

Encoding:        0011 10df ffff                             Description:  The contents of the W register are
                                                                          XOR'ed with the eight bit literal 'k'. The
Description:  The upper and lower nibbles of register                     result is placed in the W register.
              'f' are exchanged. If 'd' is 0 the result is
              placed in W register. If 'd' is 1 the result  Words:        1
              is placed in register 'f'.
                                                            Cycles:       1

Words:        1                                             Example:      XORLW 0xAF

Cycles:       1                                                      Before Instruction
                                                                           W = 0xB5
Example       SWAPF REG1, 0

Before Instruction                                                   After Instruction
      REG1 = 0xA5                                                          W = 0x1A

After Instruction

         REG1 = 0xA5                                        XORWF         Exclusive OR W with f

         W    = 0X5A

                                                            Syntax:       [ label ] XORWF f,d

                                                            Operands:     0  f  31
                                                                          d  [0,1]
TRIS          Load TRIS Register

Syntax:       [ label ] TRIS f                              Operation:    (W) .XOR. (f)  (dest)

Operands:     f=6                                           Status Affected: Z

Operation:    (W)  TRIS register f                          Encoding:        0001 10df ffff

Status Affected: None                                       Description:  Exclusive OR the contents of the W
                                                                          register with register 'f'. If 'd' is 0 the
Encoding:        0000 0000 0fff                                           result is stored in the W register. If 'd' is
                                                                          1 the result is stored back in register 'f'.
Description:  TRIS register 'f' (f = 6 or 7) is loaded
              with the contents of the W register

Words:        1                                             Words:        1

Cycles:       1                                             Cycles:       1

Example       TRIS PORTB                                    Example       XORWF REG,1

Before Instruction                                                   Before Instruction

         W    = 0XA5                                                 REG = 0xAF

After Instruction                                                    W    = 0xB5
      TRIS = 0XA5
                                                                     After Instruction

                                                                     REG = 0x1A

                                                                     W    = 0xB5

1998 Microchip Technology Inc.                        Preliminary                      DS40192A-page 49
PIC16C505

NOTES:

DS40192A-page 50  Preliminary   1998 Microchip Technology Inc.
9.0 DEVELOPMENT SUPPORT                                                PIC16C505

9.1 Development Tools                                    9.3 ICEPIC: Low-Cost PICmicroTM
                                                                   In-Circuit Emulator
The PICmicrTM microcontrollers are supported with a
full range of hardware and software development tools:   ICEPIC is a low-cost in-circuit emulator solution for the
PICMASTER/PICMASTER CE Real-Time                      Microchip PIC12CXXX, PIC16C5X and PIC16CXXX
                                                         families of 8-bit OTP microcontrollers.
   In-Circuit Emulator
ICEPICTM Low-Cost PIC16C5X and PIC16CXXX               ICEPIC is designed to operate on PC-compatible
                                                         machines ranging from 286-AT through PentiumTM
   In-Circuit Emulator                                   based machines under Windows 3.x environment.
PRO MATE II Universal Programmer                      ICEPIC features real time, non-intrusive emulation.
PICSTART Plus Entry-Level Prototype
                                                         9.4 PRO MATE II: Universal Programmer
   Programmer
PICDEM-1 Low-Cost Demonstration Board                  The PRO MATE II Universal Programmer is a full-fea-
PICDEM-2 Low-Cost Demonstration Board                  tured programmer capable of operating in stand-alone
PICDEM-3 Low-Cost Demonstration Board                  mode as well as PC-hosted mode. PRO MATE II is CE
MPASM Assembler                                        compliant.
MPLABTM SIM Software Simulator
MPLAB-C17 (C Compiler)                                 The PRO MATE II has programmable VDD and VPP
Fuzzy Logic Development System                         supplies which allows it to verify programmed memory
                                                         at VDD min and VDD max for maximum reliability. It has
  (fuzzyTECH-MP)                                        an LCD display for displaying error messages, keys to
                                                         enter commands and a modular detachable socket
9.2 PICMASTER: High Performance                          assembly to support various package types. In stand-
          Universal In-Circuit Emulator with             alone mode the PRO MATE II can read, verify or pro-
          MPLAB IDE                                      gram PIC12CXXX, PIC14C000, PIC16C5X,
                                                         PIC16CXXX and PIC17CXX devices. It can also set
The PICMASTER Universal In-Circuit Emulator is           configuration and code-protect bits in this mode.
intended to provide the product development engineer
with a complete microcontroller design tool set for all  9.5 PICSTART Plus Entry Level
microcontrollers in the PIC14C000, PIC12CXXX,                      Development System
PIC16C5X, PIC16CXXX and PIC17CXX families.
PICMASTER is supplied with the MPLABTM Integrated        The PICSTART programmer is an easy-to-use, low-
Development Environment (IDE), which allows editing,     cost prototype programmer. It connects to the PC via
"make" and download, and source debugging from a         one of the COM (RS-232) ports. MPLAB Integrated
single environment.                                      Development Environment software makes using the
                                                         programmer simple and efficient. PICSTART Plus is
Interchangeable target probes allow the system to be     not recommended for production programming.
easily reconfigured for emulation of different proces-
sors. The universal architecture of the PICMASTER        PICSTART Plus supports all PIC12CXXX, PIC14C000,
allows expansion to support all new Microchip micro-     PIC16C5X, PIC16CXXX and PIC17CXX devices with
controllers.                                             up to 40 pins. Larger pin count devices such as the
                                                         PIC16C923, PIC16C924 and PIC17C756 may be sup-
The PICMASTER Emulator System has been                   ported with an adapter socket. PICSTART Plus is CE
designed as a real-time emulation system with            compliant.
advanced features that are generally found on more
expensive development tools. The PC compatible 386
(and higher) machine platform and Microsoft Windows
3.x environment were chosen to best make these fea-
tures available to you, the end user.

A CE compliant version of PICMASTER is available for
European Union (EU) countries.

1998 Microchip Technology Inc.  Preliminary            DS40192A-page 51
PIC16C505

9.6 PICDEM-1 Low-Cost PICmicro                             an RS-232 interface, push-button switches, a potenti-
          Demonstration Board                              ometer for simulated analog input, a thermistor and
                                                           separate headers for connection to an external LCD
The PICDEM-1 is a simple board which demonstrates          module and a keypad. Also provided on the PICDEM-3
the capabilities of several of Microchip's microcontrol-   board is an LCD panel, with 4 commons and 12 seg-
lers. The microcontrollers supported are: PIC16C5X         ments, that is capable of displaying time, temperature
(PIC16C54 to PIC16C58A), PIC16C61, PIC16C62X,              and day of the week. The PICDEM-3 provides an addi-
PIC16C71, PIC16C8X, PIC17C42, PIC17C43 and                 tional RS-232 interface and Windows 3.1 software for
PIC17C44. All necessary hardware and software is           showing the demultiplexed LCD signals on a PC. A sim-
included to run basic demo programs. The users can         ple serial interface allows the user to construct a hard-
program the sample microcontrollers provided with          ware demultiplexer for the LCD signals.
the PICDEM-1 board, on a PRO MATE II or
PICSTART-Plus programmer, and easily test firm-            9.9 MPLABTM Integrated Development
ware. The user can also connect the PICDEM-1                         Environment Software
board to the PICMASTER emulator and download
the firmware to the emulator for testing. Additional pro-  The MPLAB IDE Software brings an ease of software
totype area is available for the user to build some addi-  development previously unseen in the 8-bit microcon-
tional hardware and connect it to the microcontroller      troller market. MPLAB is a windows based application
socket(s). Some of the features include an RS-232          which contains:
interface, a potentiometer for simulated analog input,
push-button switches and eight LEDs connected to            A full featured editor
PORTB.                                                      Three operating modes

9.7 PICDEM-2 Low-Cost PIC16CXX                                - editor
          Demonstration Board                                 - emulator
                                                              - simulator
The PICDEM-2 is a simple demonstration board that          A project manager
supports the PIC16C62, PIC16C64, PIC16C65,                  Customizable tool bar and key mapping
PIC16C73 and PIC16C74 microcontrollers. All the             A status bar with project information
necessary hardware and software is included to             Extensive on-line help
run the basic demonstration programs. The user
can program the sample microcontrollers provided           MPLAB allows you to:
with the PICDEM-2 board, on a PRO MATE II pro-
grammer or PICSTART-Plus, and easily test firmware.         Edit your source files (either assembly or `C')
The PICMASTER emulator may also be used with the            One touch assemble (or compile) and download
PICDEM-2 board to test firmware. Additional prototype
area has been provided to the user for adding addi-           to PICmicro tools (automatically updates all
tional hardware and connecting it to the microcontroller      project information)
socket(s). Some of the features include a RS-232 inter-    Debug using:
face, push-button switches, a potentiometer for simu-         - source files
lated analog input, a Serial EEPROM to demonstrate            - absolute listing file
usage of the I2C bus and separate headers for connec-       Transfer data dynamically via DDE (soon to be
tion to an LCD module and a keypad.                           replaced by OLE)
                                                            Run up to four emulators on the same PC
9.8 PICDEM-3 Low-Cost PIC16CXXX
          Demonstration Board                              The ability to use MPLAB with Microchip's simulator
                                                           allows a consistent platform and the ability to easily
The PICDEM-3 is a simple demonstration board that          switch from the low cost simulator to the full featured
supports the PIC16C923 and PIC16C924 in the PLCC           emulator with minimal retraining due to development
package. It will also support future 44-pin PLCC           tools.
microcontrollers with a LCD Module. All the neces-
sary hardware and software is included to run the          9.10 Assembler (MPASM)
basic demonstration programs. The user can pro-
gram the sample microcontrollers provided with             The MPASM Universal Macro Assembler is a PC-
the PICDEM-3 board, on a PRO MATE II program-              hosted symbolic assembler. It supports all microcon-
mer or PICSTART Plus with an adapter socket, and           troller series including the PIC12C5XX, PIC14000,
easily test firmware. The PICMASTER emulator may           PIC16C5X, PIC16CXXX, and PIC17CXX families.
also be used with the PICDEM-3 board to test firm-
ware. Additional prototype area has been provided to       MPASM offers full featured Macro capabilities, condi-
the user for adding hardware and connecting it to the      tional assembly, and several source and listing formats.
microcontroller socket(s). Some of the features include    It generates various object code formats to support
                                                           Microchip's development tools as well as third party
                                                           programmers.

                                                           MPASM allows full symbolic debugging from
                                                           PICMASTER, Microchip's Universal Emulator System.

DS40192A-page 52  Preliminary                               1998 Microchip Technology Inc.
MPASM has the following features to assist in develop-                   PIC16C505
ing software for specific use applications.
                                                           9.14 MP-DriveWayTM Application Code
Provides translation of Assembler source code to                   Generator
   object code for all Microchip microcontrollers.
                                                           MP-DriveWay is an easy-to-use Windows-based Appli-
Macro assembly capability.                               cation Code Generator. With MP-DriveWay you can
Produces all the files (Object, Listing, Symbol,         visually configure all the peripherals in a PICmicro
                                                           device and, with a click of the mouse, generate all the
   and special) required for symbolic debug with           initialization and many functional code modules in C
   Microchip's emulator systems.                           language. The output is fully compatible with Micro-
Supports Hex (default), Decimal and Octal source         chip's MPLAB-C C compiler. The code produced is
   and listing formats.                                    highly modular and allows easy integration of your own
                                                           code. MP-DriveWay is intelligent enough to maintain
MPASM provides a rich directive language to support        your code through subsequent code generation.
programming of the PICmicro. Directives are helpful in
making the development of your assemble source code        9.15 SEEVAL Evaluation and
shorter and more maintainable.                                       Programming System

9.11 Software Simulator (MPLAB-SIM)                        The SEEVAL SEEPROM Designer's Kit supports all
                                                           Microchip 2-wire and 3-wire Serial EEPROMs. The kit
The MPLAB-SIM Software Simulator allows code               includes everything necessary to read, write, erase or
development in a PC host environment. It allows the        program special features of any Microchip SEEPROM
user to simulate the PICmicro series microcontrollers      product including Smart SerialsTM and secure serials.
on an instruction level. On any given instruction, the     The Total EnduranceTM Disk is included to aid in trade-
user may examine or modify any of the data areas or        off analysis and reliability calculations. The total kit can
provide external stimulus to any of the pins. The input/   significantly reduce time-to-market and result in an
output radix can be set by the user and the execution      optimized system.
can be performed in; single step, execute until break, or
in a trace mode.                                           9.16 KEELOQ Evaluation and
                                                                     Programming Tools
MPLAB-SIM fully supports symbolic debugging using
MPLAB-C and MPASM. The Software Simulator offers           KEELOQ evaluation and programming tools support
the low cost flexibility to develop and debug code out-    Microchips HCS Secure Data Products. The HCS eval-
side of the laboratory environment making it an excel-     uation kit includes an LCD display to show changing
lent multi-project software development tool.              codes, a decoder to decode transmissions, and a pro-
                                                           gramming interface to program test transmitters.
9.12 C Compiler (MPLAB-C17)

The MPLAB-C Code Development System is a
complete `C' compiler and integrated development
environment for Microchip's PIC17CXXX family of
microcontrollers. The compiler provides powerful inte-
gration capabilities and ease of use not found with
other compilers.

For easier source level debugging, the compiler pro-
vides symbol information that is compatible with the
MPLAB IDE memory display.

9.13 Fuzzy Logic Development System
          (fuzzyTECH-MP)

fuzzyTECH-MP fuzzy logic development tool is avail-
able in two versions - a low cost introductory version,
MP Explorer, for designers to gain a comprehensive
working knowledge of fuzzy logic system design; and a
full-featured version, fuzzyTECH-MP, Edition for imple-
menting more complex systems.

Both versions include Microchip's fuzzyLABTM demon-
stration board for hands-on experience with fuzzy logic
systems implementation.

1998 Microchip Technology Inc.  Preliminary              DS40192A-page 53
DS40192A-page 54                                          PIC12C5XX  PIC14000  PIC16C5X  PIC16CXXX                                                                                                               24CXX HCS200       PIC16C505
                                                          PIC16C505                                 PIC16C6X PIC16C7XX PIC16C8X PIC16C9XX PIC17C4X PIC17C75X 25CXX HCS300
                                                                                                                                                                                                                             TABLE 9-1: DEVELOPMENT TOOLS FROM MICROCHIP
                                                                                                                                                                                                               93CXX HCS301

                                  EMULATOR PRODUCTS                                        
                                                                                           
                                  PICMASTER/                                                             
                                  PICMASTER-CE
                                  In-Circuit Emulator                                      
                                                                                           
                                  ICEPICTM Low-Cost                                                      
                                                                                           
                                  In-Circuit Emulator

                                  SOFTWARE PRODUCTS

                                  MPLABTM                                                                   
                                  Integrated
                                  Development
                                  Environment

                                  MPLABTM C17                                                                     
                                  Compiler
Preliminary                                                                                               
                                  fuzzyTECH-MP
                                  Explorer/Edition
                                  Fuzzy Logic Dev. Tool

                                  MP-DriveWayTM                                                             
                                  Applications
                                  Code Generator

                                  Total EnduranceTM                                                                  
                                  Software Model

                                  PROGRAMMERS

                                  PICSTARTPlus                                                             
                                  Low-Cost
1998 Microchip Technology Inc.  Universal Dev. Kit                                                        

                                  PRO MATE II
                                  Universal Programmer

                                  KEELOQ Programmer                                                                     

                                  DEMO BOARDS                                                                        
                                                                                                                              
                                  SEEVAL Designers Kit

                                  PICDEM-1                                                                     

                                  PICDEM-2                                                            

                                  PICDEM-3                                                                  
                                  KEELOQ Evaluation Kit
                                                PIC16C505

10.0 ELECTRICAL CHARACTERISTICS - PIC16C505

Absolute Maximum Ratings
Ambient Temperature under bias ........................................................................................................... 40C to +125C
Storage Temperature.............................................................................................................................. 65C to +150C
Voltage on VDD with respect to VSS .................................................................................................................0 to +7.5 V
Voltage on MCLR with respect to VSS...............................................................................................................0 to +14 V
Voltage on all other pins with respect to VSS ................................................................................0.6 V to (VDD + 0.6 V)
Total Power Dissipation(1) ....................................................................................................................................700 mW
Max. Current out of VSS pin...................................................................................................................................200 mA
Max. Current into VDD pin......................................................................................................................................150 mA
Input Clamp Current, IIK (VI < 0 or VI > VDD) ....................................................................................................................20 mA
Output Clamp Current, IOK (VO < 0 or VO > VDD) ............................................................................................................20 mA
Max. Output Current sunk by any I/O pin ................................................................................................................25 mA
Max. Output Current sourced by any I/O pin...........................................................................................................25 mA
Max. Output Current sourced by I/O port .............................................................................................................100 mA
Max. Output Current sunk by I/O port ..................................................................................................................100 mA

   Note 1: Power Dissipation is calculated as follows: PDIS = VDD x {IDD -  IOH} +  {(VDD-VOH) x IOH} + (VOL x IOL)
   NOTICE: Stresses above those listed under "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 listings of this specification is not implied. Exposure to maximum rating conditions for
   extended periods may affect device reliability.

1998 Microchip Technology Inc.  Preliminary  DS40192A-page 55
PIC16C505

10.1 DC CHARACTERISTICS:                 PIC16C505-04 (Commercial, Industrial, Extended)
                                         PIC16C505-20(Commercial, Industrial, Extended)

                                  Standard Operating Conditions (unless otherwise specified)

DC Characteristics                Operating Temperature    0C  TA  +70C (commercial)
Power Supply Pins
                                                           40C  TA  +85C (industrial)

                                                           40C  TA  +125C (extended)

Characteristic           Sym Min Typ(1) Max Units                Conditions

Supply Voltage           VDD 3.0                      5.5  V XT, EXTRC, INTRC and LP OSC configura-
                                    4.5
                                                           tion

                                                      5.5  V HS OSC configuration

RAM Data Retention       VDR             1.5*              V Device in SLEEP mode

Voltage(2)

VDD Start Voltage to ensure VPOR         VSS               V See section on Power-on Reset for details

Power-on Reset

VDD Rise Rate to ensure  SVDD 0.05*                        V/ms See section on Power-on Reset for details
Power-on Reset

Supply Current(3)        IDD -- 1.8 2.4 mA XT and EXTRC options (Note 4)

                                                           FOSC = 4 MHz, VDD = 5.5V

                                  -- 1.8 2.4 mA INTRC Option

                                                           FOSC = 4 MHz, VDD = 5.5V

                                  --     15           27   A LP OPTION, Commercial Temperature

                                                           FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                  --     19           35   A LP OPTION, Industrial Temperature

                                                           FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                  --     19           35   A LP OPTION, Extended Temperature

                                  --                       FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                         4.5          16   mA HS OPTION, Industrial Temperature

                                                           FOSC = 20 MHz, VDD = 5.5V

Power-Down Current (5)   IPD
WDT Enabled
                                  --     4            12   A VDD = 3.0V, Commercial
WDT Disabled
                                  --     4            14   A VDD = 3.0V, Industrial

                                  --     5            22   A VDD = 3.0V, Extended

                                  -- 0.25 4                A VDD = 3.0V, Commercial

                                  -- 0.25 5                A VDD = 3.0V, Industrial

                                  --     2            18   A VDD = 3.0V, Extended

* These parameters are characterized but not tested.

Note 1: Data in the Typical ("Typ") column is based on characterization results at 25C. This data is for design guid-
            ance only and is not tested.

       2: This is the limit to which VDD can be lowered in SLEEP mode without losing RAM data.
       3: The supply current is mainly a function of the operating voltage and frequency. Other factors such as bus

            loading, oscillator type, bus rate, internal code execution pattern, and temperature also have an impact on
            the current consumption.

               a) 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
                  Vss, T0CKI = VDD, MCLR = VDD; WDT enabled/disabled as specified.

               b) For standby current measurements, the conditions are the same, except that
                  the device is in SLEEP mode.

       4: Does not include current through Rext. The current through the resistor can be estimated by the
            formula: IR = VDD/2Rext (mA) with Rext in kOhm.

       5: The power down current in SLEEP mode does not depend on the oscillator type. Power down current is mea-
            sured with the part in SLEEP mode, with all I/O pins in hi-impedance state and tied to VDD or VSS.

DS40192A-page 56                         Preliminary             1998 Microchip Technology Inc.
                                                                   PIC16C505

10.2 DC CHARACTERISTICS:                    PIC16LC505-04 (Commercial, Industrial, Extended)

                                       Standard Operating Conditions (unless otherwise specified)

DC Characteristics                     Operating Temperature  0C  TA  +70C (commercial)
Power Supply Pins
                                                              40C  TA  +85C (industrial)

                                                              40C  TA  +125C (extended)

Characteristic                    Sym Min Typ(1) Max Units         Conditions

Supply Voltage                    VDD 3.0             5.5     V XT, EXTRC, INTRC OSC configuration

                                       2.5            5.5     V LP OSC configuration

RAM Data Retention                VDR         1.5*            V Device in SLEEP mode

Voltage(2)

VDD Start Voltage to ensure VPOR              VSS             V See section on Power-on Reset for details

Power-on Reset

VDD Rise Rate to ensure           SVDD 0.05*                  V/ms See section on Power-on Reset for details
Power-on Reset

Supply Current(3)                 IDD -- 1.8 2.4 mA XT and EXTRC options (Note 4)

                                                              FOSC = 4 MHz, VDD = 5.5V

                                       -- 1.8 2.4 mA INTRC Option

                                                              FOSC = 4 MHz, VDD = 5.5V

                                       --     15      27      A LP OPTION, Commercial Temperature

                                                              FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                       --     19      35      A LP OPTION, Industrial Temperature

                                                              FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                       --     19      35      A LP OPTION, Extended Temperature

                                       --                     FOSC = 32 kHz, VDD = 3.0V, WDT disabled

                                              4.5     16      mA HS OPTION, Industrial Temperature

                                                              FOSC = 20 MHz, VDD = 5.5V

Power-Down Current (5)            IPD
WDT Enabled
                                       --     4       12      A VDD = 3.0V, Commercial
WDT Disabled
                                       --     4       14      A VDD = 3.0V, Industrial

                                       --     5       22      A VDD = 3.0V, Extended

                                       -- 0.25 4              A VDD = 3.0V, Commercial

                                       -- 0.25 5              A VDD = 3.0V, Industrial

                                       --     2       18      A VDD = 3.0V, Extended

* These parameters are characterized but not tested.

Note 1: Data in the Typical ("Typ") column is based on characterization results at 25C. This data is for design guid-
            ance only and is not tested.

       2: This is the limit to which VDD can be lowered in SLEEP mode without losing RAM data.
       3: The supply current is mainly a function of the operating voltage and frequency. Other factors such as bus

            loading, oscillator type, bus rate, internal code execution pattern, and temperature also have an impact on
            the current consumption.

               a) 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
                  Vss, T0CKI = VDD, MCLR = VDD; WDT enabled/disabled as specified.

               b) For standby current measurements, the conditions are the same, except that
                  the device is in SLEEP mode.

       4: Does not include current through Rext. The current through the resistor can be estimated by the
            formula: IR = VDD/2Rext (mA) with Rext in kOhm.

       5: The power down current in SLEEP mode does not depend on the oscillator type. Power down current is mea-
            sured with the part in SLEEP mode, with all I/O pins in hi-impedance state and tied to VDD or VSS.

1998 Microchip Technology Inc.              Preliminary                                    DS40192A-page 57
PIC16C505

10.3 DC CHARACTERISTICS:             PIC16C505-04 (Commercial, Industrial, Extended)
                                     PIC16C505-20(Commercial, Industrial, Extended)
                                     PIC16LC505-04 (Commercial, Industrial, Extended)

                                     Standard Operating Conditions (unless otherwise specified)

           DC Characteristics        Operating Temperature    0C  TA  +70C (commercial)
             All Pins Except
                                                              40C  TA  +85C (industrial)
           Power Supply Pins
                                                              40C  TA  +125C (extended)

                                     Operating Voltage VDD range is described in Section 10.1.

           Characteristic       Sym  Min              Typ(1)  Max       Units  Conditions

Input Low Voltage               VIL                           0.8       V Pin at hi-impedance
I/O ports                                     VSS

                                                                               4.5V < VDD  5.5V

                                     VSS                      0.15 VDD  V Pin at hi-impedance

                                                                               3.0V < VDD  4.5V

MCLR and RC5 (Schmitt Trigger)       VSS                      0.20 VDD  V
                                                              0.20 VDD  V EXTRC option only(4)
OSC1                                 VSS

OSC1                                 VSS                      0.3 VDD   V XT and HS options

OSC1                                 VSS                      0.6 VDD -1.0 V LP option

Input High Voltage              VIH

I/O ports                            0.25VDD+0.8V             VDD       V 2.5V < VDD  4.5V
                                                                        V 4.5V < VDD  5.5V(5)
                                     2.0                      VDD       V Full VDD range(5)
                                                                        V Full VDD range
                                     0.2VDD+1V                VDD       V EXTRC option only(4)
                                                                        V HS, XT and LP options
MCLR and RC5 (Schmitt Trigger)       0.8 VDD                  VDD
                                                                                For VDD  5.5V
OSC1 (Schmitt Trigger)               0.9 VDD                  VDD       A VSS  VPIN  VDD,

                                     0.7 VDD                  VDD               Pin at hi-impedance
                                                                        A VPIN = VSS + 0.25V(2)
IPUR                                                                    A VPIN = VDD
                                                                        A VSS  VPIN  VDD,
Input Leakage Current(2,3)      IIL
                                                                                XT and LP options
I/O ports                            1               0.5     +1

MCLR                                 20               130     250
OSC1
                                                      0.5     +5

                                     3               0.5     +3

Output Low Voltage              Vol                           0.6       V IOL = 8.7 mA, VDD = 4.5V
I/O ports
                                VoH                                     V IOH = 5.4 mA, VDD = 4.5V
Output High Voltage(3,4)                    VDD 0.7
I/O ports

* These parameters are characterized but not tested.
Note 1: Data in the Typical ("Typ") column is based on characterization results at 25C. This data is for design guid-

            ance only and is not tested.
       2: The leakage current on the MCLR/VPP/RB3 pin is strongly dependent on the applied voltage level. The spec-

            ified levels represent normal operating conditions. Higher leakage current may be measured at different
            input voltage.
       3: Negative current is defined as coming out of the pin.
       4: For PIC16C505 devices, the OSC1/CLKIN pin is a Schmitt Trigger input. It is not recommended that the
            PIC16C505 be driven with external clock in RC mode.
       5: The user may use the better of the two specifications.

DS40192A-page 58                     Preliminary                         1998 Microchip Technology Inc.
                                                                                        PIC16C505

10.4 Timing Parameter Symbology and Load Conditions - PIC16C505

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

1. TppS2ppS

2. TppS

T

   F         Frequency                            T        Time

   Lowercase subscripts (pp) and their meanings:

pp

   2         to                                   mc       MCLR

   ck        CLKOUT                               osc      oscillator

   cy        cycle time                           os       OSC1

   drt       device reset timer                   t0       T0CKI

   io        I/O port                             wdt      watchdog timer

   Uppercase letters and their meanings:

S

   F         Fall                                 P        Period

   H         High                                 R        Rise

   I         Invalid (Hi-impedance)               V        Valid

   L         Low                                  Z        Hi-impedance

FIGURE 10-1: LOAD CONDITIONS - PIC16C505

                       Pin                        CL = 50 pF for all pins except OSC2

                                          CL      15 pF for OSC2 in XT, HS or LP

                                                           modes when external clock

                                     VSS                   is used to drive OSC1

1998 Microchip Technology Inc.              Preliminary                               DS40192A-page 59
PIC16C505

10.5 Timing Diagrams and Specifications
FIGURE 10-2: EXTERNAL CLOCK TIMING - PIC16C505

                        Q4  Q1                         Q2         Q3      Q4                Q1
OSC1

                            1                                 3       3       4          4

                                                           2

TABLE 10-1: EXTERNAL CLOCK TIMING REQUIREMENTS - PIC16C505

AC Characteristics          Standard Operating Conditions (unless otherwise specified)

                            Operating Temperature          0C  TA  +70C (commercial),

                                                       40C  TA  +85C (industrial),

                                                       40C  TA  +125C (extended)

                            Operating Voltage VDD range is described in Section 10.1

Parameter         Sym       Characteristic                    Min Typ(1) Max Units          Conditions
    No.

                  FOSC External CLKIN Frequency(2)            DC --       4 MHz XT osc mode
                                                              DC --
                                                                          4 MHz HS osc mode
                                                                                           (PIC16C505-04)

                                                              DC -- 200 kHz LP osc mode

                            Oscillator Frequency(2)           DC --       4 MHz EXTRC osc mode
                                                              0.1 --      4 MHz XT osc mode

                                                              4       --  4 MHz HS osc mode
                                                                                           (PIC16C505-04)

                                                              4       --  20 MHz HS osc mode

                                                                                            (PIC16C505-20)

                                                              DC -- 200 kHz LP osc mode

1                 TOSC External CLKIN Period(2)               250 --      -- ns XT osc mode

                                                              5       --  --           s LP osc mode

                            Oscillator Period(2)              250 --      -- ns EXTRC osc mode

                                                              250 -- 10,000 ns XT osc mode

                                                              250 -- 250 ns HS ocs mode
                                                                                                       (PIC16C505-04)

                                                              50 -- 250 ns HS ocs mode
                                                                                                       (PIC16C505-20)

                                                              5       --  --           s LP osc mode

2                 Tcy       Instruction Cycle Time(3)         -- 4/FOSC DC ns

                                                              200 --                   ns TC4 = 4/FOSC

      * These parameters are characterized but not tested.
Note 1: Data in the Typical ("Typ") column is at 5V, 25C unless otherwise stated. These parameters are for design

            guidance only and are not tested.
       2: All specified values are based on characterization data for that particular oscillator type under standard oper-

            ating conditions with the device executing code. Exceeding these specified limits may result in an unstable
            oscillator operation and/or higher than expected current consumption.
            When an external clock input is used, the "max" cycle time limit is "DC" (no clock) for all devices.
       3: Instruction cycle period (TCY) equals four times the input oscillator time base period.

DS40192A-page 60                                     Preliminary                      1998 Microchip Technology Inc.
                                                                                  PIC16C505

TABLE 10-1: EXTERNAL CLOCK TIMING REQUIREMENTS - PIC16C505 (CONTINUED)

AC Characteristics  Standard Operating Conditions (unless otherwise specified)

                    Operating Temperature         0C  TA  +70C (commercial),

                                                  40C  TA  +85C (industrial),

                                                  40C  TA  +125C (extended)

                    Operating Voltage VDD range is described in Section 10.1

Parameter  Sym                    Characteristic         Min Typ(1) Max Units     Conditions
    No.

3          TosL, TosH Clock in (OSC1) Low or High Time 50* --    -- ns XT oscillator

                                                         2*  --  -- s LP oscillator

                                                         10                       ns HS oscillator

4          TosR, TosF Clock in (OSC1) Rise or Fall Time  --  --  25* ns XT oscillator

                                                         --  --  50* ns LP oscillator

                                                         --  --  15 ns HS oscillator

      * These parameters are characterized but not tested.
Note 1: Data in the Typical ("Typ") column is at 5V, 25C unless otherwise stated. These parameters are for design

            guidance only and are not tested.
       2: All specified values are based on characterization data for that particular oscillator type under standard oper-

            ating conditions with the device executing code. Exceeding these specified limits may result in an unstable
            oscillator operation and/or higher than expected current consumption.
            When an external clock input is used, the "max" cycle time limit is "DC" (no clock) for all devices.
       3: Instruction cycle period (TCY) equals four times the input oscillator time base period.

1998 Microchip Technology Inc.  Preliminary                                     DS40192A-page 61
PIC16C505

FIGURE 10-3: I/O TIMING - PIC16C505

                       Q4                         Q1           Q2                             Q3
                                                                                           New Value
OSC1

I/O Pin                     17                        19 18
(input)
I/O Pin          Old Value
(output)

                                     20, 21

Note: All tests must be done with specified capacitive loads (see data sheet) 50 pF on I/O pins and CLKOUT.

TABLE 10-2: TIMING REQUIREMENTS - PIC16C505

AC Characteristics           Standard Operating Conditions (unless otherwise specified)

                             Operating Temperature     0C  TA  +70C (commercial)

                                                       40C  TA  +85C (industrial)

                                                       40C  TA  +125C (extended)

                             Operating Voltage VDD range is described in Section 10.1

Parameter         Sym        Characteristic                    Min     Typ(1)              Max               Units
    No.

17         TosH2ioV OSC1 (Q1 cycle) to Port out valid(3)           --                  --  100*              ns

18         TosH2ioI OSC1 (Q2 cycle) to Port input invalid      TBD                     --  --                ns

                             (I/O in hold time)

19         TioV2osH Port input valid to OSC1                   TBD                     --  --                ns

                             (I/O in setup time)

20         TioR              Port output rise time(3)              --                  10  25**              ns

21         TioF              Port output fall time(3)              --                  10  25**              ns

  * These parameters are characterized but not tested.
  ** These parameters are design targets and are not tested. No characterization data available at this time.
Note 1: Data in the Typical ("Typ") column is at 5V, 25C unless otherwise stated. These parameters are for design

            guidance only and are not tested.
       2: Measurements are taken in EXTRC mode.
       3: See Figure 10-1 for loading conditions.

DS40192A-page 62                                  Preliminary          1998 Microchip Technology Inc.
                                                                                       PIC16C505

FIGURE 10-4: RESET, WATCHDOG TIMER, AND DEVICE RESET TIMER TIMING - PIC16C505

     VDD

    MCLR                                                  30

   Internal                                                   32                       32
      POR
                                 32                                    31
      DRT
                                                      34                           34
  Timeout
  (Note 2)
   Internal
   RESET

Watchdog
     Timer

   RESET

   I/O pin
   (Note 1)

    Note 1: I/O pins must be taken out of hi-impedance mode by enabling the output drivers in software.
           2: Runs in MCLR or WDT reset only in XT, LP and HS modes.

TABLE 10-3: RESET, WATCHDOG TIMER, AND DEVICE RESET TIMER - PIC16C505

AC Characteristics Standard Operating Conditions (unless otherwise specified)

           Operating Temperature                      0C  TA  +70C (commercial)

                                        40C  TA  +85C (industrial)

                                        40C  TA  +125C (extended)

           Operating Voltage VDD range is described in Section 10.1

Parameter                                                     Min Typ(1) Max Units

No.        Sym Characteristic                                                              Conditions

30         TmcL MCLR Pulse Width (low)                        2000* -- -- ns VDD = 5 V

31         Twdt Watchdog Timer Time-out Period 9* 18* 30* ms VDD = 5 V (Commercial)

           (No Prescaler)

32         TDRT Device Reset Timer Period(2)                  9* 18* 30* ms VDD = 5 V (Commercial)

34         TioZ I/O Hi-impedance from MCLR Low -- -- 2000* ns

   * These parameters are characterized but not tested.
Note 1: Data in the Typical ("Typ") column is at 5V, 25C unless otherwise stated. These parameters are for design

            guidance only and are not tested.

TABLE 10-4: DRT (DEVICE RESET TIMER PERIOD - PIC16C505

Oscillator Configuration               POR Reset              Subsequent Resets

IntRC & ExtRC                        18 ms (typical)             300 s (typical)
XT, HS & LP                          18 ms (typical)              18 ms (typical)

1998 Microchip Technology Inc.        Preliminary                                        DS40192A-page 63
PIC16C505

FIGURE 10-5: TIMER0 CLOCK TIMINGS - PIC16C505

           T0CKI

                                                      40                 41

                                                               42

TABLE 10-5: TIMER0 CLOCK REQUIREMENTS - PIC16C505

    AC Characteristics         Standard Operating Conditions (unless otherwise specified)

                               Operating Temperature                0C  TA  +70C (commercial)

                                                                   40C  TA  +85C (industrial)

                                                                   40C  TA  +125C (extended)

                               Operating Voltage VDD range is described in Section 10.1.

Parameter  Sym Characteristic                                  Min       Typ(1) Max Units Conditions
    No.

40         Tt0H T0CKI High Pulse Width - No Prescaler 0.5 TCY + 20* -- -- ns

                               - With Prescaler                10*           -- -- ns

41         Tt0L T0CKI Low Pulse Width - No Prescaler 0.5 TCY + 20* -- -- ns

                               - With Prescaler                10*           -- -- ns

42         Tt0P T0CKI Period                              20 or TCY + 40* -- -- ns Whichever is greater.

                                                                    N                  N = Prescale Value

                                                                                                  (1, 2, 4,..., 256)

   * These parameters are characterized but not tested.
Note 1: Data in the Typical ("Typ") column is at 5V, 25C unless otherwise stated. These parameters are for design guidance only

             and are not tested.

TABLE 10-6: PULL-UP RESISTOR RANGES - PIC16C505

VDD (Volts) Temperature (C)   Min                                 Typ       Max                  Units

                                    RB0/RB1/RB4                              35K                    
                                                                             43K                    
    3.0           -40          27K                                 32K       43K                    
                                                                             60K                    
                  25           33K                                 38K       20K                    
                                                                             23K                    
                  85           33K                                 39K       25K                    
                                                                             28K                    
                  125          37K                                 42K
                                                                             395K                  
    5.5           -40          15K                                 17K       492K                  
                                                                             500K                  
                  25           18K                                 20K       567K                  
                                                                             360K                  
                  85           19K                                 22K       437K                  
                                                                             448K                  
                  125          22K                                 24K       500K                  

                                                          RB3

    3.0           -40          271K                                326K

                  25           327K                                390K

                  85           348K                                427K

                  125          400K                                472K

    5.5           -40          247K                                292K

                  25           288K                                341K

                  85           306K                                371K

                  125          351K                                407K

* These parameters are characterized but not tested.

DS40192A-page 64               Preliminary                                    1998 Microchip Technology Inc.
                                                PIC16C505

11.0 DC AND AC CHARACTERISTICS - PIC16C505

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 (e.g., outside specified VDD range). This is
for information only and devices will 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. "Typical" represents the mean of the distribution while "max" or "min" represents (mean + 3) and (mean 3)
respectively, where  is standard deviation.
FIGURE 11-1: CALIBRATED INTERNAL RC FREQUENCY RANGE VS. TEMPERATURE (VDD = 5.0V)

                     (INTERNAL RC IS CALIBRATED TO 25C, 5.0V)

                    Not available at this time.

FIGURE 11-2: CALIBRATED INTERNAL RC FREQUENCY RANGE VS. TEMPERATURE (VDD = 3.0V)
                     (INTERNAL RC IS CALIBRATED TO 25C, 5.0V)

                    Not available at this time.

1998 Microchip Technology Inc.  Preliminary  DS40192A-page 65
PIC16C505

FIGURE 11-3: INTERNAL RC FREQUENCY VS. CALIBRATION VALUE (VDD = 5.5V)

                    Not available at this time.

FIGURE 11-4: INTERNAL RC FREQUENCY VS. CALIBRATION VALUE (VDD = 3.5V)

                    Not available at this time.

TABLE 11-1: DYNAMIC IDD (TYPICAL) - WDT ENABLED, 25C

    Oscillator    Frequency  VDD = 3.0V(1)              VDD = 5.5V

External RC       4 MHz      250 A(2)                   620 A(2)
                                                          1.1 mA
Internal RC       4 MHz      420 A                       775 A
                                                           37 A
XT                4 MHz      251 A                       4.5 mA

LP                32 KHz                  7 A

HS                20 MHz                  N/A

Note 1: LP oscilator based on VDD = 2.5V

Note 2: Does not include current through external R&C.

DS40192A-page 66                          Preliminary                1998 Microchip Technology Inc.
                                                                                                                PIC16C505

FIGURE 11-5: WDT TIMER TIME-OUT                                  FIGURE 11-6: SHORT DRT PERIOD VS. VDD
                     PERIOD vs. VDD                                     1000

          50                                                              900

45

                                                                                                     800

40

35                                                                                                   700
                                                                                                     600
30

                                                 Max +125C

25

                                                  Max +85C

20

                                                   Typ +25C

15
WDT period (s)                                                                                      500                     Max +125C
                                                                                    WDT period (s)                          Max +85C
                                                                                                     400
                                                                                                     300                     Typ +25C

10                                   MIn 40C                                                       200                     MIn 40C
                                                                                                     100
5                                                                                                           3  4  5         6           7
   2                                                                                                      2

      3  4                        5  6                        7                                                 VDD (Volts)

         VDD (Volts)

1998 Microchip Technology Inc.                                 Preliminary                                                 DS40192A-page 67
PIC16C505

FIGURE 11-7: IOH vs. VOH, VDD = 2.5 V                   FIGURE 11-9: IOL vs. VOL, VDD = 2.5 V
                                                                   25
             0
            -1                                                                                 20
            -2
                                                                                                                                                     Max 40C
IOH (mA)  -3
                                                                                     IOL (mA)  15
          -4
                                                                                                                                                     Typ +25C
                Min +125C
          -5                                                                                   10

                Min +85C                                                                                                                            Min +85C

          -6 Typ +25C                                                                         5                   Min +125C

                 Max 40C
          -7

          500m           1.0     1.5          2.0  2.5                                         0

                                 VOH (Volts)                                                       0  250.0m 500.0m                                            1.0

                                                                                                      VOL (Volts)

FIGURE 11-8: IOH vs. VOH, VDD = 5.5 V                   FIGURE 11-10: IOL vs. VOL, VDD = 5.5 V
                                                                  50
              0

          -5                                                                                                                                        Max 40C

                                                                                               40

          -10

IOH (mA)                                                                                       30                  Typ +25C

          -15                                           IOL (mA)

          -20       Min +125C                                                                 20                  Min +85C

                    +85C

                Min                                                                                                                                 Min +125C
                      +25C
                                                                                               10
          -25       Ty p
                          40C

                    Max

          -30

               3.5         4.0   4.5          5.0  5.5

                                 VOH (Volts)                                                   0

                                                                                               250.0m 500.0m 750.0m                                            1.0

                                                                                                      VOL (Volts)

DS40192A-page 68                                   Preliminary                                        1998 Microchip Technology Inc.
12.0 PACKAGING INFORMATION                               PIC16C505

12.1 Package Marking Information                 Example
                                                 16C505-04I/P
            14-Lead PDIP (300 mil)               BUILT 4 SPEED
              MMMMMMMMMMMMMM
              XXXXXXXXXXXXXX                             9804SAZ
                      AABBCDE
                                                 Example
            14-Lead SOIC (150 mil)                16C505-04I
               MMMMMMMMMM                              9804SAZ
                    AABBCDE

14-Lead Windowed Ceramic Side Brazed (300 mil) Example

MM                                               JW

MMMMMMM                                          16C505

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 rev#, 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                                              DS40192A-page 69
PIC16C505

Package Type: K04-005 14-Lead Plastic Dual In-line (P) 300 mil

                                   E

                                         D

                           2

n                          1

                                                                                                

                  E1

                                             A                                                             A1
                                                                                                                    L
                  R
                                      c                                                      p

                                             A2
                       eB                                                B1

                                                                       B

Units                                                      INCHES*                           MILLIMETERS
                                                             NOM
Dimension Limits                                MIN             0.300        MAX        MIN     NOM       MAX
                                                                    14
PCB Row Spacing                                   0.013         0.100          0.023              7.62        0.58
                                                  0.055         0.018          0.065                          1.65
Number of Pins                           n        0.000         0.060          0.010                 14       0.25
                                                  0.006         0.005          0.012                          0.30
Pitch                                    p        0.120         0.010          0.170              2.54        4.32
                                                  0.065         0.145          0.105                          2.67
Lower Lead Width                         B        0.000         0.085          0.035    0.33      0.46        0.89
                                                  0.125         0.015          0.135                          3.43
Upper Lead Width                         B1       0.740         0.130          0.760    1.40      1.52      19.30
                                                  0.240         0.750          0.250                          6.35
Shoulder Radius                          R        0.260         0.245          0.300    0.00      0.13        7.62
                                                  0.310         0.280          0.425                        10.80
Lead Thickness                           c                      0.368                   0.20      0.25
                                                        5           10              15                           15
Top to Seating Plane                     A              5           10              15  3.05      3.68           15

Top of Lead to Seating Plane A1                                                         1.65      2.16

Base to Seating Plane                    A2                                             0.00      0.38

Tip to Seating Plane                     L                                              3.18      3.30

Package Length                           D                                              18.80     19.05

Molded Package Width                     E                                              6.10      6.22

Radius to Radius Width                   E1                                             6.60      7.11

Overall Row Spacing                      eB                                             7.87      9.33

Mold Draft Angle Top                                                                         5       10

Mold Draft Angle Bottom                                                                      5       10

       * Controlling Parameter.
        Dimension "B1" does not include dam-bar protrusions. Dam-bar protrusions shall not exceed 0.003"

          (0.076 mm) per side or 0.006" (0.152 mm) more than dimension "B1."
        Dimensions "D" and "E" do not include mold flash or protrusions. Mold flash or protrusions shall not

          exceed 0.010"(0.254 mm) per side or 0.020" (0.508 mm) more than dimensions "D" or "E."

DS40192A-page 70                                Preliminary                                     1998 Microchip Technology Inc.
                                                PIC16C505

Package Type: K04-065 14-Lead Plastic Small Outline (SL) Narrow, 150 mil

                                                 E1
                                                  E

                     p

                                         D

                                      2

B            n                        1

                                                                                                                                 
                                                X
                 45

                                                     L

       c                                 R2

                                                 A                                                 A1

                          R1               
                                                      A2

                                      L1

Units                                            INCHES*                          MILLIMETERS

Dimension Limits                         MIN     NOM             MAX         MIN     NOM           MAX

Pitch                             p                       0.050                      1.27

Number of Pins                    n                       14                              14

Overall Pack. Height              A      0.058            0.063  0.068       1.47    1.60                                           1.73

Shoulder Height                   A1     0.027            0.036  0.044       0.69    0.90                                           1.12

Standoff                          A2     0.004            0.006  0.008       0.10    0.15                                           0.20

Molded Package Length D                  0.338            0.341  0.344       8.59    8.66                                           8.74

Molded Package Width              E      0.150            0.153  0.156       3.81    3.89                                           3.96

Outside Dimension                 E1     0.230            0.236  0.242       5.84    5.99                                           6.15

Chamfer Distance                  X      0.010            0.014  0.018       0.25    0.36                                           0.46

Shoulder Radius                   R1     0.005            0.005  0.010       0.13    0.13                                           0.25

Gull Wing Radius                  R2     0.005            0.005  0.010       0.13    0.13                                           0.25

Foot Length                       L      0.011            0.016  0.021       0.28    0.41                                           0.53

Foot Angle                                    0           4           8           0       4                                         8

Radius Centerline                 L1     0.000            0.005  0.010       0.00    0.13                                           0.25

Lead Thickness                    c      0.008            0.009  0.010       0.19    0.22                                           0.25

Lower Lead Width                  B      0.014            0.017  0.019       0.36    0.42                                           0.48

Mold Draft Angle Top                          0           12          15          0       12                                        15

Mold Draft Angle Bottom                       0           12          15          0       12                                        15

       * Controlling Parameter.

        Dimension "B" does not include dam-bar protrusions. Dam-bar protrusions shall not exceed 0.003"

          (0.076 mm) per side or 0.006" (0.152 mm) more than dimension "B."

        Dimensions "D" and "E" do not include mold flash or protrusions. Mold flash or protrusions shall not

          exceed 0.010" (0.254 mm) per side or 0.020" (0.508 mm) more than dimensions "D" or "E."

1998 Microchip Technology Inc.         Preliminary                                               DS40192A-page 71
PIC16C505

Package Type: 14-Lead Ceramic Side Brazed Dual In-line with Window (JW) 300 mil

                  E                        W

T                                       D
     n                           2

                                 1

                      U

                                              A                                         A1

                                                 A2                                           L
                                                                                 p
                                     c               B1

                      eB                                 B

Units                                                INCHES*                   MILLIMETERS
                                                      NOM
Dimension Limits                           MIN                   MAX      MIN    NOM        MAX
                                                         0.300
PCB Row Spacing                              0.098           14    0.102         7.62           2.59
                                             0.016                 0.020                        0.51
Number of Pins                   n           0.050       0.100     0.060         14             1.52
                                             0.008       0.018     0.012                        0.30
Pitch                            p           0.145       0.055     0.185  2.49   2.54           4.70
                                             0.103       0.010     0.143                        3.63
Lower Lead Width                 B           0.025       0.165     0.045  0.41   0.46           1.14
                                             0.130       0.123     0.150                        3.81
Upper Lead Width                 B1          0.680       0.035     0.720  1.27   1.40         18.29
                                             0.280       0.140     0.300                        7.62
Lead Thickness                   c           0.310       0.700     0.365  0.20   0.25           9.27
                                             0.161       0.290     0.171                        4.34
Top to Seating Plane             A           0.440       0.338     0.460  3.68   4.19         11.68
                                             0.260       0.166     0.280                        7.11
Top of Body to Seating Plane A1                          0.450            2.62   3.12
                                                         0.270
Base to Seating Plane            A2                                       0.64   0.89

Tip to Seating Plane             L                                        3.30   3.56

Package Length                   D                                        17.27  17.78

Package Width                    E                                        7.11   7.37

Overall Row Spacing              eB                                       7.87   8.57

Window Diameter                  W                                        4.09   4.22

Lid Length                       T                                        11.18  11.43

Lid Width                        U                                        6.60   6.86

       * Controlling Parameter.

DS40192A-page 72                              Preliminary                         1998 Microchip Technology Inc.
                                                                                               PIC16C505

INDEX                                                                                          O

A                                                                                              OPTION Register ............................................................... 15
                                                                                               OSC selection..................................................................... 27
ALU ....................................................................................... 7  OSCCAL Register .............................................................. 16
Applications........................................................................... 3      Oscillator Configurations .................................................... 28
Architectural Overview .......................................................... 7            Oscillator Types
Assembler
                                                                                                     HS............................................................................... 28
      MPASM Assembler..................................................... 52                        LP ............................................................................... 28
                                                                                                     RC .............................................................................. 28
B                                                                                                    XT ............................................................................... 28

Block Diagram                                                                                  P
      On-Chip Reset Circuit ................................................. 33
      Timer0......................................................................... 23       Package Marking Information ............................................. 69
      TMR0/WDT Prescaler................................................. 26                   Packaging Information ........................................................ 69
      Watchdog Timer.......................................................... 35              PICDEM-1 Low-Cost PICmicro Demo Board ..................... 52
                                                                                               PICDEM-2 Low-Cost PIC16CXX Demo Board................... 52
Brown-Out Protection Circuit .............................................. 36                 PICDEM-3 Low-Cost PIC16CXXX Demo Board ................ 52
                                                                                               PICMASTER In-Circuit Emulator ..................................... 51
C                                                                                              PICSTART Plus Entry Level Development System......... 51
                                                                                               POR
CAL0 bit .............................................................................. 16
CAL1 bit .............................................................................. 16           Device Reset Timer (DRT) ................................... 27, 34
CAL2 bit .............................................................................. 16           PD............................................................................... 36
CAL3 bit .............................................................................. 16           Power-On Reset (POR).............................................. 27
CALFST bit ......................................................................... 16              TO............................................................................... 36
CALSLW bit ........................................................................ 16         PORTB ............................................................................... 19
Carry ..................................................................................... 7  Power-Down Mode ............................................................. 37
Clocking Scheme ................................................................ 10            Prescaler ............................................................................ 26
Code Protection ............................................................ 27, 37            PRO MATE II Universal Programmer .............................. 51
Configuration Bits................................................................ 27          Program Counter ................................................................ 17
Configuration Word ............................................................. 27
                                                                                               Q
D
                                                                                               Q cycles .............................................................................. 10
DC and AC Characteristics ................................................. 65
Development Support ......................................................... 51               R
Development Tools ............................................................. 51
Device Varieties .................................................................... 5        RC Oscillator ...................................................................... 29
Digit Carry ............................................................................. 7    Read Modify Write .............................................................. 20
                                                                                               Register File Map ............................................................... 12
F                                                                                              Registers

Family of Devices                                                                                    Special Function ......................................................... 13
      PIC16C505 ................................................................... 4          Reset .................................................................................. 27
                                                                                               Reset on Brown-Out ........................................................... 36
FSR..................................................................................... 18
Fuzzy Logic Dev. System (fuzzyTECH-MP) .................... 53                                S

I                                                                                              SEEVAL Evaluation and Programming System .............. 53
                                                                                               SLEEP .......................................................................... 27, 37
I/O Interfacing ..................................................................... 19       Software Simulator (MPLAB-SIM) ...................................... 53
I/O Ports .............................................................................. 19    Special Features of the CPU .............................................. 27
I/O Programming Considerations........................................ 20                      Special Function Registers ................................................. 13
ICEPIC Low-Cost PIC16CXXX In-Circuit Emulator ............ 51                                  Stack................................................................................... 17
ID Locations .................................................................. 27, 37         STATUS ................................................................................7
INDF.................................................................................... 18    STATUS Register ............................................................... 14
Indirect Data Addressing..................................................... 18
Instruction Cycle ................................................................. 10         T
Instruction Flow/Pipelining .................................................. 10
Instruction Set Summary..................................................... 40                Timer0
                                                                                                     Switching Prescaler Assignment ................................ 26
K                                                                                                    Timer0 ........................................................................ 23
                                                                                                     Timer0 (TMR0) Module .............................................. 23
KeeLoq Evaluation and Programming Tools.................... 53                                      TMR0 with External Clock .......................................... 25

L                                                                                              Timing Diagrams and Specifications .................................. 60
                                                                                               Timing Parameter Symbology and Load Conditions .......... 59
Loading of PC ..................................................................... 17         TRIS Registers ................................................................... 19

M                                                                                              W

Memory Organization.......................................................... 11               Wake-up from SLEEP ........................................................ 37
      Data Memory .............................................................. 12            Watchdog Timer (WDT)................................................ 27, 34
      Program Memory ........................................................ 11
                                                                                                     Period ......................................................................... 35
MP-DriveWayTM - Application Code Generator................... 53                                     Programming Considerations ..................................... 35
MPLAB C ............................................................................ 53
MPLAB Integrated Development Environment Software .... 52                                      Z

                                                                                               Zero bit ..................................................................................7

1998 Microchip Technology Inc.  Preliminary                                                  DS40192A-page 73
PIC16C505

NOTES:

DS40192A-page 74  Preliminary   1998 Microchip Technology Inc.
ON-LINE SUPPORT                                                          PIC16C505

Microchip provides on-line support on the Microchip        Systems Information and Upgrade Hot Line
World Wide Web (WWW) site.                                 The Systems Information and Upgrade Line provides
                                                           system users a listing of the latest versions of all of
The web site is used by Microchip as a means to make       Microchip's development systems software products.
files and information easily available to customers. To    Plus, this line provides information on how customers
view the site, the user must have access to the Internet   can receive any currently available upgrade kits.The
and a web browser, such as Netscape or Microsoft           Hot Line Numbers are:
Explorer. Files are also available for FTP download        1-800-755-2345 for U.S. and most of Canada, and
from our FTP site.                                         1-602-786-7302 for the rest of the world.

Connecting to the Microchip InternetWeb Site                                                                                            980106

The Microchip web site is available by using your             Trademarks: The Microchip name, logo, PIC, PICSTART,
favorite Internet browser to attach to:                       PICMASTER and PRO MATE are registered trademarks
                                                              of Microchip Technology Incorporated in the U.S.A. and
                     www.microchip.com                        other countries. PICmicro, FlexROM, MPLAB and fuzzy-
                                                              LAB are trademarks and SQTP is a service mark of Micro-
The file transfer site is available by using an FTP ser-      chip in the U.S.A.
vice to connect to:                                           All other trademarks mentioned herein are the property of
                                                              their respective companies.
         ftp://ftp.futureone.com/pub/microchip

The web site and file transfer site provide a variety of
services. Users may download files for the latest
Development Tools, Data Sheets, Application Notes,
User's Guides, Articles and Sample Programs. A vari-
ety of Microchip specific business information is also
available, including listings of Microchip sales offices,
distributors and factory representatives. Other data
available for consideration is:

Latest Microchip Press Releases
Technical Support Section with Frequently Asked

   Questions
Design Tips
Device Errata
Job Postings
Microchip Consultant Program Member Listing
Links to other useful web sites related to

   Microchip Products
Conferences for products, Development Systems,

   technical information and more
Listing of seminars and events

1998 Microchip Technology Inc.  Preliminary              DS40192A-page 75
PIC16C505

READER RESPONSE

It is our intention to provide you with the best documentation possible to ensure successful use of your Microchip prod-
uct. If you wish to provide your comments on organization, clarity, subject matter, and ways in which our documentation
can better serve you, please FAX your comments to the Technical Publications Manager at (602) 786-7578.
Please list the following information, and use this outline to provide us with your comments about this Data Sheet.

To: Technical Publications Manager                        Total Pages Sent
RE: Reader Response

From: Name                                            FAX: (______) _________ - _________
          Company
          Address
          City / State / ZIP / Country
          Telephone: (_______) _________ - _________

Application (optional):

Would you like a reply? Y N

Device: PIC16C505            Literature Number: DS40192A

Questions:

1. What are the best features of this document?

2. How does this document meet your hardware and software development needs?

3. Do you find the organization of this data sheet easy to follow? If not, why?

4. What additions to the data sheet do you think would enhance the structure and subject?

5. What deletions from the data sheet could be made without affecting the overall usefulness?

6. Is there any incorrect or misleading information (what and where)?

7. How would you improve this document?

8. How would you improve our software, systems, and silicon products?

DS40192A-page 76                         Preliminary                              1998 Microchip Technology Inc.
                                                                                                PIC16C505

PIC16C505 Product Identification System

PART NO. -XX X /XX XXX                                                                          Examples
                                          Pattern:
                                          Package:     Special Requirements                     a)   PIC16C505-04/P
                                                                                                     Commercial Temp.,
                                          Temperature  SL = 150 mil SOIC                             PDIP Package, 4 MHz,
                                          Range:                                                     normal VDD limits
                                          Frequency    P  = 300 mil PDIP
                                          Range:                                                     PIC16C505-04I/SL
                                                       JW = 300 mil Windowed Ceramic Side Brazed b)  Industrial Temp., SOIC
                                          Device          = 0C to +70C                             package, 4 MHz, normal
                                                       -                                             VDD limits

                                                       I  = -40C to +85C                           PIC16C505-04I/P
                                                                                                     Industrial Temp.,
                                                       E  = -40C to +125C                          PDIP package, 4 MHz,
                                                                                                     normal VDD limits
                                                       04 = 4 MHz (XT, INTRC, EXTRC OSC)        c)
                                                       04 = 200 KHz (LP OSC)

                                                       20 = 20 MHz (HS OSC)

                                                       PIC16C505
                                                       PIC16LC505
                                                       PIC16C505T (Tape & reel for SOIC only)
                                                       PIC16LC505T (Tape & reel for SOIC only)

Please contact your local sales office for exact ordering procedures.

Sales and Support

  Products supported by a preliminary Data Sheet may possibly have an errata sheet describing minor operational differences and
  recommended workarounds. To determine if an errata sheet exists for a particular device, please contact one of the following:

    1. Your local Microchip sales office (see below)
    2. The Microchip Corporate Literature Center U.S. FAX: (602) 786-7277

  Please specify which device, revision of silicon and Data Sheet (include Literature #) you are using.
  For latest version information and upgrade kits for Microchip Development Tools, please call 1-800-755-2345 or 1-602-786-7302.

1998 Microchip Technology Inc.                          Preliminary                                DS40192A-page 77
PIC16C505

NOTES:

DS40192A-page 78  Preliminary   1998 Microchip Technology Inc.
                                               PIC16C505

NOTES:

1998 Microchip Technology Inc.  Preliminary  DS40192A-page 79
M

                  WORLDWIDE SALES AND SERVICE

AMERICAS                              ASIA/PACIFIC                               ASIA/PACIFIC (continued)

Corporate Office                      Hong Kong                                  Taiwan, R.O.C

Microchip Technology Inc.             Microchip Asia Pacific                     Microchip Technology Taiwan
2355 West Chandler Blvd.              RM 3801B, Tower Two                        10F-1C 207
Chandler, AZ 85224-6199               Metroplaza                                 Tung Hua North Road
Tel: 602-786-7200 Fax: 602-786-7277   223 Hing Fong Road                         Taipei, Taiwan, ROC
Technical Support: 602 786-7627       Kwai Fong, N.T., Hong Kong                 Tel: 886-2-2717-7175 Fax: 886-2-2545-0139
Web: http://www.microchip.com         Tel: 852-2-401-1200 Fax: 852-2-401-3431
                                                                                 EUROPE
Atlanta                               India
                                                                                 United Kingdom
Microchip Technology Inc.             Microchip Technology Inc.
500 Sugar Mill Road, Suite 200B       India Liaison Office                       Arizona Microchip Technology Ltd.
Atlanta, GA 30350                     No. 6, Legacy, Convent Road                505 Eskdale Road
Tel: 770-640-0034 Fax: 770-640-0307   Bangalore 560 025, India                   Winnersh Triangle
                                      Tel: 91-80-229-0061 Fax: 91-80-229-0062    Wokingham
Boston                                                                           Berkshire, England RG41 5TU
                                      Japan                                      Tel: 44-1189-21-5858 Fax: 44-1189-21-5835
Microchip Technology Inc.
5 Mount Royal Avenue                  Microchip Technology Intl. Inc.            France
Marlborough, MA 01752                 Benex S-1 6F
Tel: 508-480-9990 Fax: 508-480-8575   3-18-20, Shinyokohama                      Arizona Microchip Technology SARL
                                      Kohoku-Ku, Yokohama-shi                    Zone Industrielle de la Bonde
Chicago                               Kanagawa 222-0033 Japan                    2 Rue du Buisson aux Fraises
                                      Tel: 81-45-471- 6166 Fax: 81-45-471-6122   91300 Massy, France
Microchip Technology Inc.                                                        Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79
333 Pierce Road, Suite 180            Korea
Itasca, IL 60143                                                                 Germany
Tel: 630-285-0071 Fax: 630-285-0075   Microchip Technology Korea
                                      168-1, Youngbo Bldg. 3 Floor               Arizona Microchip Technology GmbH
Dallas                                Samsung-Dong, Kangnam-Ku                   Gustav-Heinemann-Ring 125
                                      Seoul, Korea                               D-81739 Mchen, Germany
Microchip Technology Inc.             Tel: 82-2-554-7200 Fax: 82-2-558-5934      Tel: 49-89-627-144 0 Fax: 49-89-627-144-44
14651 Dallas Parkway, Suite 816
Dallas, TX 75240-8809                 Shanghai                                   Italy
Tel: 972-991-7177 Fax: 972-991-8588
                                      Microchip Technology                       Arizona Microchip Technology SRL
Dayton                                RM 406 Shanghai Golden Bridge Bldg.        Centro Direzionale Colleoni
                                      2077 Yan'an Road West, Hong Qiao District  Palazzo Taurus 1 V. Le Colleoni 1
Microchip Technology Inc.             Shanghai, PRC 200335                       20041 Agrate Brianza
Two Prestige Place, Suite 150         Tel: 86-21-6275-5700                       Milan, Italy
Miamisburg, OH 45342                  Fax: 86 21-6275-5060                       Tel: 39-39-6899939 Fax: 39-39-6899883
Tel: 937-291-1654 Fax: 937-291-9175
                                      Singapore                                                                                       4/3/98
Los Angeles
                                      Microchip Technology Singapore Pte Ltd.
Microchip Technology Inc.             200 Middle Road
18201 Von Karman, Suite 1090          #07-02 Prime Centre
Irvine, CA 92612                      Singapore 188980
Tel: 714-263-1888 Fax: 714-263-1338   Tel: 65-334-8870 Fax: 65-334-8850

New York                                                                         Microchip received ISO 9001 Quality
                                                                                 System certification for its worldwide
Microchip Technology Inc.                                                        headquarters, design, and wafer
150 Motor Parkway, Suite 202                                                     fabrication facilities in January, 1997.
Hauppauge, NY 11788                                                              Our field-programmable PICmicroTM
Tel: 516-273-5305 Fax: 516-273-5335                                              8-bit MCUs, Serial EEPROMs,
                                                                                 related specialty memory products
San Jose                                                                         and development systems conform
                                                                                 to the stringent quality standards of
Microchip Technology Inc.                                                        the International Standard
2107 North First Street, Suite 590                                               Organization (ISO).
San Jose, CA 95131
Tel: 408-436-7950 Fax: 408-436-7955

Toronto

Microchip Technology Inc.
5925 Airport Road, Suite 200
Mississauga, Ontario L4V 1W1, Canada
Tel: 905-405-6279 Fax: 905-405-6253

All rights reserved. 1998, Microchip Technology Incorporated, USA. 4/98        Printed on recycled paper.

Information contained in this publication regarding device applications and the like is intended for suggestion only and may be superseded by updates. No representation or warranty is given and no
liability is assumed by Microchip Technology Incorporated with respect to the accuracy or use of such information, or infringement of patents or other intellectual property rights arising from such use
or otherwise. Use of Microchip's products as critical components in life support systems is not authorized except with express written approval by Microchip. No licenses are conveyed, implicitly or
otherwise, under any intellectual property rights. The Microchip logo and name are registered trademarks of Microchip Technology Inc. in the U.S.A. and other countries. All rights reserved. All other
trademarks mentioned herein are the property of their respective companies.

DS40192A-page 80                                                                  1998 Microchip Technology Inc.
This datasheet has been downloaded from:
             www.EEworld.com.cn

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

               Fast Search System
             www.EEworld.com.cn

                                                 All Datasheets Cannot Be Modified Without Permission
                                                                Copyright Each Manufacturing Company

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

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

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

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