Summary of the content on the page No. 1
EM78612
Product
Specification
DOC. VERSION 1.0
ELAN MICROELECTRONICS CORP.
March 2006
Summary of the content on the page No. 2
Trademark Acknowledgments: IBM is a registered trademark and PS/2 is a trademark of IBM. Windows is a trademark of Microsoft Corporation. ELAN and ELAN logo are trademarks of ELAN Microelectronics Corporation. Copyright © 2006 by ELAN Microelectronics Corporation All Rights Reserved Printed in Taiwan The contents of in this specification are subject to change without notice. ELAN Microelectronics assumes no responsibility concerning the accuracy, adequacy, or completeness of this specification.
Summary of the content on the page No. 3
EM78612 Universal Serial Bus Microcontroller 1 General Description·················································································· 4 2 Features··································································································· 4 3 Applications··············································································································· 5 4 Pin Configuration ·········································
Summary of the content on the page No. 4
EM78612 Universal Serial Bus Microcontroller 8 Absolute Maximum Ratings···································································· 27 9 DC Electrical Characteristic················································································· 28 10 Application Cricuit···································································································· 30 APPENDIX A. Special Register Map ···················································································
Summary of the content on the page No. 5
EM78612 Universal Serial Bus Microcontroller Specification Revision History Doc. Version Revision Description Date 1.0 Initial Version 2006/03/22 Product Specification (V1.0) 03.22.2006 · · · · 3 (This specification is subject to change without further notice)
Summary of the content on the page No. 6
EM78612 Universal Serial Bus Microcontroller 1 General Description The EM78612 is a series of Universal Serial Bus 8-bit RISC microcontrollers. It is specifically designed for USB low speed device application and to support legacy device such as PS/2 mouse. The EM78612 also support one device address and two endpoints.. The EM78612 is implemented on a RISC architecture. It has five-level stack and six interrupt sources. The amount of General Input/Output pins is up to12. Each device has 80 bytes
Summary of the content on the page No. 7
EM78612 Universal Serial Bus Microcontroller · · · · Up to 12 general purposes I/O pins grouped into two ports (Port 6 and 7). · · · · Up to 2 LED sink pins · · · · Each GPIO pin of Ports 6 & Port 7 has an internal programmable pull-high resistor · · Each GPIO pin of Ports 6 has an internal programmable pull- low resistor · · · · · · Each GPIO pin wakes up the MCU from sleep mode by input state change Internal Memory · · · · Built-in 2048*13 bits MASK ROM · · · · Built-in 80 bytes general purp
Summary of the content on the page No. 8
EM78612 Universal Serial Bus Microcontroller 4 Pin Configuration EM78612A P61 1 16 P60 P62 2 15 P64 P63 3 14 P65 P70 4 13 P71 P72 5 12 D+/P50 VSS 6 11 D-/P51 VDD V3.3V 7 10 OSCI 8 9 OSCO EM78612B P60 1 18 P64 P61 2 17 P65 P62 3 16 P66 P63 4 15 P67 P70 5 14 P71 P72 6 13 D+/P50 V 7 12 D-/P51 SS V 8 11 V 3.3V DD OSCI 9 10 OSCO EM78612C P60 1 20 P64 P61 2 19 P65 P62 3 18 P66 P63 4 17 P67 P70 5 16 P71 P72 6 15 P73 NC 7 14 D+/P50 V 8 13 D-/P51 SS V 9 12 V 3.3V D
Summary of the content on the page No. 9
EM78612 Universal Serial Bus Microcontroller 5 Pin Description Symbol I/O Function OSCI I 6MHz / 12MHz ceramic resonator input. OSCO I/O Return path for 6MHz / 12MHz ceramic resonator. 3.3V DC voltage output from internal regulator. This pin should be tied to a V O 3.3V 4.7 F decoupling capacitor to GND. Port6 offers up to 8 GIOP pins. P60 ~ P67 I/O The pull high resistors (132K Ohms) and pull low resistors (10K Ohm) are selected through pin programming. Port7 offers up to 4 GIOP pins. The
Summary of the content on the page No. 10
EM78612 Universal Serial Bus Microcontroller 6 Function Block Diagram OSCI OSCO VDD V3.3 D+ D- Stack1 R2 (PC) Stack2 Stack3 Stack4 3.3V Oscillator Transceiver Built-in ROM Regulator Timing Stack5 RC Control R3 USB (Status) Device Instruction Controller register Prescaler Prescaler WDT TCC RAM ALU Reset & Interrupt Sleep & Control Instruction Wake up WDT R1 Decoder Control Timer (TCC) R4 ACC (RSR) DATA & CONTROL BUS
Summary of the content on the page No. 11
EM78612 Universal Serial Bus Microcontroller After reset Address Reset Vector Program Counter 0x0000 0x0001 Interrupt Vector 0x000A USB Application Interrupt Vector Page 0 0x03FF 0x0400 Page 1 0x07FF 7.2 Data Memory The Data Memory has 80 bytes SRAM space. It is also equipped with USB Application FIFO space for USB Application. The Figure 7-1 (next page) shows the organization of the Data Memory Space. 7.2.1 Special Purpose Registers When the micro-controller executes the instructio
Summary of the content on the page No. 12
EM78612 Universal Serial Bus Microcontroller 00 R0 (Indirection Addressing Register) 01 R1 (Time Clock / Counter Register) 02 R2 (Program Counter) & Stack 03 R3 (Status Register) 04 R4 (RAM Select Register) 05 R5 (Data line I/O Register) IOC5 (Port 5 I/O Control Register) 06 R6 (Port 6 I/O Register) IOC6 (Port 6 I/O Control Register) 07 R7 (Port 7 I/O Register) IOC7 (Port 7 I/O Control Register) 08 R8 (Port6 wakeup pin selection Register) IOC8 (Sink Curent Control Register) 09 R9 (Port7 wakeup p
Summary of the content on the page No. 13
EM78612 Universal Serial Bus Microcontroller R2 (Program Counter & Stack) Default Value: (0B_0000_0000) The EM78612 Program Counter is an 11-bit long register that allows access to 2K bytes of Program Memory with 5 level stacks. The eight LSB bits, 00~07, are located at R2, while the one MSB bits, 10, is located at R3 [5].The Program Counter is cleared after Power-on reset or WatchDog reset. The first instruction that is executed after a reset is located at Address 00h. R3 07 06 05 04 03
Summary of the content on the page No. 14
EM78612 Universal Serial Bus Microcontroller R3 [2] Zero flag. It will be set to 1 when the result of an arithmetic or logic operation is zero. R3 [3] Power down flag. It will be set to 1 during Power-on phase or by “WDTC” command and cleared when the MCU enters into Power down mode. It remains in previous state after WatchDog Reset. 1: Power-on. 0: Power down R3 [4] Time-out flag. It will be set to 1 during Power-on phase or by “WDTC” command. It is reset to 0 by WDT time-out. 1: WatchDog timer
Summary of the content on the page No. 15
EM78612 Universal Serial Bus Microcontroller R4 (RAM Select Register) Default Value: (0B_0xxx_xxxx) 7 6 5 4 3 2 1 0 - BK0 Ad5 Ad4 Ad3 Ad2 Ad1 Ad0 R4 (RAM select register) contains the address of the registers. R4 [0~5] are used to select registers in 0x00h~0x3Fh. The address 0x00~0x1F is common space. After 0x1Fh, SRAM is grouped into two banks. R4 [6] are used to select register banks. To select a registers bank, refer to the following examples and the table below: R4=01111100 points to the reg
Summary of the content on the page No. 16
EM78612 Universal Serial Bus Microcontroller 0: Enable the wake-up function R9 (Port 7 Wake-up Pin Selection Register) Default Value: (0B_1111_1111) 7 6 5 4 3 2 1 0 - - - - /Wu73 /Wu72 /Wu71 /Wu70 R9 [0 ~ 3] Select which of the Port 7 pins are to be defined to wake-up the MCU from sleep mode. When the state of the selected pins changes during sleep mode, the MCU will wake-up and execute the next instruction automatically. 1: Disable the wake-up function 0: Enable the wake-up function RC (USB App
Summary of the content on the page No. 17
EM78612 Universal Serial Bus Microcontroller Therefore, before writing data into the FIFO, the firmware will first check this bit to prevent overwriting the existing data. These two bits can only be set by the firmware and cleared by the hardware. RC [7] EP0_W flag. After the UDC completes writing data to the FIFO, this bit will be set automatically. The firmware will clear it as soon as it gets the data from EP0’s FIFO. Only when this bit is cleared that the UDC will be able to write a new data
Summary of the content on the page No. 18
EM78612 Universal Serial Bus Microcontroller RF (Interrupt Status Register ) Default Value: (0B_0000_0000) 7 6 5 4 3 2 1 0 Port 5 State USB Host USB USB - -- EP0_IF TCC_IF Change_IF Resume_IF Reset_IF Suspend_IF RF [0] TCC Overflow interrupt flag. It will be set while TCC overflows, and is cleared by the firmware. RF [1] EndPoint Zero interrupt flag. It will be set when the EM78612 receives Vender /Customer Command to EndPoint Zero. This bit is cleared by the firmware. RF [2] USB Suspend interru
Summary of the content on the page No. 19
EM78612 Universal Serial Bus Microcontroller CONT (Control Register) 7 6 5 4 3 2 1 0 RW_E /INT TSR2 TSR1 TSR0 PSR2 PSR1 PSR0 NOTE The CONT register can be read by the instruction "CONTR" and written by the instruction “CONTW." CONT [0~2] WatchDog Timer prescaler bits. These three bits are used as the prescaler of WatchDog Timer. CONT [3~5] TCC Timer prescaler bits. The relationship between the prescaler value and these bits are as shown below: PSR2/TSR2 PSR1/TSR1 PSR0/TSR0 TCC Rate WDT Rate ( 8
Summary of the content on the page No. 20
EM78612 Universal Serial Bus Microcontroller IOC5 (Data Line I/O Control Register) Default Value: (0B_0000_0011) 7 6 5 4 3 2 1 0 0 0 0 0 0 0 P51 P50 IOC5 [2~7] Undefined registers. The default value is 0. IOC6 (Port 6 I/O Control Register) Default Value: (0B_1111_1111) 7 6 5 4 3 2 1 0 P67 P66 P65 P64 P63 P62 P61 P60 IOC7 (Port 7 I/O Control Register) Default Value: (0B_0000_1111) 7 6 5 4 3 2 1 0 - - - - P73 P72 P71 P70 IOC8 (Sink Current Control Register) Default Value: (0B_0000_0000) 7 6 5 4 3