lpcmanager

Smarteh 485: slave address of RX buffer must match the address of sent TX buffer in order to be accepted. If reception is not successful data is not copied to beremiz buffer (memcpy()).
<?xml version='1.0' encoding='utf-8'?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.plcopen.org/xml/tc6_0201" xmlns:xhtml="http://www.w3.org/1999/xhtml" xsi:schemaLocation="http://www.plcopen.org/xml/tc6_0201">
<fileHeader companyName="Beremiz" productName="Beremiz" productVersion="0.0" creationDateTime="2008-12-14T16:53:26"/>
<contentHeader name="Beremiz non-standard POUs library" modificationDateTime="2014-03-17T08:07:24">
<coordinateInfo>
<fbd>
<scaling x="0" y="0"/>
</fbd>
<ld>
<scaling x="0" y="0"/>
</ld>
<sfc>
<scaling x="0" y="0"/>
</sfc>
</coordinateInfo>
</contentHeader>
<types>
<dataTypes/>
<pous>
<pou name="getRTC" pouType="functionBlock">
<interface>
<outputVars>
<variable name="DT_STR">
<type>
<string/>
</type>
</variable>
<variable name="VALID">
<type>
<BOOL/>
</type>
</variable>
<variable name="YEAR">
<type>
<UINT/>
</type>
</variable>
<variable name="MONTH">
<type>
<UINT/>
</type>
</variable>
<variable name="DAY">
<type>
<UINT/>
</type>
</variable>
<variable name="WDAY">
<type>
<UINT/>
</type>
</variable>
<variable name="HOUR">
<type>
<UINT/>
</type>
</variable>
<variable name="MINUTE">
<type>
<UINT/>
</type>
</variable>
<variable name="SECOND">
<type>
<UINT/>
</type>
</variable>
</outputVars>
<localVars>
<variable name="pooll0">
<type>
<derived name="python_poll"/>
</type>
</variable>
<variable name="ACK">
<type>
<BOOL/>
</type>
</variable>
<variable name="INPUT_VALUE_CODE">
<type>
<string/>
</type>
</variable>
<variable name="CODE">
<type>
<string/>
</type>
</variable>
</localVars>
</interface>
<body>
<ST>
<xhtml:p><![CDATA[INPUT_VALUE_CODE:=CONCAT('PLCObject.MWProvider.GetRTC()'); pooll0(TRIG:=TRUE, CODE:=INPUT_VALUE_CODE, ACK => ACK, RESULT => DT_STR); VALID:=STRING_TO_BOOL(IN:=MID(IN:=DT_STR,L:=1,P:=23)); YEAR:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=4,P:=1)); MONTH:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=2,P:=6)); DAY:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=2,P:=9)); WDAY:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=1,P:=21)); HOUR:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=2,P:=12)); MINUTE:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=2,P:=15)); SECOND:=STRING_TO_UINT(IN:=MID(IN:=DT_STR,L:=2,P:=18));]]></xhtml:p>
</ST>
</body>
</pou>
<pou name="setRTC" pouType="functionBlock">
<interface>
<inputVars>
<variable name="TRIG">
<type>
<BOOL/>
</type>
</variable>
<variable name="YEAR">
<type>
<UINT/>
</type>
</variable>
<variable name="MONTH">
<type>
<UINT/>
</type>
</variable>
<variable name="DAY">
<type>
<UINT/>
</type>
</variable>
<variable name="HOUR">
<type>
<UINT/>
</type>
</variable>
<variable name="MINUTE">
<type>
<UINT/>
</type>
</variable>
<variable name="SECOND">
<type>
<UINT/>
</type>
</variable>
</inputVars>
<outputVars>
<variable name="RESULT">
<type>
<string/>
</type>
</variable>
</outputVars>
<localVars>
<variable name="pooll0">
<type>
<derived name="python_poll"/>
</type>
</variable>
<variable name="ACK">
<type>
<BOOL/>
</type>
</variable>
<variable name="INPUT_ARGS">
<type>
<string/>
</type>
</variable>
<variable name="INPUT_VALUE_CODE">
<type>
<string/>
</type>
</variable>
<variable name="CODE">
<type>
<string/>
</type>
</variable>
</localVars>
</interface>
<body>
<ST>
<xhtml:p><![CDATA[INPUT_ARGS:=CONCAT(UINT_TO_STRING(YEAR), ',', UINT_TO_STRING(MONTH), ',', UINT_TO_STRING(DAY), ',', UINT_TO_STRING(HOUR), ',', UINT_TO_STRING(MINUTE), ',', UINT_TO_STRING(SECOND)); INPUT_VALUE_CODE:=CONCAT('PLCObject.MWProvider.SetRTC(', INPUT_ARGS, ')'); pooll0(TRIG := TRIG, CODE := INPUT_VALUE_CODE, ACK => ACK, RESULT => RESULT);]]></xhtml:p>
</ST>
</body>
</pou>
</pous>
</types>
<instances>
<configurations/>
</instances>
</project>