Font Size: a A A

The Design And Implementation Of USB Device Stack

Posted on:2012-02-20Degree:MasterType:Thesis
Country:ChinaCandidate:C K YeFull Text:PDF
GTID:2218330362457794Subject:Control Engineering
Abstract/Summary:PDF Full Text Request
With the popularity of USB and the development of embedded technology, the demand of USB in embedded system is increasing continuously. Under this background, this thesis designs a USB device stack for embedded system, and makes it implemented in demo board carrying NXP LPC2478 microcontroller (ARM7TDMI-S core).The USB device stack of this thesis adopts an open hierarchical structure and module structure. There are 3 layers, namely hardware layer, protocol layer and application layer, composing the stack from the bottom up. The hardware layer is responsible for hardware operation of USB device controller, including hardware initialization and USB packet transfer. The protocol layer processes everything defined in USB specification, such as bus enumeration, address assignment, configuration, power management, and all kinds of request handling. The application layer provides application program interfaces for users, making them be able to develop their own applications by calling these APIs. These 3 layers link together by special interfaces between layers, and finally form complete software architecture of USB device stack. Each layer can be refractored according to particular hardware environment or application environment, so as to improve the portability of the stack. Further more, there are all kinds of expansion interface, being used for expanding function.To test and verify the stack, this thesis realizes 3 typical USB classes, being listed as Communication Device Class (USBCDC), Mass Storage Class (USBMSC), and Test and Measurement Class (USBTMC). The implementation of USBCDC simulates the device as a USB virtual serial port so that a host computer can transmit/receive data with it through serial debugging tools. USBMSC realizes a removable disk, enabling a host computer to operate it freely like operating a common USB flash disk. And USBTMC makes it possible for the device to communicate with NI MAX (Measurement & Automation Explorer).
Keywords/Search Tags:Embedded System, USB, USBCDC, USBMSC, USBTMC
PDF Full Text Request
Related items