Oki JOB60851 user manual Device Descriptors, Device Descriptor for Bidirectional Printer

Page 43

Chapter 4 Software Development

7

SET_DESCRIPTOR

Update or add a descriptor

8

GET_CONFIGURATION

Return the current device configuration value

9

SET_CONFIGURATION

Set the device configuration value

10

GET_INTERFACE

Return the selected alternate setting for the specified interface

11

SET_INTERFACE

Set the alternate setting for the specified interface

12

SYNCH_FRAME

Set and report an endpoint's synchronization frame

4-1-12. Device Descriptors

When a USB device first connects to the bus, it reports its attributes to the host with a device descriptor. Figure 4.1.3 illustrates the hierarchical structure of this data structure with the device descriptor for a bidirectional printer.

Endpoint descriptors give the physical capabilities of the endpoints already discussed in Section 4.1.7 above.

Groups of endpoint descriptors form logical communications functions called interfaces. These interfaces support alternate settings for changing the interface and thus device characteristics. Note that these interfaces are mutually exclusive in that only one can be in use at any given time.

n Device

 

 

 

 

o Configuration #1

 

 

 

 

 

 

 

 

 

u Interface #1

alternate setting #0

; output-only printer

 

 

 

 

 

 

 

 

¡ Endpoint #1

BulkOut

 

 

 

 

 

 

 

 

 

 

u Interface #1

alternate setting #1

; bidirectional printer

 

 

 

 

 

 

 

 

¡ Endpoint #1

BulkOut

 

 

 

 

 

 

 

 

 

 

 

 

¡ Endpoint #2

BulkIn

 

 

 

 

 

 

 

 

 

 

u Interface #1

alternate setting #2

; bidirectional printer

 

 

 

 

 

 

 

¡ Endpoint #1

BulkOut

 

 

 

 

 

 

 

 

 

 

¡ Endpoint #2

BulkIn

 

 

 

 

 

 

 

 

 

 

¡ Endpoint #3

InterruptIn

; Inform of data volumes by interrupt transfer

 

 

 

 

 

 

 

 

 

 

Figure 4.1.3.

Device Descriptor for Bidirectional Printer

Higher up the hierarchy are the configuration and device layers. The same device can have multiple configurations--drawing its power from the bus or its own local power supply, for example. It can even start as a power-saving device and later switch to a high-consumption one.

The following are brief listings of descriptor contents. For detailed descriptions, refer to Section 9.4 of the USB version 1.1 specifications.

(1) Device descriptor

USB Specification release number in binary coded decimal

Device class code

Device subclass code

Protocol code

Maximum packet size for endpoint 0 (EP0)

Vendor and product IDs

page 4-8

Image 43
Contents JOB60851 Starter Kit Page OKI Contents Software Development Port 7 LED2 Control Introduction Introduction Checking Packing List1. Packing List Host Environment Labels Precaution for Safe and Proper UseIcons Do not pile objects on top of the product Use only the specified voltageUse only the cables and other accessories provided Notation Putting Board through Its Paces Configuring JOB60851 Board SetupPutting Board through its Paces Installing Development Software Running Flash Memory Program Running Default ProgramConnecting Board Installing USB DriverUse the -u command line option to view the USB pipe numbers Running User Programs Loading Terminal Emulator Connecting Serial CableDownloading and Executing Synchronizing LinkOverwriting Flash Memory Contents System Specifications System Components System SpecificationsSystem Components System ObjectiveConnectors and Switches Hardware SpecificationUse only the AC adapter included with the product System Specifications 2. Circuit Diagram 1/2 Circuit DiagramSystem Specifications 1. Parts List 1/2 Parts ListMemory Maps 4. Memory Map for Download Mode5. Memory Map for Flash Execution Mode 6. Memory Map for Application Mode 7. Memory Map for Flash Rewrite Mode Resources Uses System Limitations1. MSM66Q573 Pin Assignments 1/2 P11-3/XTOUT System Specifications 1. MSM66Q573 Pin Assignments 2/2Software Development Bus Topology, Addresses, and Hot Plugging USB BasicsSoftware Development Core Specifications Specification DocumentsBus Transactions Data Flow Types2. USB Data Flow Types Endpoints Packets3. lists the USB packet types 4. Maximum Payload Sizes Device Class Specifications5. USB Device Class Specifications Data Rates7. Control Transfer Data Packet Device RequestsStandard Device Requests 6. Device Request TypesDevice Descriptor for Bidirectional Printer Device DescriptorsString descriptor 1. Sample USB Firmware SetupSample Firmware Specifications Sample USB FirmwareCompiling and Executing Sample USB Firmware Sample USB Host SoftwareConfirming USB Compliance with Usbcheck.exe Software Development Creating USB Mouse Demo Modifying Application Layer Receive Only Skeleton Evaluating USB Equipment Simple DebuggingOverview of ML60851C Operation Device Controller Specifications1. ML60851C Specifications USB Bits and Pieces1. ML60851C Block Diagram Connecting Microcontroller to USB Controller2. Microcontroller with 16- or 32-Bit Bus Special USB ConsiderationsVendor and Product IDs Building a ProductOther Tools Necessary Products Limitations Port 7 Registers Port 7 LED2 ControlChanging LED2 Color Sample Port 7 Control Program JOB60851 Board Standard I/O Standard I/O over Serial Link2. Serial Port Structure Serial PortSerial port SIO0 Chapter Internal timer 9 and following 3. read Operation Read and write Functions4. write Operation Standard I/O Examples Sample Program Using Standard OutputDebugging with Standard I/O Sample Program Using Standard Input