The PIC 16F627 is a fairly good replacement device for the 16F84 as it has a
lot of usable built in peripherals but it has the same amount of program memory
as the 16F84 i.e. 1k. So if you are running out of memory space then I suggest
you use a 16F628 as it has twice the program
Note : You may be ok as the RAM is larger so the C compiler will have more room to manoeuver so try it out on the compiler first and simulate your program.
The 16F84 has 1 peripheral (Timer 0) whereas the PIC16F627 has:
(i.e. the same peripherals as the 16F628)
Another feature is that you can switch it from internal 4MHz to slow speed internal 37kHz on the fly so you can used it in power sensitive applications.
Its best feature is
This 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 bubble diagram device list.
For a peripheral block summary click here.
The 16F627 is only really missing an ADC and I2C capability but to use it effectively you are really going to have trouble with its limited program memory - the 16F628 or 16F88 are better choices.
Note : You may be ok as the RAM is larger so the C compiler will have more room to manoeuver so do try it out on the compiler first and simulate your program.
You could program I2C by soft coding in C (see this project) and you could use an external ADC but you will probably run out of program memory space.
Jump from PIC 16F627 resources to
Best Microcontroller Projects Home Page.
How to Easily Use the DS18B20 Maxim One-Wire thermometer with Arduino example code showing external or parasitic power modes.
How to use the TCS230 (/TCS3200) Color detector chip and easily add it to any of your projects.
How to use Arduino millis() for delays but still make the processor do work - Stop using delay()
The Essential Guide to the 74HC595; What it is and how you can easily use one in any of your projects.
Which pic programmer do you need? This page discusses PIC programmers and gives some essential information on choosing or building your own programmer.
learn how to use Arduino pulseIn and pulseInLong to get the most accurate pulse measurement on an Arduino.