From 7c4796053e9fcab9760719aef545e9d1dd0574e8 Mon Sep 17 00:00:00 2001 From: ysw Date: Sat, 5 Jun 2021 01:53:35 +0800 Subject: [PATCH] =?UTF-8?q?v2.0.3=20=E4=BF=AE=E6=94=B9tcp=20=E8=AE=A4?= =?UTF-8?q?=E8=AF=81=E5=8C=850x90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../soft_gsm_main.sip_sym | Bin 512432 -> 512432 bytes .../soft_gsm_main.sip_xab | Bin 163840 -> 176128 bytes .../soft_gsm_main.sip_xad | Bin 1928 -> 2048 bytes .../soft_gsm_main.sip_xc | Bin 168504 -> 168504 bytes .../soft_gsm_main.sip_xf | Bin 168504 -> 168504 bytes .../soft_gsm_main.sip_xm | Bin 324 -> 324 bytes .../soft_gsm_main.sip_xr | Bin 168504 -> 168504 bytes .../soft_gsm_main.sip_xsb | Bin 73728 -> 81920 bytes .../soft_gsm_main.sip_xsd | Bin 1048 -> 1128 bytes .../soft_gsm_main.siproj | Bin 27736 -> 27736 bytes .../soft_gsm_main.siwork | Bin 108932 -> 36954 bytes source/app/app_common.c | 11 +++++++--- source/app/app_task_485.c | 6 +++--- source/app/main.c | 19 +++++++++++------ source/tpc/tpc_ccmodbus.c | 20 ++++++++++++++++++ source/tpc/tpc_modbus.h | 1 + 16 files changed, 45 insertions(+), 12 deletions(-) diff --git a/si4/soft_gsm_main.si4project/soft_gsm_main.sip_sym b/si4/soft_gsm_main.si4project/soft_gsm_main.sip_sym index aad6a627ce71b231f529cab6b208cb60c2189116..21fd5195fea96a47f0b7c2e6c39c298df1f11a8f 100644 GIT binary patch delta 51095 zcma)l3w)2|`@hd;pTlMw!^V`=grcY^ib8Wf?jTd-5XoUqjn9NK4JitZhuu_aLQ!ax zqR@1ts40rFno3dBREiw>zwhh0ujlhz)9?HGd%cSHeI4%WzV7QjUC;eIpW>BQ7O%WA zAt6|$%AhJ$e8;O+sZuYxN|itSRjRzUvHrInl``8`!}5FQc_J3pziN@!r-qb7WLo7T zd{#_EYbsQ6i9x@$`&34azp7NJ0>LW!Z~f;VYvY_+R(V9Cw~CRr#zxe&E{wfJRkRQI ztkQOon!U|NeU!jOUj4xFw6cLF?P-N!EMuaaQ@g#$m}L z;l_nAA#2+;c8^i7?v4wo(io4e>`Iq1gsklr4i`^7>qu?W7!xaKOdX%Q+(b>t8j|TQ zr<#`4LSOZO7QGAR`fyT>xu5#`WE9VJ!u`=w`C93?K=f8*{PrS7; zkZ8I^_hC{Un3fc2Z3))iDpX@Lf`#fRR|#25kuo@PeS?T15D)f%TGA z&WnhJUDwB11@-J<4Hj!#yHr5*nBuf%M66#eOvrx~w(GUn(CQBM7QIyt0L zJHQK-1s1l(vS5k8ppfi*Ye?l6BBEUpLsp*!p=5*zB?_7Kw;?oI3x4XC_G$3{D#35Z z%+NL=RovC*mRN+iPiTvYpohEEo*;IkJh_c1CwubRg;d;nsh1T7f1rd-cb;W z&dHHN(Y-7c&Tr?gLPtu`v|y$xS%F9?YM*Rn{^h1Ca=NDjCi@kYYSMAKxkJb*?I#4t zx!E1j#`dC|e3jG*PESKGg`G~m-G}mmPXeMmzw;E8^PsGhCW6*ouzqwByhX<_#|#fy zMU5hBj&Vg*I3P)KYVXOOd%^)pWzFsg6}CVpxys4AOZtQ^OTeB>FP0-+DxLMs-e7gl zn(Vo^(z0_Q3q2M@XoU$h{qDUMG3t}$ymLuGM14x+_e;*9T~D7$uwI^JO1bQ3R)*V80*Onn?~WeqHD;L zP8sd+jx-8c1MfE5Ut+p&4R&S&;sbg|W;>NS zYcB#ICno6bEW4p;<3rYzf$>)UDAQHc=iL!^$%E0TltDgcPhxLvbV$3O;-IvW zJBRlaRCr)8Z@f1J1J>jBJYgF}wX_{#Xf#YtF`~I@ey@<{p>Sh$aG&fFv<7w?>zNZS z)~ABlVQww{ff-iZeP(M<8_uZiAm3eed{@9Rm~&}@w5i3o>=**HQtGSqhez>u{+ zJ3J1HXJ%SObK z?!ANEeti|C3||yo*O57mO4@jEe=>4MoqLz#+xWCvHLk4 z8}No!?)^HleD#+B!Sy zVE);Fd^Zz=MYW-OZJvkuQ|9j>G8d{YNa)_=^m zCu__<3yG)jS6|Q?@T60U5m{i`t!LiYf*RIm1rHIc?zYB@60La)C%Lfkt+7Woxt3LX zWgG0e>_JCO?!35ilcSfoo4jF(Y;w9)TM9W^zG`*QkdY0u76xQ~Y8CLRh#%QW@_H%}= zky^hEL4#AgHLu9-Cq8*jCF!H!*;Cg#7urueMX7wsOVW8R>((Tmp1;NDkbYhYX! zubE8+hQXG!3f5;?Lte5Cz)BlX*Wcs`T6}}XOuG+6+ z>v*E9pV!%)4UKlhy0vx1GKkaox(#OFk%|i&!Yaz@!osbu*tIHC0}WYgOR;eTt-N(N zIzrao@V^x)n7hd+u=}r`CqtEP_r+UFUp4hoFCTx^R-p(jf6X9WsoH%7c27l{O^4_y zPUT$*HAOK#pL%AiFU}hEI_uI2ovp7MX)LD!Yy2B#P=r^qoGnHdCde4;@D`^JuuN~Y zx%GH0{W!|%{HC#<;;6~n8CL3BMwmwJ>bLB=(18K#?rl;yVY^#+=XPV3J>1`>b;vrg z!_0}M0?A_#d3j-pLE(m^4)v)M^*zZdKN}~HZ99!B+G3pDX|wCOZT&m^Z@o*cZFM*_ z*xLWD9Xh(D@$cDjs{g&q_3vr#hs)1@onTEZyT@Affope5Mvogb*%RI((@Zt=-H;Wt zE6j+v^IK`Bu|cWovrc@NY?bUXflFJSv|S-9cXzy%yvuCGsMNDNWHtWCrKEWG6ePSB ze(YKa59fNWvQE7pE?N9luGMKzSV%Xi+t<0)nM!4&KFakZ30>#E&P8T|b?K2}UGZ_y zx{x-;ivKj;s`$v~^-`*m+1v^$tR@PTxTzuH(d;37Zs&U{h zEAs3Aq7AaP{bzZ=n)=0ER?gwDOx%~bRzu7^oS1(P_@E1)|GKud;NW0u-ZwT6IcD!S zJVgA~jBm|IqcCh)ZV(0gaYmFjTz?MIFjsC}t2nB8I&o;tBHKp(u z#7C=NY-Sp?WhX+`v0rST*z@qtpF^trVH}2vP8dGDuW9}Vk~k*~A2p~6Bz?b{5^Bc6 zlObyhmyji$f5pLSC`Mz>Z^l4cQO^E~j785R-^OS zr0a8p{#*a?V8?E6+UaybWnP>I%%HQ^u7p!a-2Bc)YVS_^C1kDogX`A$)T4j6{k`l@ z<1TylV&B09+b@JJ8;KfqVq+Yti=rxB&of{qPaj=%+9%$M$%s>#g?Kd7^zV2%kz^oW zgv{%+pp`Sto&hoopMzxL-*KvR0(v3-yEv=j@9-31Pb4E$@-m2aI~yj_MkMJ>$U1Y@ z@tWV-hk|wgnC8+Wj@f6CK0aqybl0BzC&udh&qyo&yePy}cRt?AIbv5$Q;gt)m zZ^ZaKc{Z!k`*(G7tS220fXto<156!{XuTW*h!M5C8bfEWOywowh>AyM>ToU7I;~r^jW_0Ky%q6BFM!?>7F72(REf1cri*Fw z)W5bPK$}9-Hq@A<_kYHryvfwny7qgjNnMvTrcfiznz8@A%yESud%p~;-s~7vbh)Rw znSK3w6Btrs>#B&|_U5nUDzS`4J zHE!sMccnB~YOLpJwXl(=RyaeVH;8IX?C+So(lw_f8B8%%Zj8tyGJYei$Wo`knw>!CfS+S9~ird+n(c#YX?xX2q& z6R$H>(7DP^TsphVl%smX-P9FM8(6SDRxN2}?9tPoKDDH)g6r9H)MKZwcbOPa zFWum@$gc*aFpbPyUe6m+k2Hr@it2jJT%Z?SwSBl3oBt%ldaD~vSmA&}wRcq|mN#A< zzR_b&WX2A&QnCpdDy0RRrPp}1q=l*ajZQ5+ojvw!0`5pv+6v^YH?yC^W#ewCTozDQ zwepzLHS^7NsVce+s^+#9VpP`l*2-l8_4}TW7h+Uac1c-4ElL%tz~@#K*9of5wil|XY<-8yWdU_>N1+OQZdK)7plWv~ zAx33+ohz3G)Qw$)D)6~g6?ccKWnG0Bm8Es7TozE??m`v#+^X_>K~;7SAx33MJu8<5 z)Mq_~D)5C>#i&+kX35YAvlw+k!lHCR&B}1WYN~3cOS8RjXf3g7LT{HDv8vG>E*P!8 zyup@Gu5$!DC*dn|1$EftE*PT{ zpWxnypJUV>3G?R(YK!?USWW#rpTiNdCLHmvSk?PUjz5C_0*3kP^+LZ0bNkl+C>yu1 zG9MQDMO+8Vnz@}|(GsYdYY8zbYrD8|85a7*LKXPjs&bY>RsTXEMrE<8av2tSB~*dW ztt$0tsA{rIh*4SDC1qIXpAxFT=T;T>EL5F+TBxG3_0Lo;!$QAYr~;o`Re2Fq?S58> zQCZ$|mCLZu7YSA1bE_&|302Eh2r(*4d%kiR7W$P!75Ln$@?U_e>{UXH%92)BF2h2< zTBrhFSXH#TZ^4wtIRNf1+l9A z23Hee)oC}3QEOh|!35?QHLzH~xQzn7=Z0A5H}PBoSuFIg3RouL!q)_~^JW3hO1S=Y zK^^*rfC*a!+$~|=RzYq4rhrE!T=tfrrfn0@vz=ki9=*^@n7u<#lin6^pMudd?+LhF!U^vSYNHPXJS5@#4+XXTE*FeZXLfP#qxmsv-EIMgd?aA} z$1Ye+ee^MhBVbr8G3Vd!=LwDhjAOj=S}M%cwzeDN?=WhGqy5q239>S1REnCk3_D zuL7Qsu;@3Y>WA{GcZHKu(a?WNz^xLF`(04${~_Q33FrPPsBKR(q&(dz30MCmsQv#I zF!qdqI~}N>B&bPenM$z9KMeI#1y$xis(0ZzrV{LYUcj>wuD>9tLoW)L@UMWo1zeKn zH7PWzr@2SKqY^Ij3Tj$}fJpecRc)3qo8M2NXBa9ez|6>!;zS?tniD<2CxQar9x31- z622JaqMB$VE!Cr4glP4y11X{=#IOaFFl`jeu;N{$55J1_np7M0&irajE&t9NR2{2( z&2>kDe>;$5Uy5T{z(_TuhSv-pg7Gy4+{KWxkW*`!dI&X(=UPec6*U3@bu8X%XXsUV zE*>Y;Y>q^1WNoj>lv7z@f_I|YCd+!%_D=MiRx9GYbKGTTrgVQcDZ+)=Ync~nb+Jl15>p64W;V6B<4iYD4^cF z!kbQ4WL3W_ye1jW1k;%`^2S}sZe^IEZxXs5$s9;_ICP$NZhh{Rq6I;9`&HcesZG4q z)w!#@_AN7V&*}y&31XJMYpT{YWMg!Z8raCxqzJ}cEug-!sdioMmavj1`qZ>*+(nC; z_*6<`cZn)*?9yXK0aZ}Z34PM*TESf0I>J|Yoh-V}C7-44Ys!#P*m=!x6{%#hPt|M2 zQe1AvJVQLVxc*YnxLbUx)eV(J@vvkvZVsG~gtQcPVOVEo^GkH9%sj|O-gt>p1g%eP zljTV_U8*y=#ics)H^Kb}TU6E=r8>0qnuIu~ zan<_noqD?!QyHeIlGbdAQ&xC2dTq+BY=~2?8sEme`A7Xh_2g|_wSMH+zKv5?6HHTo zw=qP0zfZl~*3CMoonfW01$m(+zDg$LbgFC%@KZbnz;#GvO@LNC0>yD-j(QM(L-=vion*M7!oKhu37lNS?u z#?`+!Yo$tJ?_fyA?_?OBsxgh5p3*kb%#PW+tD2JK_9JF*dmOVM9*FjJF~p<|%^u%n z;_yDh#||H6)tK8+6}9&HVyoe{z?HZ?p#Q#F9U11UrMBGZbw5W;?u<2S`rQb|v^%k8 zjJ?ZSTR$78>qmlyOMJLkt$N*s#Ur^NxS-a)_kxR%cVYS1-;XDImWxzZ^!IjA#r?2` z%<2Chiiu&gYIAp3onqm1ed!qU+1;qGLNiphYNA>-;6LOd)vW`(qgB6wm8}V?lLOGg zm_baS9!VR7fmPB^&vFA%Q^_D#P0SEdxr6_srl5)%426yF!E?a4tDFai`o{5vdwdyI z%2$~F?t#+7;3#bGFzCG|7FWD1F$BwazrNlYc0QaoGD$-~7&6QoS@YhADpeBDX#FSr zW(-|u-Z#XHS7X%1d%gB69y%-^8S2gT4}pxU+`j(Y`d)9yKeQ4B!!b*>8Rl&WJ-z#i zr5g)+cU1wB+I1iMir4h+YSn!pOdHMwnj`Q4HAD3q4noQZCh!B)kosW+98{cT+ONm@ zgb`@u(vi%Hfip$*8f73&Vuwb0LxtI1O!daN zO4f`Oo^5_Q+TlQ`}fEwHoIt>6YV-QKe(Oqtpp^@sx33EE?}(Y&sq#S@*k2 z%5_O(jw!M4f-JcoRc_-l-5gYqt8yl|vht>-m^@B}gFmon91%}_iI48k2?2&wz>P%NB4a;bT!G;um;qWwfG`4$d3 zlLwu9G=uPjEj$)e-@55w$bT3N#vK&(u@9rp7WwQ7JrGb7r9OHXE;`2L+8>kh!THP# z_6LpBCNof$Inym&ri*;DM9k6P?L3RuE?OY}nZ*ko9bz^-!VuFWa__Sl#y!f*H!bDIg<@v7TgZxfrBYfQIqU7U9awC1Kg&Q%a! z)kQdFWIn+o zyoblto_VMomru-AQ14b?vhA@si`ipryIT@w+j_OJ?F-ph+IJM8l>>i@h*Me0*NC8*7w7Vro|ZOxKrn1=0pQ1x6c_mvK$bM~fZxrYdjc+P1S z_QFMGcV=&tidZe($(yl)A^E@M^9*SsJ?=o7I+m|wDz&`#Dgz5wb9|H3*43t*DjfF$ z3lXvYivk{SAa&2&H7tr7k*e)l=B0hdDTb&oTD|;|NtIA7{a z@MQz+|6X=Dj9V0b*9zEL7<-ysw85ye=YH^?O~YOM64teG%8>V&14saMwe8 znOlV7q&Fd3v?&5t?6wM7O|UA?HB^T$DR=8^y$$loZwZ}LR^Wj>XWkMzL2%2SyaZ;b zitR!bSTgYO18l~22u)FMvnC9J7}f1vZ#P_9jZ^hXc>JO~OO=$cHtZY&>euN$q+kjl zkiXN+T=px2^WXMosMG{cj5TCnq-ygH&m;Pdq?-Ru<+@CY3ssn-8jX>)?=c_JZb+=X z&u23_3fKC82Q^W5eITe0eJH3Yy9D+7U4puFx1jd?$W1N$SP)fPdT_s>K5;-$Q@;?@KfVyu zHD3zqfP;b>cSum*JtU}8z7o{yzIIWg)RC{f<|YqyuXR{ZyO#;-xiUfB_>G_r`&Llv zmJ8~~ivUI8gW!mw;mPLF+U1w{htK&^PdED z?lD2V?YN+xIxeUye-_mKzX)pd2|?X?LQq2|1+~eqg8KEZg1YcGLG4%}sAnq#_2pAc zE%ii1siD6MYOOy6b@v~F`p}<(+WfSjet%j}m;EKEJ^vO|&ly2|^^BlqpB2>0{}I%E z{|M@=bAsCXyrBMaUQkzD5Y#>w1vTnlL4E6A7d3iGD8f7$p`dHvi7-zd;7E5gKH+r{ zqE!2c2>0OmBSKKu`UG`=Ur=iV1ohp3piT`6>UEJ!rCGN;GQvFUum^3FpmwV&sOPE* zYH_rn4vP`g#8^T7I95>es|o5&)dlrfbwPbPPEa#z2x>%4LETbQP{-5~)Z}Z^?eHT!Boz5E(M z-FJ#kGRk=Q=@+YAUF2H5Jqe%>=c<^@4indO>~S20?9~BB+0) z2ZzHHrw{=mYRiAbu93yUbQQhG z>uoPVt(7LIyVC^qp>#oQo*}5;X9()DOhN70TTnfB2a4zk z+WJmG{pC(UU2&J7_UR|6QT+w=t^R^K;ch`~FhEcb4G`2P2D+%xs^cILj(-etQQhG< z;2swtO4S%5l)gJeP^S(R)a&kLs=eUeE2e8}n4osMPf*X@C#c241$Ed6K}{Sfs2`6M z)cjF`dQ-Nb9?KTgr$-BF<`_YZ7%Qk-#tQ0~ae|sWUQj?Nz)CfM?>sR+yKM{dPwhwaElnm`ZPnSJ`>~G>j5#|O2C1$2R#Ilq(YBr4_ zJ!buW8XG~>WzPqZ3K@VDa+_eXikyyb!#df_DV{&oifR0PBFc~Tm>w}vz-k37ghSw12kyz^!lUdkNRoe>f8oK+JZ=8EhG3Mf^7&Sa%jmbU~g zE}aRjYi7aD2uiO1_#CF&=$(29k$j=QEWf zAw$J2U*0tBsa1uLu!D&T`@a`N#;_0- z^;694M4A2&q-v$0DrPAY$>gULOfFdpRj$}eTMB38E@MV=s%II>8b2k<5Ti)e;e&rF z@+qi3{FKuM4pvw+0@?j-nq2TS3v<}^P^s1N=I@lJBNA1oX9N}D+CwEjgVvmR#%U+y zrl@txfn~UMrH{_3dCO7DkY^nuIB-!7K4Pd+p9MMoIo8Gjj21kLYIZ%x_0uiGzR#h# z(~1xp#ZN|RP{DQ^rEkwsm%8NNR|J5 zM00zVLcc_+qHjRW8H+DNlst}i6jw&r4`d2&0j*#qPqL)kUk>F3t5`XeZPjJ^6R%dU z-*69lHS31!18V${h;;qsOm%)W4;RW_4|;(|8k>M8d*4NLQ$t>4^)&6TxB|m9fXPa12&r63@;fLb`VSGX8~}F4UG%%>|-~J zvmf02tv@pSH07LRL|@-iD?a9`DB%0DU>_xihedN^t4{hQyrmgWL-N3hGI!N_y0+`)3A&dm`j*{J@|dMfw-dw!Z6FzoDcL<$U?#?Z z{f-rcr#DQ;?&%FPv0W`sz-}d&cd^wv%1U@jN>_2m@EqIsqZz99B&}y)wXIb!PHk}r zVHd2T}~T{##E2KeGZV>--B#5Iig4 z`V)fMzm^ZrGEWKx3BL-K-4f>g##Ea1n^!QT+KxJq+l%jpzJ&X3r+7ec!;NzZqRqHO z@dsPM4abEd^D$4A_-8~DGgs?tns5WIy!F9$=TFv)DX^-l_7Aq+1*drwQ`r}%Bg`cb zKojunJQFoE6P^5>`f^m3Plzq`F$)>q-OmP)%@-Ua z%|^Ah*#(iz#`U|+LDf0x&nRI|tEy}cNt}=npE@=Q$XE;tEXy%IGY-jOe=IkEEE`wN zSe#OgP2qC4#i-V{cxiQJV)UjL1>vWm#$sHjKo|YlG#!nnG+%O=cn6F@lW& zWOi&kLo#ntf-$>Q0^7soZnIIXZFW&@X5;$Zjz-lv%9qIIq$c{zc*4J`s*8y}GZY9u zdxdYjO1_Ml$yiJ+m~Ji;j!w8-Se#eSSe#mqO(Ba>ZY+lODHP0Wl9+?*ACH$kxI#7} zJUp?lx{`fI&8ujL_T(nB1eI+`W)`wIyFOP-?oGOiAsIEhfibpQ12%=r-R?!TwtI^k zG8@VQSny`bNXG)=8#0pH3F76kc`FLj2%j2;oe3~gvIl(H5O-H%chXUD0f?o zYHf?RT*qu&e~uc}RG0`Oa_}k$m(jjxP%~CXt3-|K4aCxlOZI&NF%j+iW~n2|-cXVi}oW*+JK-JtgFz^@X zk(uiH6cm_8ogJtdFdrPIQcI2~Fp;{GOK3bYA}}|7Krt;C}e0YCm=HMpTJk zr%`im@tw4nB)Xx!ycIi}_6QfYVok@5d^4NT`NDrIvrrgsb>I;FA^&l=F_k)R?=~pN zX=4=V6GQ%XUnc#8QDG8p{j_T9YvQVYZd;b7>f5$sNW0PFJD@D}cD9DfmcNZM{c%@y z=60XSOcJ4gs*sIsFW^oICv{*dHKOhNxCXCJ%+oruPAV_!DA@Xch`P%=u{}7_1XQ(M zxTv(avnczgv(Ic%h-E_;hUCwoU4_zwZVbVU6V*~=le)7NBtN}7%Tt%-mHLLM#XW={ zkM?ks=vRf7^>m;LOAox{ z=@$u-BK%18-hpp9UKyv3WeVe3_hxC*ebRyG^H?<~=;}P<%G33W<`wtdGhL>9X8Axs1%19}SCBuEv4uE|#x| z(Jw;Xa{xo~_WJ__ z^MeDKO3c>}Vn~5~#MzG#Tr!wt33k7SA@vkq=rD6JS+%^bKcjG{X@MS%nV0!9>3(rV zU4NX~HB_{r?!7DwT>*{q=aIym}^Y-XVb&mAqA&~6M<$=q)mLP6?SRzPJhj1??* zj}x%kcmX$D0|jyS3k46{FIcY4VMr5VSq>Y7CLp_bt-qHlpTG)GX0}0SOqS{vVgfa0 zeTZer()4Diyf~LxsI2xRu8rVF5>9_WP_IaVg8a!s!H<&#%TrSXOrOe-I^fqEp&;`? zRzPL1KgcZ9AEO^KP^Vpzrf~zPJ=p;!D4(QtL@sEB`teQQ z@XQlXcjgP0sxt)KA>rWLprB+XE1(8kJ&Pp>e&s-F&w@t`Rkx>EJ2aqRHj7iEPS55x zQUhLkl(i8Y{Fs0jQ&InrIjn$KKA0m|9-J%S^^XhqNk=G1c|s^Ce1ci10X^mkcu~Sl z^O;J`d$tSo^;(OJWXS?wb9-f`X4QSt)vTcU^hur-VRKNu)eX~NX@ScO6UIdSWg#<{ z_CQphSmfdhswa9vw#X7?xA#I>)?!ii)?(H|%^JUi4JUYaItUis? zvEn(Mm>*XxOUpsqrB2)QJ8pnMb!Ms0By>ok>b-v2FIjP`;_%#rr%9si(6r*}@pxb& z%BwxiwU7rJ-G^X_dxkBfzW(YySm=DEUmbjg6%cj7aBctOKs+9j2*NkZSu^o%m;t`> zXNBf2&oN8!988PT9|23;mvBYVO61$Kinw!$x}k`f$sk98Hy}COOPIYzP?Od&q$cch zAgsz#`(NV500z}K(o~b!H2j zLj8mz1Z6;QoY~5ikrEsx%wB}g5gCPVali0cB166Al#wrRpvcg_xT=cpMqSgkab0}8 zuvMCqg?Sc1)#31fE$9IJ>O)SPTDpVfsK;@VFs2a1A;JxDbU+JA*fe6n`5{AP?G$BO zcM7p_?+94`T>%eBIQKoKQY&%dFcuKRK?5h954bieTm6Ax!QsP5piAi7;XY&F$bpdA z%?ij_lXeRU97EF8l#iH&T3PlHvrrc;{FotG(0LC-Vm>S3`n`fW^b>}#FFX=3Lv%;I z>z3kGj)tWia}+o@$e0!p#2E(Xntj}FDfs~;T|P%sf8FOZpG-jN9EY3F95KUUBA2M1 z{gtT!wPQak2rHdE>AOl)Z6D z8TXdMa^-hMjGo&x`@t8Z{yOOEsN%mjQ5G(r{k<=rYTzPU8KW3=@(079e@6^&rvHeu zAu-qodEtRMzBp zHa6%A!p9~Z2(Lr4A{A#!eJ@A_w zU0dNs-w3qmRG5Y@$^6c%5E*jn_i$ZA45|%(7=GKk{r_}xR6lLRVT9rT=yWChK{fra zONws%+gI_#)>j)AN87k%#U%Xm#md82GG)PHs-|4sR*8jths7Ov=e{zmz zE>eXI1$I~NHL|%0V7+(PeV!HAGtC77n_px|>W?~*n33$jZIhWuIh5apa5?`kTdJwZ zeHcTD*W(dzvxM1RK}C+lEsL}WPD4JwIn2-$JKM)B)JUXC@Mhl%d{w~jcjvlJ`k9TS zRsO-Wscri_jBo8%kkR*XI1ql}7q(}VLUY^~lTBZXohS%&P1 zfs__O(j-k4#Bf_sW>x^AB57h$D&+4$)mWBbjp_`k-uE3y6-|v}DpcVM`ZfG~Ak_PY|$fZHAygb3;W^YzWCCFjpa;FhLwMNylQ$a4>L5MQa)yb0*K*w9czO(%qSrr zAls9nf4W?qXv%u25lH*EO+v;82ea#039%sUgSP*S=EU6~nu7!o@*VgEbCo(CQMBg< zwv5D(4{~cpDhMC5X)ZJ)AB3{8IFcS~E@Y7zLT}?@o0@kcn@hco9Fb8<5a}VLY;Izu z6amN)rK?pfOqod(;lnH~nTz~^Y!OdDIuwy8LQ`&L7HR;pMd?;@B0g|+3)?{D^!Bj+ zadOqPl^`I2AOV$L*g+^q5(?uUKYXq#S|WW=(m}{0Ck0R7 z7nIf5j@%Hk3E3&PVkD*zBb`_?IRV)z+@|g<%8;Vc2^D;cr33BQxB`gLPjA|OL$)*QerEB^z0UcbAm6+wk8Rhr7_!RnBzGNX~?k);aD zV^h>iK;)*kTGG>ki*oP$K4d!j;)&q$DSkkoTSr1CI!MzDgCYz)scBm8ECz=QHAwSJ`E zY{ZBWpKE#kJikl|jdk&=Nc_5EFpO~9Y7tG}jqz%NvhdGX@ zqHg)jOw_aaOr@|w4%i)5NdIE;naN>A5(%?dg5YikQXUr>Vxxe9xcO{mCMq(-cvSQv z7Jycd^1MoX$Q7GlCqAT!jTTN0Q`Xq*7g1&+lyb$R=Q1tcqZxg$zm6R||#gf<*#$umt?efuw5fVxemA z62V-vP{0o)d{8l!R5e@5st6u&AQ@S>jF}1ccuK&F5^j2$sibQ7Gpw0pFI&!3f}cn@ z^I1W?`8kH9>iBc4is14hhNKG50`Tl(1&1h=;ei0QM49-AY*(C5M?KH$CduRR0N$PG zi!^x5N{&I28oyFhTYnYTgOTA^2PB-kT2R}*z>vcElmnqT9IHV!U=1($bUKV(YsBbA z(N0E+luUX_=xp*bLmGEw4y4TeqIGOM!7l3s{KtVLyM6ZDUB4 zn_u_jGWImR3{}eNnHsH{?lTfPX|jKx-%grf2u7-TpE;|emTvbsOOrLfJCGU&YLt3q zzu*48w*A5LyAQAgu~hqlA$@Xf=ND{0Z4@Vc$&m6rO%5_7YS|?aZ!v!5H#egxQaXQS zBy>y8d}UfCDySUa`E9PWuCK_X4avQ;EKv&I zuCCOSp#D5KzDvBx+YoO-a6GZe=6FhdaO8Jmt`4uoe{guw#{|3o>7t$glWDl+iXY%O z&7+9>o}$Cd9bATGI~zN}v45Lcn>@7lZ}yP=$-*-R+H=KOGnxqf%t%{Tk%9je{bTCI zSjKOJoa3=aGYdk_c9_nDY-M2oHuAU&Tq}*d`WG3}(x#q!nnV18D`CofN6|R5gP7@eXE*=sJ+F?c5~&Zkq0H3LoT+R34BuYVF^74hsrQq^oK%7*O6PH{*C z(wtioSRYaI7J=HYHcQZayuCKpk^Ec$UmvW)RO#FbNfu__xiuRW-M+oRIdDq9sc&m(|TjW)$%*5aND!ac*9aB=J z$~xEGa{D9hxRs9ZIp^`kYS{*cv$>j3(_2fG)(e;=hi|agPz{m-ZB@z7ep}!sBhX$= zNHQildgIg=Nr85Bo1Bz)G`x4I=C=oGsa97Q<+K5wdWGWxrpR~)}tB}qQDr9r?v45PWPZbM@W1_s_N zZs;CDZJPz`H?ht%3MAMy;-vyJ?Tf2gkv9k<^iZL<7uMat9JcKInd24*AwFQfn=pR}*+k(ZoH%w#0elNb6 zRfQYd75BbJ-NKq^%&y;tDkx=LuazL=wc;wmEy!=pI=Oq$TK(~bTUnGmv+PzD<-la? z^c9Gcsi-lt4QryA_w_bB^HOXkwZn8YwQazC;Q(bu3$s*L~8mVHTeRDMTi_~}J)yJpevtPOJ?95>#LI3m{96 zM>(<8!KPXD-yPMyPHY~2h#`wQo|JVq%DP)e`qffPJF_x!M%g`qs_K;ifzJBD2`SX< zT48rfo0-`~m^r@-%q&K%k>;L8bA~pvuq!JjD?4_DmH4cOFG?%ZoYmF7Wx+c1uGyBZ ztQDrlsPkO|-Sk%JCfw_#&lu z8Kncsp{3nfDVch1C`>I~VH~Piwbp@ZLJyZiqt(Yf0^O~Ou0FqBlm_D`G6R>ZRy|o0 zn-`^K_QYD3i7%v(I|mze_mYtnJ&loip={O*0fhH0$im^^(|<-;r$*FLMZJt(T3e2e z(2PB7g_=>@H%hfnWBaJ`C28Q|N5g(USZ>fSf8p5++el%1Aw3YSaxw#*3Nr%@sW(c} z*>lW*TNpt-=cfmfRZa$r)8O3OTgUQPuP;iw;d=b%QK!-ZbyUMl=3_14YSh6?i0&%p z^=8rkT}A30%tt>pGV_kWU{7OpP`&i zYEp+{x+>ZpY^a{OhXuGD|25im6EcS|C#l9){;|^?gMEL|(15K!a;VgQ&To4-%UXCl zeoJR4%m1$_fck6fz06AfpbuB*^*&brCdB~!M}O1Al01xA!(E%7=CLcjTkRai1D1>~ z9u~mYmF{yybg*JR{=a7s-S9TU9e&++w3E+?3F1=Am4O(~P#r$%&*9v3T~A>PYz<0> zV<@j0VPyZutU^uhH3|`JJ8W8 zc+j5aCP7&L$yYdnRlN zJ$fc=LpC2C%{G(oDX8h1#(O_wnJ*aQrqce$1T+7P8yj}P>;QjgjG&~4Cv+9=Qc z><|5`4*y3(^^&~je)jl(ZZ33?Ov_=L9A7xEBEHrb=gSroSVwq_(?zA63_Nw%KY^zc z-nnO3sr`Ib`IT{2d=p$HpUCPRr|6%G!u7xqW(dvEE5sc3@XYj)I}3BUn0$p@J~llQ zV9%;tu8|1X@6-F3@z&zoagdl~r2g+n(T%S604sMIt>`!ZTJ1ytymvFI+5Z4HTeDCU z;H44Fdy~0(a>x6V0~v+)VFA~h%W3$J{-&;MHH9morqg*s-_tnuAX@%j^*D9HVIV8$ z9DaUVAfDV(G?k@^NP`!@Qi$s>Q($7J2iXcfkYlg49dktFLo7z#%r8Mx3Z_D0n?rEU z6c&CDFjlXCdH9e1rkN>c8mpib)~0E^Dd$~tlp3EGFxfUvR0LG=^niUkfJWcm>EXeR zYr@m9b({Ziz`n$+a0}aH?N>40iRb*A#5>usail>n4r>1OnAl0fJZYBSVkI^Wh zB5A3RA_pWdx5(Q6Wz~pWC5Dw3e|n+Ip(9r&o5#~TKvU`z}HrA1csYIKXcdZ zd8bOf^y@IPe`)W$L!br?TFFYOjvA{Bq%r)y3sG(;O3hx)W0(dBhJopK8l1@ORaL*d zz^PKb=2&HKN2=v7224^MJ1G1h_ZpVMfUl~&YXjy}A=HSCYh5;2vBM(OxR+R*Dy{o6 zGw7}MUPg9`d&W8@VreAlw(D7%DnGtnRQ|xnf$=Kt72(F-uP_UH+BDMLpfRfHMwX&D z7`M@pa(2o&n>bX$;S*OKq0;zO(?2?2Hs@85FQch`-fJvL%BcfWH*=X2U+Pb%j7Hg- z*But^+L~{$YiT&|e1lCS1(UWgB==$po*eWi?(W^r@s2OvnRpMkF*zA$i>7b$>PEHZy)9~OUc!)`NdH)3^wCZg;Sf?W z?+63Z-eG}oJ(=%vJINKB-(?np+3yLM^gctfXCFhS+4Dc(7$Z-%{*d{p!jleUe_#^X z#r0De(rh@k=pyp&c1)dylg-FQ};0<*bE<{HrgZVKIA~EXZ~J6ZT|^Fvir0H zshw*-71Tkc4C%QBK0%8kZ1y=rvg(Kf zVMag|?&k=hU2FFPhS@6KjaQo(DLl#xs7+rmFCLf%)QB$`lH$4tSyXS7_cGGI`5aWU z4)H#L9tz&_m4St2c$jqJD}E+~uSo~hb6>lOS%(b~tab$BAF*m@8Akz)wsGHZBgvcf zzhy|X*a3zVwsXswNTO|zFrZ49Y`kToiJ2(#bmYSB=5fI3Ei=i z+#6)~vR_#p!L;8PQgC@H1l%lPw)5@?Z+SI|6pUFKcH^? zlVgnFuMVX3WyNW(9gCa&xvV{Zu{`-E>Tl*CbGJ)4;S5u0CTet+Au%6vAXz{EABU?wsb;f{^5ge!|w7a9l0P{!y? zfO*MJErZNU@VJD_BL%g06hma2@D@+ipm`ijv(eV7hDx*1xM=33NUR^jM4jk6z{t)5 z&W$xh9cpc>u^=_(6hj&UtE)4Sn$|y#wdx5lwgwYvSmIl$*nZXwnnz;PgBNZHW-Kbh zZ`;-knn{>;n%CCimJnB2Emo`dQJ8^n?4emEfX3sm4da=)eMRG5JT;OdDnzJpi&!i zlUOSa2)@duUkzQ`gmqC(gRW&r5;d-4NYwWwoZ3`Sn>iB!F&|;b!y<&|sqD3Ipf0_E zUCe=MTFwEQUf5i4AV_hPyoh(BOPX^qlW5%=*&JHTKfN(%uJn-84&_6v^d?qCr<1jJ zqAcYt?7ru;FhNDfoI!V?9AB!!MUIxH3MyaT($v5RPYZ808u5W#6WI6w1Z=y7yPIJ^ zJ=iK}k`&01M5@%=Fd6>VHP~6@w04;lP#ZcT75z=?VEA^HDXZEe*hPQ&7M}#WHE1rF zuqyM$10_sOu7T#9p22P^wGC^g-A~)c@geubwn5h~!P6M--Y`-<7v#<4_GXFKAjphij%T z=|Z14D-Gd=we#JA=9UdfWp)pmE(i;tzrsl|>TrA+KNrWD#GWiG`pYbfv~VQ#VlV5R zN77XE=)qoWC&l~nZNXvcSQ=}hGRnu$(~x!PJl2SCGM&4WAe|yAGK~NA#8EU2Gk3`d z{Hx?`{JO}lOztjSeN=CjCVRI#kalYm?qDhpyfk`5UNOo;kK0whtYEBJr}Z7mLw%SZ zYf5ePY*z3gn@Y=R`@Sx!8B%a5rm8y)fybzsC^*_&xke0B`+>MBz6~z~CHLovf?^=Q zKl?Ep61U#XAt7R*vq~9IIY=YbvjezaMPGNZO7`Ko=Rl4>^7Ms)+#H$}Hx6Qm2{x!k z4(3UU;N|x)B<8*MxLcf8gi$qr2#=5OtcJ(=_?eZVPJio1LGx$eAo$17pdG~an7h|# z!%)FaU?RS7J$M+m+V;eKDEp#wunUs)_!-yxgx5;$W3Q2ia)xufyFz#hhJ4Nl<1m_8 z4vgUT65HI70=6B+kj^cq7*ei&`^%UH*JlUqe>%(33gBg1F+tVnrMQA1N=CU?oy)f5tp>F-g#|;dRzj04oGXCn%V-M2!+dI!KG-Ey^ z8h^%tW)(!l#;A$~Y?_(m4sse#d%+Gu*3Ey_TCm;P^1T zz+r(0KhHX9b;2OwIj)(Orriu_pkQPfc^*{QqOWk|odxN)748LTyZ%|Bn3dR#>f1oH z1t4u{E8Q_PXd?z2J|JMvdep(0uVbD1^)*bUIjiu+gviw#)HF@ztY%*_#QQ9t1Upy- z&*F0F3(QNMT)Gwes{6NK51#xYn@gRCJvbgSb=B&I(|mb0p0gH+7vEWAq83Yu1}>0lDYUde%kbZ~g{H8oJuQ z!bp!UcoH32FcR5Z*g zKa{Js?B-(yUOKa;HN@|2`QmCntcO4Ti=Z1(_y_*<^;qqGuR~sWW6ejwu^zQ+PcYZ> dj5XtC+gJ30gmvVOkZQBnD1Bqf-e4=={{zKfOius+ delta 43271 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 ad3yZT5S z#me3%PWthumGK_fFxG=>Rl|Ed0vm$sCZ7Ej$Bqbj*9!lzfY&U+^Qe+xbefaQk@egv z7%g5Z-xNub=Jp|4&U_r|ZOaVrZNVL9`V?-4+UkOWa6EP-x@81tFv+2snZp zp)`L8yHha|Le!CZsfdcJNNg?8OevvyW`Z)V=xH}lOm zGpkp~^>s|QP;TUdA#Iby65Ua)DN?biDz*u=%`{NL8=R~4rj$li8=+_e6Z|Ezn$ItH8Oo`>R%RbW&&$uX8 zfEd2{uWqjoKsW-z-aG~y!euCmB5)}&=mfJl*yagrXp-(EL;@#sLCDZlQ6yF9QAx>{xgaE|oXbF0$Fed!;(;WDz z`xjyn_YYx&O zi=SA6aX1kf0ycM|c=^D7X4pmb+ssshX{;n%^yxPsX>=Y2lI0G7_5)|LI+~!%^Kcrs z@*ceMyGCn|2`|0B2s)Kg!qcUcRLs~}I8GDe%-QGyq`4YcyXO>Bri_jcWqMC`gvt4Y zaOlYlw~Oj>=n(Yd0`z+19t24fB`$UGwnnK%ID-Buk2E^DSQO4O{EfWkpy<(^1S`C_ z!WK?NVszy<@G(CZGW)neyyCY!JPH6jG+aDUEwXDk?T|Np={cpL>O*>I>Yr)nb~Lj^E{V`l{8=y15Xitrjy@jYRp*Pc12Q zu;}D2oZ{(^QhgU*7%g5PtK#yI%jT*N*KtwH$B!6GL&FRij2gOT7w3P^yrCi1;lrzXw!=Bk^;A zYKtHxX(M@=!$=iH0p(H^r4bR@9yk~TY7ce2 zx;6v)_Qz9iOV7@|cYlpt64c%YNo*Hli)tl za9E}1Ix>St|B3s(2}q^!Od?F(2O;YJ)PkO*XF_1n`cqK!nd|C|XGaFHI<+K>(Na_9 z>CL^6LZ_^eu?#x>yZ{D$dlh2X)xvC6DEW$v;QEIeo-Y~n&K#Jyl`C=fVOm>;D!v?2 z!>$mP5P*H#QhJUM)L(`vJoHc!?M#%RG2H)M1Roo#;E&@Py?6o)FzM{;V3QkxJOebk zcmmFXprv==F8am=J*05FvF>n62;rK%1Pnsx!lc73usl0U)jF6NJ+NACunrzmC@%G1 zf+3n+fnE6dBNg1zw2&oq>>nAS=1oXr=Z*+nT!CUV@Nk3}P#wr}O-Hd)Q)&GYWZ5f> zZce55zv8OQt-=IYcxAkRUyn!WqgA-uvy%)i(&RldjIWw$&#utyNhqN{o#z9tl4dBJ zxQWNpWo#D}b)bT-oP-J%^*Favr=#FwH^goQG0y-JG)O_cZwypgA2BKgEb(^uqoz kUHa9SH7Ih>BNL%s;8Wdyc0$%v09v|JX8jNL$kU7e0~v=ckpKVy diff --git a/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xm b/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xm index 6acd8830c03409afa3c34c013fb2e7670ebcddc0..ee900169a6f8de8f98f3281e28a75f7c28fac014 100644 GIT binary patch delta 16 YcmX@YbcAVwHY3ACopMIjiAxp$04yB^SO5S3 delta 16 YcmX@YbcAVwHY58)opMHoiAxp$04zuaS^xk5 diff --git a/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xr b/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xr index 96c3678e2549d926a2e8b926465d8a8b46aa2c28..22c444f13f3dae01a855ef80f20981b17fd979ba 100644 GIT binary patch delta 1273 zcmX|BT}&KR6rOXLnVtRLE&D@R%Fa?i62L6ogq9Lv)=DrXwu`2Xu~Ctj5ZhR(nn--< zv`_9r%tr6JAKv?wo1Vl-VejfrUt_@JmEg|;>}eeukKJr8rwJ@?-4 zeCKbjopoJ1>za~JjZ=(N8LmeB0=W1-W9H*YCce>=RcmVgA5?qW*$ogV99 z2fWj+EPy1{(R`%{)1wY>(Wya5Ej{T=+~K%WJ(gRAejPtE^d-%4QZGbhae?1fr}+k zToLXnlM_=EZGGkY>ynghMbJyfpb|pVl7Y=aHmEQHW%yi$o1d#RcMLuUgANTtLoVi~ zv8UNKvqxx$WeL`iWy!{olk2EDuVzu#ZBH5}?y)cjqj*^KY(BOd|36;0=uFFgY76VO z@WzyMv#9gO#jx^G8%Cz~5vZe_4&iLlhq|H)U0`r$Ij3$TeKP{_GJ~%@Bbeq|=sIt0 zF=^&`QA3I2uut@8c;$&O2pT^Q-I!6G9CZIE#PC$PtZ@YFDI-(&L#T!{wVr^c5)BMY zUk%fE3j}EE82A(pA`qa}y^uhoMON&%1F_92d6=Xy*~oP@Fc=Ndr%T{=8#bIR0S{%WAqqNW_d+dqqDux%GN?W!Dy;UC z@XssCdkoQ)O@ufD-jaZ1A~aRwc|djA0g$ry&B7rOKSd^l4U&n7pJ zJ|Kd0Gt90s*&XaRNN?VOb|wquj_Ika6@quHcl8M2rIySb=hNQ80szhNx&)^oq8c7aLy!s#CvQLcw delta 1111 zcmXw2Z)_A*5Z`&--P^m{-tDyN}Apve*Izxcr>{jewq#)MRj28j~+U`X+U0Zqd}4M_o0=e7Di%)B>m z-pp@)Gw;k)=*(1TS`}gv=yEqy&D04YFx#0dBm=bRcUX-jQ=b`7XF*ehq8JE0tI_I= z&1CgrGrDCeK5%P2N5`LX?ey|Duom4t;hB9KE~E_3qQkM|HwKv<5y1`{Z@UwVxAI4+)dz9v1=X%|gO+G_>EZW?!9V_rs^4(3=OK z*>l3^<|6A=g<=1Gf1+Wr^G}*3{%ga(!SH4!L>mW4Z zuc-#KHJ#oYgDRQ7WG3k1K}dz9%VsG6)17e~9H^z#AsArv-FlLaAA+q+wd`h1fN^j{ z3;POfwDmBg=%Ws>DDoW`cr{@ak`el3FH~|3m6&N)sjEd8^vhw6G#TaUyP+Ji>M1^dGo2y{75zO?*cpsv@>x79n z>*Idr2>kt$wvox|rOP?dK+O-}DSG}95yfaKeC!2Ci4j0MXY<$vaI&SmP}C(1gHrRb z({t)p4xi1#6c2d~ecvN0JtrouI=y`twt3DPvWG>CF2#k0S#J~PkI@^qpo`vFf+umh z%wUVIjY#?kO0YR7cS?pyqP|6FSRR0@LtOae(X@;krs)zKr6*c>9BmMfc}^`AZ$pl5 zSBN-vB$>ojxFeCK3%iAm^JgP8c!!5He-GlAuZ+qNLAr7W&UsFN-1|^PpD(cGK$+O! z|Fr;MX~#JKmK8cCep~5I2J|w O4pwXUrydojw*L#q09D=q diff --git a/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xsb b/si4/soft_gsm_main.si4project/soft_gsm_main.sip_xsb index af08b715b94b69bccbf43220be148e8989cfdfe9..0b3a23cce7b81a1c709cf3b50ae2de4845523573 100644 GIT binary patch delta 6831 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 b&qSyUqh}%zf6x5Btx3sNKeYVMiFNcp&`1Hx delta 5306 zcmd6qYj7J^6@c&6T9V&hI}bZ?Qmx(Ec{GhzaoVOdsinwHZE)g^y}=1Ivy$yJxa6_L zHjNo(yy=6`8D=W$*iqh9T80dd6vbQcpFlQ+lBB;h3_}tMjlvHYpn#m014$@H@BS->P#dU|sKcmJE|F50 zaCsn(B)W0%s3p{Klwb)mY8`a~wShW`I*dAnI#wb^a?ur0L~Ws#P$y8!sFSFDs8gtw zTrnbwbfrnfHyn_x3W_EnuIcq8T34SAzK5mFWrXC+6b1tRzPXH3Ah5A<9wF|mePi2v zLJC&`ouDt z=Be>%-Mu=5>m~6LGlND=4?&_`0i#2r$KYf~19d}{+XG2lbRRBg3bo=EBe-BeL=m-) zT0(80mQjaM`%uSFDX}Q>bJA+b%iB=~DWMn-ViTPZGwY zFa~;6&{V2pjz~?)|Npu(pe*@!yJLxE%=rzpl1-+yRHBerCYsg?p8!@x;_c)zIwmLG zV{0tIJW~-A-nIg{v#VfzCM=98K>_p*nI1Dwb}V)}el!5q);2l-;eA@~Gt}Kc<&-mfidxny9TObiV7bw+LaZlVx{%JMGSa)JPpdRTJDPH6C7kNrrhFln zWa2nIhE`eI)64M-9DkAH8=2XZWTt@ibzI4mGxCBQ(RKIL{Pbj9<^laFx0!q?OqZM# z(vC$_-d;`rt}qQ)(u(|zOwKKU&Or~&H^&ECT%ZqPq8r51VSJ0OfN^6PqzsAPHcR*8 zak`V~y%IWK9t81~MC8?Q`68T-lYDxri&a|xV&o!n2u{8F2Z+6vTJjLGgXB)x>$RPq zr_2zLPopV^%!A3VwSaO!ai@DIB=zw71G|Mn5`@mLw{&_kOE#6dTI;p`=j?6tOBwsr z{gJkB=j>Hn{pt)?K>6#-#J!yFxVM5@?nqdNcsNLpL+P-Go&fJ~4SgCqhhO)`aeNpp zGxOQic!B2Km5tp!9U6HeV)&z+2YDrsZ=o>F`Lp2R!auO7lN5_5wIH;-N0MFtWIQ=5(g56k~>E z4_DiPc7YT?`RHN+PZm5my0}P~4(4?IYS=&Op_6bDfA7NiQM@Wf@mfGhqKF5dC|;f( znXx<6yGIeyIp*M5kfI`e-1J7zQSk}p`r6p2b(qp&k%I4t55h+b{~G3g+}PIG^c2UR z;`nKf*Fxy1$Mc*p8zRQ0Hic}rGbRw~gz!;$XdP3%O=)U>hT{f~eH{Ba#xR+EJ*3+U zaNKC;vi2r>LHh=vu?AB-sT9bVUuK^(ieG8E$s}F{6Z0*OLH}M@y3H11cD}=L7kw0h7chn|Ss-4NA@Kn|h)^d{>lbA+ z^?~R#tqQ|Ie`nH!#|82)lco0@*~#^3eS_Pf>T;XXL&@Xm=udxrT7T$~nUglnH5~8Y z{GX?o>ZU&p8vyIFLi>SU`94@z;`Bbec=a580N!7n1O2KP^_5XPav#QWKEctL-~4bF zEv;peg&I(_C8qZ`4UVe)%=)Pv+Ul2?^+@w8Fnp~pnk=VEBx!;2+jvx#sT7rDDn=EV z%2C|cIDIo3^3poGG&+oGXc^m;+R?F`<3~AO!SQ1pujIInW7*Epb6z?O#vjAtPE0d1 ztEO&Knn3*1&0*u66jCxDesTM&kec*?H7T3&-Gm#XQKTa@7*!lJJZe!R8l+T-rYIIA9W*!|7N{bO zi*B0AMPDC1DAM>)x4;JHK&T_%7Hk7*e)gS+!8fpl*X6TEWMEZjTfTh& z&)6M8pX2QJG0;6j5pI~kbu+^8D8~mmj&i(@8-=sLHthAGL)@?ixe9K3h0tNn|3TDS zMm<9oH;?n&INsymZ`@vK1EcSsFY-Y(@BIq?B@yr;p8ooKckjq8u=5GF!B&~fXWK)5(`NUQa@Ic7>LoGO z0UxjxtON1_WY5S@I90mTz+?1Ghza=|~41Y?>*L!x$aN&F&Ba+(N&AZMWnf<$e!3)rO6 znA#$3w8;+;Oeb0e(ZbGov$>pweIDG~H#3jfy}8@V38FP3KY3`N(0G5tKhPt{<~$C< zGtJKzpDFXa@7LCgaVmKOhs@Owa(9?g1b$cbZmI1FurLLUJNxr3hh$9D#w z#{D!1g+{R7&(7t`lDq?l*cXyeC?Thq6uq&T+k-d+>Fm=X6n=dD_n>(*DV1-OBJ7JO z54c7Bec5Mak-G*Z*_VV+xc9ie1tXe3_7;?3Uj{pn{yFz5M&z7`M(LS{)mXh%l^ed>!zAA*mD$%&3t=)V9 z`UzBLUmZeWhurz4;t3O3DL2{IR37l#pMGY^+(PaM)Mj5BLZR$&_hp~Fhxj!9UvM#c zIK@5fVL5GXL(2E)aKBEkz{^z7?N=_T`5mLIb3fhf*N_pbIh!lSA}kl6F8Av~D71#% eeh1k?5!srQxSu-;$>7f5kXS9gJ67#QzUD8H;$Z;* literal 1048 zcmc(dze_?<6vvM}GaCYf{(#2DXOT3jL@f_{WVOXLqM}8mA5+VvrItXWsG-9DKnq&U zDX1lfmNp@3c4&^y_Z-yc(&~Zx<$J&9ezbc^HkHmIqO$01-|3AEQAA>vv>SKfEhNTV3`XlD$iYf%FaHGv~u-RYSf1vEZc^ zk={UZ%;jLT4x`<3A2#@R&6TOsYPKXY3Gtx^p+82! z97QN)f2b@g((9XApbr*OkUlinL*Ob9!>}?)Bm3^2(S+-MAI`bwoXhWbJs#%quop^& z{&ahMYOVDHyDmwRg5h7_uWF4XEyHt%OCR03KZcgN!!eko!`d2wWvc$kN{eu*?F@9s|JB7MzEK@W+xe`r_W(iy;Gu5r-nHZbT zh8X`p8^erDKiv4!>_2+eLP_dI;kdw3>Lf{t=R*EqRqX#QqpNYuryiqd5*dLe-f)wE zJrYe?Q$&*|Ym7`|v4{YxWBk|Jbf(&Q-fzBp9V&e6rA^IIsPM;27|{dLZ-Oow__S`X zsBPN-oUsz_Zv=Yngvl7d(LzX$16~ginl=UJ8H~rF1G8xo(ZBOTmMC1j89S~$BeZV; zF25)E3_#s1At4DEux5)r^;-c~GoddTh&Z=TL=@X)roGrHBJA({{5(IfBaNwZ8HL>` z$Q`;v@a_bB!-VMFm^J35|F!elRLp0!P=Kc)t0y!^l%LxJMC~G&GJu9k!j()wdyOzA z14f@&?1?l1PEEdmeJ_xoMCi%_QVtP*WCJ1R38^_i=tDyDeqihyVI&tA4=WJWbY?&s zNwDSP1eeOi+rL+U6Kt!_6IqiMWW~A&$%TOPGoh&nDAdxNL&d@UniA}XwX3_6*jlBhHbXd-grGUMD5_lI*$Aq9P~fzjdq*wk%0H;iCpU#_glP2VTy+;i@| z@7>W+K03<#f;8qH-5;wvl@We`G4>ea|6hZVv1fo2ZDvdRJiVt_b1(Ev+_i%p$UQ`b zL1|q2?sV9vZ3=Y;Te-GbQ{!E>z~v`%YcVp6&KG zDmP*Bcf&i4BG;{z&b!jSt#%tQYXUerUqiyM3FZ#H{(R4}U1_9E`T>5dxH{(YYnp$Ax(t_|QeS$*P2rD;t|K4gliV9i5 zjP;^$)ZC~DXDkTMdE{NVf=dU|%QG7k8d`*HUa#LM>KYAb@@rzDfXj#`lfTSg{<1>7 zi>+LDqqaRUFr@NU4NaO-x#ToGelJgzX0~pBX4m+a#d30AJaR zlip#KikAZ6gT*3pVi|D!V2Qx(tfJ9(^o2z?6H_}iOK{HzXSx=z9n!o4j3wo+j1HQ-Ksm4GD)YxQcArVlApwHE8Ud&4aP zl#Hx@eANQeDL{9P{oT$%l`_%*cS%a%jH=T9bl~dVbJ;c=*02mjns>GLmJNR(f$j><8pZM0l zw`2Z*Rz15DZ>SLS{f_pm*?|2`1XB7c-zmTybKo_G{`6a*OQ8t`NtVJEQ8#)MN+qwd zM@cx0x?&(>W6m`%aK1$521DPG2ZQ($V?!Bh!6z-xjexGr96>Rg7jf-#+sht~;pVQ} zg2@FJB-<6hQwn%p7rHN9RcWkD=BC)a6MyZ)W$6oHtOr$6=f>v|jD>juIz8pNP;ExC zq%d@Mmt*mP%io$D3iWTrg5TeD+DiybS0FGIliQz*TeuAYeDyQ8&~kqz0;l#k2e8GV RDs0!ZbVcb0ipNl$`X9-E;^zPW diff --git a/si4/soft_gsm_main.si4project/soft_gsm_main.siwork b/si4/soft_gsm_main.si4project/soft_gsm_main.siwork index 563818938a1cc45ac094dca1f4523a4d4d2b96ca..85146f566ade94f8ced1d05113ed4d7cdcc63378 100644 GIT binary patch literal 36954 zcmeHQ4R9RAl^(2-k!)kjjtM3Qu`s^GxbS*cE6K8x*pej~lT#TX$zWie(Q0-r$=<)( zT_MRw64xaZq%aqAB!%zziH{$L-<;v@awe%eJ4My;8zTao?OTA|$)smiVARlR-v_qt!d?w!}KXQrp5Ow%@Nntmowb3kZd-724H8u5e?_V-2% zx5t<0t@b6NTare1A}kVJNQuRxTZ3jYJ)qMH+TVis~1 zWXXMXFiYZ}IO!SuE8m~5X&s-o8mdIxhu}4!*8;x-ya%}BEKR#>qo$o7*0lYnj|ufs zQq%tHG);T>YLqF_G|zTTyK=6k-Ef1ZJqy0cV085BUmqO@za5t{Q39Ht5Tkwl ze^r~EG-HMtiY9_aA{mZVw0Mo~u(!rY1S0{Y#20bqbGqV8oY zH;W&{FK{i*+Q_u5sZOG!0Y?Ll1{@7I8gMjF6gZXm-^UJJ_o z(02u9&pZurZnNz294);E28eVo=lDCt9z{y@@y zl60S>4@>%pr2j1Gze@UVpsaU4=)M2guRki&Uk0TdzmW8}q{EWF0($VFe*K`NKaupX zq(>w@D(TN9eF>EEACvK?Bz;=aXC(cpq=zJZR?;C*^1mSIi=YnVu7OSzt-!?N*mB?T zijkdjy018V+K2Nr?eW3)Tec#se+p|uEXKHQd*dVgOaQ0)zU>5RIc1U?SNS$3g7JjU zpXf{Y8e*{~f70)3iJJb9uOk?a`8w8Zs$E;x?7|*vF)AgO{?|0tdWyCG#WHQZA0LFnv>5TFSTOUFY|5$l9%fX6_|%xMZ$;YnnMNV?F4cc zg6j|!nD=cU^SCxqf$huyk`h{fJD_U~gCe>Z@c`3C2J}6%`}A^z{{jeeC?F*`18hWN zKA2WF+wceQ z*|u-fg?oc^+MJ3*<9)XCk@p!O_lQ*>pXy(^|1hA}w^;ra{VDoa+J^)BzL%3agDIbi z4G}t#NXMz?!G4|2*B4_?{g?*s`SY;Z`;~g(I5B+h6bxKA5%X7&jww5;N}NuSDu5ly6+2pZ!`QB!rzBo z;g((@8*<5*=>r1BAn7rm-5g6 z?E_JDoMQT*z97SK+LOg``W*Q9f)^j&QGt#VA9y9@12`(ME!C;oQ8K9SSZ_I1yg5au zY7g4q@oDR(6?s#R6$7kPxN@q8HS!PrIwf&$JWp7{vryHN+Dm>{4@=1K-YIxk8J5sw z`wlo7C^ik`VhL-SSFUg@VX=+8(;sRe)5GG<-M)MJb-WR*eXiWSmtIxrY)yOZ?G3`N zFnrG^U{_4j@v*3X2Z~bzx!4u&iUw!rt~iJPl<$>lSB9aD5Rk7J;Kq+Oeff;X`6%6G zXXEbB9X~i=hwuI*?TX{EK+_Hsn+9^RD^(3^ok!`4ZQz~$q-lV=Y4#%zLwH1C_cH4h zJQkwu`E|z59n<;Rp3VRu_R)a8X>-_)iXFDt9|!c2myVU%wyP86Xt%Vx`gOkA_uu8K z?w~&upQC9{Cap)n8NO=@c8kYi@eyz{8V*Mz&K)PJ+kxWKKrVL6TUYIDvlZXaJ3Ue~ zpx$wE!`__y>-0zUDl=ZMBCC4mNCVHl4(rYl^8&z5q;>u>soQpI7-{$8mJ?sC#_50B zLrvRn_rq>&$K!ahTbF);uLXC(cwP#-h3&k8o|MS2TaLE{Jr*P6a^0?LDBjCkToj&ER0on&59~DpeTQgvP27i(ETJXq=;~z1HYouX|Pvh|>D)3>3D}kgu z@A42lZO;}K(gnu158sKC5SWde^&Q9-SfN2sX4JRD&yfXAw+z&y&i49KHa zRAAm!Ko5||uc%<>F^xyEsK7kxh5F>NCn_+HPlNEO`OKqGm`5KJr+H{RZbb#=eGSNa zcRcDv1&$rp0Jft$g0b5-yiG*Ob0;u1Z%{v3zBTo_H2b>-NPW_<_W|h#Qy1%jwZO$d z%1RjjqzY3wN+OF(9uW|YGD|S=H4p{4`VoPdc7Xj9DSTHwbqBK( zVIGFUgLjzm*_+m^=Bj5A)cxbZJ2rM9ycpq&n=EY<@_eYh>Jcw&SJ%}zFV;cPMF_cA z{pyC5jm5g|$)*3^wat#ZUW9Ys>5^q1Xsu{R>{ZX6*Rad{Uix7uLobY9_0W{@8Brbr zrvj~X6>uq#2g9krJgx|66M0CS3e4k5gO;BM$EiRW({=}5AJB(ZS-S&^krx2Ee>I># z@%W3SG^kuz^dsy`Qe+7uI2$KpM`L*H$6Gu4i8;KX+M5PA^lqz z?LmLs>}d-o`a;Qs;4StatH+h6QkRQ;Nb~AnF1B^8$LrYEytL{R{{N_flx@W!s+~U_ zNPB7hp!cxw6EpionkOX$8s&e zPPAvsZ}Sd8{*%vb7twVnLmVC&(0~2%bD|1*`|K;%7(AF=_|BlERaKtacE;EOV|5}% z84;^;ix{P1tV+b#2xHalEJd`X7>4F|p;aVle*(o8=$^#0ArFq&^1wCkPYDFb3SO;_8#Ag352FZ;*itQ3vJXKkVax zdrB(ofA?r9-)mCS7~TX8eh;!_%9UA;@ofBdxkBYS_`P{Ed7_0~Pdx&}-H_{ej&iB| zU`>NUEtX7` zh?q#ZKZ{)U{6d!a+mlb_XIzCs&zffH=`OMv+H^*un$mJX84@C3IV)V7X#n4(Yt_ zF00Y%5g_hHO1A67^~fVmlL#X2+moumJ$OQ)`q~wqJ(I_TTeVnY*onwQ?e8N#Cb302j+R*93%<7ST4y^mk-@Ske}c5f6s^gGMw`f%mHL)x(hg>R{aH zjckcd^VF1h-0l)@ZB5Ja49Kf+25(+by|MA)Cfzi91LcWeFkoy6`MdRCC=s0A9Za_N z2TDA3D=S*uMxQ^PtQH?`#CIEKsULD2_f^M|!C;~^Vfd5o8JDy+w;65CEe%)96(4?# z2fL!tq>=0m2NM||hvY%NM6QtuJFuSKe@)QxJ1RBpz2A?Hn$Yqs|1&!J0Y;oxsdMqq zy%zMFnBn_CPa>UoJyviF@P7&*?G^BGYc7+o0d<`RzTY5^^%1?`YXIL@k!RQW9h3>9 z%x{ps9Lqmmh2|rTci=Ml)`9PKwD$n=GTW<1-p#W#?JeY84&llBBsTom2VVWYj5_ZG zRr^qnHlIM+YLw?y=IA$w%kx$OLuHM&1d?@+#U>`@nJFN_7$1D+jgPD@PwF z=jlkh6@0t0@J&Y^WmyQCDa#C`h5mPR^rkF%*C1^T@^c0ci_cT1GgdG16?hGEN>!wE9gF?(>Ja{{BGnW5dH&NUW#x91UiBE zdc+R^FUOp@9%&T_zlQu5z<(*?-#|Qxdagoz13GmGI3M`8zz4y94)_iOpFr7LK>49G z!t$KGVe3=LD=apxDrY`=(Si8YF0)3mx^rSRL%m%-{JVy)sb`4kDkgD=mxJw|^tzRl;ZG1}T2)lH)GJtFI0krF!(PW~_C zI~HTzE{wltwI#T=GEe@or$*=@5enYi@>=|wD<{qK?-J_|yQVT>IN&`~nDgrA4SMps z#)ykkIDk#T{QfKUgcA?y@RCpP=A<#3)!K`k0&jsAw(5Mx%090rb*_S$pU^fxm*Cds zE0tBi{ETnu4Y+!yFu_Fyd73ZV9#px^{LGNuZFv}l*mW+j6W_I(bQOnbc z+Whue8ikFyJK*-a%+ysaC&|+csl1{W_U{yyWI2@%Sc*%ka*H7S>d$NV*fn&S#i1>k zjK#j}e_k>y`Zxy5!sJ_b&!qC(Bb6FyGk=zzNyV~Tv8Qvs3_VMvj?SM*NA^DrCofOh zfwVay796P=GEw!JEMvqjkNf0p6T| zSzUw4AcizHX!M!fhar3>7VnKDv0cSMN(LkTh#54xL(wjOC^dfEI>I)FfHRtm_U5+B zn#FFB7tWu6QW`FIT5K#&>=UH~O9)Ok_RP#wc{6T$YBNfBSt8YHN4v3J=nXxpPVud6 z*w|E+!B<5-INt)wL%|5*$@rjJ6RMDB%+8nP=Ai!8^CKXbPlxLhF{0ZhZNhD!iPYRlShG~vnpE}5)+e8iC(La! z5=MJ_N1NepayJ;ze`=0~@tv*8FIBozYT~|RYNS$Ilh{ZQAa^HI)4jE(Ce`80-O4fb zwg)4Dl+fxP<`}Qn5F3>Vlr*r@IY+jq>|~}oGj2ySH3`ImIuuO=QAIe$dBlsiePtWM zWpP)%^+ZEE60gH7aU*T`-^2P6#6Q5*<3E8n12+Nx68P>k++PKL7Z?C~fV@&Y0^ADp z0N+6yKLqmK0ei)e-;&F|#7nb06`w>b?DO*_*t%uoQ?@9l^^WZjh}BAdi#)r-V(B9I z3)^#mPtXLd6Q;W7Fr^Wj`XYJKm4m&Gv9E@%{FgrYtYq?DCQaIbv@sXcbW)aaeIE06 d^It7Z+FF``Vr@355^NUxkDD)pna2YB{{XpS#3uj% literal 108932 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 diff --git a/source/app/app_common.c b/source/app/app_common.c index a327c0f..87e8751 100644 --- a/source/app/app_common.c +++ b/source/app/app_common.c @@ -13,7 +13,7 @@ void L2_register_init() { U8 i = 0; G.p.slaverId = 0x10; - G.p.wisdom_car_no = 0x91; + G.p.wisdom_car_no = 0x92; //第一台车91,第二台车92 G.p.thrombolytic_ratio = 9; //0.9 G.p.bolus_ratio = 1; //0.9 G.p.hold_ratio = 9; //0.1 @@ -79,14 +79,19 @@ void L2_register_init() G.ccmd_slaver_info[i].mask = 0; } - G.ccmd_slaver_info[0].slaver = SLAVER_TCP_SERVER_ID; //服务? //登陆包,写平车编? +#if 0 + G.ccmd_slaver_info[0].slaver = SLAVER_TCP_SERVER_ID; //服务? //登陆包,写平车编? G.ccmd_slaver_info[0].oper = MODBUS_OPER_WRITE_M; G.ccmd_slaver_info[0].reg = 0x01; G.ccmd_slaver_info[0].regnum = 0x01; G.ccmd_slaver_info[0].bytes = G.ccmd_slaver_info[0].regnum * 2; G.ccmd_slaver_info[0].buf = (U8*)&G.p.wisdom_car_no; G.ccmd_slaver_info[0].mask = 0; - +#else + G.ccmd_slaver_info[0].slaver = SLAVER_TCP_SERVER_ID; //服务? //登陆包,写平车编? + G.ccmd_slaver_info[0].oper = MODBUS_OPER_AUTH; + G.ccmd_slaver_info[0].mask = 0; +#endif G.ccmd_slaver_info[1].slaver = SLAVER_TCP_SERVER_ID; //服务? //心跳包,写心跳寄存器 G.ccmd_slaver_info[1].oper = MODBUS_OPER_WRITE_M; G.ccmd_slaver_info[1].reg = 0x02; diff --git a/source/app/app_task_485.c b/source/app/app_task_485.c index c50e8ca..8b3b793 100644 --- a/source/app/app_task_485.c +++ b/source/app/app_task_485.c @@ -5,7 +5,7 @@ //#define MODBUS_SLAVER_DW20_REG_START 0x02 //#define MODBUS_SLAVER_DW20_REG_NUM 0x02 -#define MODBUS_SLAVER_RETRY_MAX_TIME 3 +#define MODBUS_SLAVER_RETRY_MAX_TIME 2 TS_485 ts_485; @@ -48,7 +48,7 @@ void L3_task_485_handle(TS_485 *s) L2_task_go(D_task_485_wait_modbus_ack); TTSS_Task_step(D_task_485_wait_modbus_ack) - if(s_nos_tick.t_5ms - s->sendStamp >= 20) + if(s_nos_tick.t_5ms - s->sendStamp >= 8) { if(s_uart2_rec.ok) { @@ -89,7 +89,7 @@ void L3_task_485_handle(TS_485 *s) if(s->pAckPkg->buf[2] != G._keyled) //按键发生改变 { G._keyled = s->pAckPkg->buf[2]; - L0_uart0_uc(G._keyled); + L0_uart0_uchex(G._keyled); if(G._keyled == 0) { //TODO diff --git a/source/app/main.c b/source/app/main.c index c7c2687..e834cd3 100644 --- a/source/app/main.c +++ b/source/app/main.c @@ -137,21 +137,28 @@ void main(void) G.pi_weight = G.total_weight; L0_uart0_uc('#'); } + //if(s_nos_tick.t_1s >= 10) + //{ + //G.jing_weight = (s_nos_tick.t_1s - 10)% 100* 10; + //G.rfid = s_nos_tick.t_1s - 10 % 13 + 1; + //} } + //看门狗 L3_task_wdt_handle(&s_task_wdt); - - //串口0,3 RFID接收 - L3_task_rfid_handle(&ts_rfid); - L3_UARTcom0_exp_protocol(&s_uart0_rec); - L3_UARTcom3_exp_protocol(&s_uart3_rec); //485轮询 L3_task_485_handle(&ts_485); //master->slaver发送逻辑控制 L3_task_485_control_handle(&ts_485_control); -#if 1 +#if 1 + + //串口0,3 RFID接收 + L3_task_rfid_handle(&ts_rfid); + L3_UARTcom0_exp_protocol(&s_uart0_rec); + L3_UARTcom3_exp_protocol(&s_uart3_rec); + //gm35维持连接 L3_task_gm35_core_handle(); diff --git a/source/tpc/tpc_ccmodbus.c b/source/tpc/tpc_ccmodbus.c index 887fc7c..37e62b5 100644 --- a/source/tpc/tpc_ccmodbus.c +++ b/source/tpc/tpc_ccmodbus.c @@ -31,6 +31,7 @@ msp/uartx.c 底层代码 和cpu相关 #include "tpc_ccmodbus.h" #include "../clib/clib.h" +#include "../app/app_common.h" U8 L3_pack_ccmodbus_03(TS_PH3_ccmodbus *pmodbus ,U8 slaverId, U16 reg, U16 num) { @@ -86,6 +87,23 @@ U8 L3_pack_ccmodbus_10(TS_PH3_ccmodbus *pmodbus ,U8 slaverId, U16 reg, U16 num, return bufsize + bytes + 2 + 2; } +U8 L3_pack_ccmodbus_90(TS_PH3_ccmodbus *pmodbus ,U8 slaverId) +{ + U8 bufsize = 5,i = 0; + pmodbus->slaver = slaverId; + pmodbus->oper = MODBUS_OPER_AUTH; + pmodbus->buf[0] = APP_VERSION_HEX >> 4 & 0xF; //major version + pmodbus->buf[1] = APP_VERSION_HEX >> 0 & 0xF; //minor version + pmodbus->buf[2] = 0x00; //mq high + pmodbus->buf[3] = 0x03; //mq low + pmodbus->buf[4] = G.p.wisdom_car_no; //平车编号 + + crc16(pmodbus->crc,&pmodbus->slaver,2 + bufsize); + pmodbus->buf[bufsize] = pmodbus->crc[0]; + pmodbus->buf[bufsize + 1] = pmodbus->crc[1]; + + return bufsize + 2 + 2; +} U8 L3_pack_ccmodbus(TS_PH3_ccmodbus *pccmodbus, CCMD_SLAVER_INFO *slaver_info) { @@ -103,6 +121,8 @@ U8 L3_pack_ccmodbus(TS_PH3_ccmodbus *pccmodbus, CCMD_SLAVER_INFO *slaver_info) case MODBUS_OPER_WRITE_M: pkglen = L3_pack_ccmodbus_10(pccmodbus,slaver_info->slaver,slaver_info->reg,slaver_info->regnum,slaver_info->bytes,slaver_info->buf); break; + case MODBUS_OPER_AUTH: + pkglen = L3_pack_ccmodbus_90(pccmodbus,slaver_info->slaver); default: break; } diff --git a/source/tpc/tpc_modbus.h b/source/tpc/tpc_modbus.h index 5f5513a..21c2219 100644 --- a/source/tpc/tpc_modbus.h +++ b/source/tpc/tpc_modbus.h @@ -37,6 +37,7 @@ enum MODBUS_OPER MODBUS_OPER_WRITE = 0x06, MODBUS_OPER_WRITE_M = 0x10, MODBUS_OPER_ERR = 0x8F, + MODBUS_OPER_AUTH = 0x90, }; enum MODBUS_ERR_CODE