The PIC16F886-I/SP is a 8-bit flash-based CMOS Microcontroller. It features 256bytes of EEPROM data memory, self programming, an ICD, 2 comparators, 11 channels of 10-bit Analogue-to-Digital (A/D) converter, 1 capture/compare/PWM and 1 Enhanced capture/compare/PWM functions, a synchronous serial port that can be configured as either 3-wire serial peripheral interface (SPI?) or the 2-wire inter-integrated circuit (I2C?) bus and an enhanced universal asynchronous receiver transmitter (EUSART). The Analogue-to-Digital converter (ADC) allows conversion of an analogue input signal to a 10-bit binary representation of that signal. This device uses analogue inputs, which are multiplexed into a single sample and hold circuit. The output of the sample and hold is connected to the input of the converter. The converter generates a 10-bit binary result via successive approximation and stores the conversion result into the ADC result registers (ADRESL and ADRESH).
Software selectable frequency range of 8MHz to 32kHz
Fail-safe clock monitoring for critical applications
Clock mode switching during operation for low-power operation
Power-saving sleep mode
Power-on reset (POR)
Selectable brown-out reset (BOR) voltage
Extended watchdog timer (WDT) with its own on-chip RC oscillator for reliable operation
In-circuit serial Programming? (ICSP?) via two pins
In-circuit debug (ICD) via two pins
High-endurance flash/EEPROM cell
Self-reprogrammable under software control
Programmable code protection
Capture/compare/PWM (CCP) module
Enhanced capture/compare/PWM (ECCP) module with auto-shutdown and PWM steering
Master synchronous serial port (MSSP) module SPI? mode, I2C? mode with address mask capability