Silicon ChipA Windows-Based EPROM Programmer; Pt.2 - December 2002 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: CRT video monitors have had their day
  4. Feature: Receiving TV From Intenational Satellite by Garry Cratt
  5. Project: The Micromitter Stereo FM Transmitter by John Clarke
  6. Project: A Windows-Based EPROM Programmer; Pt.2 by Jim Rowe
  7. Project: Build The Decision Maker by Trent Jackson and Ross Tester
  8. Weblink
  9. Feature: Using Linux To Share An Optus Capble Modem; Pt.2 by John Bagster
  10. Review: GW Instek GRS-6032 Digital Storage Scope by Leo Simpson
  11. Project: SuperCharger For NiCd & NiMH Batteries; Pt.2 by Peter Smith
  12. Vintage Radio: Intermediate Frequency (IF) Amplifiers; Pt.1 by Rodney Champness
  13. Book Store
  14. Project: Simple VHF FM/AM Radio by Andrew Woodfield
  15. Notes & Errata
  16. Market Centre
  17. Advertising Index
  18. Outer Back Cover

This is only a preview of the December 2002 issue of Silicon Chip.

You can view 25 of the 96 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Articles in this series:
  • Receiving TV From Intenational Satellite (December 2002)
  • Receiving TV From Intenational Satellite (December 2002)
  • Receiving TV From International Satellites; Pt.2 (January 2003)
  • Receiving TV From International Satellites; Pt.2 (January 2003)
Items relevant to "The Micromitter Stereo FM Transmitter":
  • Micromitter FM Stereo Transmitter PCB [06112021] (AUD $10.00)
  • MicroMitter PCB pattern (PDF download) [06112021] (Free)
  • Panel artwork for the MicroMitter (PDF download) (Free)
Items relevant to "A Windows-Based EPROM Programmer; Pt.2":
  • Upgraded Software for the EPROM Programmer (Free)
  • Windows-Based EPROM Programmer PCB patterns (PDF download) [07112021-5] (Free)
  • Panel artwork for the Windows-Based EPROM Programmer (PDF download) (Free)
Articles in this series:
  • A Windows-Based EPROM Programmer (November 2002)
  • A Windows-Based EPROM Programmer (November 2002)
  • A Windows-Based EPROM Programmer; Pt.2 (December 2002)
  • A Windows-Based EPROM Programmer; Pt.2 (December 2002)
  • A Windows-Based EPROM Programmer; Pt.3 (February 2003)
  • A Windows-Based EPROM Programmer; Pt.3 (February 2003)
  • Upgraded Software For The EPROM Programmer (June 2004)
  • Upgraded Software For The EPROM Programmer (June 2004)
Items relevant to "Build The Decision Maker":
  • Decision Maker PCB pattern (PDF download) [08112021] (Free)
  • Panel artwork for the Decision Maker (PDF download) (Free)
Articles in this series:
  • Using Linux To Share An Optus Cable Modem; Pt.1 (November 2002)
  • Using Linux To Share An Optus Cable Modem; Pt.1 (November 2002)
  • Using Linux To Share An Optus Capble Modem; Pt.2 (December 2002)
  • Using Linux To Share An Optus Capble Modem; Pt.2 (December 2002)
  • Using Linux To Share An Optus Cable Modem: Pt.3 (January 2003)
  • Using Linux To Share An Optus Cable Modem: Pt.3 (January 2003)
  • Using Linux To Share An Optus Cable Modem; Pt.4 (February 2003)
  • Using Linux To Share An Optus Cable Modem; Pt.4 (February 2003)
Items relevant to "SuperCharger For NiCd & NiMH Batteries; Pt.2":
  • AT90S2313 firmware and source code for the SuperCharger battery charger (Software, Free)
  • SuperCharger PCB patterns (PDF download) [14111021-4] (Free)
  • Panel artwork for the SuperCharger (PDF download) (Free)
Articles in this series:
  • SuperCharger For NiCd & NiMH Batteries; Pt.1 (November 2002)
  • SuperCharger For NiCd & NiMH Batteries; Pt.1 (November 2002)
  • SuperCharger For NiCd & NiMH Batteries; Pt.2 (December 2002)
  • SuperCharger For NiCd & NiMH Batteries; Pt.2 (December 2002)
  • SuperCharger Addendum (March 2003)
  • SuperCharger Addendum (March 2003)
Articles in this series:
  • Intermediate Frequency (IF) Amplifiers; Pt.1 (December 2002)
  • Intermediate Frequency (IF) Amplifiers; Pt.1 (December 2002)
  • Intermediate Frequency (IF) Amplifiers; Pt.2 (January 2003)
  • Intermediate Frequency (IF) Amplifiers; Pt.2 (January 2003)
Items relevant to "Simple VHF FM/AM Radio":
  • Simple VHF FM/AM Radio PCB pattern (PDF download) [06212021] (Free)

Purchase a printed copy of this issue for $10.00.

FEATURE PROJECT: EPROM PROGRAMMER; PT.2 Pt.2: By JIM ROWE A Windows-Based EPROM Programmer This month, we explain how to assemble the programmer and the socket adaptors which allow it to read and program devic­es in either 24-pin DIL or 32-pin PLCC packages. We also explain how to check the programmer’s basic hardware operation. 32  Silicon Chip www.siliconchip.com.au A S MENTIONED in the first article, the new programmer’s hardware is built entirely on a double-sided PC board. This board is coded 07112021 and is designed to be “free standing” rather than mounted in a box. Both the DB25 socket for the parallel cable (CON1) and the socket for the plugpack cable (CON2) are mounted directly on the rear edge of the board. The 32-pin ZIF socket which accepts the EPROMs (or adaptor sockets) is mounted centrally near the front. To make it freestanding, the board is fitted with six small rubber feet for support. Four of the feet attach to the corners of the board, while the remaining two are fitted just to the front and rear of the ZIF socket. We decided on this method of construction so that the pro­grammer would be easy to put together. However, with a “naked” PC board, there’s obviously no protection for the components against physical damage. Ideally, a full-size Perspex front panel could be mounted above the PC board to provide this protection. However, this wasn’t really feasible here because there would have to be a large rectangular cutout to allow full access to the ZIF socket and its operating lever. And even with such a cutout, it would still be quite awkward to insert and remove EPROMs (and their socket adaptors) because the panel would have to be mounted quite high to clear the electrolytic capacitors and relays. Because of this complication, we decided to compromise by using a half-panel”, as shown in the photo. This provides protec­tion for just over half the board and allows for full identifica­tion of the six mode indicator LEDs. It also provides a guide for fitting 32-pin and 28-pin EPROMs without restricting access to the ZIF socket. This Perspex “half-panel” mounts above the PC board on four M3 tapped spacers (12.5mm long). These also form the “nuts” for the M3 machine screws which are used to attach four of the board’s rubber mounting feet. The 12.5mm spacing ensures that the panels just nicely clears the LEDs, the quartz crystal case and the DB25 socket. Fig.6 shows the dimensions of the Perspex front panel. The large rectanwww.siliconchip.com.au Fig.6: this diagram shows the dimensions of the Perspex front panel. Fig.7: this is the full-size front panel artwork. A window (marked with a cross) is cut out to view the status LEDs. December 2002  33 Fig.8: here’s how to install the parts on the main PC board. Note that if you don’t have a board with plated-through holes, then you will have to solder some parts on both sides of the board and install short links through the “vias”. These positions are all indicated by the red dots (see text). gular section that’s removed from the lefthand side ensures that it clears the ZIF socket. Main board assembly Because the main PC board is double-sided, there are no conventional wire links to be fitted. Ideally, it should come with plated-through holes but if not, you will have to solder some of the component leads (and pins) on both sides of the board. In addition, you will have to fit short wire links through the “via” holes in various locations on the board and solder them on both sides. To simplify the assembly, we’ve marked all of the critical component leads and “via” positions with a red dot on the parts layout diagram – see Fig.8. If your board doesn’t have plated-through holes, it’s simply a matter of soldering each component lead on both sides of the PC board where ever there’s a red dot. 34  Silicon Chip Alternatively, if there’s no component lead, the red dot indicates a “via” position and you have to fit a wire link (or pin) through the board. Of course, if your board has plated-through holes, you don’t have to worry about this – the through-board connections are already there. Before starting the assembly, check both sides of the PC board carefully for hairline bridges between tracks or pads. There are lots of tracks running between IC pads on both sides, so check these “close-clearance” locations in particular. Once you’ve done that, you can start by fitting the wire “vias” (assuming that you’re not using a plated-through board). This involves fitting a wire “pin-through” (or “via”) in every position that’s marked with a red dot and is separate from any components. There are 110 of these wire “vias’ by the way – sorry about that! Once the “vias” are in, fit PC termi- nal pins to the board at the three clock frequency test points. These go down in the front righthand corner of the board, between IC11 and IC12. The resistors and diodes can go in next. Be sure to fit the diodes with the correct polarity and note that 10 of them are 1N4004 power diodes. The remaining three diodes (D1, D12 & D13) are 1N4148 (or similar) types. Note that some of the resistor leads have to be soldered on both sides of the board (ie, if the board doesn’t have plated-through holes). Table 1 shows the resistor colour codes but its also a good idea to check each one using a digital multimeter before installing it. Once all the resistors are in, you can install the capaci­tors. Install the smaller capacitors first and finish with the five larger electrolytic types in the top lefthand corner of the board. Make sure that the electrolytics go in the right way around (otherwise, they can go “kaabooom”). The two miniature relays are next and these will only mount on the board one way around. However, you may need to straighten their pins a little www.siliconchip.com.au Table 1: Resistor Colour Codes o No. o   1 o   1 o   1 o   1 o   1 o   1 o 19 o   1 o   1 o   2 o   1 o   1 o   1 o   7 o   2 o   3 o 22 o   1 Value 1MΩ 330kΩ 220kΩ 150kΩ 120kΩ 11kΩ 10kΩ 5.6kΩ 4.7kΩ 3.9kΩ 2.2kΩ 1.2kΩ 820Ω 470Ω 240Ω 220Ω 100Ω 10Ω before they’ll all go through the board holes. The relays are identical, so they can go in either posi­tion. Now for the semiconductor devices. The best procedure here is to fit the regulators first, then the ICs and finally the transistors and LEDs. The regulators all mount horizontally, with their leads bent downwards by 90 degrees about 6mm away from the regulator packages. Their mounting tabs are each secured to the board using a 6mm x M3 machine screw and nut. There’s no need to apply any heatsink compound to the underside of each device, although a thin smear will help keep them cool. Note that the pins of all three regulators should be sol­dered to the pads on both sides of the board if there’s no through-hole plating. You can now install all the ICs. Be sure to fit the correct IC to each location and make sure they are all oriented correct­ly. They all face in the same direction, with pin 1 at bottom left. Fit the PNP transistors first There are 15 transistors in all - 12 PN100 NPN types and three PN200 PNP types. To make sure that you don’t mix them up (which would cause the programmer to misbehave in strange ways), it’s best to fit the three PN200s first. These go in the posi­tions shown for Q5, Q9 and Q14, in the front-left quadrant of the board. Orientate the transistors as shown and push them down as far as they www.siliconchip.com.au 4-Band Code (1%) brown black green brown orange orange yellow brown red red yellow brown brown green yellow brown brown red yellow brown brown brown orange brown brown black orange brown green blue red brown yellow violet red brown orange white red brown red red red brown brown red red brown grey red brown brown yellow violet brown brown red yellow brown brown red red brown brown brown black brown brown brown black black brown will comfortably go before soldering their leads. Once they are in, you can fit the PN100s in the remaining positions. The six red LEDs are fitted in two rows of three immediate­ly to the right of IC15. Note that they all have their anode leads towards the “inside” of the group - ie, the two rows face in opposite directions. They should all be installed so that their bodies are 8mm above the board surface, so that their tops will be just below the perspex front panel when it’s later fit­ted. Note the wire “via” just to the right of the LEDs. This connects all the LED anodes to the +5V supply rail. Be sure to fit this via if your board doesn’t have plated-through holes, otherwise none of your mode indicator LEDs will work! The remaining green LED (LED7) is used for power indication and is mounted just to the left of IC10. It should also sit 8mm above the board, its anode lead towards IC19. The 4.0MHz quartz crystal and ZIF socket can go in next. Push the crystal all the way down onto the board and Table 2: Capacitor Codes o o o o o Value IEC Code EIA Code 0.1μF  100n   104 1nF    1n   102 100pF  100p   101 33pF   33p    33 5-Band Code (1%) brown black black yellow brown orange orange black orange brown red red black orange brown brown green black orange brown brown red black orange brown brown brown black red brown brown black black red brown green blue black brown brown yellow violet black brown brown orange white black brown brown red red black brown brown brown red black brown brown grey red black black brown yellow violet black black brown red yellow black black brown red red black black brown brown black black black brown brown black black gold brown solder its leads quickly, so that you don’t overheat the crystal inside. The ZIF socket must be installed with its operating lever on the left. Make sure that all the pins of the ZIF socket pass through the PC board before soldering it into place. Finally, you can complete the board assembly by installing the DB25 connector (CON1) and the power socket (CON2). Note that the holes for CON2’s lugs really need to be small slots. If necessary, they can be filed to shape using a jeweller’s rat-tail file, so that the socket fits easily. Quick inspection At this stage it’s a good idea to carefully inspect all of your soldered joints on both sides of the board. Check to ensure that you haven’t made any dry joints or left solder bridges to cause problems later on. Once you are satisfied that everything is OK, you can fit the six rubber to the board. As mentioned earlier these mount on the underside of the board using 6mm x M3 machine screws. The two mounting screws on the lefthand side of the board are then fitted with normal M3 hex nuts on the top, while the remaining four take the 12.5mm tapped spacers used to support the Perspex front panel. Front panel If you buy a complete kit, chances are the Perspex front panel will come pre-cut with screen-printed lettering. December 2002  35 This is the fully-assembled EPROM programmer board, prior to installing the Perspex front panel. Make sure that each part is in its correct location before soldering its leads, as parts can be difficult to remove from double-sided boards. However, we’ll assume here that you’re making the panel yourself. The front panel is made from 3mm thick Perspex sheet and all the dimensions are shown in Fig.6. Note that the four mount­ing holes (A) are countersunk, to take the 6mm x M3 countersink-head screws which attach the panel to its support spacers. When the panel has been cut to shape, drilled and has its edges nicely smoothed (a sharp perspex edge can cut you almost as readily as glass), try sitting it on the support spacers. The panel should just clear the tops of the LEDs and the quartz crystal case. If it doesn’t clear the LEDs, desolder their leads and move them down. If your crystal’s case is just a whisker taller than 12.5mm, even with it mounted down hard against the board, don’t despair. The solution to this involves nothing more than placing a small flat washer on the top of each support spacer before you fit the front panel. This increases the board-topanel spacing by almost a millimetre, which should be more than enough to clear the crystal case. 36  Silicon Chip Don’t attach the front panel at this stage – that step comes later, after the check-out procedure. Checkout time You are now ready to power up the programmer and quickly check it for correct hardware operation - at least in terms of the basics. To do this, you’ll need to fit the correct 2.5mm plug to the 12V 1A plugpack lead, so that it can mate with connec­tor CON2. Before actually applying power, set your DMM (or multimet­er) to measure DC voltage and connect its negative lead to the earthy side of the board. The top of the mounting screw for REG1 is a convenient point to make this connection. Now apply power and check first that the green power LED is glowing. If it is, use the DMM to check the voltages at the cathode ends of D2, D5 & D4. These should measure about +17.5V, +18V and +35V respectively. If the LED isn’t glowing, or if any voltage is not even near its correct value, switch off immediately and look for wiring mistakes. The most likely cause of any trouble is fitting one or more diodes, transistors or ICs the wrong way around Note that at this stage, there may also be a number of the red LEDs glowing. That’s because the programmer isn’t connected to either a PC printer port or an EPROM. Don’t worry about this - it’s to be expected. If all is well so far, try measuring the voltages at the output pins of REG1, REG2 and REG3. The output of REG1 should be within a few millivolts of 5.00V, because this is the supply line for most of the programmer’s ICs and LEDs. However, the outputs of REG2 and REG3 can be at various levels, depending on the state of their control circuits in this “no PC connected” state. For example, the output of REG2 may be at any of three dif­ferent voltage levels: 3.7V, 5.7V or 6.95V, depending on the control signals applied to transistors Q1 and Q2. So if you measure any of these three voltages or very close to them, REG2 and its switching circuitry are probably working correctly. www.siliconchip.com.au Fig.9: here are the parts layout diagrams for the three adap­tor boards, together with their full-size PC patterns. All three use wire-wrap sockets with long tails to form 32-pin “plugs” that fit into the programmer’s main ZIF socket. Similarly, the output of REG3 can be at either of two vol­tage levels, depending on the control signal applied to transis­tor Q3: 21.2V or 12.95V. So if you measure either of these vol­ tages or very close to them, REG3 and its switching circuitry are probably working correctly too. If everything is OK so far, check the voltage at pin 14 of the 14-pin ICs, pin 16 of the 16-pin ICs and pin 20 of the 20-pin ICs. These should all measure +5V. The last quick check you can perform at this stage is to use an oscilloscope or a frequency counter to check the clock signals at the three test points in the front righthand corner of the board. As indicated on the overlay diagram (Fig.6), you should be able to measure 4MHz, 2MHz and 1MHz signals respective­ly on the three terminal pins. If you are using an oscilloscope, it should also show these signals to be square-waves with an amplitude of close to 5V peak-to-peak. If so, your crystal clock oscillator and timing divider are working correctly and your programmer is ready for final testing The three optional adapter boards shown here allow older types of EPROMs to be programmed. www.siliconchip.com.au December 2002  37 Optional Reading Test Jig configuration and mode decoding circuitry, if you wish. It can also be used to check out printers but you’ll have to wait until next month for more information on this device. The socket adaptors Fig.10: this is the circuit for the reading test jig. It’s basically a dummy EPROM with an address set by the 8-way DIP switch. Fig.10: the parts layout and full-size board pattern for the reading test jig. Building it is entirely optional (see text). This is the completed reading test jig. It will come in handy if you need to service the programmer at a later stage. with the software. We’ll discuss this in Pt.3 next month. There are some more hardware tests you can carry out before connecting the programmer to a PC but these re38  Silicon Chip quire a “dummy printer port” test jig like the one we plan to describe next month in a separate small article. This simple little gizmo will allow you to check the programmer’s pulse timing, The small socket adaptors are designed to allow the pro­grammer to also handle EPROMs in 24-pin DIL and 32-pin PLCC packages, as well as the 28-pin and 32-pin DIL devices which plug directly into the main ZIF socket. There are three of these adaptors - one for 24-pin DIL devices and the other two for PLCCs. So why do we need two dif­ferent adaptors for PLCCs? The reason is that although all devic­ es with capacities up to 2Mb are in 32-pin packages, the 1Mb and 2Mb devices have different connections compared to the 64-512Kb devices. Another adaptor is required for the 24-pin DIL devices for almost the same reason. Although they’re physically compatible with a 32-pin socket, these devices have more connection differ­ ences than the programmer’s configuration circuits can handle. The adaptor overcomes this problem. Fig.9 shows the parts layout diagrams for the three adap­tors. There’s very little in them and all three use wire-wrap sockets with long tails to form 32-pin “plugs” that fit into the programmer’s main ZIF socket. The 24-pin adaptor then has a 24-pin ZIF socket of its own to take that size of EPROMs, while the two PLCC adaptors have standard 32-pin PLCC sockets instead. Note that we’ve used standard 32pin PLCC sockets because ZIF sockets for PLCCs are very expensive - about $150 each! Fortunately, it’s quite easy to insert PLCC devices into the standard sockets by hand and then remove them again with low-cost extractor tools (like the DSE T-4655). Apart from the wire-wrap “plugs” and their interconnected sockets, the only other items on each adaptor board are a single wire link and a 100nF multilayer monolithic bypass capacitor, on the EPROM Vcc line. So they’re each easy to put together. Reading test jig During the programmer development, we also made up a little plug-in www.siliconchip.com.au Parts List 1 PC board (double-sided), code 07112021, 178 x 127mm 1 4.00MHz quartz crystal (X1) 1 12V 1A AC plugpack supply 1 DB25F socket, 90-degree PCmount 1 DC connector, 2.5mm PCmount 2 12V SPDT miniature relays, PC mount 1 32-pin zero insertion force (ZIF) IC socket 6 12.5mm-diameter rubber feet 9 M3 x 6mm machine screws, round head 5 M3 nuts 4 M3 tapped spacers, 12.5mm long 4 M3 x 6mm machine screws, CSK head 1 Perspex sheet, 95 x 127mm (3mm thick) Semiconductors 1 74HC245 octal buffer (IC1) 1 74HC157 4 x 2 multiplexer (IC2) 1 74HC138 3-to-8 decoder (IC3) 3 74HC00 quad NAND gate (IC4, IC16, IC19) 4 74HC04 hex inverter (IC5, IC12, IC15, IC17) 4 74HC373 octal latch (IC6, IC7, IC8, IC9) 2 74HC74 dual flipflop (IC10, IC11) 2 74HC161 4-bit PL counter (IC13, IC14) jig to test the unit’s read mode operation. However, although this device is handy, you shouldn’t really need one unless it’s for servicing the programmer at a later stage. For that reason, we’re providing the circuit and board overlay dia­gram for those readers who want to build one up. Fig.10 shows the circuit details, while Fig.11 shows the parts layout on the PC board. Basically, it’s a very simple “dummy EPROM” with only one address (or every address). It simply provides a pullup resistor for each data pin of the 32-pin EPROM socket, plus a set of eight DIP switches so that you can manually set each pin to either a “1” or a “0”. This allows you to set up a data byte which can be read back by the computer software by sending the www.siliconchip.com.au 1 74HC02 quad NOR gate (IC18) 12 PN100 NPN transistors (Q1, Q2, Q3, Q4, Q6, Q7, Q8, Q10, Q11, Q12, Q13, Q15) 3 PN200 PNP transistors (Q5, Q9, Q14) 3 1N4148 switching diodes (D1, D12, D13) 10 1N4004 1A power diodes (D2D11) 6 3mm red LEDs (LED1-LED6) 1 3mm green LED (LED7) 1 7805 positive 5V regulator (REG1) 2 LM317 adjustable regulator (REG2, REG3) Capacitors 3 2200μF 25VW PC electrolytic 1 470μF 63VW PC electrolytic 1 100μF 16VW PC electrolytic 1 2.2μF 35V tag tantalum 24 0.1μF multilayer monolithic 5 1nF metallised polyester 2 100pF NPO ceramic 2 33pF NPO ceramic Resistors (0.25W 1%) 1 1MΩ 2 3.9kΩ 1 330kΩ 1 2.2kΩ 1 220kΩ 1 1.2kΩ 1 150kΩ 1 820Ω 1 120kΩ 7 470Ω 1 11kΩ 2 240Ω 19 10kΩ 3 220Ω 1 5.6kΩ 22 100Ω 1 4.7kΩ 1 10Ω appropriate instruc­tions. Note, however, that because the jig “jams” its data on the programmer’s internal data bus lines, it can’t be left plugged in while you’re trying to download configuration bytes, timing register bytes or write data bytes. It’s purely to provide a data byte for testing the read functions. Whether or not you build one of these little jigs is up to you. It won’t cost you much but on the other hand, you don’t really need one unless your programmer develops a fault. Windows software That’s all for the present. Next time, we plan to give you details of the Windows software that’s been developed SC to run the programmer. Silicon Chip Binders REAL VALUE AT $12.95 PLUS P &P These binders will protect your copies of SILICON CHIP. They feature heavy-board covers & are made from a dis­ tinctive 2-tone green vinyl. They hold up to 14 issues & will look great on your bookshelf. H 80mm internal width H SILICON CHIP logo printed in gold-coloured lettering on spine & cover H Buy five and get them postage free! Price: $A12.95 plus $A5.50 p&p. Available only in Australia. Silicon Chip Publications PO Box 139 Collaroy Beach 2097 Or fax (02) 9979 6503; or ring (02) 9979 5644 & quote your credit card number. Use this handy form Enclosed is my cheque/money order for $________ or please debit my  Bankcard  Visa    Mastercard Card No: _________________________________ Card Expiry Date ____/____ Signature ________________________ Name ____________________________ Address__________________________ __________________ P/code_______ December 2002  39