Example: bachelor of science

TMS320F280x DSP USB Connectivity Using …

Application Report SPRAA91 May 2006 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip David M. Alter DSP Applications Semiconductor Group ABSTRACT USB Connectivity on the TMS320F280x family of Digital Signal Controllers may be achieved Using the TUSB3410 USB to UART bridge chip. All needed USB descriptors and firmware for the TUSB3410 device are bootable from the on-chip memory of the TMS320F280x device through the I2C port, and hence an external EEPROM is not needed in the system. A USB development system for the TMS320F2808 is easily constructed Using readily available development kits for the TMS320F2808 and TUSB34310. Hardware connections as well as software preparation and operation of the development system Using a simple communication echo program are presented in this application report.

Application Report SPRAA91 – May 2006 TMS320F280x Digital Signal Controller USB Connectivity using the TUSB3410 USB-to-UART Bridge Chip David M. Alter DSP Applications – Semiconductor Group

Tags:

  Using, Connectivity, Usb connectivity using

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Advertisement

Transcription of TMS320F280x DSP USB Connectivity Using …

1 Application Report SPRAA91 May 2006 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip David M. Alter DSP Applications Semiconductor Group ABSTRACT USB Connectivity on the TMS320F280x family of Digital Signal Controllers may be achieved Using the TUSB3410 USB to UART bridge chip. All needed USB descriptors and firmware for the TUSB3410 device are bootable from the on-chip memory of the TMS320F280x device through the I2C port, and hence an external EEPROM is not needed in the system. A USB development system for the TMS320F2808 is easily constructed Using readily available development kits for the TMS320F2808 and TUSB34310. Hardware connections as well as software preparation and operation of the development system Using a simple communication echo program are presented in this application report.

2 Project collateral discussed in this application report can be downloaded from the following URL: TMS320 is a trademark of Texas Instruments Incorporated All trademarks are the property of their respective owners. SPRAA91 2 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip Contents 1 Introduction .. 3 2 USB Design Decisions with the TUSB3410 .. 4 VID and PID Values and Storage Location .. 4 Firmware Storage Location .. 5 Host Driver .. 5 Device Serialization .. 5 3 TMS320F280x to TUSB3410 Hardware Interface .. 6 4 Development System Description .. 7 5 Software .. 9 TUSB3410 Software .. 10 TMS320F280x Software .. 14 Host PC Software .. 16 6 Running the Development System .. 16 Running the RAM Example .. 16 Running the Flash Example .. 20 Baud Rate Selection Information .. 21 7 Conclusion .. 22 References .. 23 Figures Figure 1.

3 TUSB3410 In-System Usage .. 3 Figure 2. TMS320F280x to TUSB3410 Hardware Interface .. 7 Figure 3. Development System Connections .. 8 Figure 4. Development System Photograph .. 9 Figure 5. Files for Header Generator Utility for VCP Applications .. 10 Figure 6. Byte2 Word Utility Usage .. 12 Figure 7. Byte-packed ASCII Data File for TUSB3410 .. 13 Figure 8. Including the TUSB3410 Data into the TMS320F280x Code .. 13 Figure 9. Baud Rate Selection In HyperTerminal .. 21 Tables Table 1. Directory Structure of TMS320F2808 Example Code .. 14 Table 2. File Inventory for TMS320F2808 Example Code .. 15 SPRAA91 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip 3 USB Host (PC or On-The-Go Dual-Role Device) USB 1 Introduction The universal serial bus (USB) has become a defacto standard for interfacing external devices and equipment to Microsoft Windows based personal computers (PCs). Devices that only a few years ago communicated to the PC via a printer port or RS232 serial port today almost all employ USB instead.

4 In fact, the availability of RS232 and printer ports on new PCs has rapidly declined to the point of near extinction. As such, strong demand exists for USB Connectivity in those embedded applications requiring an interface to a PC. While some embedded controllers have an on-chip USB peripheral, the vast majority do not in order to maintain their cost effectiveness in those applications not requiring PC interfacing. Such is the situation with the current TMS320F280x family of digital signal controllers. However, cost-effective USB Connectivity can be implemented Using the Texas Instruments TUSB3410 USB to Serial Port Controller bridge chip. The TUSB3410 provides bridging between the USB port on the PC and a universal asynchronous receiver/transmitter port (UART) on the embedded controller, as depicted in Figure 1. Figure 1. TUSB3410 In-System Usage The TUSB3410 is an 8052 based microcontroller that contains integrated USB, UART, and I2C (Inter-Integrated Circuit) peripherals.

5 It is USB compliant, and supports UART baud rates of 50 Baud up to kBaud. It also contains 16K bytes of RAM that can be loaded from the host or bootloaded through the I2C port Using the ROM bootloader. All device functions, such as the USB command decoding, UART setup, and error reporting, are managed by the internal firmware under the auspices of the host. The reader is referred to [1] for complete information. On the embedded controller side, the family of devices under study here are the TMS320F280x1 Digital Signal Controllers. These devices contain an SCI module (Serial Communication Peripheral) that performs the UART function. Additionally, F280x devices contain an I2C module that can be used to bootload the TUSB3410 with the USB descriptors and firmware stored in the F280x on-chip flash memory. This eliminates the need for an external I2C EEPROM, which reduces system cost. Windows is a registered trademark of Microsoft Corporation.

6 1 TMS320F280x and the abbreviation F280x will hereafter refer specifically to TMS320F2801, TMS320F2802, TMS320F2806, TMS320F2808, and UCD9501 devices. UART Embedded Controller ( TMS320F280x ) TUSB3410 SPRAA91 4 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip This application report provides the needed information to implement one method of interfacing a TMS320F280x device with the TUSB3410. Details are provided for bootloading the TUSB3410 with the USB descriptors and firmware from the F280x on-chip flash memory. Example F280x software is provided that includes an I2C driver that performs the bootloading and also a simple SCI echo routine. The later can be used to echo back characters from a PC over the USB link Using any terminal software such as Microsoft HyperTerminal. Note that the focus of this application report is on the TMS320F280x to TUSB3410 hardware and software interface, and even within that scope only one potential approach is covered.

7 There exists significant Texas Instruments (TI) collateral covering numerous aspects of the TUSB3410 and how it handles the requirements of the USB protocol. The reader is strongly encouraged to review the numerous references provided at the end of this application report in order to obtain a more complete understanding. 2 USB Design Decisions with the TUSB3410 Certain design decisions must be made when Using the TUSB3410 USB controller device. This section provides a brief overview of these choices. The reader is referred to [7] for more details. As one reads this section, it is helpful to keep in mind that the TUSB3410 contains bootcode in factory masked ROM that always runs after the device is released from reset. The bootcode must obtain the USB descriptors from some source, handle USB enumeration with the host, download the TUSB3410 firmware from some source to on-chip RAM, and then transfer execution to that firmware. VID and PID Values and Storage Location For USB compliance, every USB product must have a unique vendor ID (VID) and a product ID (PID).

8 Each ID is two bytes long. The host uses the VID/PID combination to determine what driver to load. The VID and PID are reported to the USB host in the USB device descriptor when this descriptor is requested by the host. A unique VID can be obtained from the USB Implementers Forum ( ). A product ID can be whatever a vendor chooses, but since the VID/PID pair determines what driver is loaded by the host, the same PID should generally not be given to two different products unless they use the same driver. The TUSB3410 allows storage of the VID/PID in one of three places: in the on-chip boot ROM, on the host PC, or in an external EEPROM. Of these, only EEPROM storage is viable for meeting USB certification requirements. Storing the VID/PID in the on-chip ROM does not meet USB certification requirements since the ROM is factory masked. There is no way for the user to change the default VID and PID in the ROM, which incidentally are TI s VID (0x0451) and TI s selected PID for the TUSB3410 (0x3410).

9 Storing the VID/PID on the host PC also does not meet USB certification requirements because USB enumeration will take place before the host can download the VID/PID to the TUSB3410 (since the host doesn t know what to download until it identifies the device on the USB bus!). Hence, USB enumeration will occur Using the default VID/PID stored in the boot ROM, which does not meet USB certification requirements. Therefore, the VID/PID must be stored in an external EEPROM (connected to the TUSB3410 via the I2C port). This application report demonstrates storage of the VID/PID in an external EEPROM. More precisely, a focus of this application report is to use the F280x on-chip flash memory in place of an EEPROM in order to save cost. SPRAA91 TMS320F280x Digital Signal Controller USB Connectivity Using the TUSB3410 USB-to-UART Bridge Chip 5 Firmware Storage Location Firmware for the TUSB3410 can either be stored on the host PC or in an external EEPROM.

10 If stored on the host, the firmware binary file is downloaded to the TUSB3410 after the USB enumeration process. The TUSB3410 bootcode will handle enumeration, and assuming the host driver s INF file is configured properly, the host will associate the TUSB3410 with a driver. The driver can then download the application firmware to the TUSB3410. This is a perfectly legitimate method, and greatly reduces the storage size requirements in the external EEPROM (which, as previously mentioned, is still needed for VID/PID storage). A disadvantage of this method is that EEPROM serialization is required if unique serial numbers are desired for each product (see Section ). When the firmware is stored in an external EEPROM, the TUSB3410 bootcode simply downloads it after USB enumeration and begins execution. Storing firmware in EEPROM in TUSB3410 applications has the advantage of automatically Using the TUSB3410's unique device ID as the USB serial number (again, see Section ).


Related search queries