I have an application for Zynq MPSoC (Vitis 2020.2) written in C++ using FreeRTOS V10.3.0. This application runs very well if stops at a breakpoint once. If I disable all breakpoints program runs buggy? What might be problem?
Why FreeRTOS requires stop once in a breakpoint to run well?
237 Views Asked by muradaltay At
1
There are 1 best solutions below
Related Questions in EMBEDDED
- MSP430F5529 on the MSPEXP430F5529LP: UART is not actually transmitting despite seemingly correct setup. What is wrong?
- A FPGA Project Proposal where I can use both PS and PL
- Program doesn't run after DFU
- Sending struct through queue
- How to generate a VPI warpmap for polynomial distortion correction?
- How to present this example concept in UML: Using 2 LCD displays in C/C++
- CLion: Debug via St-Link
- Portenta H7 Baremetal Development and a Little Guidance on Embedded System Learning Roadmap
- STM32 RTC3 Mixed Mode: Writing TR resets SSR
- Unable to read value from gpio set as input
- Mbed TLS: in-place en-/decryption for OAEP doesn't seem to work
- Shared variable read from low priority thread in preemptive scheduling
- Own Pattern / framework for interfacing with components in C
- Performance Difference Between Global Variable and Local Variable in Embedded Systems
- Comparing analog signal from Electret mic with samples
Related Questions in BREAKPOINTS
- Why breakpoint location is +4 bytes to the function address?
- How to Set a Breakpoint in React Native When Using iOS Simulator (and WebStorm)?
- Adding breakpoint in pdb results with "End of file"?
- Breakpoint cannot be stepped into
- How to change StackTrace to Code Edit in xcode source editor area
- VS Code debug breakpoint circle in line number
- can't set a breakpoint in vsc while writing in C - module hasn't loaded
- Bootstrap Columns. I'm unable to replicate this simple webpage design. What am I missing?
- typescript debugging with npm link
- Is it possible to obtain a trace output from the Microchip Debugger?
- Unable to Set Breakpoints in VSCode When Debugging React + TypeScript + Webpack
- A valid location could not be found for the breakpoint, in eclipse
- All breakpoints are being disabled in Android Studio when debugging Flutter's code
- Setup a watchpoint/breakpoint over a range of addresses with ptrace
- GDB not running debug window with send command
Related Questions in FREERTOS
- Amazon IoT OTA update Signature verification failed
- Encountering Core panic'ed when trying to use FreeRTOS queue in esp32
- Failing write/read on RH850 with NOR flash
- Sending struct through queue
- ESP8266 - Unable to connect to MQTT Server via SSL (mutual authentication)
- Why vTaskList and vTaskListTasks not working on FreeRTOS 11.0.1?
- Can't get watchdog to kick on freeRTOS application using S32K mcu
- Stack smashing protect failure! in ESP32
- FreeRTOS: Simple Queue program, values of Queue are not being printed on Serial Monitor
- stm32 FreeRTOS Interrupt cannot run smooth as i think
- ESP-32 (FreeRTOS): The serial monitor prints unknown symbols (???) instead of a string
- FreeRTOS Callback vs. Queue
- Failure on receiving a 64 bits return value
- how can my program tell if code is in a interrupt handler?(riscv32)
- ESP-IDF Compile error while Building CXX object file. ninja: build stopped: subcommand failed
Related Questions in ZYNQ-ULTRASCALE+
- zynqmp ptp clock adjustment
- How to trigger a software generated interrupt on core1 from core1 on bare metal?
- Zynq PetaLinux system PL needs to write to PS RAM - how do I provide PL with the correct physical address?
- how to simulate JTAG by SPI in zynq
- How to access ethernet ports from both RPU and APU?
- Cross-Compilation of Point Cloud Library for ARM Cortex R5
- Zynq Ultrascale (ZU3+) failing SD card init/ident process = "unsupported card inserted"
- Value is wrong first time pointer is dereferenced but correct after that
- How to access XDMA BAR0 in Petalinux?
- Why are the headers not found in the Xilinx SDK?
- How to access Xilinx Axi DMA from Linux?
- What is the reason I get this error using bootgen?
- Why FreeRTOS requires stop once in a breakpoint to run well?
- Xilinx Ultrascale UART not found on Big Sur
- UIO device no longer opens when an interrupt is added
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?
How many ways could this happen?! It is a real-time operating system, presumably then also a real-time application. If you stop the coprocessor you affect the timing. Without knowing the hardware, the software, where you are placing the breakpoint and the bugs that arise when free-running, it is not possible to answer your specific question. I.e. you need to debug it - there is no generic explanation as to why the intrusive action of stopping the processor "fixes" your system.
You clearly have buggy code that is affected by timing. Stopping the code does not necessarily stop peripherals and it certainly does not stop the outside world that your system interacts with. For example when you stop on a breakpoint, the world continues, interrupts become pending (possibly several), so that when you resume execution, the execution path and thread scheduling order is likely to differ considerably from that when it is free-run as all those pending interrupts are handled and in turn issue events that cause different tasks to become pending ready-to-run and then run in a different order to that which would otherwise occur.
Ultimately you are asking the wrong question; the breakpoint is not magically "fixing" your code, rather it is significantly changing the way that it runs such that some existing bug (or bugs) is hidden or avoided. The bug is still there, so the question would better focus on finding the bug than "magic thinking".
The bugs could be at any level, but most likely are design issues with inappropriate task partitioning, priority assignment, IPC, task synchronisation or resource protection. Generally probably rather too broad to deal with in a single SO question.