A RAM-based interrupt-driven interface device is disclosed for establishing a
communication link between a universal serial
bus (
USB) host and a
microcontroller device for providing a
control function, the interface device being operative to receive digital information in the form of command, data and control packets from the host and to process the packets and communicate the processed digital information to the
microcontroller device, and in response thereto, the
microcontroller device being operative to communicate digital information to the interface device for
processing and transfer thereof to the host. The interface device includes means for receiving a command generated by the host through a
USB bus, means for storing the host-generated command and for generating an interface device interrupt
signal upon storage of said host-generated command for use by the microcontroller device in responding to the host-generated command, a microcontroller
bus for transferring microcontroller information and the interface device interrupt
signal between the interface device and the microcontroller device. The interface device further includes means for receiving a microcontroller command from the microcontroller device in response to said interface device interrupt
signal and means for storing the microcontroller command and it is operative to generate a microcontroller device interrupt signal upon storage of the microcontroller command for use by the interface device in developing an address for identification of the interface device to the host during subsequent communications therebetween, wherein during communication between the host and the interface device, the interface device-developed address is used by the interface device to identify host-provided information in the form of packets, and upon
processing of the host-provided information, to provide the microcontroller device with the necessary information to allow it to respond to the host thereby allowing a generic microcontroller device to be flexibly interfaced with a
USB, host for communication therebetween.