MODBUSTC86 Borland C++ 3.1wŀ^;MODBUS.C^@D:\BC31\INCLUDE\STDIO.H@D:\BC31\INCLUDE\_DEFS.H @D:\BC31\INCLUDE\_NFILE.HZ@D:\BC31\INCLUDE\_NULL.H @D:\BC31\INCLUDE\STDLIB.He @D:\BC31\INCLUDE\STRING.HPkQ4..\LIB\7188XB.H6U^;..\LIB\MBRTU.H\w錈 |D MODBUS_TEXTCODE_DATADATA_BSSBSS MODBUS5_DATAFAR_DATADGROUP(URH Hh+ 0 SF_LXRSH@F_LXMUL@_Modbus_Response_Event_Modbus_Request_Event _GetTimeTicks_InitLib_GetComportNumber_WaitTransmitOver_ToCom_ReadCom_IsCom _ToComBufn _InstallCom _ClearCom _printCom _ascii_to_hex _hex_to_ascii_T_StopWatchGetTime_T_StopWatchStart_EE_MultiWrite_EE_RandomWrite _EE_MultiRead_EE_RandomRead_EE_WriteEnable_EE_WriteProtect_Init5DigitLedSHOW5DIGITLEDWITHDOT SHOW5DIGITLED _LedToggle _RefreshWDT_strupr_strlwr_strlen_strcmp_memcpy_sscanf_sprintf_ShowModbusInfo2LED#RА_glBeginTimeTicks_giModbusRTU_Master_Busy$ _giIOCount6K!_giRemoteMemoryBaseAddressH _giLocalMemoryBaseAddressZ _gcFunctionlt_gcNetIDu_VcomCmdModbus_WriteUartCharŐ _Port502Start _gMemory_Size_AO~_gMemory_Size_AI_gMemory_Size_DO_gMemory_Size_DI _LRC _Modbus_LRC_Read_ModbusTimeout%_Write_ModbusTimeout_Read_COMEnableModea_Write_COMEnableMode?_Read_StationPerCOMPortV_Write_StationPerCOMPortT#_Set_Modbus_Lib_Ver_ToEEPROMӐ%_Get_Modbus_Lib_Ver_FromEEPROM@ _Read_NetIDH _Write_NetIDgj_iStationPerCOMPortА _iConsolePort _iDebugPortr_iMemory_MB_AO_iMemory_MB_AI_iMemory_MB_DO_iMemory_MB_DI_Modbus_GetLRCh_Modbus_GetCRC16*_iModbusRTU_Blank4 _CRCLo _CRCHiÐ _VcomReadBaudȐ_WriteDefaultBaud _ComData_Temp_ModbusRTURequestߐ_MBTCP_Lib_Date_iMBus_Lib_VersionE_MBus_Lib_Reversion֐_MBus_Lib_Minor_MBus_Lib_Major_ShowLEDNP_Modbus_Memory_Size"_ModbusASCII_Master_Receive@Ґ_ModbusASCII_Master_Send];_ModbusASCII_MasterGy _ModbusRTU_Master_Receive3O_ModbusRTU_Master_Sendi,/_ModbusRTU_Master ;q_Set_ModbusTimeout _Set_COMEnableMode_Set_StationPerCOMPort _Set_NetID_SendModbusResponseِ_CheckModbusResponse c_CheckResponseTimeout _SendModbusRequestE _CheckModbusRTURequestK_CheckModbusASCIIRequestG! _InitModbus_VcomSaveComDatap_ComData_lTimeoutError  _lCRCError _iEnableUpLinkPort"_iTotalCOMPort  _iModbusNetID Y _lModbusRequest_TimeTicks _iModbusRequest_IOCount_iModbusRequest_Addr4_iModbusRequest_Fun _mtModbusPortVWvLJLJ%ƇƇƇF^F3 ^&FFG|FPjPj 3_^VW3PjPj }/rurr wve-rurr wv6F^F3 ^&FFG|:FtVYF;6 }=3_^VWvF^FhjPj ;u;t3:t3:t3:t3 uNF^&FFF~|FPjPj _^jj%FFUVWvVjj;u3_^]UVW~;u3&$WY u> j RPNP_^]FPjjj F~|~F3UVFPjjj ;vu3^]Vjj% ~j YF ^UVWvVjj;u3_^]UVWv;u3VY u6_^]UVW~ZϨVϞVϔV{T`V9V/VVVTΈV~VtVQV@V8V)VŹųůū͚VōŃaQ,̺Vī̎V̆VwmVjB5+!HPj% | }jW?_^]VW~v ~VHPjFWYF9vu3_^VW~WYYFF;Fu3pmvWF~tPi0V&~u6i0&u#;tjV%Fi0&LJi0&u6~u6i0&u#;tjVFi0&LJi0&u6~u6i0&u#;tjVFi0&LJi0&u6F;6 3i0ظ&LJF|F_^VWvFPjHPj ~|*~#~uhV F_^UVWv~}F~~FFPjHPj VYY;~u3_^]UVW~W5Y;vu3*(vW{ ui0V&_^]UVV !^&2F2 J u^]UV  ^&FJ u]U3 ^&FB;V r]UVV^N v ~ ~ ~ ~6~^]VWFVF V }p\YURNA83 TTVιVΊVdTBVT TTTTTŰTɩTŚœTɌTŁTzT]TVTG@T9T.T'T TTTTqVfVLV/TVJFVFVF;Ft6YFj$YF  9Fh؊P؊P؊PV VLJ2LJ &LJLJ2 LJF;6 jRPNPjNPj RPNP>ui0&v. Vh'6 yVhLދVh|ʋVh붋Vh뢋Vh뎋VhyF;6 >3~ 3_^H h | ` %K { UVvi0& i0ظ&t'VYi0& i0ظ&i0& i0ЁhRbi0& i0ظ&i0&#TTTTTTTdzTˬTǣT˜TǏTˈT|VrTkT^TWTGTETCTAT?T=T;TTTTTTTTVƸƳƯƤƟƛƐƋƇ|wscV`\WSJT;T4TTTTVŷũŝőŅaTUQHTAT2+T$TT TTTTTTT̵V ıĭěĊyoV_XQLV7."VV  O i0ЁhRVPVPVi0hPi0& i0ظ&LJ>t"i0& VVhI6 ^]UVvi0& i0ظ&ti0hPi0P&R[;Zsw;w>t2i0& Vi0&Vh6 >rw> v  i0& i0ظ&LJi0& i0& |i0&LJ j66 NP^]VWvi0& i0ظ&tdi0& i0ظ&LJVY u0>tVh6FP3}VYFi0& i0ظ&&i0& i0ظV& >tF%Ph6FPi0& i0ظ& i0& i0ظ&Fu.;Ft.g i0& i0ظ& i0& i0ں&;u1i0& i0ظ&uVY t uqڜV TTTTǵTˮTǡT˚TnjT˅TwTpTSTHTAT3T,TTT TTVVTTƳTʬTƣTƞTʗTƊTʃTtV cVVVSOG9V 3T,TTT TTTTTTɾTŲTɫTŢTɛTŐTɉT|TuTjd]TOJAV>:5T.T$TTTTVTTTTĹTȲT̚VėēčTȆTztTmT`TYTKVGTDT6V /'V V TTTqFPPR[;Zw u;w uCi0& i0ظ& }i0& i0ظ&i0& i0ظ&i0& i0ЁhRhi0& i0Ћi0& i0ظ&ڎ&:ti0& i0Ћi0& i0ظ&ڎ&:ti0& i0ظ&i0& i0ں&i0& i0ظ&LJ>th 6=i0& i0ظ&LJ>th6=i0& i0ظ&LJ>th+6_^eeeeUVvi0& i0ظ&t i0& i0ظ&u,>t"i0& VVhX6 qi0& i0ЁhRi0& i0ЁhRi0& i0ظ&i0& i0ЁhRi0& i0ظ&ɜV TTTTTTǽT˶TǭT˦TǙT˒TτVˀT}TnTgT]TZTLTET4V1-'T T TTTTTTTTƷTƵTƳTƱTƯTƭTƫTƩTƧTƥTƣTơTƟTƝTƛTƙTnVkg`ZTSTFT?T/V,(!TTTTVTTTTŸTɱTţTɜTœTɌTTxTjfT]TZTSTFT?T+T$TT TTTTTTTȿTļTĭTȦTĝTȖTĉTȂTxTqTdT]TNTGT:T3TV]Pi0& i0ظ&Pi0& i0ظ&>tFi0& Vi0& i0ظ&Vh6i0& i0ظ&LJi0& i0& |i0&LJ ^]UV]6VWFFFFFFFF>t`>uXh6F%^&_^&%Ph*6F^&G;Fh26 FԉFЋFF΋FFʋFj^&GF&wPFhP ^&_^&?ku^&_^&?u^&_^&^&GV&Wڎ&G%^&WN&OَP&G%ZЉ^&GV&Wڎ&G%^&WN&OَP&G%ZЉFvP^&w&w^&_^& ;t#^&_^&?t^&_^&?kt[^&_^&?t>~@;v3^&GFҸ&&&ƅF, FFFָV&F FFFVFF.F&?t NFFF;r F~|̋^V؀&FF;Ŝ@TTǷǰnjT˂TmaTZTWTPTKTDT51-'VVưq2V#TTŸŵͯVͧVŤŠ͈VŅŁ_V\XPITTTTTTTTľTȷT̩VĦĢĝTȖTĉTȂTxTqTe\V YTRTET>T2*V 'T TT Tr ^&_^&?t>~;v FFFָV&F FFFVFF.F&?t NFFF;r F~|̋^V؀&FF;r ^&_^&?t>~~;~vGFָ&F FFCF&F؋^V؀&F$^&FF;r, ^&_^&?t>~;vFָ&F FFCF&F؋^V؀&F$^&FF;r ^&_^&?u^>~ H;sFF F^&GV&Wڎ&t& & ^&_^&?ut>~~ ~H;sFF F^&GV&Wڎ&G%^&WN&OَP&G%ZС& ^&_^&?t>~;v FF ‰FFFFX^&GVV&Wڎ&G%FF(F؊F$&nFF;r F~|FF;r^&_^&?t>~~;~vTFF ‰FFYǶǟLjǁ;'#ƝƘƒyqmc_/*$ TTTTűTŨɤTřőōʼnŃg]TVTFT9T)  TTĹTȬTę|uQTGT2*&"qV^&G&Wڎ&G%V^v&T&\P&G%ZСF&FF;r/^&_^&?t^&GFF^&GV&Wڎ&G%VF^&GV&Wڎ&G%VFN^VFN^PR3Ҹ[YQNS^VFPRVFY[^NڃXZ33ÉFV&ƅV&VF$&F$&^&_^&?kt^&GF^&GV&Wڎ&tl^& t_F ^&GV&Wڎ&G t =u&&&6666FPFPFPh566nFPh> uF8FPhB uFFPhF uFFPhJ uFFPhN uFFPhR uFFPhV uFFPhZ uFnFPh^ uF RFPhb uF 6FPhf uF FPhj uF Vڀ&V܀&Vހ&8&ƅ&ƅ*TTTTTTTT˶TϥV"ǢωV"džmV"jQV"N5V"2V"V"V"V"ƾΤV"ơ·V"ƄjV"gTV$QMI1V .*!VT TTTTTxTqThTaTZVOTBT>T7TVVVVdUL}&ƅ&Dž&Dž5^&GV&Wڎ&ur^& uhF  & & &&&&ƅ^&GV&Wڎ&t^& tF^&GV&Wڎ&GPwYF~u/^&GV&Wڎ&G% j RPNP &ƅ^&GV&Wڎ&GPuYF~u^&GV&Wڎ&G% &ƅ^&GV&Wڎ&t.^& t!F^&GV&Wڎ&G؋&&^&GV&Wڎ&G؊&^&GV&Wڎ&G؊&^&GV&Wڎ&G؊& ^&GV&Wڎ&Gi0؎&& ^&GV&Wڎ&Gi0؎&& & ^&GV&Wڎ&t=^&t0F^&GV&Wڎ&G%F^&GV&Wڎ&G&W^^&GV&Wڎ&G^^&GV&Wڎ&G^^&GV&Wڎ&G ^FHPYF^&GV&Wڎ&G PvF~t &ƅ ^&GV&vTTǭǍmMITTTTʾTƠTʙTƖTʍToThTeET>T;TTTTTŌTɅTŀuFPhhi0&tvhh^֎&hn6F26Y^&Php6FF;F}hu6fi0&uQ~~Kvhh^֊&^֊&FPhh66Y>u4>uJhx6F&^&%Ph6FF;FL6h6F&^&%Ph6FF;F^&_^&?uF6h6F%F&Ph6F~ |^&_^&?t ^&_^&?t^&_^&?uF6h6F%F&Ph6F~ |^&_^&?uE6h6F$F&7h6F~ |^&_^&?t ^&_^&?t^&_^&?uE6h6F$F&7hVόVljDž|sdVa]Y7V40$V VƾƺƮƧΘVƕƑƍfVc_UTKTui0&tvhh݃^֎&h!6F26Y^&Ph#6FF;F}h(6`i0&uKvhh܃^֊&^֊&FPhh6FF^i0&tF^&_^&;F~^i0& F^i0Fظ&t^i0Fظ&^i0Fظv&T&^i0Fظv&T&^i0Fظ&LJF,^i0F^v&tv&& F^&G;FŃ>t@>uvvvh+6 vvv6hy6dF~|njvVVǶǯǙT˅TgT`TOT>T-TTTTTTTTƧƞTʗTxV uqTnTdT]VTSTLET;T8T/T(T!VVTTVVVſŻŷTɭTţTɠTŔTɍTņ{wTpTgT`TYVNTAT=T6TVVVVeV _[H6$V+F^i0& ;Fu=>t4>uvh6v6h6 |FF; $_^ VW^ヿ$tD^Fu^F l^F Z^FH^F6^LJ$vY>tvhU6F F2.;Ft.g^i0&LJ FF dF$F$F$F$jPكjPvPvPv>t=3Phn6G|㠮PPhv6 ^i0&LJ FF dF$F$~ u!^ &?tƆƆƆ~ iu$^ &?t F$ƆƆd~ u-F &$F &$1~ ju+F &$F &$jPG؃jPvPvPv>t=3Ph6G|㠮PPh6 ;^i0&LJ FF dF$F$F$F$F$F FFFF_~ u)^&j9ǂT{TiVfb[UGVD@.%V V V ƥƑb;TTVVŰͧV Ş͖V ōͅV &TTTVVĹĭġėćmdNVKGC5V2.#T T'/%NFFF F;F8-~ su'^&%NFFF F;F F~|^؊F$6FF F;F~mFPPփFPPvPvPv>tB3Ph6GF;ޠPPh6 ^i0&LJ FF dF$F$F$F$FF3~ uC㍆؋F 6&$6F &$㍖6G~ tuA㍆؋F 6&$6F &$㍖6G;~}gFPPՃFPPvPvPv>tD3Ph6GF;ܠPPh6 vYF^3_^fhijst------b/0----b/08VWvFFFFFFヿ$uu:FtFl:F t㋇Z;F t㋇H;Ftы㋇6;Ftš+;Vr6w;Fv/>t%+RPVh6 j~uFFPFP?VV϶VǰǠǜϑVLJxiZKATTT T TTTTTTTTTTλVβVΥVƢƞƗƑ|VyucZV QIV @8V ŤŏTTVV̽V Ĵ̬V ģ̛V &33 CCG|FP;Vvu;Fv{VY ufFPFՈFԊFшFЊFֈFՊF҈Fс~~VYF׋i0^V׎& FFPi0^& :Fti0^& :Fuo~ |ii0&F̹:.;Ft?.g ~uF.i0& ;FuF ~ uFF2F״F΋^ΊF2 F֋^Ί FҚVY t0~u*FPPR[;Zsw;w.>t%+RPVh6 e~u/VY uF3 CCG|FPoFPPR[;Zr(w;v"LJ$FVY uFPFՈFԊFшFЊFֈFՊF҈Fс~~VYF׋i0^V׎& Fi0^& :Fti0^& :Fuo~ |ii0&Fʹ:.;Ft?.g ~uF.i0& ;FuF ~ uFF2F״F΋^ΊF2 F֋^Ί FҚ~uF~u}>tTVh'6)i0߸& %PhK6G;~|hS6 VTTϼVǹǵǭϐVNJǀMTFTTT TTTTTTʼTΪV VmV aYUJV9+VVV V;VŸͰVř͋VvV pVj`-T&TTTTTTļTȵT̤VęTȏT}V OV=V "VVB7LJ$F/~ u1LJ$i0&>tTVhV6)i0߸& %Ph6G;~|h6F FȹS:.;Fta.g3Fi0^&%FFflu^ ߎF$&:lu^ ߎF$&lfu^ ߎF$&nG;~| F~|F;~}g3i0ظ&%i0ں&‰Flu㋇Z؋F&@lu㋇Z؋F&lhu㋇Z؋F&G96~RLJ$3F_^fhijst88o9o9$:$:$:$:8o9$:$:$:$:,7,7,7,77777M7M7M7M7M7M7M7M7 5 5 5 54444-5-5-5-5-5-5-5-5VWv~ vvWF PFPV> FvvvvvWF PFPVFF_^VW~ヿ$tLFuF lF ZFHF6LJ$WYF F?.;Ft.gvvF dR.TVǸǭǢǗǐǃ TTTTTTTTTT T TTTTTTTTTTTTTTTTTTTTTƠTƞTƜTƚTƘTƖTƔTƒTƐTƎTƌTƊTƈTƆTUMI>V2!ŽTɶTşTɘTZVJ<8,TTT̷VĴİ̡VĞĚĐTȉTtVqme\TUTJB>3V" VVK;FPhP^ &?tvF dRFPhvF dRFPhPx^ &?tvF dRFPhvF dRFPhP&F &7vF dRFPh!F &7vF dRFPhF%FvvvF dRFPh P^㍆6F FFFFR~ u^&%NFF ~ su^&%NFFF F;F F~|^^6^^6FF F;F~[FPvvF dRFPh PF3*F &7h4 P F;v|eFPvvF dRFPh9 P3*F &7hO P F;v|FPF&PYPPYZVV;v|ՊF؈FF%PhT VR FPPWWYF>t=Wh[ 6^6F%PPhy 6 LJ$3_^fhijst;;0TTVǻϮVǫǧςV{siV`V JV%<VVV!V%ƼΨV%ƟpV%`W>V%5ţŁIV%@ ̴V%īĐnbV%Y>V%?;;<<<=;;U<<0VWvFFFFFFFヿ$u(u:FtFl:F t㋇Z;F t㋇H;Ftы㋇6;Ftš+;Vr"w;Fv>tVh 6K~uFFPFP;Vvu;FvVY uxFP3~~$VYFi0^V& FFPi0^&  ti0^&  ti0^&Ƈ FBi0߸& PYPi0߸& PYZVVF;F؈Fi0^&PYPi0^& PYZЈV~~ F:FuFVY t*FPPR[;Zsw;w.>t%+RPVh 6 e~uVY uFFPFPPR[;Zr(w;v"LJ$FVY u(FP~~VYFi0^V& Fi0^&  ti0^&  ti0^&Ƈ FBi0߸& PYPi0߸nTVTTTTDZT˪TǘTˑTǂTxTfV SVAV 5-)V VVV VƾƺƳƯΤVƞΖVqVbV \V=V9T2TVTTVTTVTɿTŪTɣTőTɊTxTqT`VUTKT9V #VV VVVĹĩĥ̚VĐārcTJTTTTT T TTTTTTPC& PYZVVF;F؈Fi0^&PYPi0^& PYZЈVF:FuF~uvF~t7>t.Vh 6i0 hPh 6 ]>t4FPVh 6 i0 hPhQ 6 LJ$F9~ uVLJ$i0&PYPi0&PYZЋF FйmG.;Ft.g 3FF Fi0Fظ&PYPi0Fظ&PYZЉVFZ~ u^F$&F2~ u^F$&F~ fu^F$&F~G;~| F~|FF F;F~BF F3i0ظ&PY Pi0ظ&PYZRi0ظ&PYZRi0ظ&PYZЉV~ uF ؋F&4~ uF ؋F&~ huF ؋F&G;~}LJ$3F_^fhEE]F]FE]FVWv~ vvWF PFPV FvvvvvWF PFPV9FF_^VWF33^ܜ<ǚTǘTǖTǔTǒTǐToT9VTTVTTκVƶTʯTΘVƔTʍT<"VTTVTTōTtVpTiT\VUTNTC;7,VVVTTV̿VļĸȳTİT̢VğěēvV]VYTRT?V;T4TVT6Gi0&tvY uFFPvY u~vYFFG uy urƃF&PYPPYZVV;ъF؈FPYPPYZЈVF:FuFFP^PR[;Zwu;w ~u#3C㍆6PYP㍆6PYZЋ^i0޸&FH+H;H+ }~uB^i0&; t>t_6 vhf 6 *^i0޸& %Ph 6F;h 6Fi0 FhʃF^i0&LJy^i0&LJ>t_6 vh 6 *^i0޸& %Ph 6F;h 6^i0&LJ  > rw> v   vYj6 6 NP>t[vh 6*^i0޸& %PhI 6F;hQ 6?>tvhT 6 j66 NPvY_^VWvFi0&t1VY u#F4V TTϿVϴTDZǭǦǡϘVǕǑLJ|VyubV_[QTJT4V1-#T VTTVƼΩVƦƢƘTʑT{Vxtmf`TYTKTDT0,&TTVVTT;VŻŷŰũŠŚTɓTZTSTAV)VVV̿V̗V̈VVV =V /VV TTmKFP3 CCG|dVY uVFFFFFFFF~~4VYFi0^V& FFPi0^& :Fti0^& :Ft~ }i0&F P.;Fty.g"~uFh~ti0&;FuFA~ti0& ;FuF~uF ~ uFF2FF^F2 F^抇 FFPPR[;Zwu;w ~uo~ }'n~ugi0&; t>t]6 Vh 6 )i0߸& %Ph 6GF;h 6i0 F6hƃFi0&LJi0 F6hxƃFi0&LJ>t]6 Vh 6 )i0߸& %Ph0 6GF;h8 6i0&LJ  > rw> v   VYj6 6 NP>tYVh; 6)i0߸& %Phs 6GF;h{ 6;>tVh~ 6VVϾVǻǷǭT˦TϑVǎNJǂyTvriVc]VMHC=T6T%V" VTTVTʽTƪƦƢƙʖTƔƐTƂT{Thd`WTTRNT@V=9%V"T TVTTř͋Vŀv6T/TTTTTTĭTȦTĒTȋTzVoTeTSV #V VtO j66 NPVY_^ M M M MLLLL2M?M?M?M?M?M?M?M?M VW~ u)3FFV%PRh FP ~ u+FFV%PRh FP ~ u+FFV%PRh FP ~ u{FFVVFQ.;Fu .G;Ft4.g h .h (h "h h h h h h FRiz0|z9BЈBza|zfBBzA|zFBɈBz uBz-uBz.uB@PBPF;v~F@PF^6P_^˰` %KKQEQ?Q9Q3Q-Q'Q!QUjFRPjv v jF RP]TV%V%Ľ̔V%ČgTeTcTaT_T]T[TYTWTUTSTQTOTMTKTITGTVT y@AA@A@@AA@@A@AA@A@@A@AA@@AA@A@@AA@@A@AA@@AA@A@@A@AA@A@@AA@@A@AA@  01326754<=?>:;98()+*./-,$%'&"#! `acbfgedlmonjkihxy{z~}|tuwvrsqpPQSRVWUT\]_^Z[YXHIKJNOMLDEGFBCA@ Oct 30 2009COM%d ===> VxComm Baudrate=%lu COM%d ===> Modbus/RTU Gateway Baudrate=%lu COM%d ===> Programming Baudrate=%lu COM%d ===> ModbusRTU_Slave Baudrate=%lu COM%d ===> Debug Baudrate=%lu COM%d ===> Console Baudrate=%lu COM%d ===> ModbusASCII_Slave Baudrate=%lu (2) Send Modbus Request to COM%d. Use Command-Buffer[%d][%d] (2~3)Check response from COM%d timeout(%dms)! Release Command-Buffer[%d][%d] (3) Check Modbus response from COM%d \v [%02X] CRC ok. CRC error! Get Modbus response length<10 error! (4) Send Modbus Response from COM%d to Ethernet. Release Command-Buffer[%d][%d] (4) Send Modbus Response from COM%d to COM%d. Release Command-Buffer[%d][%d] (0) Check modbus request from Ethernet [%02X] %s %d %djanfebmaraprmayjunjulaugsepoctnovdec:%02X Response to Ethernet [%02X] Response to COM%d [%02X] DI[%02XH]...==> %01X DO[%02XH]...==> %01X AI[%02XH]...==> %04XH AO[%02XH]...==> %04XH :%02X (1) Pass Modbus request from Ethernet to COM%d. Use Command-Buffer[%d][%d] (1) Pass Modbus request from COM%d to COM%d. Use Command-Buffer[%d][%d] (1) Pass Modbus request from Ethernet to COM%d. No free Command-Buffer. (1) Pass Modbus request from COM%d to COM%d. No free Command-Buffer. MBRTU Master COM%d ==>: [%02X] CRC =%02X %02X [%02X] CRC =%02X %02X [%02X] CRC =%02X %02X [%02X] CRC =%02X %02X MBRTU Master COM%d<==: Timeout(%d) MBRTU Master COM%d<==: Timeout(%d ms) MBRTU Master COM%d <==: CRC error [%02X] MBRTU Master COM%d <==: CRC ok. [%02X] :%02X%02X%04X%04X:%02X%02X%04XFF00:%02X%02X%04X0000:%02X%02X%04XFF00:%02X%02X%04X0000:%02X%02X%04X%04X:%02X%02X%04X%04X:%02X%02X%04X%04X%02X:%02X%02X%04X%04X%02X%04X:%02X%02X%04X%04X%02X%04X%02X Modbus/ASCII Master COM%d: Command=%s LRC=%02X MBASCII Master COM%d<==: Timeout MBASCII Master COM%d<==: Timeout(%d ms) MBASCII Master COM%d<==: LRC ok Response=%s MBASCII Master COM%d<==: LRC error (should be %02X) Response=%s (0) Check Modbus/ASCII Request from COM%d LRC ok. For #%d [%02X] (0) Check Modbus/ASCII Request from COM%d LRC ok. But not for #%d [%02X] (0) Check Modbus/ASCII Request from COM%d [LRC Error] [%02X] (0) Check Modbus/ASCII Request from COM%d [Less than 6 bytes] (0) Check Modbus/RTU Request from COM%d CRC ok. For #%d [%02X] (0) Check Modbus/RTU RequeI st from COM%d CRC ok. But not for #%d [%02X] (0) Check Modbus/RTU Request from COM%d [CRC Error] [%02X] (0) Check Modbus/RTU Request from COM%d [Less than 6 bytes] %01X%02X%02X1157381996482412FFMODBUS.Cŀ^;]t-3=zf(Z$HSp_Get_Modbus_Lib_Ver_FromEEPROM_LRC_ModbusASCII_Master_ModbusRTURequest_Modbus_Memory_Size_Set_ModbusTimeout _Set_NetID_Write_ModbusTimeout_gMemory_Size_AI_gMemory_Size_AO_gcNetID _iDebugPort_iModbusRTU_Blank_iModbusRequest_Addr-q=HT"by _ComData_Temp _InitModbus_Read_COMEnableMode_Set_Modbus_Lib_Ver_ToEEPROM_ShowModbusInfo2LED_Write_COMEnableMode_giModbusRTU_Master_Busy_giRemoteMemoryBaseAddress _iConsolePort_iMemory_MB_AI_iMemory_MB_AO _iModbusNetIDNUj~ 2,;E]s_CheckModbusRTURequest_CheckModbusResponse_ComData_MBus_Lib_Minor_ModbusRTU_Master_Modbus_GetLRC _Modbus_LRC _Port502Start_Read_StationPerCOMPort_VcomCmdModbus_iEnableUpLinkPort_iModbusRequest_Fun_iModbusRequest_IOCount_iStationPerCOMPort\Oߡ)Axqիf2MODBUS!_CRCHi_CheckResponseTimeout_MBTCP_Lib_Date_ModbusASCII_Master_Receive_ModbusASCII_Master_Send_ModbusRTU_Master_Send_Modbus_GetCRC16_Read_ModbusTimeout _Read_NetID_SendModbusRequest_SendModbusResponse_Set_StationPerCOMPort_ShowLED_VcomSaveComData_WriteDefaultBaud _Write_NetID_Write_StationPerCOMPort_gMemory_Size_DI_gMemory_Size_DO_giLocalMemoryBaseAddress_iMBus_Lib_Versionr/d&H|:S[k_CRCLo_CheckModbusASCIIRequest_MBus_Lib_Major_MBus_Lib_Reversion_ModbusRTU_Master_Receive_Set_COMEnableMode _VcomReadBaud_WriteUartChar _gcFunction _giIOCount_glBeginTimeTicks_iMemory_MB_DI_iMemory_MB_DO_iTotalCOMPort _lCRCError_lModbusRequest_TimeTicks_lTimeoutError _mtModbusPort