Delta Tau Forums
Global P variables in background C-PLCs - Printable Version

+- Delta Tau Forums (
+-- Forum: Delta Tau Data Systems (
+--- Forum: Power PMAC (
+--- Thread: Global P variables in background C-PLCs (/showthread.php?tid=2826)

Global P variables in background C-PLCs - kmonroe023 - 01-24-2019

We have some established programs running background C-PLCs that reference global P variables in the C code. We reference them using the notation "pshm->P[2]".

These C-plc's have been running fine on other Power Pmacs for a couple of years.

We recently upgraded to FW on one of our 465 UMAC processors. The C code appears to build and download, but none of the expressions that contain global P variables seem to evaluate. No code changes in the project, the only change is new FW in the PMAC.

We've verified that the PLCs are running by adding debug code that modifies a few variables in user shared memory, we then use the watch window and make sure the user shared memory locations update as expected when the C-plcs are running.

Any ideas as to why just the global P-variable expressions will not evaluate? We've tried cleaning the project before build and download, reboot then build, etc.

We're using IDE


RE: Global P variables in background C-PLCs - steve.milici - 01-28-2019

I have found that you need to not only execute the “Clean” but an “Unload” and “Reload” of the project. Also if you have any of the buffer sizes in the project properties different from the default you must also execute a reboot (or power cycle) at least once after the first “build and Download” after the firmware update. I was able to recreate the issue but resolved it after doing the above actions.