I'm not really sure what you are trying to do, but maybe you are referring to using the CmpCharDevice library? When you "open" the connection to a device, you can pass flags. What helped me is to set the non-blocking flag. I'm not sure if this is what you are referring to, but maybe it helps: dFlags: DINT := CmpCharDevice.ACCESS_MODE.O_RDONLY + DINT#4000; // see details for flags: http://linux.die.net/man/2/open, + DINT#4000 is for non-blocking hDevice := CmpCharDevice.CDOpen(szFilename, dFlags,...
https://en.wikipedia.org/wiki/Modbus
Maybe there is a better way, but a long time ago I created a test application that worked like this: With a button I opened the dialog and I added a "Input configuration - OnDialogClosed" "Execute ST-Code" action to this same button which called the following Function when the dialog was closed: F_OnFileDialogClosed(pClientData); Below this Function which handled the result: // This function is called from the visualization when the dialog is closed. FUNCTION F_OnFileDialogClosed : BOOL VAR_INPUT...
In the example project, you can see that a CAN.CANAreaReceiver is used which has an VAR_IN_OUT reference to a RECEIVER_AREA structure. This structure has a dwIdStart and dwIdEnd to filter a range of ID's and process them through the referenced msgProcessor.
In the example project, you can see that a CAN.CANAreaReceiver is used which has an VAR_IN_OUT reference to a RECEIVER_AREA structure. This structure has a dwIdStart and dwIdEnd to filter a range of ID's and process them throught the reference msgProcessor.
On a PC with the Control Win, this is probably related to the fact that the CAN drivers are not loaded. Go to the folder where your Control Win Configuration file is: - E.g. C:\ProgramData\CODESYS\CODESYSControlWinV3x64\E1FA7ABE - Open the CODESYSControl.cfg - Remove the semi-colon in front of the CAN driver you want to use (section ComponentManager). - Set the component ID to the next number in the list (e.g. Component.8) - Save this file and restart the Control Win.
For a demo application related to date/time, see: https://forge.codesys.com/prj/codesys-example/date-and-time/home/Home/
You will need a USB to RS485 converter to connect the PC to the Modbus RTU Slave Device. In Windows this converter will be recognized as Serial COM poort (e.g. COM2, or COM3, see the windows device manager to find this out). Select this port in your CODESYS application. On the PC you need to use the CODESYS Control Win (SoftPLC) to run your application. It will not work in simulation mode, because then the Modbus Communication will not be activated.