SN8P2200 Series
USB 1.1 Low-Speed 8-Bit Micro-Controller
SONiX TECHNOLOGY CO., LTD
Page 97
Version 1.7
9
UNIVERSAL SERIAL BUS (USB)
9.1
OVERVIEW
The USB is the answer to connectivity for the PC architecture. A fast, bi-directional, isochronous, low-cost, dynamically
attachable serial interface is consistent with the requirements of the PC platform of today and tomorrow. The SONIX
USB microcontrollers are optimized for human-interface computer peripherals such as a mouse, joystick, and game
pad.
USB Specification Compliance
—
Conforms to USB Low speed specifications, Version 1.1.
— Conforms to USB HID Specification, Version 1.11.
— Supports 1 low-speed USB device address.
— Supports 1 control endpoint and 3 interrupt endpoints.
— Integrated USB transceiver.
— 5V to 3.3V regulator for supply IC power and pull-up resistor on D- when the USB function enable.
9.2
USB MACHINE
The USB machine allows the microcontroller to communicate with the USB host. The hardware handles the following
USB bus activity independently of the microcontroller.
The USB machine will do:
‧
Translate the encoded received data and format the data to be transmitted on the bus.
‧
CRC checking and generation by hardware. If CRC is not correct, hardware will not send any response to USB host.
‧
Send and update the data toggle bit (Data1/0) automatically by hardware.
‧
Send appropriate ACK/NAK/STALL handshakes control by USB control registers.
‧
SETUP, IN, or OUT Token type identification. Set the appropriate bit once a valid token is received.
‧
Place valid received data in the appropriate endpoint FIFOs.
‧
Bit stuffing/unstuffing.
‧
Address checking. Ignore the transactions not addressed to the device.
‧
Endpoint checking. Check the endpoint’s request from USB host, and set the appropriate bit of registers.
‧
Send the ACK handshake to the OUT token response automatically by hardware.
Firmware is required to handle the rest of the following tasks:
‧
Coordinate enumeration by decoding USB device requests.
‧
Fill and empty the FIFOs.
‧
Suspend/Resume coordination.
‧
Remote wake up function.
‧
Determine the right interrupt request of USB communication.