This is the circuit used for the first modules in the course and is developed from the initial introductory page as the course progresses.
Note: It's designed so you can program it in circuit using ICSP without removing the programmer and its designed so you can go back to any course module without changing the hardware again.
c programming course 1st part 16F88
Item Part Description Qty IDs
1 10u electrolytic capacitor 2 C1 C3
2 100n Capacitor 3 C2 C4 C5
3 1u electrolytic capacitor 4 C6 C7 C8 C9
4 DB9F-90 Dtype connector 9 way RS232 on PC COM port 1 CN1
5 2.1mm jack Power Connector socket showing NC connection 1 CN2
6 1N4001 diode 1 D1
7 RED Light emitting diode 6 D2 D3 D4 D5 D6 D7
8 1N4148 diode 1 D9
9 1x4 Header 4 way 1 HD1
10 Push button push button normally open 2 PB1 PB2
11 100 resistor 1 R10
12 10k resistor 2 R1 R2
13 1k resistor 7 R3 R4 R5 R6 R7 R8 R9
14 16F88 Microcontroller 1 U1
15 MAX232CP RS232 level translator 1 U2
16 LM7805C 5V 1A voltage regulator 1 U3
You'll also need a serial cable and 9-way serial connector, a digital Serial USB interface (cheap) and wall power supply 8V or more (less than 20V - the higher the voltage the hotter the 7805 will get - best to get close to 7V).
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...