I have a design in Xilinx FPGA that is remote and I only have a JTAG connection. There is a feature in the Microblaze Debug Module IP that lets the user enable jtag uart. In the BSP there is a setting for which usart to use for stdin and stdout. When I open the drop down list there is only the "none" or "axi_uartlite_0" available. What I would really like to know is how can I change the STDIO to use the JTAG UART so that I can see what my app is printing. I see comments in other search results that say "just redirect stdio from the axi_uartlite to the jtag uart" but nowhere have I found exactly how to do that. That is exactly what I want to do - redirect STDIO from a physical uart to the jtag uart. If there is anyone who knows and is willing to pass along that information I would be extremely grateful and would give as many kudos as I possibly can. Thanks in advance for any and all assistance rendered - very thankful.
Connecting to the JTAG UART in a Microblaze application - redirecting stdio to the jtag_uart?
1.6k Views Asked by G Anson At
2
There are 2 best solutions below
0
Dave_98001
On
I am pretty sure that you need to add an MDM with the "Enable JTAG UART" check box, re-synthesize, re-build the bitstream, export the bit file, etc. After this is done, Vivado will update the settings which are used by SDK to configure the libraries, compiler, etc. The most obvious of these is the file XPARAMETERS.H.
So, yeah, a complete rebuild is needed, IMHO.
This is part of XSCT (Xilinx Software Command-line Tool):
Related Questions in DEBUGGING
- How to pass the value of a function of one class to a function of another with the @property decorator
- Visual Studio C++, breakpoints not stopping debugging DLL (GODOT GDExtention)
- Playwright JS: Getting an error when debugging using line numbers
- C++ skips line when promting for user to enter name of person being added to a string array
- Xcode: Can't Attach to process
- unity navmeshsurface prefab not found or whatever
- It seems to be a bug about "base::trace()" or "methods:::.TraceWithMethods()"?
- How to check reference counting issues when doing direct manipulations of CPython objects?
- How to scroll to the bottom of console window in PyCharm2019 automatically?
- need help debugging prolog
- Is there a way to deactivate (but not delete) conditional breakpoints when debugging?
- How can i debug a python exe which is created by using pyinstaller?
- Increment or Decrement volume programmatically on Xiaomi device adjusts it by 10 steps instead of one step
- Checking request JSON with image data
- Why cannot I set font of `xlabel` in `plotmf` in MATLAB?
Related Questions in UART
- uart in vhdl send a string
- Time Delay while sending data through UART using WriteFile intervally for some duration
- Connect Strato4 to ESP32 using UART
- UART Driver for STM32MP25 by EDK2
- STM32 data transfer via UART
- I didn't receive what I'm expecting via UART communication
- How to increase baudrate on Device Manager Windows?
- UART sending gaps
- How can I use STM32F103 to read TMC2226's register
- IOT: Is there any way to check serial port are having signal before connecting?
- UART commands for a barcode scanner?
- In zephyr-rtos, how to run the `echo_bot` example?
- How to display data from uart on Raspberry PI 4
- The uart on the FPGA is working half-heartedly. But it works correctly in simulation. Why is this so?
- Interfacing RFID with STM32
Related Questions in XILINX
- Substitution to DirectFB Library
- VHDL Error - Washing Machine - unresolved signal is multiply driven
- Where do I find the Xilinx xc7z007sclg400-1 master constaint file?
- Can SYSCLK be included in FPGA Xilinx vivado testbenches?
- Are FPGA GPIOs capable enough to read bits at a high rate (26Mbps)? If not, what is a possible way?
- u-boot stuck at starting kernel for zybo z7
- embedded linux buildroot how to work with axi-gpio?
- buildroot for zedboard, how to enable axi-gpio in device tree?
- How to use High Clock Frequency using clock wizard (BuffPll) in xilinx for serial communication?
- how to implement a Vhdl code for 2bit karatsuba algorithm
- Zynq UltraScale+ zcu3eg - coresight trace
- AMD/Xilinx SystemVerilog class variables disappeared in sript vs. project simulation
- Timing closure problems in FIFO
- Xilinx Vivado schematic for if else statements
- Isim not running
Related Questions in JTAG
- Unable to hit breakpoint with JTAG gdb on Raspberry Pi
- OpenOCD failed to read memory
- esp-idf openocd with jtag could not start
- how to use openocd jtag burning FUSE_USER
- There is a different googletagmanager in the site code
- Disabling JTAG PINS on STM32f103RCT6
- JTAG Daisy chain debugging using eclipse
- STM32F407 Debugging via JTAG: STICKYERR issue with DHCSR register access
- Trouble debugging ESP-32 with ESP-PROG and OpenOCD
- Using Openocd on raspberrypi for ARM CC3200 debug
- how to simulate JTAG by SPI in zynq
- Flashing Esp32 using Raspberrypi GPIO via openocd (JTAG connection)
- Breakpoint implementation in RTOS + jtag
- Target multicore configuration wrong in JTAG T32
- Debugging problem with the RSL10 microcontroller
Related Questions in MICROBLAZE
- FPGA/VHDL Trying to impelement a shared memory between my Basys 3 FPGA Board and a MicroBlaze Softprocessor
- lwip stack / modified echo server example -> sending data
- Serial COM freeze. CTRL C release it. No idea where to begin debug. Embedded Linux Applications
- How to Read Data from a specific address of the FPGA QSPI Flash board?
- Problem with Vitis 2022.2 compile versus 2019.1 compiler when using a -D argument to pass a header file in
- What am I doing wrong in this Microblaze assembly bubble sort?
- Interrupt in Microblaze on AXI_GPIO (XILINX FPGA)
- Microblaze How to use AXI Stream?
- Eth could work with Kintex US without DDR option enable?
- Connecting to the JTAG UART in a Microblaze application - redirecting stdio to the jtag_uart?
- Viewing Microblaze Processor Output with out Serial Port
- MicroBlaze without Vitis
- Microblaze & C++ | Why does the code size increase dramatically under certain conditions?
- Why might `i2c_smbus_write_byte_data` be returning "Operation not permitted" on uClinux 2.4?
- Microblaze on QEMU not producing serial output
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I have solved this issue by starting from scratch and recreating the entire design. It appeared that by just adding the "Enable JTAG UART" check box in the MicroBlaze Debug Module (MDM) and generating the bitstream and exporting the hardware was insufficient to add that functionality to the BSP.
Once I did the generate/export and created a completely new app based upon that BSP I was able to see prints on the jtagterminal.
So, I believe there is some weird behavior in the first process followed. More work to resolve should be done but for now I'm moving forward. I hope this somehow helps others with similar problems.