PIC Gang Programmers PGM12G/16G/40G/47G Advanced Transdata Corporation 14330 Midway Road, Suite 128 Dallas, Texas 75244 Tel 972.980.2960/2667 Fax 972.980.2937 Email: [email protected] Internet: www.adv-transdata.com Warranty Registration Upon receiving the system, complete the enclosed Product Registration Card, fax or mail it back to Advanced Transdata promptly. Sending in the Registration card ensures you receive new product updates ad any information that may become available. 30-Day Money Back Guarantee If, within 30-days of having received your system, you find that it does not suit your needs, you may return it for a refund. Please call for a return authorization number (RMA#) and Advanced Transdata will refund the purchase price of the system, excluding shipping and handling costs, upon receipt of the return. This does not apply if the system has been altered or damaged. Returning a product without proper RMA# or procedure will be subject to a 25% restocking fee. Technical Support Advanced Transdata offers unlimited free technical assistance to registered customers. Be sure to send in the registration card for this service and to receive information on updates and new products. You can contact us via: Telephone (972) 980-2960 or (972) 980-2667 Fax (972) 980-2937 Email [email protected] Internet www.adv-transdata.com Disclaimer of Liability Advanced Transdata is not liable for special, incidental or consequential damages resulting from any breach of warranry, or under any legal theory, including lost profits, downtime, goodwill, damage to or replacement of equipment or property, and any costs of recovering, reprogramming, or reproducing any data stored in or used with Advanced Transdata’s products. Software Updates New Software can be obtained free on our web site (www.adv-transdata.com). Table Of Contents About the Users Guide . . . . . . . . . . . . . . . . . . . . . 1 Chapter 1. Introduction . . . . . . Features . . . . . . . . . . . . . . . . System Requirements (for PC-Hosted Mode) Package Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 2. The Programmer Hardware The programming Cycle . . . . . . . . . LED Indicators . . . . . . . . . . . . . PASS/ERROR LED . . . . . . . . . CKSUM LED . . . . . . . . . . . . PROTECT LED . . . . . . . . . . . Device LEDs . . . . . . . . . . . . MASTER LED . . . . . . . . . . . . UUP LEDs . . . . . . . . . . . . . Program Button . . . . . . . . . . . . Master Socket . . . . . . . . . . . . . UUP (Unit Under Program) Sockets . . . Code Protection . . . . . . . . . . . . Verification Voltage Jumper . . . . . . . Checksum Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 . . . 3 . . . 3 . . . 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 5 5 6 6 6 7 7 7 8 8 9 9 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 10 10 10 10 10 11 12 12 . . . . . . . . . . . . . . . . . . . . . 13 . . . 13 . . . 13 . . . 13 . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 3. Code Duplication in Stand-alone Mode Connecting the Programmer . . . . . . . . . . . . . Selecting Device Type . . . . . . . . . . . . . . . . Placing Devices in the Sockets . . . . . . . . . . . . MASTER Device . . . . . . . . . . . . . . . . . UUP Devices . . . . . . . . . . . . . . . . . . Procedure for Stand-Alone Programming . . . . . . . Programming Results . . . . . . . . . . . . . . . . Programming Precautions . . . . . . . . . . . . . . Chapter 4. On-line Operation . . . Hardware Installation . . . . . . . . . Quick Start to Program the Master Device On-Line Programming . . . . . . . 1999 Advanced Transdata Coproration. All rights reserved. Printed March, 1999 . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 5. Software Installation and Environment . Software Installation . . . . . . . . . . . . . . . . . Backing Up the Diskette . . . . . . . . . . . . . . For Windows NT Users . . . . . . . . . . . . . . Installing the Software . . . . . . . . . . . . . . . Location of Installed Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 15 15 15 15 15 The PGM16 Desktop and Environment Menu Bar . . . . . . . . . . . . . Tool Bar . . . . . . . . . . . . . . Program Memory Window . . . . . Device Configuration Window . . . . Context Menu . . . . . . . . . . . Set Font . . . . . . . . . . . . . Set Color . . . . . . . . . . . . Hide Heading . . . . . . . . . . Enable Tooltips . . . . . . . . . Clear Memory . . . . . . . . . . Fill Memory . . . . . . . . . . . To . . . . . . . . . . . . . . . Find . . . . . . . . . . . . . . Find Next . . . . . . . . . . . . The PGM16 Environment . . . . . . Quick Start to Program a Device . . . Programming Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 17 17 18 18 18 19 19 19 19 19 19 19 19 19 20 20 20 Chapter 5. Using the PGM16 Software . File Menu . . . . . . . . . . . . . . . . . Open File . . . . . . . . . . . . . . . . Save File . . . . . . . . . . . . . . . . Save Device Configuration . . . . . . . . Edit Menu . . . . . . . . . . . . . . . . . Clear Program Memory . . . . . . . . . Clear EEPROM Memory . . . . . . . . . Clear Calibration Memory . . . . . . . . View Menu . . . . . . . . . . . . . . . . Device Configuration . . . . . . . . . . . Function Buttons . . . . . . . . . . . Function Status . . . . . . . . . . . . Device Specification . . . . . . . . . . Configuration Fuse, Checksum and ID . Options . . . . . . . . . . . . . . . Device Status . . . . . . . . . . . . . Program Memory . . . . . . . . . . . . EEPROM Memory . . . . . . . . . . . . Calibration Memory . . . . . . . . . . . Verify Error . . . . . . . . . . . . . . . Toolbar . . . . . . . . . . . . . . . . . Status Bar . . . . . . . . . . . . . . . . Program Menu . . . . . . . . . . . . . . . Blank Check . . . . . . . . . . . . . . . Read Device . . . . . . . . . . . . . . . Verify Device . . . . . . . . . . . . . . Program Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 21 21 22 23 23 23 23 23 23 24 24 25 25 25 26 27 27 28 28 29 29 30 30 30 31 31 31 Config Menu . . . . LPT Configuration Delay Constant . Tools Menu . . . . Windows Menu . . Help Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Appendix A. Supported Devices and Device LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 32 33 33 34 34 . . . . . 35 Appendix B. LED Summary . . . . . . . . . . . . . . 39 Appendix C. Surface Mount Device Placement . . . . . . . 40 Appendix D. In-System Programming . . . . . . . . . . 41 Appendix E. Trouble Shooting . . . . . . . . . . . . . 42 About the Users Guide This Users Guide describes the features and use of the different PIC Gang Programmers. Its organization is as follows: Chapter 1: Introduction - Provides a summary on the PIC Gang Programmers, including features, system requirements and contents of the package. Chapter 2: The Programmer Hardware - Describes the components on the gang programmers including LEDs, program button, jumper settings, etc. It also gives a short description on how to connect the unit to a computer host and program a device. Chapter 3: Code Duplication in Stand-alone Mode Describes how to use the gang programmers to duplicate devices using a master chip. Chapter 4: On-line Operation Describes how to use the programmers with a PC host to program a master chip for duplication. Chapter 4: Software Installation and Environment Describes how to install the PGM16 software and introduce the software environment and its basic elements. Chapter 5: Using the PGM16 Software - Describes the different functions of the PGM16 software for on-line operations with the PIC gang programmers. Appendix A: Supported Devices and Device LEDs Appendix B. LED Summary Appendix C. Surface Mount Device Placement Appendix D: In-System Programming Appendix E: Trouble Shooting. PIC Gang Programmers User's Guide 1 Features Chapter 1. Introduction Advanced Transdata offers several PIC gang programmers for Microchip’s PIC16/17 families. This Users Guide describes the use of the models for the PIC16 family. Each model supports different PIC members as listed below: Model Name Supported Devices Other Package Type PGM12G 12C508(A)/509(A),12CE518/519 12C(E)671/672/673/674 PGM12G-SO (200 mil body width) PGM12G-505 12C508(A)/509(A),12CE518/519 16C505 PGM12G-SN (150 mil body width) PGM16G 16C52/54/55/56/57/58 PGM16G-SO PGM16G-SS20 PGM16G-SS28 PGM40G PGM40G-SO 16C62/63/64/65/66/67/72/73/74 PGM40G-PL /75/76/77 all revisions PGM40G-PQ PGM47G 16C554/556/558/61/620/621/ 622/E623/E624/E625/71/710/711 /715/84 and 16F83/84 PGM47G-SO PGM47G-SS These programmers are stand-alone, gang-of-8 models designed specifically for high volume programming in a production environment. • • • • • • • • • Simple, easy, one-key operation Copy program data and fuse settings from master chip Code protection on programmed devices Verify checksum each time prior to programming to ensure integrity of the master device High throughput Each program cycle includes blank check, program and verify Stand-alone as well as PC-hosted operation modes Load disk file in Intel Hex and binary formats Parallel interface during PC-hosted operation System Requirements (for PC-Hosted Mode) • • • • IBM PC-386/486/Pentium or compatible Standard parallel port Microsoft or compatible mouse Windows 95/98/NT operating system Package Checklist • • • • • 8-gang Programmer Windows 95/98/NT software (DOS software available on web site) Parallel Adapter Cable 15VDC/300mA DC Power Adapter This User’s Guide When connected to a PC, they are single socket programmers and can be used to prepare the master device for duplication to aid engineers in their development work. The accompanied PGM16 software provides all programming functions. Device duplication will only take place in the stand-alone mode. The units have different LEDs to show device type, programming and code protection status and general programming results. Programming result for each slave device is indicated by a UUP (Unit Under Program) LED. These programmers are operated with just one single button and does not require any technical skills from your production staff. These PIC programmers complies with Microchips programming algorithms and specifications to ensure its quality as a production programmer. After programming, each duplicated device will be verified twice, at 4.5V and 5.5V respectively. A jumper setting allows users to pick an alternate verification voltage at 3V and 5.5V. 2 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 3 Chapter 2. The Programmer Hardware Below are two PIC gang programmers, one with 40-pin sockets (PGM40G) and the other with 18-pin sockets (e.g. PGM12G, PGM12G-505, PGM47G). All PIC gang programmers are designed and operated in a similar fashion. This chapter describes the different component you will find on the system. The followings are common components found on the PIC gang programmers: • LED indicators • One dual-in-line master socket • Eight Unit Under Program (UUP) sockets • Program Button • Code protection and checksum verification setting jumpers UUP LED UUP Socket Master Socket PGM40G The programming Cycle After you have placed a master chip and blank devices in the programmer sockets, you can press the program button to start programming. The complete programming cycle is illustrated in the following flow chart: PGM47G, PGM12G PGM12G-505 Start Indicated by UUP LEDs lit up one after the other during scanning for non-blank devices Are all UUP chips blank? (Open sockets are considered blank) No Lit the ERROR LED and UUP LEDs for the non-blank devices - No programming take place Yes Indicated by the UUP LEDs being steadily lit End Program code and ID Any Program Error? Indicated by UUP LEDs lit up one after the other twice during the two verifications at 5.5V and 3 or 4.5V Yes Flag the UUP devices with program error No Verify Devices at 2 voltages Any Error in Verification? Yes Lit the ERROR LED and UUP LEDs for devices with program and verify errors No 4 LED Indicators The exact number of LEDs vary among programmer models. They are basically used to indicate the followings: • • • • • • Programming Results : PASS or ERROR Code protection setting : PROTECT Checksum verification setting : CKSUM Device Selection Master socket LED UUP (Unit Under Program) LEDs PASS/ERROR LED The general programming result is indicated by the LEDs marked PASS and ERROR. This can be indicated by separate green and red LEDs or by a bi-color green/red LED. PASS Program Fuse If all 8 devices are programmed and verified correctly, the green PASS LED will be lit. Program button to power adapter to parallel port End PIC Gang Programmers User's Guide The green PASS LED will only be lit when all the slave UUP sockets are fully loaded and all 8 devices are programmed and verified correctly. In such a case, none of the UUP LEDs will be lit. PIC Gang Programmers User's Guide 5 ERROR The red ERROR LED will lit whenever there is programming/verification errors. In such a case, the UUP LED will also be lit for devices which fail programming/ verification. Note that unlatched sockets and sockets with no chips will also be highlighted as having program error. On some models, the ERROR LED will be lit when non-blank devices are detected by the programmer. In such a case, no programming will take place and the non-blank chips are highlighted by the corresponding UUP LEDs. CKSUM LED This LED is ON when checksum verification is enabled (JP2 or JP4 is jumpered). When enabled, the programmer will compute checksum for the master chip and compare it against the checksum value pre-stored in the customer ID field. This ensures no defective codes will be duplicated. To use checksum verification, it is necessary to program the checksum of the code to the customer ID field when creating the master chip. The CKSUM LED will blink when there is a mismatch in the checksums and no programming will take place. The mismatch can be due to 1) defective master chip, 2) master device being code protected or 3) the device LED does not match the master chip. PROTECT LED This LED will be lit when code protection is enabled (JP1 or JP3 is jumpered). In such a case, the contents of the programmed devices will be scrambled. Device LEDs When power is supplied to the programmer, the unit will undergo a power-up self-test with all the LEDs turned ON and the MASTER LED blinks several times. After self test, the device LEDs will blink, prompting the user to select device type to be duplicated. Press the programmer button (labeled PROGRAM/RESET on some models) at this time to select device type as indicated by markings on the cover. When the corresponding device LED is blinking, wait a few seconds. When the device LED is steady and the PROTECT and CKSUM LED come on (if enabled), the programmer is ready to use. When using the gang programmer with a computer, device selection is controlled by the software. The device LED may or may not correspond to the device selected. 6 PIC Gang Programmers User's Guide NOTE The PROTECT and CKSUM LEDs will be on if the respective jumpers, JP1/JP3 and JP2/JP4, are enabled, indicating code protection and checksum verification are enabled. Please refer to Appendix A for the latest device supported on each programmer. MASTER LED This LED will be ON whenever the master socket is active. For example, during programming in the on-line mode or when calculating the checksum of the master device. UUP LEDs Before Programming : When the UUP LEDs blink or lit, it indicates: 1) the corresponding UUP devices are not blank, or 2) the oscillator type of the device does not match that of the master After Programming : The UUP LED will be ON or blink when there is programming/verify error for the corresponding devices or the UUP sockets is not latched or empty. The ERROR LED should also be blinking. Please refer to Appendix A for the summary for the different LEDs for different PIC gang programmer models. Program Button The push button on the gang programmer is used for: • • Programming After placing the master device in the marked socket and blank devices in the UUP sockets, press the push button to start programming. Resetting unit after programming Programming is complete or programming has stopped when any one of the PASS, ERROR, CKSUM, PROTECT or UUP LED is flashing. Press the programmer button at this time to clear the LEDs and programmer is ready to program again. NOTE If you get a Programmer time-out message during on-line operation, check: 1) the connection on the parallel adapter cable, 2) if any of the LEDs on the programmer is blinking. If so, press the PROGRAM/RESET button once to reset the programmer. Try program again and the message should go away. PIC Gang Programmers User's Guide 7 Master Socket In the stand-alone copy mode, the DIP ZIF socket marked MASTER carries the master device from which copies are made. When the programmer is connected to a PC during on-line operation, the MASTER socket is the only active socket and the unit works like a single unit programmer. It is IMPORTANT that you place the device properly as illustrated below. Else, the mis-oriented device will cut the power to the programmer and reset the unit when the handle of the socket is unlatched. If all UUP devices are blank (empty sockets and non-latched sockets are also considered blank), programming will proceed and these UUP LEDs will be lit when there is an error, indicating: • a program or verify error, • there is no device in the corresponding socket, or • the handle of the socket is not down. If you program 8 devices at one time successfully with no error in the process, none of the UUP socket LEDs will be lit and the green PASS LED will be lit. Note that the master socket comes in DIP package. Please contact Advanced Transdata if you need a surface mount version. Code Protection PGM12G/-505 PGM47G PGM16G PGM40G When code protection is enabled, the entire program memory of the duplicated devices will be scrambled to prevent unauthorized viewing . Code protection is enabled when JP1 or JP3, is jumpered. With such setting, the PROTECT LED will be on. For PGM12G, PGM12G-505 and PGM47G, the code protect jumper (JP3) is located inside the programmer and accessed by removing the top cover on the DB25 side. The code protect jumper (JP1) for PGM16G is located near the program button inside the programmer. For PGM40G, the jumper (JP1) is located near the LED for the master socket. Verification Voltage Jumper UUP (Unit Under Program) Sockets The eight sockets next to the MASTER socket are called UUP sockets. They carry the devices to be programmed during the stand-alone copy mode. Make sure to place the device properly as illustrated above. For placement of surface mount devices, please refer to Appendix C. IMPORTANT Improperly placed device may cut the power to the programmer and reset the unit when the socket handle is released. Each UUP socket has a corresponding LED to indicate programming result. When these UUP LEDs blink or lit right after the program button is pushed, they indicate one of the followings and no programming will take place. • the corresponding devices are not blank • the oscillator type of the device does not match that of the master device The gang programmers have two jumpers marked +3.0V and +4.5V. They indicate the voltages at which verification will take place. The default setting is at +4.5V and the programmer will verify the duplicated chips twice, once at 4.5V and and the second time at 5.5V. If the +3.0V is jumpered, verification takes place at 3V and 5.5V. Checksum Verification When Checksum verification is enabled, the programmer uses the checksum to ensure no defective codes from the master device will be duplicated. Prior to programming, the programmer calculates the checksum of the contents of the master device and checks it against a previously stored checksum value. Any discrepancy will cause the CKSUM LED to blink and no programming will take place. Checksum verification is enabled when JP2 or JP4, is jumpered. To enable the programmer to reflect a new setting, unplug and re-connect the power plug from the unit for a power-up reset. IMPORTANT To implement checksum verification, make sure to program the checksum value in the Customer ID field of the master chip. 8 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 9 Chapter 3. Code Duplication in Stand-alone Mode This chapter describes how to use the PIC Gang programmers to duplicate devices from a master chip. Chip copying can only take place in the stand-alone mode. During operation with a PC, only the master socket is active. • • Secure the device with one hand when latching down the handle of the ZIF sockets. When programming less than 8 devices, you can place the device(s) in any of the UUP sockets. However, it is recommended to start with socket 1, 2, 3 and so on. This will help minimize the chance of placing devices across sockets. Procedure for Stand-Alone Programming Connecting the Programmer In the stand-alone mode, only power is required to drive the unit. To do so, plug the 15VDC power adapter into a wall socket and connect the other end to the power plug of the unit. Upon power on, the programmer undergoes a self test; then the device LEDs will blink, prompting the user to select the device to be duplicated. 1. Before power is supplied to the programmer, check the selection of the jumpers JP1 (or JP3) and JP2 (or JP4). The default setting is that both JP1 and JP2 are close, enabling code protection and checksum verification. If you need to change the existing settings, remove the jumper shunt and replace it such that only one of the two jumper pins are covered. Selecting Device Type NOTE Disable JP2 (checksum verify) if you have not programmed the checksum to the Customer ID field. When the device LEDs blinks, press the programmer button until the desired device LED blinks. Wait for several seconds, the device LED will be lit (as well as the PROTECT and CKSUM LEDs), the programmer is now ready to use. Refer also to Appendix A for the latest devices supported by each programmer. NOTE The PROTECT and CKSUM LEDs will be on if JP1 (or JP3) and JP2 (or JP4) are jumpered, enabling code protection and checksum verification. Placing Devices in the Sockets Keep in mind the followings when placing devices in the sockets: MASTER Device • • • Make sure the MASTER device is not code protected. Else, the CKSUM or PROTECT LED will flash and no programming is possible. Make sure you have programmed checksum to the customer ID field if checksum verification is enabled (JP2 or JP4 is jumpered) Make sure the device is placed properly and securely latched in the socket. 2. Plug the power adapter into a power outlet and the other end to the power plug of the programmer. There should be a series of self test after which only the device LEDs are flashing. 3. Press the PROGRAM/RESET button until the desired device LED is blinking. Wait a few seconds and when the device LED, PROTECT (if enabled) and CKSUM (if enabled) LEDs are lit, the unit is ready to program. 4. Securely place the master device in the ZIF socket marked MASTER and latch the handle. Make sure it is oriented properly by aligning pin 1 of the device with the handle of the socket. 5. Place a blank device in any socket and press the program button. Programming is complete when the ERROR LED comes on. If the UUP LED for the slave chip is off, the device has been programmed successfully. Test if the programmed device run properly in the target application. 6. If the programmed device works in the application, you can program a full load with the programmer. Again, make sure the devices are properly oriented. Press the programmer button to start programming. 7. If all devices are programmed successfully, the green PASS LED will lit or blink and all the UUP LEDs will be off.. UUP Devices • • 10 Make sure the devices are placed properly by noting the position of pin 1. For surface mount device, make sure to place the devices in the socket as shown in Appendix C. For DIP devices, make sure the devices are not placed across sockets. Such devices will be considered blank and will not be programmed during the programming cycle. PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 11 Programming Results Chapter 4. On-line Operation Programming is complete when any of the LEDs is flashing or lit: PASS / all UUP LEDs off All 8 devices are programmed and verified successfully. ERROR / some UUP LEDs on Devices whose LED is off have been programmed and verified successfully. The ones with lit UUP LEDs indicate empty sockets or program error. NOTE No programming will take place if one of the followings happens: 1. The master device is code protected the CKSUM or PROTECT LED will blink. 2. Calculated checksum of master device does not match its stored value the CKSUM LED will flash. 3. Some UUP devices are not blank the UUP LED for the non-blank devices will flash. 4. The oscillator type of UUP devices(s) does(do) not match that of the master device the UUP LED for will flash. Programming Precautions It is recommended to take the following precautions prior to each programming session. 1. Check the integrity of the MASTER device by reading its contents and configuration fuse with the PGM16 software to make sure it contains the correct data. 2. Duplicate one chip using the MASTER device in the stand-alone mode and make sure the programmed device run correctly in the target circuit. 3. If code protection is enabled, check if the codes in the programmed device is scrambled. 12 PIC Gang Programmers User's Guide In the PC-hosted mode, the gang programmers behave like single unit programmers. ALL programming functions, including device selection, are controlled via the PGM16 software. It can be used to program the master device or to aid engineers in development work. Only the MASTER socket and LED are active in the PC-hosted mode. Hardware Installation 1. Plug the DC power adapter into a wall socket. 2. Connect the other end of the 15VDC power adapter to the power jack. The programmer undergoes a self test and when done, the device LEDs will blink. Press the push button once to temporarily select a device type. The PROTECT and CKSUM will also be on if enabled. IMPORTANT: During on-line operation, all settings related to the device, including device selection, are controlled via the software. 3. Plug the parallel extension cable to the parallel port at the back of the computer and connect the other end with the 25-pin connector on the programmer. 4. The programmer is now ready for on-line operation. Quick Start to Program the Master Device This section gives experienced engineer a quick start on how to use the programmer and PGM16 software to prepare a Master Device for duplication. If you are new to the PGM16 software, please refer to the next two chapters which give a more detailed description on the PGM16 software environment and its different functions. On-Line Programming 1. Connect the programmer properly as described in the previous section. Make sure you have selected a device (and no LED is blinking) before running the software. 2. Install PGM16 software on your PC and execute the software. 3. Select the device type in the Device Configuration window. Make sure you select only the supported devices for the programmer. You will get a program error if you try to program parts not supported by the model. 4. Use the File > Open File command to load the object file. Select the file format and then the filename from the pop-up list box. 5. Select the appropriate fuse settings in the Device Configuration window and make sure to 1) set Code Protect to Off and 2) check the option to Use Checksum as Customer ID. PIC Gang Programmers User's Guide 13 IMPORTANT Putting code protection on erasable chips will make them OTP devices and cannot be reused. 6. Place a erasable blank device in the MASTER ZIF socket, latch the handle and click the Program button 7. Programming is done when the Device Status displays Pass for Program Memory, Device Fuse and Device ID. Chapter 5. Software Installation and Environment This chapter describes how to install the PGM16 software and introduces the PGM16 user interface and describes how to control windows and choose commands from menus. Software Installation NOTE You will get a warning, error or time-out message if you run the PGM16 software: 1) before the power-up self test and device selection is complete, or 2) when the programmer is on the stand-alone programming mode and has not been reset after programming. This is indicated by any blinking LEDs. Backing Up the Diskette The disk provided is not copy protected and a backup copy can be made using the DISKCOPY command. Prepare a blank disk (either formatted or unformatted), place the disks one at a time in drive A and type the following at the DOS prompt. C:\DISKCOPY A: A: C:\DISKCOPY A: B: [Enter] on single floppy system [Enter] on dual floppy system Follow the instructions on screen and copy all files from the two disks (source) to the blank disk (target). Place the original disks in a safe place and proceed with the installation procedure. For Windows NT Users When installing under WinNT, you must login as Administrator or make sure you have write access privileges to the SYSTEM directory and REGISTRY, as well as user right to Load and unload device drivers. If installed properly, the file PARICE.SYS should reside in the \winnt\system32\drivers\ directory. In addition, Parice under the Control Panel > Devices should have Started for Status and Automatic for Startup. If the hardware is still not running, highlight Parice under the Control Panel > Devices, click the Stop and then the Start button to manually start the driver. Installing the Software 1. Insert the Program Disk 1 into drive A. 2. At the Windows Shell, go to the Start menu and select Run... 3. At the Open dialog box, enter A:\SETUP. 4. Follow the instructions on the screen and use the default directory suggested to install the program. Location of Installed Files The install program copies the PGM16 files to the following directories: C:\PGM16\PROGRAM\ - PGM16, PGM16.HLP - VATCOM.VXD (for Win95) - RELEASE.TXT C:\PGM16\SAMPLES\ - LK54.OBJ/.HEX, LK71.OBJ/.HEX C:\PGM16\SHARED\ - MFC42.DLL, MSVCRT.DLL 14 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 15 - PARICE.SYS, VATCOM.VXD C:\WINDOWS\SYSTEM\ or - MFC42.DLL, MSVCRT.DLL C:\WIN95\SYSTEM\ C:\WINNT\SYSTEM32\DRIVERS - PARICE.SYS (for Win NT) In Windows 95, it is not necessary to restart the computer to run the programmer after installation. But if you are running under Windows NT, make sure to reboot the system to activate the newly installed driver Menu Bar All functions are accessible through the menu bar located across the top of the desktop. The menus that pull down from the menu bar allow you to access file operations and programmer functions. Underlined characters on the pull down menus, when used with the [Alt] key, are key accelerators which enable the named functions. The PGM16 Desktop and Environment The PGM16 desktop is he window that opens up when you run the PGM16 software under the Program Group. The desktop offers standard Windows features including window size buttons, task bar button and close button. Tool Bar The toolbar is divided into three separate functional groups: The default PGM16 desktop consists of a menu bar, a tool bar, Program Memory window, Device Configuration window and the Status Bar at the bottom of the desktop. File Menu Open File Save File Save Configuration Program Menu Blank Check Read Verify Program View Menu Device Configuration Program Memory EEPROM Memory Calibration Memory Verify Error The menu bar and each of the tool bars are independent and can be placed anywhere on the desktop. To move, point to the double bars, drag and drop the toolbar to any desired location. You can also customize the tool bar under the View > Toolbar menu. 16 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 17 Program Memory Window The Program Memory Window displays the codes of an opened object file. PGM16 supports 16-bit binary file, 8-bit, 16-bit or 32-bit Intel hex files output from popular PIC assemblers and compilers. There are some display and editing options available to each memory window via the Context Menu, activated by clicking the right mouse button while placing the mouse in the relevant windows. More discussion will be given in the later section. Device Configuration Window The Device Configuration Window is the main window of the PGM16 software. It is open automatically when the program starts. If closed, it can be reopened using the View > Device Configuration command or by clicking the corresponding tool button in the toolbar. This main functional window in the software and comprises of the following sections: • Function Buttons • Status Bar • Device Specifications • Configuration Fuse, Checksum and ID • Options • Device Status Detailed description of each of the above items will be given in the next chapter. Context Menu When the cursor is positioned inside one of the memory windows, clicking the right mouse button will open a context menu consisting of the following items: Set Font Select the font including style and size and click OK to exit. The font in the selected window will be updated. Set Color You can change the color of the following elements in the memory windows. Text These are the basic texts, codes, inside the respective memory window. Text Background This is the background color for the window. Selected Text These are texts selected by the users by clicking the left mouse button. Selected Text Background This is the color of the reversed bar for the selected text. To change color, highlight the item to be modified and select a color from the drop list. Change as many items are desired. When done, click Apply and the changes will be updated in the current memory window. Hide Heading Hide/Un-hide the column heading for the active memory window. Enable Tooltips Enable/Disable tooltip which displays cell address and content. Clear Memory Clear the current window to all ones. Fill Memory Fill an address range with a specified data string. To Go to a specified address in the current window. Type the new address in the Edit field, for example, 0x10F4, and press [Enter]. Find Find a data string in the active window. Type in a value in the opened dialog box and press [Enter]. The search string is case insensitive and need to be entered in hex like 0x0FFF. Find Next Continue to find the specified string in the current window. 18 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 19 The PGM16 Environment Chapter 5. Using the PGM16 Software The settings and layout of the PGM16 program will be saved automatically to the Windows Registry upon program exit. The information saved includes program layout, processor, directory path, file formats, LPT port address, etc. To access the registry: 1. Go to the Windows Start Menu and select Run. 2. Type REGEDIT at the open prompt (REGEDT32 for Windows NT). 3. Open the HKEY_CURRENT_USER folder. 4. Open the Software folder. 5. Open the Advanced Transdata and then PGM16 Programmer folders. 6. You can open the folder for the different windows, review or delete them as desired. This chapter describes the different functions under each of the functional menus in the PGM16 software. File Menu The entry can be deleted anytime, allowing PGM16 to start at its default state. A new entry will be saved upon exit of PGM16 program. Quick Start to Program a Device 1. Connect the gang programmer as described in the earlier chapters. 2. Run the PGM16 software from the Windows program group. 3. Select device type under Device Specifications in the Configuration Window. 4. Click the Open File button. 5. Change directory path to the desired location and open the object file. You might need to change the file filter if needed. Most PIC assemblers and compilers output the Intel Hex 8-Merge file as default. 6. Specify other fuse settings under Device Specifications. 7. When ready, place the device in the master socket and click the PROGRAM button to start programming. 8. You can see the programming status on the control bar of the Device Configuration Window. When programming is complete and successful, the Device Status will show Pass on the items that have been programmed. Open File The Open File command leads to a dialog box which allows you to open the following types of files. • Object file (in 16-bit binary, Intel 8-bit merged hex, Intel 16-bit hex o Intel 32-bit hex) • EEPROM data file (8-bit binary) • Calibration Memory (16-bit binary) Programming Options The default programming cycle include blank check, program and verify. If you want to by pass blank check, remove the check next to Blank Check before Program under the Options section. Default items to be included in the programmer function include Program Memory, EEPROM Memory (if available) , Calibration Memory (if available), Configuration fuse and ID. To edit items to be programmed, remove the check against the selection under the Options > Memory Type in the Device Configuration dialog box. 20 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 21 At the Open File dialog box, select the directory path where the files reside. You can use the file type filter (Files of type) to display the file type to be opened. Upon selecting the file and confirming by clicking the Open button, a window containing the data with the specified filename will be opened. If you have a configuration file (with CFG extension) sharing the same root name as the object file, the configuration will also be loaded whenever you open the object file. Save Device Configuration The Save Device Configuration command saves the device type, configuration fuses and ID to an ASCII text file which has the same root name as the object file, but with an *.INI file extension. Once created, this file will be loaded automatically whenever the corresponding object file is opened. Edit Menu Save File The Save File command saves the opened object file, EEPROM memory, Calibration memory and memory verification results to disk. The respective files are saved in these formats: File Type Object File EEPROM data Calibration Memory Verify error Format File Extension 16-bit binary Automatic OBJ extension Intel 8-bit Merged Hex Automatic HEX extension. Note that when the object file is saved in this format, the fuse settings will also be embedded in the hex file. 8-bit binary No extension is given. Recommends to use the same root same as the object file with a DAT extension. This allows the EEPROM data to be opened automatically whenever the object file is opened if the selected device type has EEPROM memory. 16-bit binary No extension is given. Recommends to use the same root same as the object file with a DAT extension. This allows the calibration data to be opened automatically whenever the object file is opened if the selected device type is PIC14000. ASCII text Clear Program Memory This command clears the program memory buffer to all ones. You can also activate this command via the context menu by clicking the right mouse button while positioning the mouse cursor inside the Program Memory Window. Clear EEPROM Memory This command clears the EEPROM memory buffer to all ones. You can also activate this command via the context menu by clicking the right mouse button while positioning the mouse cursor inside the EEPROM Memory Window. Clear Calibration Memory The Clear Calibration Memory command clears the calibration memory buffer to all ones. You can also activate this command via the context menu by clicking the right mouse button while positioning the mouse cursor inside the Calibration Memory Window. View Menu No extension is given or necessary. At the Save File dialog box, select the file type to be saved at the Save as Type field and specify the directory path where the file will be saved. For the file name, you can use the recommendations given above. The View Menu allows you to open the different windows and elements on the PGM16 program desktop as well as to customize the toolbar. 22 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 23 Device Configuration The Device Configuration Window is the main window of the PGM16 software. It is open automatically when the program starts. If closed, it can be reopened using the View > Device Configuration command. It contains all the functions of the PGM16 program. It consists of 6 sections and each will be described in detail: • Function Buttons • Function Status • Device Specifications • Configuration Fuse, Checksum and ID • Options • Device Status Function Status The Function Status to the right displays the active function and its progress by displaying the current address. When the programmer is not active in any function, the status displays Ready. Else, the box displays the current active function. For example, Program Memory Verify Memory Read EEPROM Device Specification The Device Specifications section displays the current device type and its fuse settings. Fuse options not available on the currently selected processor will be grayed out and cannot be selected. Function Buttons The top bar comprises of function buttons on the left and Function Status on the right. Blank Checks if the device is blank, including memories and fuse. Read Reads the contents of selected items from device to buffer and displays them in the respective windows. Verify Verifies the contents of the selected items of the device against those in the buffer as displayed on the screen. Program Programs the selected items from the buffer to the device. You can specify whether to perform the functions on all, or just part of the following memory types under the Options sections of the Device Configuration Window. • Program Memory • Configuration Fuse • ID • EEPROM Memory • Calibration Memory 0x0020... 0x0145... To change settings on each fuse bit, click the button on the right to bring down a drop list. Scroll through the list and highlight the new selection. Configuration Fuse, Checksum and ID This section displays the fuse word, checksum and customer ID for the object file. All fields are for display only except when the check for Use Checksum as Customer ID is removed. When the check is removed, users can enter a four digit hex number in 0h0h0h0h format to be used as the customer ID. After entering the new value, click Update to confirm the use of the specified value. 24 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 25 Options Device Status The Device Status section displays the results of the programmer function. It displays either Pass/Fail, Blank/Not blank for Program, EEPROM and Calibration memory. For Fuse and ID, it will display the value on BLANK and READ functions; Pass/Fail for PROGRAM and VERIFY functions. • Memory Type Allows you to specify which memory types to be included in the selected programmer function. For example, if you wish to program program and EEPROM memory only, remove the checks from the second (Configuration Fuse) and third (ID) boxes before clicking the PROGRAM button. The same applies to the READ, BLANK and VERIFY functions. • Options There are three more options you can select regarding programmers operation. Remove the check if you do not want to have the options put into effect. Clear Buffer for new Device Clear the Program Memory Window to ones whenever a new processor is selected. Blank Check before Program Automatically check if the device is blank before programming. Verify Device after Program Automatically verify the code programmed in the device against the Program Memory buffer after programming The Error Status shows messages like User Interrupt or Time-out. User-Interrupt appears when user pause the current operation bye pressing the [Esc] key on keyboard. Time-out error indicates the programmer is not properly connected and cannot communicate with the PC host. Program Memory The Program Memory command opens a window which displays the opcodes of the program. This is one of the default windows that will open automatically when PGM16 starts. The display can be set in hexadecimal, decimal or binary formats via the selection tabs towards the bottom left corner of the window. To edit the opcode, double click the data to be changed. When the blinking text cursor appears, type in a new data and press [Enter], [Up] or [Down] keys to go to the next field. The contents of the Program Memory Window can be saved to disk as binary or hex files using the File>Save File... command. 26 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 27 EEPROM Memory The EEPROM Memory command opens a window which displays the EEPROM memory buffer. The display can be set in hexadecimal, decimal or binary formats via tabs at the bottom of the window. NOTE that the window will be blank if the current device selected does not have EEPROM memory. You can edit the data in the EEPROM window as desired. To do so, double click the data to be changed. When the blinking text cursor appears, type in a new data and press [Enter], [Up] or [Down] keys to go to the next field. The contents of the Program Memory Window can be saved to disk as an 8-bit binary file using the File>Save File... command. Calibration Memory The Calibration Memory command opens a window to display the calibration memory buffer. The display can be set in hexadecimal, decimal or binary formats via the selection tabs towards the bottom left corner of the window. Verify Error The Verify Error command opens a window which displays the verification results on the data in the device in programmer against the Program or EEPROM Memory Buffer. It will be opened automatically whenever there are verification errors. The window displays the error number, addresses where errors are found and the data read from the device and the comparison data in the buffer. Click the tab at the bottom of the window to select between Program and EEPROM memory errors. The information in the Verify Error Window can be saved to disk for reference using the File>Save File command. Toolbar The Toolbar command allows you customize the look of the toolbar at the top of the desktop. The tool icons are grouped under three menus: File, Program and View. Each menu can be placed independently anywhere on the desktop. To do so, click the double bars on the left, drag and drop the menu to a new location. To remove the functional menu from the toolbar, click to remove the check mark next to the menu name in the above dialog box. Note that the Menu Bar cannot be removed from the desktop. The window displays the error number, addresses where errors are found and the data read from the device and the comparison data in the buffer. Click the tab at the bottom of the window to select between Program and EEPROM memory errors. The information in the Verify Error Window can be saved to disk for reference using the File>Save File command. 28 PIC Gang Programmers User's Guide You can customize the look of the menu/tool bar as below by clicking the Customize button and follow these steps: PIC Gang Programmers User's Guide 29 1. Click Customize... button. 2. Go to the Commands tab. 3. Select File category and drag the three buttons to the menu bar. 4. Repeat step 3 for View and Program categories. To remove the buttons from the menu bar: 1. Activate the View > Toolbar dialog box. 2. Drag the button from the menu bar to anywhere in the desktop. You can also create new tool bar on the desktop by clicking the New button. 1. Enter the name of the new toolbar in the dialog box and click OK. 2. A blank tool bar will be created at the left hand corner. 3. Select the Commands tab, drag and drop any desired function buttons to the All tool bar. Status Bar Use this command to display and hide the Status Bar, which provides description on each function and the current device. A check mark appears next to the menu item when the Status Bar is displayed. Program Menu The Program Menu consists of the fundamental programming functions for the PIC Programmer. They include blank check, read, verify and program devices. Blank Check For PGM16, the Blank Check command reads the fuse words, ID and checks if the device memory and EEPROM memory, if applicable, is blank. The results are displayed in the Device Status section in the Device Configuration Window. For memory types, it will display Blank/NOT Blank and for fuse and ID, it displays the value of the registers. You can customize to perform blank check on some or all of the memory types by checking the appropriate box in the Options box above the Device Status box in the Device Configuration Window. Read Device The Read Device command will perform the followings: • Read program memory from the device and display it in the Program Memory Window. • For processors with EEPROM Memory, read EEPROM memory and display it in the EEPROM Memory Window. • For PIC14000 family devices, read and display the calibration data in the Calibration Memory Window. • Read the configuration fuse and display it in the Device Status box as well as updating them in the Device Specifications box. • Read the customer ID and display it in the Device Status box. Exactly which of the above steps will be performed in a Read command depends on the selections in the Options box. For example, when Program Memory is the only options checked, the fuse will not be read and updated in the PC buffer. Verify Device The Verify Device command will perform the followings: • Read program memory from the device and compare it against the Program Memory buffer. The Verify Error Window will be opened automatically if there are errors; the Program Memory field in Device Status section will display Fail. • For processors with EEPROM Memory, read and compare EEPROM memory data in the device against the buffer. The Pass/Fail result will be displayed in the Device Status box. If verification is negative, the Verify Error window will be opened automatically. Click the EEPROM tab in the Verify Error window to see the results. • For PIC14000 family devices, read and compare Calibration memory data in the device against the buffer. No comparison result will be displayed other than a Pass/Fail in the Device Status box. • Read the compare the configuration word and display the result as Pass/Fail in the Device Status box. • Read the compare the customer ID and display the result as Pass/Fail in the Device Status box. Exactly which of the above steps will be included in the Verify Device command depends on the selections checked in the Options box in the Device Configuration Window. Program Device The Program Device command will program all or some of the following items from the corresponding buffer to the device in the programmer, 30 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 31 depending on the selections in the Options box in the Device Configuration Window. • Program Memory • EEPROM Memory • Calibration Memory • Configuration Fuse • Customer ID When done, the results Pass/Fail are displayed in the Device Status Box in the Device Configuration Window. Delay Constant Sometimes, you might run into time-out problems even though the programmer is properly set up and connected to a valid LPT port. In such a case, use the Delay Constant to adjust the communication timing between the programmer and the PC host To use the delay constant, enter a value of 50 and try to re-program the data. Increase the constant in increments of 50 until you can successfully program the codes. When you get a successful delay constant, try to decrease that value in decrements of 10 to determine the optimal delay. Upon exiting the LPT Configuration dialog box, the settings will be saved to the Environment setting in the Window Registry. Config Menu Tools Menu This menu provides functions to configure programmer mode and LPT port for communication. LPT Configuration The LPT Configuration command lets you setup or override the default setting on the parallel port address detected by the PGM16 program. You can select among 0x378, 0x278, and 0x3BC. To select a new address, click the down arrow to display the drop list and select a new address. The Customize User Tool command in the Tools Menu allows you to add other tools/programs to the software so they can be called up from within the PGM16 user interface. At the Customize dialog box, click he Add button and enter the parameters required. The dialog below shows the entries for adding Advanced Transdata’s RICE17A Emulator IDE software. After clicking the OK button, RICE17A will be added under the Tools Menu. You can also add the calculator function to the Tool Menu by entering the followings: • Menu Text: Calculator • Command: c:\windows\calc.exe You can also use the Calibration button in the dialog box to test the available LPT ports on your PC when communicating with PGM16 Programmer. By clicking the Calibrate button, the program will automatically test all available LPT ports on your PC and try different delay constants, if necessary. If calibration is successful, the correct address and delay to be used will be displayed in the second line of the dialog box. If communications fail on all available addresses, the Delay Constant field will display Failed. Failed calibration can be caused by: • power is not provided to the programmer • programmer is not connected to PC via the DB25 cable • a defective DB25 cable • a defective programmer, for example, bad firmware 32 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 33 Windows Menu Appendix A. Supported Devices and Device LEDs This Appendix describes the devices supported in each model and the LEDs used to indicate the different devices. PGM12G Supported devices: 12C508(A)/509(A)/671/672 and 12CE518/519/673/674 PGM12G uses 3 bi-color LEDs to indicate programming results and current selected device. RED ERROR CKSUM PROTECT 12C671/3 12C509(A)/519 The Windows Menu contains commands that control the display of windows on the desktop. Cascade Arranges opened windows in an overlapped fashion. Tile Arranges opened windows in non-overlapped tiles. The windows are tiled horizontally if there are three or less windows on the desktop. Arrange Icons Arranges icons of closed windows across the bottom of the desktop. Restore Windows Restores the desktop to the default layout, font and colors as defined in the default Windows Registry. You can access the PGM16 entry in the Windows Registry Close All Closes all the opened windows on the desktop. Opened Windows The bottom part of the Window Menu lists all the opened windows and there is a check against the currently active window. • GREEN PASS 12C672/4 12C508(A)/518 PGM12G Device LEDs - the two bi-color LEDs at the bottom are used to indicate 4 different device groups as indicated. When these LEDs are blinking, press the button on the programmer until the desired LED is lit in the corresponding color. Wait a couple of seconds and when the LED is lit steadily, the programmer is ready. Non-blank devices will be highlighted by blinking UUP LEDs and no programming will take place. When programming does take place, the top LED will be lit in green when ALL EIGHT slave devices are programmed and verified correctly. This LED will lit in red if there is program error or presence of blank sockets. The UUP LED corresponds to the failed device or blank sockets will be lit. PGM12G-505 Supported devices: 12C508(A)/509(A), 12CE518/519 and 16C505 This programmer share identical hardware with PGM12G but installed with a different firmware to support 16C505. It uses 3 bi-color LEDs to indicate programming results and current selected device. Help Menu This menu provides help information on all the menu items as well as the information on the PGM16 software. 34 PIC Gang Programmers User's Guide RED ERROR CKSUM PROTECT 16C505 12C509(A)/519 GREEN PASS 12C508(A)/518 PIC Gang Programmers User's Guide PGM12G-505 35 • Device LEDs - the two bi-color LEDs at the bottom are used to indicate 4 different device groups as indicated. When these LEDs are blinking, press the button on the programmer until the desired LED is lit in the corresponding color. Wait a couple of seconds and when the LED is lit steadily, the programmer is ready. PGM40G Supported devices: 16C62-67 and 16C72-77 all revisions PGM40G supports both 28-pin and 40-pin mid-range 16Cxx parts. The devices are grouped according to the size of the program memory. All revisions are supported. Non-blank devices will be highlighted by blinking UUP LEDs and no programming will take place. When programming does take place, the top LED will be lit in green when ALL EIGHT slave devices are programmed and verified correctly. This LED will lit in red if there is program error or presence of any blank sockets. The UUP LED corresponds to the failed device or blank sockets will be lit. 2K (16C62/64) 4K (16C63/65/73/74) 8K (16C66/67/76/77) • PGM16G Supported devices: 16C52/54(A/B/C)/55(A)/56(A)/57(C)/58(A/B) PGM16G supports all PIC16C5x devices. One red LED is used to indicate one device. The 16C52 is indicated by the simultaneous use of the 16C54 and 16C58 LEDs. indicates 16C52 when lit together • 16C58 16C57 16C55 16C54 PGM16G Device LEDs - When the four device LEDs are blinking, press the button on the programmer until the desired LED is lit. Wait a couple of seconds and when the LED is lit steadily, the programmer is ready. Non-blank devices will be highlighted by blinking UUP LEDs and no programming will take place. When programming does take place, the PASS LED will blink when ALL EIGHT slave devices are programmed and verified correctly. The ERROR LED will blink in red if there is program error or presence of any blank sockets. The UUP LED corresponds to the failed device or blank sockets will be lit. 36 PIC Gang Programmers User's Guide PGM40G Device LEDs - When the device LED is blinking, press the button on the programmer until the desired LED is lit. Wait a couple of seconds and when the LED is lit steadily, the programmer is ready. Non-blank devices will be highlighted by blinking UUP LEDs and no programming will take place. When programming does take place, the PASS LED will blink when ALL EIGHT slave devices are programmed and verified correctly. The ERROR LED will blink in red if there is program error or presence of any blank sockets. The UUP LED corresponds to the failed device or blank sockets will be lit. PGM47G Supported devices: 16C554/556/668/620/621/622/E623/E624/E625/ 71/710/711/715/84 and 16F83/84 and different revisions. PGM47G supports the 18-pin mid-range 16Cxx parts. It uses 3 bi-color LEDs to indicate programming results and current selected device. • 16C715 is indicated by the 2 device LEDs being red at the same time. RED ERROR CKSUM PROTECT 16C715 is indicated by these 2 LEDs being red GREEN PASS RED ERROR CKSUM PROTECT 2K - 16C558/622/CE625 1K - 16C556/61/621/71/711/CE624 GREEN PASS PIC Gang Programmers User's Guide EE - 16C84/F83/F84 512 - 16C554/620/710/CE623 37 • Device LEDs - the two bi-color LEDs at the bottom are used to indicate 5 different device groups as indicated. When these LEDs are blinking, press the button on the programmer until the desired LED is lit in the corresponding color. Wait a couple of seconds and when the LED is lit steadily, the programmer is ready. Appendix B. LED Summary The following table summarizes the use of the LEDs to indicate programming results. Non-blank devices will be highlighted by red UUP LEDs and blinking ERROR LED; no programming will take place. When programming does take place, the top LED will be lit in green when ALL EIGHT slave devices are programmed and verified correctly. This LED will lit in red if there is program error or presence of blank sockets. The UUP LED corresponds to the failed device or blank sockets will be lit. Detect non-blank devices - no programming takes place Devices pass blank check but have Program/Verify Error during programming Program Success on all 8 devices Model UUP LED ERROR LED UUP LED ERROR LED PASS LED PGM12G blink off red red green blink off red red green PGM16G blink off red blink blink PGM40G blink off red blink blink PGM47G red blink red red green PGM12G-505 For the CKSUM and PROTECT LED, they will blink whenever the master chip fails the checksum test and is code protected respectively. No programming will take place in such cases. 38 PIC Gang Programmers User's Guide PIC Gang Programmers User's Guide 39 Appendix C. Surface Mount Device Placement Appendix D. In-System Programming For DIP package, always align pin 1 of the chip to the top of the ZIF socket. For surface mount devices, chip placement should be as indicated in this section. On PGM12G, PGM12G-505, PGM40G and PGM47G, serial programming algorithm is used. You can easily program parts that are already in the target system by connecting 5 leads from each programmer socket to the fixture in the target system. PGM12G-SO SOIC8 (200mil body) PGM16G uses the parallel algorithm and in-system programming will not be practical as there are so many wires to connect. PGM12G-SN SOIC8 (150mil body) SOIC14 (150mil body) Pin 1 Pin 1 Pin 1 You can make the cables based on the information below or purchase them from Advanced Transdata. The ISP cable consists of an 18-pin or 40-pin DIP plug on one end and 5 cable leads on the other. The DIP Plug is latched inside the ZIF socket in the programmer. You can connect clips or other leads to the cable to mate with the ISP fixtures in the target application. The programming command will be the same as programming a device in the programmer socket. PGM16G-SO SOIC18 SOIC28 18-pin SOIC Pin 1 28-pin SOIC PGM47-SO SOIC18 PGM12G/PGM12G-505 GP1/RB1 RB6 GP0/RB0 RB7 VSS +5V 1 VDD VSS 18 2 GP0/RB0 17 3 GP1/GP1 16 4 VPP 15 5 14 6 13 7 12 8 11 9 10 VDD Pin 1 Pin 1 PGM47G VPP VPP VSS 1 2 3 4 5 6 7 8 9 VPP VSS 18 17 16 15 VDD 14 RB7 13 RB6 12 11 10 PGM40G PGM40G-SO SOIC28 PGM40G-PQ PQFP44 PGM40G-PL PLCC44 RB6 RB7 VPP 28-pin SOIC Pin 1 Pin 1 40 VDD VSS PIC Gang Programmers User's Guide 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 VPP VDD VSS RB7 40 RB6 39 38 37 36 35 34 33 VDD 32 VSS 31 30 29 28 27 26 25 24 23 22 21 PIC Gang Programmers User's Guide NOTES 1. VPP generates about 12.75V during programming. 2. GP0/GP1, RB0/RB1 or RB6/RB7 of the in-system clip shall not be connected to other output gates during programming. 3. Turn off the in-system power if you are using the programmer’s VDD 5V supply (50mA maximum). 41 Appendix E. Trouble Shooting Programmer Timeout when Reading a Device This indicates communications problem with the PC host, probably incorrect LPT address or when the programmer is not ready 1. A timeout will occur if the programmer is not in the ready mode, that is, when there is LED blinking. Press the Program/Reset button once to make sure there is no blinking LED. 2. Go to Config > LPT Configuration and click the “Calibrate” button. It should return a “0" if communication can be established, else, it will return ”failed". In the latter case, check the power to the programmer, connection on the DB25 cable. Blank Device Read as Non-Blank You are reading a device that is not supported by the programmer. Please check this users guide or any readme file for the updated device list for the programmer. Checksum Light Blinks during Stand-alone Duplication 1. The checksum of the master device does not match the customer ID. When checksum verification is enabled (default setting), the customer ID of the master device needs to match its calculated checksum in either Transdata or Microchip format. If the customer ID is blank or contains data other than the checksum, no duplication is allowed. Either reprogram the ID or disable checksum verification by removing the jumper at JP2. 2. The device in the MASTER socket does not match the selected device indicated by the device LED. Reset the programmer and select device LED to match the master device. 42 PIC Gang Programmers User's Guide