The original YAP programmer came about as I was working through the first edition of the book, trying to come up with a PICmicro® MCU programmer that would work on a wide variety of different PCs. When I started the project, I found that it wasn't hard to create a programmer that would work on one PC, using its own internal timing, but any time I tried the design out on another PC I found that it wouldn't work. The El-Cheapo design and PCB that is provided in this book is a continuation of this work, with a much more effective design.
The YAP-II is designed to connect to a PC or workstation via its RS-232 port and program devices at 1200 bps ("8-N-1"). This data rate allows applications to be programmed into a PIC16F84 in about two minutes, which is no where near as fast as some of the designs available on the internet; but I can guarantee that it will work on every PC out there with an RS-232 port.
Click Here to access the source code on the CD-ROM.
The YAP-II connects to a PC/Workstation RS-232 Port using a "Straight Through" cable with a 9 pin male "D-Shell" connector for the YAP-II. A 15+ Volt AC/DC ("Wall Wart") Power Supply with a 2.5 mm "Power Plug" is required for powering the programmer. For Microsoft "Windows" PCs, I have created a GUI interface that can be loaded into the PC by clicking Here.
When I designed the application, I wanted it to include the necessary peripherals (ie LEDs and buttons) that the Experiments presented in this book could be run on it. This has resulted in a fairly large PCB that incorporates the programmer hardware, the peripherals and a small breadboard that can be used to test out the application. The programmer circuit is shown in the yap-ii.pdf file. The peripheral functions can be found in the yap-iiac.pdf file.
The bill of materials for the YAP-II is listed in the table below.
Part | Description |
---|---|
U1 | PIC16C711-20/P Programmed with YAP-II Software |
U2 | 18 Pin Socket/ZIF Socket |
U4 | 78L12 +12 Volt Regulator in a TO-92 Package |
U5 | Maxim MAX232 RS-232 Interface |
U6 | 7805 +5 Volt Regulator in a TO-92 Package |
U7 | ECS Programmable Oscillator OECS-160-3-C3X1A (Digi-Key Part Number XC307-ND) |
CR1 - CR3 | 1N914 Silicon Diode |
CR4 | 1N4001 Silicon Diode |
LED1 - LED2 | 5mm LED, Any Type |
LED3 | 10 LED "Bargraph" Display |
Q1, Q6 | 2N3906 PNP Bipolar Transistors |
Q2 | 2N3904 NPN Bipolar Transistor |
Q5 | 2106A P-Channel MOSFET (Digi-Key Part Number: ZVP2106A-ND) |
R1, R3, R7 | 10K, 1/4 Watt Resistors |
R2, R6 | 220 Ohm, 1/4 Watt Resistors |
R5, R10, R13 | 330 Ohm, 1/4 Watt Resistors |
R8, R9, R15 - R17 | 1K, 1/4 Watt Resistors |
POT1 - POT2 | 10K, Single Turn PCB Mount Potentiometer (Digi-Key Part Number: 3310Y-1-103-ND |
SIP1 - SIP2 | 220 Ohm, x9 Common Pin SIP |
C1 - C2 | 0.1 uF Capacitors (Any Type) |
C3 - C4, C7 - C9 | 1.0 uF Capacitors (Any Type) |
C5, C6 | 10 uF, 35 Volt, Electrolytic Capacitors |
CSPKR | 0.47 uF, 16 Volt, Tantalum Capacitor |
SPKR | Piezo Speaker (Digi-Key Part Number: P9922-ND) |
SW1 | SPDT PCB Mount Switch |
RST, BUT1, BUT2 | Momentary On, PCB Mount Push Buttons |
J1 | 2.5 mm PCB Mount Power Socket |
J2 | 9-Pin Female PCB Mount D-Shell |
J3, J5 | 19x1 Female IDC Connector |
J4 | 5x1 Female IDC Connector |
Miscellaneous | PCB Board, Serial Cable, Power Supply |
The commands for the YAP-II are listed in the table below:
Command | Action |
---|---|
A | "Ping" - Return Carriage Return/Line Feed |
B | Reset the Program Counter to 0 |
C | Clear the Flash based PICmicro MCU's Program Memory |
D | Dump 256 Instructions of Program Memory at the current Program Counter's Address. Add 256 to the Program Counter when done. |
E | EPROM Part Programming - "Text Send" the Application's Hex File |
F | Flash Part Programming - "Text Send" the Application's Hex File |
G | Get Eight Instructions Starting at Address 0x02000 |
1, 2, 4, 8 | Run the PICMicro MCU at the Specified Speed in MHz |
The nineteen pin connector wired to the PICmicro MCU is defined as:
Pin | Function |
---|---|
1 | Gnd |
2 | Vcc |
3 | _MCLR - No High Programming Voltage |
4 | YAP-II Oscillator |
5 | Serial Input |
6 | Serial Output |
7 - 11 | RA0 to RA4 |
12 - 19 | RB0 to RB7. Note: RB6 and RB7 cannot be loaded during programming operation |
The nineteen pin connector wired to the peripheral (accessory) devices is defined as:
Pin | Function |
---|---|
1 - 10 | LED1 - LED10 |
11 | BUT1 |
12 | BUT2 |
13 | POT1 |
14 | POT2 Wiper |
15 | POT2 Connection 1 |
16 | POT2 Connection 2 |
17 | Speaker |
18 - 19 | Pull Up 1 - Pull Up 2 |
No comments:
Post a Comment