This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

MDK 4.54: Issues with watch window / system viewer

In my project (STM32F407, MDK-ARM4.54) I cannot change the values of peripheral registers in the watch window. The values are displayed correctly, but I cannot change them. (e. g. ADC1->JSQR - channel selection register of ADC1). Possibly it is due to the variable range (0x40000000 compared to 0x2000000)? The normal variables work well now, also the static members of classes, thank you very much.

I tried to open the system viewer to have a look at the ADC1 module there, but the system viewer sub-menu in MDK-ARM4.54 is displayed empty (not any sub-entries) - in earlier versions I think I could have a look at the controller modules there.

PS: It is not ultimately required for me, to change values of peripheral registers in the watch window, I can live with MDK 4.54 well - just it would be helpful, if this would work.

Parents
  • Hi,

    > I enter ADC1 in the watch window. Then I press the + to open the members.
    > Then at JSQR it will show the current value correctly (if I do it like I
    > described for the Blinky example, then the value will be just zero).
    > If I change this value to e. g. "5", I can do this, but as soon I press
    > Enter, it switches back to the init value (zero in the Blinky example
    > above).

    Sorry, I over read that you enter the "ADC1" manually, this seems to be the point.
    Can you please try and mouse right click on "ADC1", Send to Watch1 ?

    .
    BR,
    /th.

Reply
  • Hi,

    > I enter ADC1 in the watch window. Then I press the + to open the members.
    > Then at JSQR it will show the current value correctly (if I do it like I
    > described for the Blinky example, then the value will be just zero).
    > If I change this value to e. g. "5", I can do this, but as soon I press
    > Enter, it switches back to the init value (zero in the Blinky example
    > above).

    Sorry, I over read that you enter the "ADC1" manually, this seems to be the point.
    Can you please try and mouse right click on "ADC1", Send to Watch1 ?

    .
    BR,
    /th.

Children
  • I also tried this already.

    I also tried to enter ADC1->JSQR in the watch window already.

    Further I tried already to send ADC1->JSQR to the watch window ... .

    Did you try already to enter ADC1 manually in the watch window? Either of these methods should work any way - and on my system none is working.

  • > Did you try already to enter ADC1 manually in the watch window?
    yes, I did and now (see my prev. posting) I see the problem.

    > Either of these methods should work any way - and on my system none is working.

    whoops ...
    I can see that the "manually entered" version is not running correctly, the others do work and that's why I could not see the problem in the first place.

    We will have a closer look what happens there, and keep you informed.

    Thanks for reporting!

    .
    BR,
    /th.

  • ok - shame over me, you are right, I just tested again in my Blinky:

    If you use right mouse key and "Add 'ADC1' to..." -> "Watch1", then it really works (it shows this address "((ADC_TypeDef *) ((((uint32_t)0x40000000) + 0x00010000) + 0x2000))" in the Name column of the watch window).

    Only if you enter "ADC1" manually, then it will show only the values, but the value change fails.

  • Thanks for the info, now we have the same behavior reproducible on both sides :-)
    We'll work on this!