EM78M612 On-Board Programming Application Note 1 Introduction By using Elan’s MTP (Multiple Time Programmable) writer, it’s easy to perform the in-circuit programming for Elan’s EM78M612 MTP micro-controllers. 2 About EM78M612 General Description The EM78M612 is a series of Universal Serial Bus 8-bit RISC Multi-Time Programming (MTP) micro-controllers. It is specifically designed for USB low speed device application and to support legacy device such as PS/2 mouse. The EM78M612 also support one device address and two endpoints. The EM78M612 is implemented on RISC architecture. It has five-level stack and eight interrupt sources. The amount of General-purpose Input/Output pins is up to 15. Each device has 112 bytes SRAM and is embedded with 4 bytes of E2PROM. The ROM size of the EM78M612 is 2K. These series of chips have special features that accommodate your needs. These features are: Dual Clock mode which allows the device to run on very low power saving frequency Pattern Detecting Application function which is used in a serial transmission to count waveform width Width Modulation that can generate a duty-cycle-programmable signal AD converter with up to 10 bits resolution. Package Type 16Pin PDIP(300mil)/SOP(150mil) 18Pin PDIP(300mil)/SOP(300mil) 20Pin PDIP(300mil)/SOP(300mil) 24Pin PDIP(600mil)/SOP(300mil) 24Pin Skinny PDIP(300mil) EM78M612(A/B/C/D) AP/AM EM78M612(A/B/C/D) BP/BM EM78M612(A/B/C/D) CP/CM EM78M612(A/B/C/D) DP/DM EM78M612(A/B/C/D) DK EM78M612(A/B/C/D) HM 24Pin SSOP(150mil) Function Type Description The EM78M612 series has several types of packaging. Each type is divided into 4 modules, namely; original, with E2PROM, with A/D converter, and with both E2PROM and A/D converter. Hence, packaging configuration for each series is defined. The Table below summarizes which series of the EM78M612 belong to which module. Original EM78M612A 1 2 With E PROM EM78M612B With A/D Converter EM78M612C With Both EM78M612D The contents in this document is subject to be changed without notice Revision1.3 2007/7/31 EM78M612 On-Board Programming Application Note 3 EM78M612 Program Pin List Program Pin Name IC Pin Name I/O 16 Pin Package 18 Pin Package 20 Pin Package 24 Pin Package VPP P60 P 16 1 1 1 Programming Voltage Input = +10V CLK P61 I 1 2 2 2 CLK for DATA Pin DATA P62 I/O 2 3 3 3 ROM series data Input/Output Pin PGM P63 I 3 4 4 4 Program Enable Control Pin VSS VSS P 5 6 7 9 Ground VNN VNN P 6 7 8 10 Programming Voltage Input = -10V OSC OSCI I 8 9 10 12 CLK for MTP memory address increment VDD VDD P 10 11 12 14 Programming Voltage Input = +4V or +2V OEB P64 I 15 18 20 24 Output Enable Control Pin for DATA Function During Programming Mode 4 EM78M612 Dice Pad Vector 4 3 2 1 24 23 22 21 P63 5 6 7 8 P62 P61 P60 P64 P65 P66 P67 P70 P71 20 P72 P73 19 P74 P75 P76 P77 18 17 (0,0) 9 2 VSS VSS VSS VNN VDD OSCI OSCO VDD5V D_MNS D_PLUS 10 11 12 13 14 15 16 The contents in this document is subject to be changed without notice Revision1.3 2007/7/31 EM78M612 On-Board Programming Application Note 5 ELAN EM78M612 MTPWTR MTPWTR Front View MTPWTR Back View 3 The contents in this document is subject to be changed without notice Revision1.3 2007/7/31 EM78M612 On-Board Programming Application Note Resister Card View There are four types of the resister cards for MTPWTR Programming EM78M612. EM78M612XAP (16Pin Package) EM78M612XBP-1 (18Pin Package) EM78M612XCP (20Pin Package) EM78M612XDP (24Pin Package) 4 The contents in this document is subject to be changed without notice Revision1.3 2007/7/31 EM78M612 On-Board Programming Application Note 6 MTPWTR Programming Socket Diagram EM78M612XAP 1 2 3 4 5 6 7 8 9 10 11 12 P61(CLK)-1 13 P62(DATA)-2 14 P63(PGM)-3 15 XAP 16 VSS(VSS)-5 17 VNN(VNN)-6 18 19 OSCI(OSC)-8 20 EM78M612XBP 40 39 38 37 36 35 34 33 32 31 30 29 28 16-P60(VPP) 27 15-P64(OEB) 26 25 24 23 22 10-VDD(VDD) 21 EM78M612XCP 1 2 3 4 5 6 7 8 9 10 P60(VPP)-1 11 P61(CLK)-2 12 P62(DATA)-3 13 XCP P63(PGM)-4 14 15 16 VSS(VSS)-7 17 VNN(VNN)-8 18 19 OSCI(OSC)-10 20 5 1 2 3 4 5 6 7 8 9 10 11 P60(VPP)-1 12 P61(CLK)-2 13 P62(DATA)-3 14 P63(PGM)-4 15 XBP 16 VSS(VSS)-6 17 VNN(VNN)-7 18 19 OSCI(OSC)-9 20 40 39 38 37 36 35 34 33 32 31 30 29 18-P64(OEB) 28 27 26 25 24 23 22 11-VDD(VDD) 21 EM78M612XDP 40 39 38 37 36 35 34 33 32 31 30 20-P64(OEB) 29 28 27 26 25 24 23 22 12-VDD(VDD) 21 1 2 3 4 5 6 7 8 P60(VPP)-1 9 P61(CLK)-2 10 P62(DATA)-3 11 P63(PGM)-4 12 13 XDP 14 15 16 VSS(VSS)-9 17 VNN(VNN)-10 18 19 OSCI(OSC)-12 20 The contents in this document is subject to be changed without notice 40 39 38 37 36 35 34 33 32 24-P64(OEB) 31 30 29 28 27 26 25 24 23 22 14-VDD(VDD) 21 Revision1.3 2007/7/31 EM78M612 On-Board Programming Application Note 7 Application Note On-Board Programming with EM78M612 The following issues must be carefully noted during on-board programming with EM78M612: 1. Isolation of all programming signal pins from the surrounding circuit. 2. Minimum and maximum operating voltage for VNN, VDD and VPP. 3. Choose the right type of the resister card (XAP/XBP-1/XCP/XDP) for programming. In a typical application circuit, each pin of the MCU may be connected with several active and/or passive components. Any component that is still connected to programming pins during programming could cause an MTP programming error. For example, capacitive loading on a programming signal pin could negatively affect the programming signal required rise time. Resistive loading will reduce the necessary programming signal voltages. Therefore, the first step to be taken when implementing the ICP circuit is to isolate all the programming pins. When the EM78M612 is programmed, the P60/VPP pin must be supplied with an external 10V DC level and the VNN pin must be supplied with an external –10V DC level. The VPP pin of EM78m612 also functions as INPUT pin (P60) during normal operation, and is normally connected to an external Pull-up/Pull-down resister. Therefore, it is recommended to disconnect the resister to isolate the VPP pin. Another important issue to be noted is the power supply voltage. The MTP programming specification states that the MCU should be programmed at 5V. When the application circuit’s operating voltage is other than 5V, the VDD pin should be isolated. MTP Programming Precaution should also be exercised when performing MTP programming with its driver capabilities. The MTPWTR is not designed to drive signals over long connectors. It is therefore recommended that the cable length between the MTPWTR and the application circuit should be no longer than 20 centimeters. If the cable length is too long, programming may fail due to signal attenuation. 6 The contents in this document is subject to be changed without notice Revision1.3 2007/7/31