This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

程序运行中,无法用Expression窗口更改数值

Hello Ken,

请问一下,我想要利用Expression去更改数值,如下

例如要把case2的值改为4,但在运行程序时都无法变更,只能先暂停程序,才能变更。请问这是什麽原因呢?

有没有办法做到我的需求,可以实时的更改数值?

  • 你好。

    在CCS环境下,Hercules不能像C2000芯片那样进行实时调试,即你所说的在运行程序时,实时修改变量的值。

    有办法可以去尝试:

    1. 在你用到这个变量前的那一句设一个断点(假定你要改在这个变量会被经常调用,类似循环或周期性中断),然后把这个断点的属性改为“刷新所有窗口”而不是默认的在断点处停下来。

    2. 用串行通讯接口做一个人上位机,可以用UART、CAN或以太网等来做。

  • Hello Jay

    针对你说的第一个方法(刷新所有窗口),在CCS里是不是利用  暂停->刷新->运行 三个动作去完成? 

    若是,我在观测数据的时候,程式是一直暂停又运行的情况,会不会影响到我的软件?

    谢谢您

    Fan

  • 刷新窗口的时候CPU是暂停的,所以会对运行产生一定的影响。

    如果对实时性要求不是很高的应用,应该问题不大。

    如果实时性要求很高,建议用上位机通讯的方式来操作。

  • Hello Jay,

    但是我使用你第一个方式,原本我一个i++的指令,一秒大概会计数几万次,但是使用刷新窗口时,变成一秒钟才计数一次。

    程序被影响的很严重。还是谢谢您的指教。

    Fan