PIC16F877A-I/P Microchip Technology, PIC16F877A-I/P Datasheet - Page 178

IC MCU FLASH 8KX14 EE 40DIP

PIC16F877A-I/P

Manufacturer Part Number
PIC16F877A-I/P
Description
IC MCU FLASH 8KX14 EE 40DIP
Manufacturer
Microchip Technology
Series
PIC® 16Fr

Specifications of PIC16F877A-I/P

Program Memory Type
FLASH
Program Memory Size
14KB (8K x 14)
Package / Case
40-DIP (0.600", 15.24mm)
Core Processor
PIC
Core Size
8-Bit
Speed
20MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
33
Eeprom Size
256 x 8
Ram Size
368 x 8
Voltage - Supply (vcc/vdd)
4 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
External
Operating Temperature
-40°C ~ 85°C
Processor Series
PIC16F
Core
PIC
Data Bus Width
8 bit
Data Ram Size
368 B
Interface Type
CCP/I2C/MSSP/SPI/USART
Maximum Clock Frequency
20 MHz
Number Of Programmable I/os
33
Number Of Timers
3
Operating Supply Voltage
2 V to 5.5 V
Maximum Operating Temperature
+ 85 C
Mounting Style
Through Hole
3rd Party Development Tools
52715-96, 52716-328, 52717-734
Development Tools By Supplier
PG164130, DV164035, DV244005, DV164005, PG164120, ICE2000, DM163022, DV164120
Minimum Operating Temperature
- 40 C
On-chip Adc
8-ch x 10-bit
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
444-1001 - DEMO BOARD FOR PICMICRO MCU
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
PIC16F877AI/P

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC16F877A-I/P
Manufacturer:
OMRON
Quantity:
100
Part Number:
PIC16F877A-I/P
Manufacturer:
MIC
Quantity:
5 380
Part Number:
PIC16F877A-I/P
Manufacturer:
MIC
Quantity:
5 380
Part Number:
PIC16F877A-I/P
Manufacturer:
INTERSIL
Quantity:
25
Part Number:
PIC16F877A-I/P
Manufacturer:
MICROCHIP
Quantity:
20 000
Part Number:
PIC16F877A-I/P
0
Company:
Part Number:
PIC16F877A-I/P
Quantity:
5 000
Part Number:
PIC16F877A-I/PT
Manufacturer:
MICROCHIP
Quantity:
9 100
Part Number:
PIC16F877A-I/PT
Manufacturer:
AVAGO
Quantity:
84
Part Number:
PIC16F877A-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC16F877A-I/PT
Quantity:
1 639
Part Number:
PIC16F877A-I/PT
0
Company:
Part Number:
PIC16F877A-I/PT
Quantity:
3 000
PICmicro MID-RANGE MCU FAMILY
11.7
DS31011A-page 11-10
Design Tips
Question 1:
Answer 1:
If you are polling TMR0 to see if it has rolled over to zero. You could do this by executing:
wait
Two possible scenarios to lose clock cycles are:
1.
2.
If you are incrementing TMR0 from the internal instruction clock, or an external source that
is about as fast, the overflow could occur during the two cycle GOTO, so you could miss it.
In this case the TMR0 source should be prescaled.
Or you could do a test to see if it has rolled over by checking for less than a nominal value:
When writing to TMR0, two instruction clock cycles are lost. Often you have a specific time
period you want to count, say 100 decimal. In that case you might put 156 into TMR0
(256 - 100 = 156). However, since two instruction cycles are lost when you write to TMR0
(for internal logic synchronization), you should actually write 158 to the timer.
Wait
MOVF
BTFSS
GOTO
movlw
subwf
btfsc
goto
I am implementing a counter/clock, but the clock loses time or is
inaccurate.
TMR0,W
STATUS,Z
wait
3
TMR0,W
STATUS,C
Wait
; read the timer into W
; see if it was zero, if so,
;
; if not zero yet, keep waiting
break from loop
1997 Microchip Technology Inc.

Related parts for PIC16F877A-I/P