Revision 1.0
Page 15 of 25
Headset Reference Design v1.0
3.3.1 USB Interface
The USB interface is handled by the Sonix SN11220 USB Audio Controller. All the USB communications
are handled by the SN11220. The audio samples are 16 bit linear PCM on the I2S port, where the micro
controller acts as a bus master (PADFUN mode 4’1100 in the SN11220ACF data sheet). The audio frame
signals are derived from the 2.048 MHz clock output from the USB controller. This synchronizes the audio
frames with the USB audio frames. The micro controller can also access the USB HID interface through
the I2C bus, also with the micro controller as the bus master.
3.3.2 Micro controller
The micro controller is an AVR, ATmega88 that runs on a 6.00 MHz crystal. The micro controller’s main
tasks are:
•
Setting up USB controller and radio circuits.
•
Converting 16 bit PCM audio samples from the USB controller to 8 bit a-law samples for the radio
circuit.
•
Converting 8-bit a-law samples from the radio circuit to 16-bit linear PCM.
•
Handling the RF protocol.
•
Optional HID interface for communication with PC application.
In addition, an LED output is available. The LED will light up when USB audio activity is present on the
USB port.
3.3.3 Radio circuit
The radio circuit (nRF24L01) is a complete radio transceiver for use in the unlicensed 2.4 GHz band. A 16
MHz crystal is used as frequency reference for the RF and an antenna is included in the layout.
3.3.4 Power supply
The USB dongle is powered from the USB port and needs no extra supply.
3.3.5 Programming
A 6-pin ISP connector is available on the back of the PCB. The included ISP cable can be used to connect
this connector to an AVR programming tool like the STK500 from Atmel.The programming procedure is as
follows:
1.
If the unit has never been programmed, set the AVR fuses:
• Preserve EEPROM memory through chip erase cycle; [EESAVE = 0]
• Brown-out detection level at Vcc=2.7V; [BODLEVEL=101]
• Ext. Full-swing Crystal; [CKSEL=0111 SUT=01]
2.
Write the SW hex file into the AVR program memory.
3.
Write a 3-byte ID into the AVR EEprom. The address should be written with the MSB at address
00.