USB helper functions *************************** Opens the ULINK device Currently, only the original ULINK is supported
Releases the ULINK interface and closes the USB device handle.
ULINK CPU (EZ-USB) specific functions ******************* Writes '0' or '1' to the CPUCS register, putting the EZ-USB CPU into reset or out of reset.
Puts the ULINK's EZ-USB microcontroller into reset state, downloads the firmware image, resumes the microcontroller and re-enumerates USB devices.
Downloads a firmware image to the ULINK's EZ-USB microcontroller over the USB bus.
Print the OpenULINK command queue to stdout.
Perform JTAG scan Creates and appends a JTAG scan command to the OpenULINK command queue. A JTAG scan consists of three steps: - Move to the desired SHIFT state, depending on scan type (IR/DR scan). - Shift TDI data into the JTAG chain, optionally reading the TDO pin. - Move to the desired end state.
Perform TAP state transitions
Generate a defined amount of TCK clock cycles All other JTAG signals are left unchanged.
Arbitrarily set JTAG output signals.
Sleep for a pre-defined number of microseconds
Test command. Used to check if the ULINK device is ready to accept new commands.
Sleep for a specific amount of time.
Generate TCK cycles while remaining in a stable state.
Perform post-processing of commands after OpenULINK queue has been executed.
Send one contiguous firmware section to the ULINK's EZ-USB microcontroller over the USB bus.
OpenULINK command queue helper functions ***************** Get the current number of bytes in the queue, including command IDs.
Clear the OpenULINK command queue.
Add a command to the OpenULINK command queue.
Sends all queued OpenULINK commands to the ULINK for execution.
Move from the current TAP state to the current TAP end state.
Perform a scan operation on a JTAG register.
Move the TAP into the Test Logic Reset state.
Execute a JTAG_RESET command
Move to one TAP state or several states in succession.