It's a good replacement device for the 16F84 as it has a lot of usable built in peripherals the main difference from the 16F88 is that it does not have an ADC.
The 16F84 has 1 peripheral (Timer 0) whereas the 628 has three timers, a
USART, a CCP (for Pulse Width Modulation, capture and compare), and an
analogue comparator. One other useful feature is that you can switch
it from internal 4MHz to
slow speed internal37kHz on the fly
so you can used it in power sensitive applications.
The two most important features are that there is 2k of program memory and 224 Bytes of RAM. This last one is nearly four times as much as the 16F84 and for high level language use this makes it much easier to use as it is the resource the you run out of most quickly.
Jump to the 628 bubble diagram.
Difference between the 627 and 628
The only difference is the available program memory (Flash programming area).
Jump to bubble diagram device list.
For a summary of each peripheral block click here.
Note: To compare bubble diagrams open each device page in a separate window (a tabbed browser is useful for this) and hit the 'Jump to device' link above then alternately select each view to see the differences between the devices.
The 16F628 pic microcontroller is quite a capable little device having enough memory for useful applications and the only features it lacks are an ADC and I2C capability.
Note: You can get round the lack of I2C by bit-banging programming i.e. controlling a programmable pin without requiring an internal hardware module (see this project for source code) and you could use an external ADC. A better choice may be the 16F88 that has a built in 10 bit ADC if you need an ADC..
The A version of the chip has some enhanced features - the most interesitng
is support for external 32,76kHz crystal (watch crystal) for accurate time
keeping, it also incorporates ultra low power operation mode
(Microchiptm calls it nanoWatttm technology).
Jump from 16f628 resources to
Best Microcontroller Projects Home Page.
How to make a Pulse Rate Sensor using a simple single opamp circuit with an Arduino and a few other components.
74HC595 : How to add nearly unlimited outputs to any microcontoller.
How to use the MAX6675 and an Arduino to measure temperatures from 0°C to 1024°C with two components: A chip - the MAX6675, and a Sensor: - a type-K thermocouple.