This page has many links to hardware and software techniques that I have found useful in developing microcontroller circuits. I hope you find them useful as well.
Static electricity precautions
Hardware Debugging Techniques
PIC Timer overview
I/O Expansion techniques
USB RS232 Ports
Setting up RS232
12F675 :Recovering lost calibration
12F675 OSCCAL Program
Noise rejection decoupling
Voltage reference as a DAC
Using R-2R as a DAC and more
Logic level converter
Soft USART (TX) (TX details)
Soft USART (RX/TX) (RX details)
Using fixed point maths
Timers and Oscillators
Crystal ppm calculations
TCL code for ppm calculations
Interactive Timer 0 calculator
Interactive Timer 1 calculator
Interactive Timer 2 calculator
Using an oscilloscope
Electronic schematic symbols
Listen to Digital Signals
ICSP In Circuit Serial Programming circuit and notes.
ICSP programming - How you set up the ICSP hardware and PC software.
RS232- What it is and how it works.
Transmission line terminators - How to improve signal quality using one.
This method applies equally well for long cables or PCB traces. e.g. Parallel port or Serial port cables.
Static electricity precautions - Static precautions and advice.
Methods to increase your Input or output pins from/to your microcontroller. Minimum requirement is 1 pin.
PIC Programmers Explanation of the various types of PIC programmers
PIC device comparison Comparing some pic microcontroller features using bubble diagrams.They also give a quick overview of the Program memory, RAM, EEPROM and peripherals.
Pinouts of some common devices used on this site
RS232 pinout diagrams at the PC connector.
Using PIC I/O : TRIS, PORT: General notes applicable to any PIC device.
Crystal ppm calculations: Notes on accuracies of crystal and other oscillators.
Interactive Timer 0 calculator showing frequency, period of Timer 0 output.
Interactive Timer 1 calculator showing frequency, period of Timer 1 output.
Interactive Timer 2 calculator as above using
pre-,post- scaler & period reg.
Switch debouncing Debouncing input keys on a Microcontroller port.
Does RS232 work? Five simple rules to ensure your RS232 system works.
12F675 - How to set the OSCCAL value stored in the 12F675.
12F675 - How to recover OSCCAL.
Bits bytes and hexadecimal conversions
All about bits, bytes and hexadecimal numbers and conversions.
Soft USART (TX)The transmission part of a USART (~90 words).
Soft USART (RX/TX) Detailsthe reception part of a USART (~? words).
Fixed point maths How to avoid using floating point maths to save memory and operate faster.
Click here for PIC microcontroller projects
Reading schematics A simple introduction to reading schematics.
Multitasking A guide to simple multitasking - fits into 12F675 (1k).
Schematic symbols A list of schematic symbols and components
Prototyping Discusses solderless breadboard, stripboard and pcb methods.
Using an oscilloscope Beginners guide to using an oscilloscope.
PWM what it is and what it's for.
Jump from Tips and
Best-microcontroller-projects home page
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.
How to use Arduino millis() for deylays but still make the processor do work - Stop using delay()
This MCP23017 Interrupt tutorial shows you how to connect interrupt outputs from several MCP23017s to a single microcontroller interrupt pin.
Arduino Delay() is a useful function but not for large programs - Find Out Why Here...