HT82M99AE HOLTEK [Holtek Semiconductor Inc], HT82M99AE Datasheet

no-image

HT82M99AE

Manufacturer Part Number
HT82M99AE
Description
USB Mouse Encoder 8-Bit MCU
Manufacturer
HOLTEK [Holtek Semiconductor Inc]
Datasheet
Technical Document
·
·
·
Features
·
·
·
·
·
·
·
·
·
General Description
The USB MCU HT82M99EE/HT82M99AE are suitable
for USB mouse and USB joystick devices. It consists of
a Holtek high performance 8-bit MCU core for control
unit, built-in USB SIE, 2K´14 program memory and 96
bytes data RAM.
The mask version HT82M99AE is fully pin and function-
ally compatible with the OTP version HT82M99EE de-
vice.
Rev. 1.00
Tools Information
FAQs
Application Note
Flexible total solution for applications that combine
PS/2 and low-speed USB interface, such as mice,
joysticks, and many others
USB Specification Compliance
-
-
Supports 1 Low-speed USB control endpoint and 1
interrupt endpoint
Each endpoint has 8´8 bytes FIFO
Integrated USB transceiver
3.3V regulator output
External 6MHz or 12MHz ceramic resonator or crys-
tal
8-bit RISC microcontroller, with 2K´14 program
96 bytes RAM (20H~7FH)
memory (000H~7FFH)
Conforms to USB specification V1.1
Conforms to USB HID specification V1.1
USB Mouse Encoder 8-Bit MCU
HT82M99EE/HT82M99AE
1
·
·
·
·
·
·
·
·
·
·
·
·
There are two dice in the HT82M99EE/HT82M99AE
package: one is the HT82M99EE/HT82M99AE MCU,
the other is a 128´8 bits EEPROM used for data mem-
ory purpose. The two dice are wire-bonded to form
HT82M99EE/HT82M99AE.
128´8 data EEPROM
6MHz/12MHz internal CPU clock
4-level stacks
Two 7-bit indirect addressing registers
One 16-bit programmable timer counter with over-
flow interrupt (shared with PA7, vector 0CH)
One USB interrupt input (vector 04H)
HALT function and wake-up feature reduce power
consumption
PA0~PA7, PB4 and PB7 support wake-up function
Internal Power-On reset (POR)
Watchdog Timer (WDT)
12 I/O ports
20-pin DIP/SOP package
February 8, 2006

Related parts for HT82M99AE

HT82M99AE Summary of contents

Page 1

... USB mouse and USB joystick devices. It consists of a Holtek high performance 8-bit MCU core for control unit, built-in USB SIE, 2K´14 program memory and 96 bytes data RAM. The mask version HT82M99AE is fully pin and function- ally compatible with the OTP version HT82M99EE de- vice. Rev. 1.00 ...

Page 2

... Block Diagram Pin Assignment Rev. 1.00 HT82M99EE/HT82M99AE 2 February 8, 2006 ...

Page 3

... Functional operation of this device at other conditions beyond those listed in the specification is not implied and prolonged exposure to extreme conditions may affect device reliabil- ity. Rev. 1.00 HT82M99EE/HT82M99AE Description Bidirectional 8-bit input/output port. Each bit can be configured as a wake-up input by ROM code option. The input or output mode is con- trolled by PAC (PA control register) ...

Page 4

... RF t System Start-up Timer Period SST t Crystal Setup OSC Note: Power-on period WDT SST OSC WDT Time-out in normal mode=1/f WDT Time-out in HALT mode=1/f Rev. 1.00 HT82M99EE/HT82M99AE Test Conditions V Conditions load, f =6MHz SYS 5V No load, system HALT =0. ...

Page 5

... SCL Pins) t Write Cycle Time WR Note: These parameters are periodically sampled but not 100% tested * The standard mode means V CC For relative timing, refer to timing diagrams Rev. 1.00 HT82M99EE/HT82M99AE Standard Mode* Remark Min. 4000 4700 Note Note After this period the first ...

Page 6

... Return from Subroutine S10 Note: *10~*0: Program counter bits #10~#0: Instruction code bits Rev. 1.00 HT82M99EE/HT82M99AE After accessing a program memory word to fetch an in- struction code, the contents of the program counter are incremented by one. The program counter then points to the memory word containing the next instruction code. ...

Page 7

... TABRDL [ Note: *10~*0: Table location bits @7~@0: TBLP bits Rev. 1.00 HT82M99EE/HT82M99AE ROM data by two table read instructions: TABRDC and TABRDL , transfer the contents of the lower-order byte to the specified data memory, and the higher-order byte to TBLH (08H). The three methods are shown as follows: ...

Page 8

... The general purpose data memory, ad- dressed from 20H to 7FH, is used for data and control information under instruction commands. Rev. 1.00 HT82M99EE/HT82M99AE Bank 0 RAM Mapping re gister All of the data memory areas can handle arithmetic, logic, increment, decrement and rotate operations di- rectly ...

Page 9

... Bank 1 RAM Mapping Address 00~1FH in RAM Bank0 and Bank1 are located in the same Registers Rev. 1.00 HT82M99EE/HT82M99AE Indirect Addressing Register Locations 00H and 02H are indirect addressing regis- ters that are not physically implemented. Any read/write operation on [00H] ([02H]) will access the data memory pointed to by MP0 (MP1) ...

Page 10

... USB interrupt request flag (1=active; 0=inactive Internal timer/event counter request flag (1:active; 0:inactive) Rev. 1.00 HT82M99EE/HT82M99AE Function Status (0AH) Register rupt requires servicing within the service routine, the EMI bit and the corresponding bit of the INTC may be set to allow interrupt nesting. If the stack is full, the inter- rupt request will not be acknowledged, even if the re- lated interrupt is enabled, until the SP is decremented ...

Page 11

... The interrupt request flag (USBF) and EMI bits will be cleared to disable other interrupts. When the PC Host access the FIFO of the HT82M99EE/ HT82M99AE, the corresponding request bit of the USR is set, and a USB interrupt is triggered. So user can eas- ily decide which FIFO is accessed. When the interrupt has been served, the corresponding bit should be cleared by firmware ...

Page 12

... CLR WDT instruction will clear the WDT. In the case that CLR WDT and CLR WDT are chosen (i.e. CLRWDT times is equal to two), these two instructions Rev. 1.00 HT82M99EE/HT82M99AE Watchdog Timer must be executed to clear the WDT; otherwise, the WDT may reset the chip as a result of time-out. ...

Page 13

... WDT time-out or RES reset) or the system awakes from the HALT state. Reset Timing Chart Rev. 1.00 HT82M99EE/HT82M99AE Reset Circuit Reset Configuration When a system reset occurs, the SST delay is added during the reset period. Any wake-up from HALT will en- able the SST delay ...

Page 14

... USR 0100 0000 uuuu uuuu SCC 0000 0000 uuuu uuuu Note: * stands for warm reset u stands for unchanged x stands for unknown Rev. 1.00 HT82M99EE/HT82M99AE RES Reset WDT RES Reset (Normal Time-Out (HALT) Operation) (HALT)* uuuu uuuu uuuu uuuu uuuu uuuu ...

Page 15

... TM1 11=Pulse width measurement mode 00=Unused Rev. 1.00 HT82M99EE/HT82M99AE nal (TMR) pin. The timer mode functions as a normal timer with the clock source coming from the f (Timer). The pulse width measurement mode can be used to count the high or low level duration of the exter- nal signal (TMR) ...

Page 16

... CMOS/NMOS/PMOS output or Schmitt trigger input with or without pull-high/low resistor struc- tures can be reconfigured dynamically under software Rev. 1.00 HT82M99EE/HT82M99AE control. To function as an input, the corresponding latch of the control register must write The input source also depends on the control register. If the control regis- ter bit the input will read the pad state ...

Page 17

... Note: *1: To make sure that the system oscillator has stabilized, the SST provides an extra delay of 1024 system clock pulses before entering the normal operation. *2: A low voltage has to exist for more than 1ms, after that 1ms delay, the device enters a reset mode. Rev. 1.00 HT82M99EE/HT82M99AE The relationship between V ) must LVR ...

Page 18

... EEPROM sends a zero to acknowledge that it has re- ceived each word. This happens during the ninth clock cycle. Rev. 1.00 HT82M99EE/HT82M99AE Device Addressing The 1K EEPROM devices all require an 8-bit device ad- dress word following a start condition to enable the chip for a read or write operation. The device address word ...

Page 19

... The address roll over during write from the Rev. 1.00 HT82M99EE/HT82M99AE last byte of the current page to the first byte of the same page. Once the device address with the read/write select bit set to one is clocked in and ac- knowledged by the EEPROM, the current address data word is serially clocked out ...

Page 20

... The bitmaps are listed as follows: Register Register Name R/W Address Pipe_ctrl R/W 01000001B STALL R/W 01000011B PIPE R 01000100B STALL (43H) and PIPE (44H) Registers Rev. 1.00 HT82M99EE/HT82M99AE STALL PIPE SIES MISC 43H 44H 45H Bank 1, Address 40H, 4AH, 4FH Register Memory Mapping Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Address value ...

Page 21

... End of transient flag, normal status suspend= 1 line & EOT= 0 indicates that EOT R something is wrong in the USB Interface. The programmer must do something to save the device and keep it alive. MNI R/W This bit is for masking the NAK interrupt when MNI the default value= 0 Rev. 1.00 HT82M99EE/HT82M99AE Read/Write MNI R/W EOT R R/W NAK R ...

Page 22

... FIFO pointer register (FIFO0, FIFO1). The following are two examples for reading and writing the FIFO data: HT82M99EE/HT82M99AE FIFO is read by packet. To read from FIFO, the following should be followed: Select one set of FIFO, set in the read mode (MISC TX bit = 0), and set the REQ bit ...

Page 23

... When the resume signal is sent out by the host, the HT8M99E will wake-up the MCU by USB interrupt and Rev. 1.00 HT82M99EE/HT82M99AE MISC Setting Flow and Status 00H 01H delay check 41H read* from FIFO0 register and check if not ready (01H) 03H 02H ...

Page 24

... Port-B Control (15H) PBC This port configures the input or output mode of Port-B for I/O mode Rev. 1.00 HT82M99EE/HT82M99AE and SUSB (bit 5 of the USR). If SPS2=1, and SUSB=0, the HT8M99E is defined as PS2 interface, pin USBD- is now defined as PS2 Data pin and USBD+ is now de- fined as PS2 Clk pin ...

Page 25

... PEC4 R/W 5 PEC5 R/W 7 PEC7 R/W Rev. 1.00 HT82M99EE/HT82M99AE Option Functions USB suspend mode status bit. When 1, indicates that the USB SUSPEND system entry is in suspend mode. RMOT_WK USB remote wake-up signal. The default value When RESUME_OUT EVENT, RESUME_O is set RESUME_O The default value ...

Page 26

... TBHP enable/disable (default: disable output mode (CMOS/NMOS/PMOS) by bit (default: CMOS) Note: The LVR voltage is define as 2.7V±0.3V and default is enable. Rev. 1.00 HT82M99EE/HT82M99AE Option Functions ¾ Reserved USB clock control bit. When set to ²1², indicates a USBCK ON, USBCKEN else USBCK OFF. The default value is ²0². ...

Page 27

... RES to high. X1 can use 6MHz or 12MHz close OSC1 & OSC2 as possible Components with * are used for EMC issue. Components with ** are used for resonator only. Components with *** are used for 12MHz application. Rev. 1.00 HT82M99EE/HT82M99AE 27 February 8, 2006 ...

Page 28

... Rotate data memory left through carry Data Move MOV A,[m] Move data memory to ACC MOV [m],A Move ACC to data memory MOV A,x Move immediate data to ACC Bit Operation CLR [m].i Clear bit of data memory SET [m].i Set bit of data memory Rev. 1.00 HT82M99EE/HT82M99AE Description 28 Instruction Flag Cycle Affected 1 Z,C,AC,OV (1) 1 Z,C,AC,OV 1 Z,C,AC,OV ...

Page 29

... The flags may be affected by the execution status. If the Watchdog Timer is cleared by executing the CLR WDT1 or CLR WDT2 instruction, the TO and PDF are cleared. Otherwise the TO and PDF flags remain unchanged. (5) : ROM code TBHP option is enabled (6) : ROM code TBHP option is disabled Rev. 1.00 HT82M99EE/HT82M99AE Description 29 Instruction Flag Cycle Affected 2 ...

Page 30

... ACC+x Affected flag(s) TO ADDM A,[m] Add the accumulator to the data memory Description The contents of the specified data memory and the accumulator are added. The result is stored in the data memory. Operation [m] ACC+[m] Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF PDF ...

Page 31

... Operation Stack Program Counter+1 Program Counter Affected flag(s) TO CLR [m] Clear data memory Description The contents of the specified data memory are cleared to 0. Operation [m] 00H Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF addr PDF OV Z ...

Page 32

... Affected flag( CPL [m] Complement data memory Description Each bit of the specified data memory is logically complemented (1 s complement). Bits which previously contained a 1 are changed to 0 and vice-versa. Operation [m] [m] Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF OV ...

Page 33

... Data in the specified data memory is decremented by 1, leaving the result in the accumula- tor. The contents of the data memory remain unchanged. Operation ACC [m] 1 Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF (ACC.3~ACC.0)+6, AC1=AC (ACC.3~ACC.0), AC1=0 ACC.7~ACC.4+6+AC1,C=1 ACC.7~ACC.4+AC1,C=C ...

Page 34

... Operation Program Counter Affected flag(s) TO MOV A,[m] Move data memory to the accumulator Description The contents of the specified data memory are copied to the accumulator. Operation ACC [m] Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE Program Counter+1 PDF PDF PDF ...

Page 35

... Logical OR data memory with the accumulator Description Data in the data memory (one of the data memories) and the accumulator perform a bitwise logical_OR operation. The result is stored in the data memory. Operation [m] ACC OR [m] Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF Program Counter+1 ...

Page 36

... Rotate data memory left and place result in the accumulator Description Data in the specified data memory is rotated 1 bit left with bit 7 rotated into bit 0, leaving the rotated result in the accumulator. The contents of the data memory remain unchanged. Operation ACC.(i+1) ACC.0 [m].7 Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE Stack PDF Stack PDF ...

Page 37

... The contents of the specified data memory and the carry flag are together rotated 1 bit right. Bit 0 replaces the carry bit; the original carry flag is rotated into the bit 7 position. Operation [m].i [m].(i+1); [m].i:bit i of the data memory (i=0~6) [m]. [m].0 Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF [m].i; [m].i:bit i of the data memory (i=0~6) PDF PDF OV ...

Page 38

... If the result is 0, the following instruction, fetched during the current instruction execution, is discarded and a dummy cycle is replaced to get the proper instruction (2 cy- cles). Otherwise proceed with the next instruction (1 cycle). Operation Skip if ([m] 1)=0, ACC Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF OV Z ...

Page 39

... If bit i of the specified data memory is not 0, the next instruction is skipped. If bit i of the data memory is not 0, the following instruction, fetched during the current instruction execution, is discarded and a dummy cycle is replaced to get the proper instruction (2 cycles). Other- wise proceed with the next instruction (1 cycle). Operation Skip if [m].i 0 Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF ...

Page 40

... Swap data memory and place result in the accumulator Description The low-order and high-order nibbles of the specified data memory are interchanged, writ- ing the result to the accumulator. The contents of the data memory remain unchanged. Operation ACC.3~ACC.0 ACC.7~ACC.4 Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF ...

Page 41

... The low byte of ROM code (current page) addressed by the table pointer (TBLP) is moved to the specified data memory and the high byte transferred to TBLH directly. Operation [m] ROM code (low byte) TBLH ROM code (high byte) Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF ...

Page 42

... XOR A,x Logical XOR immediate data to the accumulator Description Data in the accumulator and the specified data perform a bitwise logical Exclusive_OR op- eration. The result is stored in the accumulator. The 0 flag is affected. Operation ACC ACC XOR x Affected flag(s) TO Rev. 1.00 HT82M99EE/HT82M99AE PDF PDF PDF OV ...

Page 43

... Package Information 20-pin DIP (300mil) Outline Dimensions Symbol Rev. 1.00 HT82M99EE/HT82M99AE Dimensions in mil Min. Nom. 1020 240 125 125 16 50 100 295 335 0 43 Max. 1045 260 135 145 20 70 315 375 15 February 8, 2006 ...

Page 44

... SOP (300mil) Outline Dimensions Symbol Rev. 1.00 HT82M99EE/HT82M99AE Dimensions in mil Min. Nom. 394 290 14 490 Max. 419 300 20 510 104 February 8, 2006 ...

Page 45

... Product Tape and Reel Specifications Reel Dimensions SOP 20W Symbol Description A Reel Outer Diameter B Reel Inner Diameter C Spindle Hole Diameter D Key Slit Width T1 Space Between Flange T2 Reel Thickness Rev. 1.00 HT82M99EE/HT82M99AE Dimensions in mm 330 1 62 1.5 13+0.5 0.2 2 0.5 24.8+0.3 0.2 30.2 0.2 45 February 8, 2006 ...

Page 46

... Carrier Tape Width P Cavity Pitch E Perforation Position F Cavity to Perforation (Width Direction) D Perforation Diameter D1 Cavity Hole Diameter P0 Perforation Pitch P1 Cavity to Perforation (Length Direction) A0 Cavity Length B0 Cavity Width K0 Cavity Depth t Carrier Tape Thickness C Cover Tape Width Rev. 1.00 HT82M99EE/HT82M99AE Dimensions in mm 24+0.3 0.1 12 0.1 1.75 0.1 11.5 0.1 1.5+0.1 1.5+0.25 4 0.1 2 0.1 10.8 0.1 13.3 0.1 3.2 0.1 0.3 0.05 21.3 46 February 8, 2006 ...

Page 47

... Holtek s products are not authorized for use as critical components in life support devices or systems. Holtek reserves the right to alter its products without prior notification. For the most up-to-date information, please visit our web site at http://www.holtek.com.tw. Rev. 1.00 HT82M99EE/HT82M99AE 47 February 8, 2006 ...

Related keywords