A C-language computer program implemented as firmware controls the operations of a microprocessor on a 3-by- 1-inch (approximately 76-by-25-mm) motion-control circuit board denoted a widget board. The firmware implements a serial communication interface according to the inter integrated circuit bus (I2C) standard by use of an interrupt-driven state machine to enable communication to occur during execution of commands. The firmware also controls the operation of a motion- control integrated-circuit chip, a serial analog-to-digital converter, a serial digital-to-analog converter, and the digital input/output lines of the microprocessor. The digital input/output control portion of the firmware offers a masking capability. The firmware includes a provision for dynamically downloading, to the widget board, of a small program (limited to 12 lines and to 256 bytes). A microexecutive program executes the downloaded program in a loop, with the option of continuous looping. The execution of the downloaded subprogram can be interrupted at the user’s request. The widget firmware includes a set of more than 48 commands, 24 control operations, and 24 query operations.

This program was written by Issa Nesnas of Caltech for NASA’s Jet Propulsion Laboratory. NPO-30243

This Brief includes a Technical Support Package (TSP).

Unfortunately the TSP Firmware for a Small Motion-Control Processor (reference NPO-30243) appears to be missing from our system.

Please contact This email address is being protected from spambots. You need JavaScript enabled to view it. for assistance in retrieving it.

Don't have an account? Sign up here.

Motion Control Tech Briefs Magazine

This article first appeared in the April, 2002 issue of Motion Control Tech Briefs Magazine.

Read more articles from the archives here.