AN264 USB FM RADIO. 1. Introduction. 2. System Overview. USB Microcontroller with ADC. Host PC. FM Tuner. Audio Signal Conditioning



Similar documents
ZigBee-2.4-DK 2.4 GHZ ZIGBEE DEVELOPMENT KIT USER S GUIDE. 1. Kit Contents. Figure GHz ZigBee Development Kit

USB FM Radio-RD USB FM RADIO USER S GUIDE. 1. USB FM Radio Setup. One-time set-up enables configuration of presets and region specific FM band

PC Base Adapter Daughter Card UART GPIO. Figure 1. ToolStick Development Platform Block Diagram

How To Develop A Toolstick

AN220 USB DRIVER CUSTOMIZATION

AN220 USB DRIVER CUSTOMIZATION

AN104 I NTEGRATING KEIL 8051 TOOLS INTO THE SILICON LABS IDE. 1. Introduction. 2. Key Points. 3. Create a Project in the Silicon Labs IDE

APPLICATION. si32library. Callback CMSIS HARDWARE. Figure 1. Firmware Layer Block Diagram

CP2110-EK CP2110 EVALUATION KIT USER S GUIDE. 1. Kit Contents. 2. Relevant Documentation. 3. Software Setup

UG103.8 APPLICATION DEVELOPMENT FUNDAMENTALS: TOOLS

AN588 ENERGY HARVESTING REFERENCE DESIGN USER S GUIDE. 1. Kit Contents. 2. Introduction. Figure 1. Energy Harvesting Sensor Node

In the idle state, the TIP lead will be high impedance to ground and the RING lead will have the battery voltage. See Figure 1.

1 Software Overview ncp-uart ash-v3-test-app ash-v3-test-app Command Line Options Testing... 2

QSG105 GETTING STARTED WITH SILICON LABS WIRELESS NETWORKING SOFTWARE

AN335 USB DRIVER INSTALLATION UTILITY. 1. Description. 2. Installation Install Package

AN655 R ANGE TEST APPLICATION FOR EZRADIO AND EZRADIOPRO. 1. Introduction. 2. Supported Radio Types

TS1005 Demo Board COMPONENT LIST. Ordering Information. SC70 Packaging Demo Board SOT23 Packaging Demo Board TS1005DB TS1005DB-SOT

Software Real Time Clock Implementation on MC9S08LG32

AN108 IMPLEMENTING A REALTIME CLOCK. Relevant Devices. Introduction. Key Points. Overview

AND8336. Design Examples of On Board Dual Supply Voltage Logic Translators. Prepared by: Jim Lepkowski ON Semiconductor.

USER GUIDE EDBG. Description

Figure 1. 8-Bit USB Debug Adapter

AN295 USB AUDIO CLASS TUTORIAL. 1. Introduction. 2. USB, Isochronous Transfers, and the Audio Class Overview USB Operational Overview

CodeWarrior Development Studio for Freescale S12(X) Microcontrollers Quick Start

AN335 USB DRIVER INSTALLATION METHODS. 1. Introduction. 2. Relevant Documentation. 3. DPInst Installation and Customization

AN437. Si4432 RF PERFORMANCE AND FCC COMPLIANCE TEST RESULTS. 1. Introduction. 2. Relevant Measurements to comply with FCC

Design Considerations in Adding USB Communications to Embedded Applications

AND9035/D. BELASIGNA 250 and 300 for Low-Bandwidth Applications APPLICATION NOTE

AN3998 Application note

Simple SDR Receiver. Looking for some hardware to learn about SDR? This project may be just what you need to explore this hot topic!

Hardware Configurations for the i.mx Family USB Modules

AN111: Using 8-Bit MCUs in 5 Volt Systems

Using WinUSB in a Visual Studio Project with Freescale USB device controller

M68EVB908QL4 Development Board for Motorola MC68HC908QL4

TivaWare USB Library USER S GUIDE SW-TM4C-USBL-UG Copyright Texas Instruments Incorporated

AN10866 LPC1700 secondary USB bootloader

Programming Audio Applications in the i.mx21 MC9328MX21

LOW POWER NARROWBAND FM IF

SMARTCARD XPRO. Preface. SMART ARM-based Microcontrollers USER GUIDE

AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE

Bootloader with AES Encryption

Kanguru Micro MP3 PRO USB2.0 User s Manual

Genesi Pegasos II Setup

AT88CK490 Evaluation Kit

Quick Start Guide. MRB-KW01 Development Platform Radio Utility Application Demo MODULAR REFERENCE BOARD

Welcome to the tutorial for the MPLAB Starter Kit for dspic DSCs

Flexible Active Shutter Control Interface using the MC1323x

DSO138 oscilloscope program upgrade method

Block 3 Size 0 KB 0 KB 16KB 32KB. Start Address N/A N/A F4000H F0000H. Start Address FA000H F8000H F8000H F8000H. Block 2 Size 8KB 16KB 16KB 16KB

Blood Pressure Monitor Using Flexis QE128 Gabriel Sanchez RTAC Americas

MCF54418 NAND Flash Controller

Tiny Audio C3. English TINY AUDIO C3. Please read carefully before using this product

UART Boot Loader Design on the Kinetis E Series

HP Advanced Wireless Docking Station. User Guide

UG103.8: Application Development Fundamentals: Tools

Application Note AN_209. AN_209 PDIUSBD12 to FT120 Migration Guide

Current Digital to Analog Converter

AN114. Scope. Safety. Materials H AND SOLDERING TUTORIAL FOR FINE PITCH QFP DEVICES. Optional. Required. 5. Solder flux - liquid type in dispenser

How To Add A Usb Secondary Ipo Bootloader To An Lpc23Xx Flash Device To A Flash Device

USER GUIDE Programming Adapter Cable for Fujitsu Flash Microcontroller- F²MC-16LX/FR Family Fujitsu Microelectronics America, Inc.

7 OUT1 8 OUT2 9 OUT3 10 OUT4 11 OUT5 12 OUT6 13 OUT7 14 OUT8 15 OUT9 16 OUT10 17 OUT11 18 OUT12 19 OUT13 20 OUT14 21 OUT15 22 OUT16 OUT17 23 OUT18

Audio player on KwikStik

Digital Guitar Effects Pedal

Board Layout & Guidelines Using the

How To Use A Watt Saver On A Microcontroller (Watt Saver) On A Cell Phone Or Mp3 Player

Features + REFCLK CLKOUT. Si DATAOUT DATAIN LOS LTR RESET/CAL CLKDSBL LOS_LVL REXT SLICE_LVL BER_LVL. Si5013-EVB

DKWF121 WF121-A B/G/N MODULE EVALUATION BOARD

UM0834 User manual. Developing and debugging your STM8S-DISCOVERY application code. Introduction. Reference documents

Designing an Induction Cooker Using the S08PT Family

Microtronics technologies Mobile:

Freescale Semiconductor, Inc. Product Brief Integrated Portable System Processor DragonBall ΤΜ

APPLICATION NOTE. AT07175: SAM-BA Bootloader for SAM D21. Atmel SAM D21. Introduction. Features

Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs

Implementing SPI Master and Slave Functionality Using the Z8 Encore! F083A

AN LPC1700 timer triggered memory to GPIO data transfer. Document information. LPC1700, GPIO, DMA, Timer0, Sleep Mode

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

Output Filter Design for EMI Rejection of the AAT5101 Class D Audio Amplifier

AN3252 Application note

AND8326/D. PCB Design Guidelines for Dual Power Supply Voltage Translators

AN LPC1700 RTC hardware auto calibration. Document information. RTC, Hardware Auto Calibration, LPC1700, Graphic LCD

PAC52XX Clock Control Firmware Design

Internal Oscillator. I 2 C Interface. SPI Interface. Controller. Internal Registers Port Controller. Eight I/O Pins. Figure 1.

H203D 中文 GB Version 1

COM Port Stress Test

73S1215F, 73S1217F Device Firmware Upgrade Host Driver/Application Development User s Guide April 27, 2009 Rev UG_12xxF_029

Old Company Name in Catalogs and Other Documents

Data Transfer between Two USB Flash SCSI Disks using a Touch Screen

Simplifying System Design Using the CS4350 PLL DAC

How To Fix An Lmx9838 Bluetooth Serial Port Module With Bluetooth (Bluetooth 2) From A Bluetooth Bluetooth 4.2 Device With A Bluembee 2.2 Module

udrive-usd-g1 Embedded DOS micro-drive Module Data Sheet

APPLICATION NOTE Atmel AT02509: In House Unit with Bluetooth Low Energy Module Hardware User Guide 8-bit Atmel Microcontroller Features Description

Initializing the TSEC Controller

AN3265 Application note

DCT-16 USB HD Audio Converter

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

How To Use An Atmel Atmel Avr32848 Demo For Android (32Bit) With A Microcontroller (32B) And An Android Accessory (32D) On A Microcontroller (32Gb) On An Android Phone Or

WAN_0240. I 2 S USB Audio Streaming INTRODUCTION IDENTIFYING THE FIRMWARE HARDWARE CONFIGURATION SOFTWARE CONFIGURATION

8-bit. Application Note. Microcontrollers. AVR282: USB Firmware Upgrade for AT90USB

Digital Radio/DAB+/FM RDS digital clock radio with dual alarm Operating instruction

SKP16C62P Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

Transcription:

USB FM RADIO 1. Introduction This USB FM Radio design is intended as a reference for incorporating FM radio functionality into a USB product. The design consists of two major components, the Si4701 FM radio receiver and the C8051F321 microcontroller with a built-in universal serial bus (USB) peripheral. Due to the high level of system integration of both of these components, the total design is very small with fewer external components than many other solutions. The software, firmware, schematic, and layout source for this design are located in AN264SW.zip. The latest version of these files as well as this document itself can be found at the following URL: http://www.silabs.com/usbradio 2. System Overview The system consists of a Windows application that communicates with the C8051F321 using the USB connection. The C8051F321 microcontroller controls the Si4701 using the serial peripheral interface (SPI). The Si4701 audio outputs are sampled using the C8051F321 s analog-to-digital converter (ADC) and sent to the host across the USB interface. The Windows application plays the audio using the PC speakers or headphones. Antenna Host PC USB USB Microcontroller with ADC SPI FM Tuner Audio Signal Conditioning Figure 1. System Block Diagram Rev. 0.1 11/05 Copyright 2005 by Silicon Laboratories AN264

3. Hardware The schematic and layout for the USB FM Radio design are located in "Appendix A Schematics" on page 4 and "Appendix B Layout" on page 6. The board consists of two layers with parts on one side only. ESD Protection The design includes electrostatic discharge (ESD) protection on both the antenna and USB connection using Littlefuse s SP0503BAHT and California Micro s CM1213, respectively. Analog Audio Filter The Si4701 audio outputs are amplified and filtered before the C8051F321 s ADC samples them. The dual package op-amp, ON Semiconductor s MC33202, is used to create a single-pole low-pass filter with a corner at 23405 Hz and a gain of 3. Antenna Input The antenna signal is conditioned using C1, C20, and L1 as recommended in AN231: Si4700/01 Headphone and Antenna Interface. Reference Clock Generation The 32.768 khz reference clock for the Si4701 is generated using a watch crystal. The C8051F321 drives the crystal to oscillate and runs this signal through an asynchronous comparator creating the required reference clock. 4. Firmware The firmware listings for the C8051F321 can be found in AN264SW.zip, under the Firmware directory. The provided firmware has been developed using the Keil C compiler, assembler, linker, and the Silicon Laboratories IDE. The overall organization of the firmware is straightforward. It begins by initializing all necessary device peripherals and the Si4701 FM tuner. Once this is complete, the microcontroller operates in one of two modes, command or audio. In command mode, the device can accept control commands from the USB host for operations such as seeking, tuning, or saving presets. In audio mode, the microcontroller sends ADC samples and a small amount of status information up to the host. The MCU enters audio mode once the host has started polling for audio data, and exits when it receives any command from the host. USB Profile This device presents four different interfaces to the host when it enumerates. Three of these are active at any given time. The audio control interface is used by the host to control different parts of the audio functions. There is also a zero-bandwidth streaming interface and a full-bandwidth streaming interface. Only one of these interfaces is used at a time. Finally, there is a Human Interface Device (HID) interface used for all other required device communication, such as controlling the Si4701 and upgrading the C8051F321 flash image. ADC Sampling The 10-bit ADC on the C8051F321 is used to sample both the audio channels. The ADC sample rate is 192 khz, and it switches between the right and left channel between successive conversions using the onchip ADC multiplexer. The audio sample rate for stereo samples is consequently 96 khz, and each audio sample is 4 bytes in size. These are sent to the host in signed two s complement format. USB Transfer Type The audio streaming interface uses isochronous USB transfers to send audio data to the host. Since the audio sample rate is 96 khz and each sample is 4 bytes in size, the device transfers 384 bytes per millisecond across the bus. Microcontroller Flash Upgrade The firmware includes a command interpreter that is capable of upgrading the device s flash image. This code is capable of parsing HID commands to read/write and check integrity of flash pages. However, it is not a true boot loader because it not functional without a valid external code image to handle USB enumeration. This means that if the flash upgrade process fails, the device will be inoperable. 2 Rev. 0.1

5. Windows Software The graphical user interface (GUI) software is located in AN264SW.zip, under the GUI directory. This software was developed in C++ using Visual Studio 6.0. When the GUI is first launched, it begins by looking for a USB FM Radio device. Once a device is found, it is opened up as a USB Audio Device for audio streaming and as a HID device for FM Tuner control. In addition, the default WAV output device is opened to playback the audio stream. Audio Stream The host application uses a circular buffer of 20 32 kb blocks to accept audio from the USB FM Radio device. Initially, 19 of the buffers are filled with audio data. Next, this data is sent to the WAV output device, and as streaming continues, pointers to the first free block and first playable block are incremented around the circular buffer to provide a constant and seamless flow of audio. Audio will stream until a user action occurs such as tune, seek, or an alteration of radio settings. When this occurs, the audio stream will stop, and the commands for the requested action are sent down through the HID interface. Once the acknowledgement of the command comes back, the GUI is updated and stream playback will continue. Device Status In addition to the audio streaming, the device is also polled for its current attributes such as the current station, the received signal strength, and a stereo/mono indicator. As this information changes, it will also change on the display of the GUI. Device Removal Audio streaming and polling will stop if the device is disconnected from the USB. In this case, all of the device handles are closed, and the host application will begin to poll for connected devices. USB Device Driver Because Windows has built-in drivers for USB audio and HID class devices, the USB FM Radio does not require an OEM supplied driver disk for operation. The player executable is the only required user software. A similar approach is possible for other operating systems, if they have built-in support for these two USB device classes. Rev. 0.1 3

APPENDIX A SCHEMATICS 100 nh Figure 2. Schematic Page 1 4 Rev. 0.1

Figure 3. Schematic Page 2 Rev. 0.1 5

APPENDIX B LAYOUT 6 Rev. 0.1

APPENDIX C BILL OF MATERIALS Qty Part Value Package Manufacturer 1 C1 100 pf 0402 2 C2 3 68 pf 0402 4 C4, C7, C10, C17 1.0 µf 0402 7 C5 6, C8-9, C11, C13 14 0.1 µf 0402 1 C12 4.7 µf 0805 2 C15 16 22000 pf 0402 3 C18 20 22 pf 0402 1 D1 Bi-Color LED 0605 1 D2 CM1213-01ST SOT23 California Micro Devices 1 FB1 Ferrite Chip 0603 1 J1 KUSB-SMT2-AP5S-B SMT Kycon 1 L1 0402CS-R10XJL 100 nh Coilcraft 2 R1, R18 1 kω 0402 2 R2 3 10 Ω 0402 2 R4, R10 49.9 kω 0402 2 R5, R9 18.2 kω 0402 3 R6, R12, R17 10 MΩ 0402 2 R7, R13 30.1 kω 0402 2 R8, R11 100 kω 0402 1 R16 0 Ω 0603 2 R7, R13 30.1 kω 0402 1 U1 C8051F321 QFN28 Silicon Laboratories 1 U2 Si4701 QFN24 Silicon Laboratories 1 U3 SP0503BAHT SOT143 Littlefuse 1 U4 MC33202DMR2OS Micro-8 ON Semiconductor 1 Y1 32.7680 khz Crystal SE3201 Rev. 0.1 7

CONTACT INFORMATION Silicon Laboratories Inc. 4635 Boston Lane Austin, TX 78735 Email:MCUinfo@silabs.com Internet: www.silabs.com The information in this document is believed to be accurate in all respects at the time of publication but is subject to change without notice. Silicon Laboratories assumes no responsibility for errors and omissions, and disclaims responsibility for any consequences resulting from the use of information included herein. Additionally, Silicon Laboratories assumes no responsibility for the functioning of undescribed features or parameters. Silicon Laboratories reserves the right to make changes without further notice. Silicon Laboratories makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Silicon Laboratories assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. Silicon Laboratories products are not designed, intended, or authorized for use in applications intended to support or sustain life, or for any other application in which the failure of the Silicon Laboratories product could create a situation where personal injury or death may occur. Should Buyer purchase or use Silicon Laboratories products for any such unintended or unauthorized application, Buyer shall indemnify and hold Silicon Laboratories harmless against all claims and damages. Silicon Laboratories and Silicon Labs are trademarks of Silicon Laboratories Inc. Other products or brandnames mentioned herein are trademarks or registered trademarks of their respective holders. 8 Rev. 0.1