Note to developers:
In debug mode, I was looking at the DAC registers in the Peripherals+ view. DAC0-C2 is shown as 0xbf, but DACBFUP [3:0] is shown as 0x1f (? should be 0xf), and DACBFRP [7:4] is shown as 0xb (ok). uP is K22FX512A.
Thanks for the report. In order to investigate this, please can you confirm:
MCUXpresso IDE Support
Version 10.2.0 build 759.
The software used was the twrk21f120m_dac_continuous_pdb_edma example
from the SDK_2.x_TWR-21F120M version 2.3.1, manifest 3.2.0.
Probe is the PE multilink universal.
The uP used is a K22FX512AVLQ12 on a custom board. The software example
mentioned above was not modified. The example ran as expected on my board.
I assume the IDE is using the wrong mask (0x1F) to extract the DACBFUP
from DAC0_C2, rather than the correct mask of 0x0F.
By the way, I have complained before about the incorrect information in
the K22P144M120SF5V2RM reference manual, Rev. 5, concerning the size of
the DAC buffer.
How about change to another debug probe ? For example J-link?
There is a same issure with yours, you can have a look at comment from LPCX presso support .
Interpreting Peripherals+ data
Hi Mike, welcome to the club! I think MCUX doesn't get a lot of testing with P&E hardware. I normally use a Cyclone ACP and I'm finding the peripherals view is so full of errors as to be completely untrustworthy. I've got single-bit fields showing up with '2' for the value.
Datasheet feedback also seems to go into a black hole if the part has been out for more than a few months. But if it's any consolation, my experience with Silicon Labs and Atmel lately has been worse.
I'm told the description files for the Peripherals+ view can be found (and edited) in the SDK but I haven't had a chance to chase that down yet. I'm not sure how the files are associated, since I'm not using SDK projects.
Another possibility is the EmbSysRegView plugin, which hasn't been totally reliable for me either, but it seems to be editable.
I have modified the MK22FA12_internal_peripheral.xml file located at
successfully, changing the peripherals view. However, nothing in the
.xml file shows why P&E is displaying errors. I made changes so that
the DAC buffer would show as 16-bit values and the DMA->TCD values were
grouped by channels. But then I discovered that if I hover over the DMA
variables while stopped in debug, the TCDs show up grouped properly.
I have not found anything in the .project file that specifically points
to the .xml support file.
I just discovered the hover thing too - turns out a bunch of the fields DO have useful descriptions, but they're only visible as tooltips! Which are placed UNDER the mouse pointer, so there's always a part that's blocked from view.
If I debug with my Cyclone, PDB0:LDOK shows up with a value of 0x2, as does SWTRIG. These are both 1-bit fields. Nothing else changes between runs, but with an LPC-Link2 the values show up as 0, like they should.
Decoding registers is one of the basic things I expect from an embedded IDE and I can't believe it's this frustrating to get working right in MCUX. Here's one screenshot that shows the Peripherals view (doesn't work at all, was just enabled by default), the Peripherals+ view (with the hover descriptions) and EmbSysRegView, which is working pretty well now, except the repository has been broken for months (years?) and you have to jump through hoops to install it.
Retrieving data ...