Sie sind auf Seite 1von 6

UNIT-VI

1. Write the features of PIC16F8XX flash microcontrollers?

High-performance RISC CPU


All single cycle instructions except for program branches which are 2 cycle
Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle
Up to 8K x 14 words of Flash Program Memory,
Up to 256 x 8 bytes of EEPROM data memory
Interrupt capability -up to 14 internal/external
Eight level deep hardware stack
Direct, indirect, and relative addressing modes
Power-on Reset (POR)
Power-up Timer (PWRT) and Oscillator Start-up Timer (OST)
Watchdog Timer (WDT) with its own on-chip RC Oscillator for reliable
operation
Power saving SLEEP mode
Low-power, high-speed CMOS EPROM/EEPROM technology
Fully static design
In-Circuit Serial Programming (ICSP) via two pins
Only single 5V source needed for programming capability
In-Circuit Debugging via two pins
Processor read/write access to program memory
Wide operating voltage range: 2.5V to 5.5V
High Sink/Source Current: 25 mA

PIC16C6X Peripheral Features:


Timer0: 8-bit timer/counter with 8-bit prescaler
Timer1: 16-bit timer/counter with prescaler, can be incremented during
sleep via external crystal/clock
Timer2: 8-bit timer/counter with 8-bit period register, prescaler and
postscaler
Capture/Compare/PWM (CCP) module(s)
Capture is 16-bit, max resolution is 12.5 ns, Compare is 16-bit, max
resolution is 200 ns, PWM max resolution is 10-bit.
Synchronous Serial Port (SSP) with SPI and I2C
Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI)
Parallel Slave Port (PSP) 8-bits wide, with external RD, WR and CS
controls
Brown-out detection circuitry for Brown-out Reset (BOR)

2. Draw the internal architecture of PIC 16C61 controller and explain its
operation?

The PIC16CXX uses a Harvard architecture, in which, program and data are accessed
from separate memories using separate buses. This improves bandwidth over traditional von
Neumann architecture where program and data may be fetched from the same memory using the
same bus. Separating program and data busses further allows instructions to be sized differently
than 8-bit wide data words. Instruction opcodes are 14-bits wide making it possible to have all
single word instructions. A 14-bit wide program memory access bus fetches a 14-bit instruction
in a single cycle. A two stage pipeline overlaps fetch and execution of instructions.
Consequently, all instructions execute in a single cycle (200 ns @ 20 MHz) except for program
branches.
The PIC16C61 addresses 1K x 14 of program memory. The PIC16C62 address 2K x 14 of
program memory. All program memory is internal. The PIC16CXX can directly or indirectly
address its register files or data memory. All special function registers including the program
counter are mapped in the data memory. The PIC16CXX has an orthogonal instruction set that
makes it possible to carry out any operation on any register using any addressing mode.

The PIC16CXX device contains an 8-bit ALU and working register (W). The ALU is a general
purpose arithmetic unit. It performs arithmetic and Boolean functions between data in the
working register and any register file. The ALU is 8-bits wide and capable of addition,
subtraction, shift, and logical operations. Unless otherwise mentioned, arithmetic operations are
two's complement in nature. In two-operand instructions, typically one operand is the working
register (W register), the other operand is a file register or an immediate constant. In single
operand instructions, the operand is either the W register or a file register. The W register is an 8bit working register used for ALU operations. It is not an addressable register. Depending upon
the instruction executed, the ALU may affect the values of the Carry (C), Digit Carry (DC), and
Zero (Z) bits in the STATUS register. Bits C and DC operate as a borrow and digit borrow out
bit, respectively, in subtraction.

Draw the pin diagram of PIC 16C61 controller and explain the function of each pin in detail?

Explain the function of each bit of STATUS register in PIC 16F8XX?

The STATUS register, shown in Figure 4-9, contains


the arithmetic status of the ALU, the RESET status and
the bank select bits for data memory.
The STATUS register can be the destination for any
instruction, as with any other register. If the STATUS
register is the destination for an instruction that affects
the Z, DC or C bits, then the write to these three bits is
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.
For example, CLRFSTATUSwill clear the upper-three

bits and set the Z bit. This leaves the STATUS register
as 000uu1uu(where u= unchanged).
It is recommended, therefore, that only BCF,BSF,
SWAPFand MOVWFinstructions are used to alter the
STATUS register because these instructions do not
affect the Z, C or DC bits from the STATUS register. For
other instructions, not affecting any status bits, see the
Instruction Set Summary.

Das könnte Ihnen auch gefallen