The PIC16F870-I/SO is a 8-bit CMOS Flash-based Microcontroller. The PIC16F870 features 64 bytes of EEPROM data memory, self programming, an ICD, 5 channels of 10-bit Analogue-to-digital (A/D) converter, 2 additional timers, a capture/compare/PWM functions and a Universal Asynchronous Receiver Transmitter (USART). The PIC16F870 devices have a 13-bit program counter capable of addressing an 8K x 14 program memory space. The PIC16F870 devices have 2K x 14 words of flash program memory. Accessing a location above the physically implemented address will cause a wraparound.
High performance RISC CPU
All single-cycle instructions except for program branches which are two cycles
Interrupt capability (up to 11 sources)
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
Programmable code protection
Power saving sleep mode
Low power, high speed CMOS flash/EEPROM technology