Login

ARM The Architecture For The Digital World  

ARM Community: USB: Can it really be easy? - ARM Community

Jump to content

USB: Can it really be easy?

Do you have a need to add USB to your embedded system, yet don't have the time to become an expert on USB? If so you're not alone. When you dig into the nuances of USB you will quickly find that developing a USB-enabled product is a fairly demanding task. While the hardware is simple enough the software can be quite complex. Firmware engineers find that developing the proper software on the device side requires extensive knowledge of the USB interface specification, and implementation of standard device classes like Human Interface Design (HID) or Mass Storage Class (MSC) is an additional layer of complexity, and what's the best use of your time? Becoming an expert on USB, or developing the core application of your product?

For engineers looking to rapidly implement a USB interface using HID or MSC I have found a refreshingly simple solution from NXP. The Cortex-M3 processor-based LPC1343 and the Cortex-M0 processor-based LPC11U1x have ROM code integrated into the devices to provide complete, USB certified code for both the HID and MSC class interfaces. Now instead of sleepless nights spent becoming an expert on USB, you only need to set up a few simple variables to describe the features of your system, and the code in ROM takes care of the rest. This not only saves you about 6K of flash space, it spares you the ordeal of digging into all of the nuts and bolts of USB. As a bonus the on-chip ROM also includes features to allow simple firmware updates using the ROM-based routines, another great feature you can add to your product, in essence, for free.

To help you learn how to develop using these devices from NXP I have developed a full day, hands-on workshop appropriately titled "USB Made Easy." Come to my class and you will learn basics of the ARM Cortex-M family of ARM Cores, how to use CMSIS, and an introduction to USB. Hands-on labs will teach you how to use the low cost LPCXpresso development system, and finally labs on HID, MSC and CDC (Communications Device Class) will provide practical experience in just how easy USB really can be. Cost for the class is $99 and you will go home with both LPC1343-based and LPC11U14-based LPCXpresso systems, a baseboard to extend the capability of the LPCXpresso systems as well as a free 128K code size limited "C" compiler, everything you need to start developing your own USB enabled system.

For more information on USB Made Easy please visit: www.em.avnet.com/usbmadeeasy

Guest Partner Blogger:
Attached Image
Jim Carver, Technical Director, Avnet Electronics Marketing Americas. An industry veteran for over 25 years, Carver is responsible for leading Avnet's investment in the ARM Architecture arena. A leading expert in microcontroller and security technologies, Carver has been integral in educating Avnet's customers on the advantages of these growing technologies. Carver has a BSCE degree from University of California San Diego.

ARM welcomes its wealth of Partners in the ARM Connected Community (CC) to submit guest blogs to be published on our multiple community blogs. If interested in participating please submit email inquiries to Tell.Us@arm.com.

The ARM Connected Community (CC) is an extensive ecosystem covering all aspects of ARM-based design, from chip implementation through to system and device design. The CC provides a platform for collaborative innovation, with multiple types of forums for members to work with one another, and with customers, to solve industry challenges, all with the purpose of enabling designers to focus on differentiating features and an accelerated time-to-market for ARM powered solutions.
All company and product names appearing in the ARM Blogs are trademarks and/or registered trademarks of ARM Limited per ARM’s official trademark list. All other product or service names mentioned herein are the trademarks of their respective owners.

0 Comments On This Entry

Please log in above to add a comment or register for an account