2024-07-09 08:27 AM
Hi, I am implementing UART transmission using DMA. The output of the TX pin is hooked up to logic analyzer and shows that some data remains on the tx pins after the board being updated with new version of the code. The data shows even if I remove the code with the transmit function and so it seems as if it is being held somewhere in the hardware on the MCU. The first run of the software is okay.
First Run:
Second Run:
Third run with Transmit_.. commented out:
thx.
2024-07-09 08:43 AM - edited 2024-07-09 08:58 AM
@476RG wrote:some data remains on the tx pins after the board being updated with new version of the code.
I don't understand what you mean by that?
Please explain what your traces are showing.
2024-07-09 05:12 PM
If data is being sent out on UART_TX after reset, it is being done by the code on the board. There is no UART peripheral memory that persists after reset.
Look to your code and debug for the answers.
2024-07-10 04:14 AM
This is the output on the tx, when all the code is removed and literally programmed with no content. That's why I think that the data is retained somewhere in the HW.
I am using DMA in circular mode and without stopping it, the transmission cycles with the same data until the memory gets an update.
I attempted flushing the uarts after the transmission is finished but it does not have an effect.
2024-07-10 11:31 AM
Attach your code exactly how you are describing that the HW is still sending data with code removed. Include the IOC file.
2024-07-10 04:55 PM
I assure you, if the chip is erased (i.e. has no content), there will be no activity on the UART line. Not too much help can be provided here without seeing any code. The issue you're running into is certainly a code bug of some sort.