Before you could run the "demo.elf" file on MicroBlaze you should configure the "stdio output".
You shoud click "Run">"Run Configurations...".
A pop-up "Run Configutations" will appear. Click "demo.elf" (if it is not already selected) and then click "SDIO Connection" tab.
Check () the box "Connect STDIO to Console" and select as port "JTAG UART". Then click "Apply" button.
Then click "Close" button. The pop-up will close.
To change perspective you should click "Window">"Open Perspective">"Debug".
The new perspective is the following.
With this application, you can test the PC ↔ USB ↔ JTAG ↔ FPGA communication using a simulated UART (XMD_UART) on JTAG/USB connection.
In this simple case you can simply click "Run" > "Run"
In the console the menu of demo.elf should appear. If the menu doesn't appear you have probably set RS232 instead of debug (mdm) and/or set incorrectly "Stdio output".
If you write the character "a" the RAM test should start.
In the XMD console you shoud write "rst" and then click "return" on the keyboard.
After this you should open some terminal emulators (because you want to input/output some characters with the XMD UART), such as
Connect using the following settings:
The UART settings (not required by ClearTerminal) are:
In the XMD console you shoud write "stop" and then click "return" on the keyboard.
In the XMD console you shoud write "run" and then click "return" on the keyboard.
After this two further step the menu of "demo.elf" should appear in the terminal emulator.
In the console the menu of demo.elf should appear. If the menu doesn't appear you have probably set RS232 instead of debug (mdm) and/or set incorrectly "Stdio output".
If you write the character "a" the RAM test should start.
To use the demo project without the XMD UART, you need to use "RS232" instead of "debug_module" as standard in/out port. Otherwise the application running on the Microblaze processor freezes if you disconnect the XMD. To accomplish that you need to set up the Microblaze "Software Platform Settings".
The UART is then redirected to external pins, which are defined in the data/system.ucf file.
The UART settings are:
The following snippet shows the case of the TE0300 series modules:
Module RS232 constraints*
Net fpga_0_RS232_RX_pin LOC=B13;
Net fpga_0_RS232_TX_pin LOC=B14;
Please refer to the table below for other module series relevant to this application note.
TE series | RS232_RX | RS232_RX | RS232_TX | RS232_TX |
---|---|---|---|---|
TE0300 | R6 | J5-29 | P6 | J5-31 |
TE0320 | V17 | J5-IO18 | W17 | J5-IO19 |
TE0630 | Y7 | J5-29 | AB7 | J5-31 |
TE0303 | It doesn't apply | J1-33 | It doesn't apply | J1-34 |
TE0304 | It doesn't apply | J1-3 | It doesn't apply | J1-2 |
TE0323 | It doesn't apply | J4-35 | It doesn't apply | J4-37 |
host (PC) | TX | TX | RX | RX |