958 - Lattice Mico System: Can user deploy LatticeMico32 code to a non-volatile memory with the JTAG UART active?

958 - Lattice Mico System: Can user deploy LatticeMico32 code to a non-volatile memory with the JTAG UART active?

Lattice Mico System: The LatticeMico32 Software Project Environment (SPE) provides a framework for interfacing to functions defined in the stdio.h library. Functions like fopen, fread, printf, and fclose are, by default, tied to the JTAG UART. The JTAG UART permits the functions defined in stdio.h to interact with content residing on the host PC. The ability to interact with content on a host PC using the JTAG UART depends on interactions with the LatticeMico32 Gnu Debugger (GDB).

The process used to deploy code removes access to the GDB interface. Any access to the stdio.h functions made after deploying your code causes the LatticeMico32 to wait indefinitely for a GDB connection that will never occur.

You can always deploy code that is compiled with STDIN, STDOUT, and STDERR redirected to the JTAG UART. You just need to make sure that no function that accesses these file handles is called once your code is deployed.

You can read more about code deployment in the LatticeMico32 Software Developer Guide.