EM78M611 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 EM78M611 MTP micro-controllers. 2 About EM78M611 General Description The EM78M611 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 keyboard. The EM78M611 also support one device address and three endpoints. The EM78M611 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 31. Each device has 144 bytes SRAM and is embedded with 4 bytes of E2PROM. The ROM size of the EM78M611 is 6K. 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 40 pin PDIP(600mil) 44 pin QFP(10*10*3.2mm) 20 pin PDIP(300mil)/SOP(300mil) 20 pin SSOP(209mil) 24 pin PDIP(600mil) /SOP(300mil) 24 pin SSOP(150mil) EM78M611(A/D) AP EM78M611(A/D) AQ EM78M611(A/D) BP/BM EM78M611(A/D) DM EM78M611(A/D) CP/CM EM78M611(A/D) EM Function Type Description The EM78M611 series has 4 types of packaging. Each type is divided into 2 modules, namely; original and with both E2PROM and A/D converter. The Table below summarizes which series of the EM78M611 belong to which module. Original EM78M611A 1 With Both EM78M611D The contents in this document is subject to be changed without notice Revision1.4 2007/8/2 EM78M611 On-Board Programming Application Note 3 EM78M611 Program Pin List Program Pin Name IC Pin Name I/O 44 Pin Package 40 Pin Package 24 Pin Package 20 Pin Package VPP P94 P 4 9 8 17 Programming Voltage Input = +10V CLK P57 I 15 18 13 2 CLK for DATA Pin DATA P56 I/O 14 17 12 1 ROM series data Input/Output Pin PGM P55 I 13 16 11 20 Program Enable Control Pin VSS VSS P 40 1 2 11 Ground VNN VNN P 7 10 9 18 Programming Voltage Input = -10V OSC OSCI I 38 39 24 9 CLK for MTP memory address increment VDD VDD P 37 38 23 8 Programming Voltage Input = +4V or +2V /OEB P54 I 12 15 10 19 Output Enable Control Pin for DATA 4 EM78M611 Dice Pad Vector 2# 2# !"$#%! &('%) ** (+ Function During Programming Mode (++ (+ (+ (+ + /0 -,/ -,/ 2 -,. -,$ -,/ -, -,10 -,/ The contents in this document is subject to be changed without notice Revision1.4 2007/8/2 EM78M611 On-Board Programming Application Note 5 ELAN EM78M611 MTPWTR MTPWTR Front View MTPWTR Back View 3 The contents in this document is subject to be changed without notice Revision1.4 2007/8/2 EM78M611 On-Board Programming Application Note Resister Card View There are three types of the resister cards for MTPWTR Programming EM78M611. EM78M611XAP (40Pin Package) EM78M611XBP (20Pin Package) EM78M611XCP (24Pin Package) 4 The contents in this document is subject to be changed without notice Revision1.4 2007/8/2 EM78M611 On-Board Programming Application Note 6 MTPWTR Programming Socket Diagram EM78M611XAP 1 2 3 4 5 6 7 8 P94(VPP)-9 9 VNN(VNN)-10 10 11 12 13 XAP 14 P54(/OEB)-15 15 P55(PGM)-16 16 P56(DATA)-17 17 P57(CLK)-18 18 19 20 VSS(VSS)-1 EM78M611XBP 40 39 39-OSCI(OSC) 38 38-VDD(VDD) 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 1 2 3 4 5 6 7 8 9 10 P56(DATA)-1 11 P57(CLK)-2 12 13 XBP 14 15 16 17 VDD(VDD)-8 18 OSCI(OSC)-9 19 20 40 39 38 37 36 35 34 33 32 31 30 20-P55(PGM) 29 19-P54(/OEB) 28 18-VNN(VNN) 27 17-P94(VPP) 26 25 24 23 22 21 11-VSS(VSS) EM78M611XCP 1 2 3 4 5 6 7 8 9 VSS(VSS)-2 10 11 XCP 12 13 14 15 P94(VPP)-8 16 VNN(VNN)-9 17 P54(/OEB)-10 18 P55(PGM)-11 19 P56(DATA)-12 20 5 40 39 38 37 36 35 34 33 32 24-OSCI(OSC) 31 23-VDD(VDD) 30 29 28 27 26 25 24 23 22 21 13-P57(CLK) The contents in this document is subject to be changed without notice Revision1.4 2007/8/2 EM78M611 On-Board Programming Application Note 7 Application Note On-Board Programming with EM78M611 The following issues must be carefully noted during on-board programming with EM78M611: 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/XCP) 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 EM78M611 is programmed, the P94/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 EM78M611 also functions as INPUT pin (P94) 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.4 2007/8/2