Specifications

Chapter 2 - Microcontroller PIC16F84
more precisely 35 instructions . (ex. Intel's and Motorola's microcontrollers have over hundred
instructions) All of these instructions are executed in one cycle except for jump and branch
instructions. According to what its maker says, PIC16F84 usually reaches results of 2:1 in code
compression and 4:1 in speed in relation to other 8-bit microcontrollers in its class.
Applications
PIC16F84 perfectly fits many uses, from automotive industries and controlling home appliances to
industrial instruments, remote sensors, electrical doorlocks and safety devices. It is also ideal for
smart cards as well as for battery supplied devices because of its low consumption.
EEPROM memory makes it easier to apply microcontrollers to devices where permanent storage of
various parameters is needed (codes for transmitters, motor speed, receiver frequencies, etc.).
Low cost, low consumption, easy handling and flexibility make PIC16F84 applicable even in areas
where microcontrollers had not previously been considered (example: timer functions, interface
replacement in larger systems, coprocessor applications, etc.).
In System Programmability of this chip (along with using only two pins in data transfer) makes
possible the flexibility of a product, after assembling and testing have been completed. This
capability can be used to create assembly-line production, to store calibration data available only
after final testing, or it can be used to improve programs on finished products.
Clock / instruction cycle
Clock is microcontroller's main starter, and is obtained from an external component called an
"oscillator". If we want to compare a microcontroller with a time clock, our "clock" would then be a
ticking sound we hear from the time clock. In that case, oscillator could be compared to a spring
that is wound so time clock can run. Also, force used to wind the time clock can be compared to
an electrical supply.
Clock from the oscillator enters a microcontroller via OSC1 pin where internal circuit of a
microcontroller divides the clock into four even clocks Q1, Q2, Q3, and Q4 which do not overlap.
These four clocks make up one instruction cycle (also called machine cycle) during which one
instruction is executed.
Execution of instruction starts by calling an instruction that is next in string. Instruction is called
from program memory on every Q1 and is written in instruction register on Q4. Decoding and
execution of instruction are done between the next Q1 and Q4 cycles. On the following diagram
we can see the relationship between instruction cycle and clock of the oscillator (OSC1) as well as
that of internal clocks Q1-Q4. Program counter (PC) holds information about the address of the
next instruction.
Pipelining
http://www.mikroelektronika.co.yu/english/product/books/PICbook/2_01Poglavlje.htm (3 of 5) [4/2/2003 16:17:37]