1. An interface for providing control of a hardware device, the interface comprising: functional code embedded in circuitry of the interface, the functional code being operative to provide control of the hardware device by sending signals to and receiving signals from the hardware device; and emulator code embedded in programmable circuitry of the interface, the emulator code being operative to emulate the hardware device during testing of the functional code and the interface.