Oki JOB60851 user manual Products

Page 56

Chapter 4 Software Development

A bus monitor also comes in handy during host driver development when the personal computer hangs, making it impossible to pinpoint the exact circumstances producing the failure.

Bus monitor data is also highly effective in tracing host controller operation and evaluating the final product.

As of August 1999, the following bus monitors are commercially available.

Products:

CATC USB Chief™ Bus & Protocol Analyzers

 

CATC USB Inspector™ Bus & Protocol Analyzer

Developer:

Computer Access Technology Corporation (CATC)

 

http://www.catc.com/

Japanese distributor:

Toyo Technica Co., Ltd.

 

http://www.toyo.co.jp/

 

 

Product:

Genoa Technology USB Expert™ Protocol Analyzer

Product:

Genoa Technology, Incorporated.

 

http://www.gentech.com/

Japanese distributor:

Bits Co., Ltd.

 

http://www.bits.co.jp/

 

 

(2)Microcontroller emulator

The JOB60851 Starter Kit provides printf(), scanf(), and other C standard I/O library functions for confirmation of operation and simple debugging of programs running on its MSM66Q573 microcontroller. Thorough debugging with program tracing and other facilities for illuminating firmware problems, however, requires an emulator (in-circuit emulator, ROM emulator, etc.) for the target microcontroller. Look for such tools from the microcontroller vendor and third- party sources.

4-3-8. Note on Porting

JOB60851 programming uses a version of the C programming language extended for embedded applications. The following is a list of extension requiring special attention when porting the sample firmware to other microcontrollers and compilers. For further details on these language extension, refer to the compiler manual (Cc665s.pdf) and programming guide (Pg665s.pdf) on the CD-ROM.

(1)#pragma ABSOLUTE variable_name address

This pragma permits specification of the final absolute address for a variable at the C source code level.

(2)#pragma ACAL function_name

This pragma calls the specified function with the more efficient ACAL instruction instead of the normal CAL instruction--provided that the function starts at an address between 1000h and 17ffh. Delete or disable these pragmas when porting the source code to a different microcontroller.

(3)#pragma INTERRUPT function_name vector

This pragma makes the specified function into an interrupt service routine by assigning its entry point to a vector table entry. This microcontroller has separate interrupt vectors for various internal and external interrupts. The sample firmware, however, uses only external interrupts from the USB controller.

page 4-21

Image 56
Contents JOB60851 Starter Kit Page OKI Contents Software Development Port 7 LED2 Control Introduction 1. Packing List Checking Packing ListIntroduction Host Environment Icons Precaution for Safe and Proper UseLabels Use only the specified voltage Do not pile objects on top of the productUse only the cables and other accessories provided Notation Putting Board through Its Paces Putting Board through its Paces SetupConfiguring JOB60851 Board Installing Development Software Running Default Program Connecting BoardInstalling USB Driver Running Flash Memory ProgramUse the -u command line option to view the USB pipe numbers Running User Programs Connecting Serial Cable Loading Terminal EmulatorSynchronizing Link Downloading and ExecutingOverwriting Flash Memory Contents System Specifications System Specifications System ComponentsSystem Objective System ComponentsUse only the AC adapter included with the product Hardware SpecificationConnectors and Switches System Specifications Circuit Diagram 2. Circuit Diagram 1/2System Specifications Parts List 1. Parts List 1/24. Memory Map for Download Mode Memory Maps5. Memory Map for Flash Execution Mode 6. Memory Map for Application Mode 7. Memory Map for Flash Rewrite Mode 1. MSM66Q573 Pin Assignments 1/2 System LimitationsResources Uses System Specifications 1. MSM66Q573 Pin Assignments 2/2 P11-3/XTOUTSoftware Development Software Development USB BasicsBus Topology, Addresses, and Hot Plugging Specification Documents Core Specifications2. USB Data Flow Types Data Flow TypesBus Transactions 3. lists the USB packet types PacketsEndpoints Device Class Specifications 5. USB Device Class SpecificationsData Rates 4. Maximum Payload SizesDevice Requests Standard Device Requests6. Device Request Types 7. Control Transfer Data PacketDevice Descriptors Device Descriptor for Bidirectional PrinterString descriptor Setup Sample Firmware SpecificationsSample USB Firmware 1. Sample USB FirmwareConfirming USB Compliance with Usbcheck.exe Sample USB Host SoftwareCompiling and Executing Sample USB Firmware Software Development Creating USB Mouse Demo Modifying Application Layer Receive Only Skeleton Simple Debugging Evaluating USB EquipmentDevice Controller Specifications 1. ML60851C SpecificationsUSB Bits and Pieces Overview of ML60851C OperationConnecting Microcontroller to USB Controller 1. ML60851C Block DiagramSpecial USB Considerations 2. Microcontroller with 16- or 32-Bit BusOther Tools Necessary Building a ProductVendor and Product IDs Products Limitations Port 7 LED2 Control Port 7 RegistersChanging LED2 Color Sample Port 7 Control Program Standard I/O over Serial Link JOB60851 Board Standard I/OSerial Port 2. Serial Port StructureSerial port SIO0 Chapter Internal timer 9 and following Read and write Functions 3. read Operation4. write Operation Sample Program Using Standard Output Standard I/O ExamplesSample Program Using Standard Input Debugging with Standard I/O