CPLD Firmware

CPLD Firmware#

Firmware update#

Warning

This firmware is a third-party implementation and is not affiliated with or endorsed by Altera or Intel. It is intended for educational, development, prototyping, and other lawful purposes only.

Ensure that you comply with all applicable laws and regulations when using this firmware. Use is at your own risk. The user assumes all responsibility for any consequences, including potential legal implications. The author and distributor of this firmware are not liable for any damage, misuse, or legal issues arising from its use.

Proceed with caution and discretion.

Note

The contents of this chapter are hosted in the unit_ch55x_docker_sdk.git repository. Always remember to keep Docker Desktop open in your computer; otherwise, the commands will not work properly.

To start using your CH552 USB Multi-Protocol Programmer as a CPLD/FPGA programmer, follow these steps:

cd examples/USB/Prog/CPLD/src

In that directory, open descriptor.h inside that file, change lines 13 and 14 of the code as shown below:

Configuration

Initial configuration

Only change the zeros for ones

Configuration

New configuration

Once you’ve changed this data, run the following command in your terminal:

Linux#

./spkg/spkg -p ./examples/USB/Prog/CPLD

Windows#

./spkg/spkg.bat -p ./examples/USB/Prog/CPLD

The command creates a .bin file inside the build folder. Then open WCHIspStudio to upload the firmware

WchispStudio

Settings WCHIspStudio

  • In Object File 1 make sure to enter the correct path to the directory with the firmware.

  • Make sure the “Automatic Download When Device Connect” option is enabled.

  • To add the path you have to click on this bottom “…” and check.

Note

Before connecting your Multi-Protocol Programmer, make sure to power it with +5V. You can do this by setting your switch to +5V.

  • Push the Boot bottom and connect your Multi-Protocol Programmer to your computer.

  • Wait until de firmware has finished updating your device.

Done! Now you can use your UNIT CH552 Multi-Protocol Programmer!

Note

To program an FPGA and a CPLD, use the JTAG Protocol. For more information, check the pinout.