From 03ea55fdc9ec1c50720b860105e7d84ac25aaee1 Mon Sep 17 00:00:00 2001 From: chenyf <1343619937@qq.com> Date: Sun, 24 Nov 2024 20:43:16 +0800 Subject: [PATCH] =?UTF-8?q?fix(port=5Fself):=20=E5=A2=9E=E5=8A=A0=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E7=BA=BF=E7=A8=8B=EF=BC=8C=E9=98=B2=E6=AD=A2=E5=8D=A1?= =?UTF-8?q?=E4=BD=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/erpc_core.o | Bin 19687 -> 19779 bytes build/port_self.o | Bin 36697 -> 37278 bytes erpc_core.c | 1 + port_self.c | 19 ++++++++++++++++--- port_self.exe | Bin 111340 -> 112028 bytes 5 files changed, 17 insertions(+), 3 deletions(-) diff --git a/build/erpc_core.o b/build/erpc_core.o index f4f1516a5cecb98b3a742f8740820b33103c2b37..4ef1d04771f41b83e9a89d921b3f8e0f79613e95 100644 GIT binary patch delta 3165 zcmZ8j4Qx|Y6h7yzzx!XevC-19wp+W64a$%KEn7BG*qjj%{}97Ay2^xZ%u!%ONF@@K zFrv*h!Jqk$Q4GXD``X92$$RI!-@WhN@1A?^ zdH1JB@%_ip+OsPkxC|z&j-qA70M{r0JxL<yBif5T!a7l6y8$0ahHaOWWKU@T<2#H1>=d@= z>1iX(Hbe`&i7?x9^mGwctpy-TxQne7V2Ci=j%HN_&K`%5Y z#d6HsTwzaNPiIf$PQV<+F;5++ZF+z@xx&=2VGRwDFaB^ZG#p3MsF>|>xKp~Iv*Zyj z6r^fV1$`;{JQeZ7X#ABp_8*rs($LBpX$#ye{4hGoNvM(lPaU;V-P>W}y2Txh^mD!b zHR6>-;WP?;z$0jr3+-~+wR!hzqq^<_Jc_w;p-})wMC5v>#9u`dZz>lK94}LcuW%)G zsgjbx*{pS2q;+G-LmA1=0j)VJ-AvvG+>T{(OS)X)L7sl&rf3W>E-rd2;}JPOhcOpk zJQo~!Q=1I&?owUek7nL9B@uNEMrfh|G|4Sm zf0+XYBLk7{Sf_ZR(rR5QH5BKF1C>+bOR;X!d`q!Ko6qSbuX9Io^A(m+7sI-HE}s64R9dL(mjz9%YCJI zm00U@S{!o7E-~!0&v2kO9ZOM*{Pz51Lpb#zo)(|^O5^T~^Q5mlm~)x004p(D?(HfX zB^}-a(eAB)HaRaRS1vJWD6+=sn5h1KJ2gvx&X;1%;_hm% zc}&fE=f&gI_W0OzO_fje(U?yYLsQ|BCO(j@tIvxHM_IblT=Pbl4YDj+AU z_N)2u>r6TfQrhJ5o-|;mkQ&doa@^BVb}kl8HIBm5_NVCgpd@aytEuHj(Ocs*r&PH+ z#Bhy$RmwI=ZffczxhY>-ZXFGasemT8N=+Q8pyog+?Sv++*RH0K&jr?2X?0haejG`du!}H?s0zX}Nex&y~kstJ9muRGSRICpAm5yvN z9-OIALOVo#*NJa~v#>$rhx|A!8tFYDR?~Y_>rs+j#8?YXeci|%639>l$QxDRQp{;iA&DWl0nx?6sMv2 zj?tuc+>>d3D8pUMaF;S%Bb{V9V2F_Xb{`=ra2cH}*?Kb}Ddv7ca!Dr%$$mMsi&YYq z5tOJggKFrGE4jJJO-;M1& delta 3118 zcmZ8keQZ-z6hG(ndu(IvHoA3dx3*h5#;gOPK=&b&NeUY9I}?c8SgQjznR6(9(LYoo zD$(bSLCk{Rf`5R)8YL=GGh#3Sszw=V6qaZN6Jtz7GBv?-?tOiaagx{byXV|@@9&;_ z?s>NpFX6Ad(Uaa@3M_MUPmQ;}9H3hR__9sfV4i-}CQR$E#vQlL0obM=uPb_vJl%eP zlh^2fM;zY}@`)fuF)g|@0HOhTIE9aR*k3!?QoC?jdeZ+qKk-shyRKQ~2e@GpU^=i-ca*i5>J?A$~4f z!`ukn;*H}j`>NgjsuB0Jjom{UJSl zgjpxt07HaXCp`dL3A3&)0(hJ->nVCTf~*%81B?@94J82kNU>fs8{j>FW(f{Z<5RM; z-c<&0j4}zkIEx#aJ{Sypr5BE((xJfz0MBB@eCfY2*kbq(7W^9lf5Wn) z)LYZjb^KDTpdYkpRPE&Xn-7>*V7OsVt%CEejJ^< z#J!Q4aNZ(x$ly(hCq)uEDfUO|vxm{~JJ~o?Ea#M>m0djxAk4%MV@(wi)pUrokeAxg z>nTGu-5nmv+{5iF-X*)Hm(^CW{}c47h4ux{8l%2pj2hYi_!$zE*@M7gPn%kR&Z1F0UtrX+LFG|z$j0D-tJl&fg=`-g>VFW>tLEjh$}*-DCE95^H8PxDtSB7i2J+Gy z#?f|1xav^5yU94q;dK94fA8iklwDq2pbmVMI`CdxsyeMx2fn;;;0IMUR)}-)aMq^S zaKUFes1&i;OF1st*f2PQjSU-A+hAkE`34zPcx>1(cd<^Jh2P?#* zb8E`Z1YV}Eg{JoeWTp87y7^dvuB_epR)cP%tRwlP z5kN)lD}&l#KvtEnMOSkZ9?5NNMyKX4*SqEf4jEsrNkgAA^Z_4xy*{;)R}8)1(9(A+}effo#7)!1??&=+paAuaoRr7J}-8;frHMnTKu#mjuXO}jMJqik&J5} zy2R-vF-(YUWJ-#+=(k#&NM5N?S-Y5wX^V?RKAAuex3|Tq!fd181L7_E-6c-6#kJ`& zaiQ&l><)@L-_-1Ij1Yfe>~P9N_fjoNO51Z(ofTSM0uYh5>j^E9=pjPw5@}Scl(*DG z0Tc1XqC@t(L)o%4-JPcKsM+zjX|vO5RRekmsh2Z^6x9%&9_5V^Qe>-kzpLSShqCOL)O*CktpK%kmdlxJX$Rg7OAvS!R=k?}3)3fh_!`uq;WkOl4=7ZYC3dXsu3zWZ_T0 zWqFV+eBH1t&ys~NK$hh-vha=3vb;|gzWymoVl1;&)mPDyay$I=7hs-Pl6nUp6X#Mn MZQ7aJv*JzL|J$4c0{{R3 diff --git a/build/port_self.o b/build/port_self.o index 37fbaefc0c051489c72ca5ac043fc7933793bd5b..3ffa0f27fd2a511e44476db88e1b527394a3bac9 100644 GIT binary patch delta 4041 zcmZvf4^ULc9mjXy-8&BO?u1kMr`(0`AC$iuiT^m`=|e#ch)JvQyl{sQ4mj@)i23(a zB61R}H(QO9(u~#_jZPEOoMSMtDQYIhjByxiTXj0>*knpIoodslonYy2caIfIcjmqK z`F;2I`|a-U?c0MZ?@I3;kPNOa6QXT%5TT_ZLqhQ#9YP)np$96{(F%B2(aQBRT+V=# zOYFXH5<+XE5i)j$RxicFq5V(ljzP!y)X-O%y3H1Z)^&#NrAgUVl8n>hEVT%Etq4im zc#0ZQg%fmE4MIO_BQN1h-O-m3D(@zHaB9q1P_Kizs+)X<)1-s1k()SETKzhSkur6A zUWd%xWR{c~vl3=`5X^?|@H**;q}pn2tDak3qip%E8wOE&f1SRWK7&=|O0Qul;1FD3 z-%x^Ql>X*MXR8%%O3*&2^fPRYfnNJ%({b4bj;7;-K;?`El-{brvy0NL6Tz$qp0o91 zfZ!>XF=&6#V}B4NK6!pUqth_nD(Gju^=IuDQjzIn`vud-gG%QutORTCPz?U@ci;m( zgB8I`w%>9dP&x-p%Bdl(a_WYb&o}3DrFT(!Idst34ORBohlnaC#LXUpI>EdyD8b6~ z!ph(xa#yzep9!3`57XSYQZ+_=n)PG*n~qEe)KhIx0C9{b=YBhZxKDWylIvmO})@$xv4 zd=oW24odjA8%faT$M(}OrStRkFPsT)(Cem5ONicwoFm`By6jDf^<8ucP-WUA?j4p*dIe`YB+v!rAEiR86;lmSX4k=Wg z`(q^gMc9M6i&+^FV#Z-LVqK$M*Tx!VST}8~M;U84BgQQn(>~Vd8EfntYkU|n?$MZm zM}~@W2On7|_r@3l8EI+f!Xiu^FcA&P3b_3NN5JWCLU@buWjJeo5vkWX`t?D>eSZh{ zyi$r=EM4FMWy?Pu@%m-NE2r5H_3t))GV+xLXkJHGBlw zG@+g9^i-O5=Y)qagf{e^s>@G|6t)mLXv=9tI22FcmL_zP9+$>exKV$$0uwSeLPXrN z2+g1?(uO`XsXCP9bGJuU)kX~7gjfX}_!`2g>Ij>&QaIwa@4i9)Hgz% zoT@H1;<1D!p=n~O5z045Oo%~{>6(`nsdmm{^2gsTk4B6%`Io^HsKdod!%)0Ob3 z(HOd?zK7Wm9(}&NRECt8{kF0`EyCwH(gq>irn;V z!54|kzs^zJwk)>7EG5F$e*#sQ3jhjc-~~wZY=0~WMNF8}_LWed^!DqsYJIW;7L^f|Cs(#-|+1MbL z>ED;l0Xcgvy+=!FW_hOGESmyy`doUC)_*S>K#1NTPgp9Oq{U{r9G(HWfOktzndNxe zACL`5(rOCj9Qx3^

<~rE)ZV1lI1CWlhVMGS(zK|BW2IMwZFJS5}jMy)sdwU-o@i z`|7_XmDZBB|2@HM#))0hLStgDW}(sgmeyv>-X`0Og>UL?#@U@wON;|pnV>62D4j)* z|K(uu&lq%?tKKacXKf&cBR-LBWSbrTH5Kl3B9cUq=T|mz;+6}ab(Fq`)=QAKa@?U`_ zv);RcCc-ykXPO0wN2CMs`R4)gh?%Ou8Xz9>A`lPR0K`KM0nw^x(Pe-h#rVqv|LaCs0=h!i?#ytknKQxO*?`3AOuKZ!M_rIhk$tMFNOBC&@KVd z-!(1z0qAK)ScWf!QLLb3pd|X+qeT`#K5#h@52*wyV!f*cxq4ZeI@8BrEu1k=QOGeKbLR2)ZWxH1JJxzj#4Kf}B8RR@E+{?G|)Q z(C^m>{F9*Tg8m}twxE9qx-aNQLFU@gX(iN>^sZc75nj<1jbroStDeqYUtzdzdl8mg zTC%5mzD)n#UO}#O_uym19c+^6KZ-Tv4?&A$)r2-qA~8FP@mVr&M-yI24(|xV=0s?i ztmt_%BN{S}HjY!rDFx*1o|&pm=vKtBYMiouoZ=g&bd6K`#wka~DJK>`CVATebq!8m uWagt2y6~6}?Yt@!_`3kzk`UR~TNOV4)(1GoQPUQN{iI{(&Hn;U8 delta 3468 zcmZXXdvFuS8Nhc}I{9Q6Q_@<(`i~JeK2il(rFclauG*7)sQTg1PcU3v^z;aXKtRqenVRjzyaP!zx z7TzVcRMoO5Oz3=--!FsR?ST?MfoVY<#I#;zf#%PC@#UAF{snILiP?MU2d2%YYcPrV zKT%g!8CmoN-ITS(xDzzAH)|ud(@(NW$@qWIs!Q-3?Nv+24#xDjx|FP8q}=dKcFoau z)dKo&wGiI`Dx_}nG9##O&<=A!uJ@szo=LaV4zp=-zG_g^OGX3sB7_;ArQa-nBL6B( z@C;0s^`9#UP19<}X7ZhFG~)1+&z02sj_Tf`mH7|%B4lO{%Ukt0ba)NT4;SJ#>I~Q5 zduVUCRNHRrhRtF&bOpbw_V$B`m6?zvmk)wm zvK1ynlBz2bh#`F5{15OZ$)GE?FB0$%c>JM(U;yE#a#;+L^wvFSL`Y*{d!hJs&w(U` zY>33#18ijdLLs(Ln9_wk%>p^Fr>MofzW{OKqwgQAM))(c(dhYJx;ZZW84a> z{hqFVj6I3)O8eYxIjIlUNuSlsXI59UU4`5O0e^5orVW+=MsDu#|5PF7HgQ`j?v_rq zj*dj_+689C4h+_KaOb{2Fc|g?grTUF3akEeVibK_@A0&!50+=&C>Sha^@3{DvoTy* zEJU@wfs0i_%&XlWj=<|z*?bAqB)LSCva;=_o7d7IYFXJOh97kCB?%t@7pHoTC)h1E zXf0h4Yb0;?(cQ6QxR?GuwzIQ23u3a%abQ{VTIktz$Fs|t?}MIQj_A_nP0+Ke!d}|a z$G4rhJG7GK)Wm_~gqDvj#Z9zrthjV}6E>)8a@ulQbDYJS?D=?6R>zX_8;UV(X*V4i zD=KJiLhFmy7Kf|`tFS|;g-(yv!$FrES&V;?nj32+c#xJHqS}uXDA2l!d8QF*=V{aei=wbm!@(H^8*H@t z@I$JyMcvH)Qs)l;i_nm!YF|A;I<0wea;L>q1r=lMt4D5n+)zv2$jySI8le?%6~kpj z>@{OcU_@J_4&ENLj_at@eHTdBHU35_KbFcRuqWF=G9o9C2;Bg*j{1+@kJr;59xc^6 z_;^3O-(TnS2v8@dGe8?Soddd)(?uW==OrMK`aPgRKKh}g{{Y>^b=k1_g@+ADJiuZg z;o;CEwgU;59w6be6-c<;FYWpz9RX_LNoIh$IL!hH-%CKk_kAE%Q6u`D9A!TS*z`3c z`YWKA&EJ9U=7t7%VMG`eNQ7}oU6a(U0$RyEwga_t+6}}G5+e#qIs_!*9R(6~dj_bL zeJ71*7OHFmvjZFjgP)7=@SK>xGiO# z*kRC|@QH!96JgX22XQl1A=TCq??n< zo01CPa1{aTC3Q>kOFAOyoTQf}T?Z16G%qQuFRgn3NE1mkseDY*tfY^C?7T(send_cache[cache_ord].state); ret = ERPC_ERR_SEND_TIMEOUT; break; } diff --git a/port_self.c b/port_self.c index 802063c..cc3b1bc 100644 --- a/port_self.c +++ b/port_self.c @@ -32,6 +32,8 @@ u32 hello_cat(u8 hw, u8 src_id, u8 dest_id, u16 port, u8 *data, u16 len) return 0; } + + u32 hello_dog(u8 hw, u8 src_id, u8 dest_id, u16 port, u8 *data, u16 len) { ERPC_DEBUG("Hello Dog!\n"); @@ -136,8 +138,16 @@ DWORD WINAPI test_task(LPVOID lpParam) ERPC_DEBUG("[test_task]send ret:%d\n", ret); ret = erpc_send(self_hw_cfg.ord, self_hw_cfg.local_id, 0x02, NULL, 0); ERPC_DEBUG("[test_task]send ret:%d\n", ret); - ret = erpc_send_wait_reply(self_hw_cfg.ord, self_hw_cfg.local_id, 0x03, NULL, 0, data, NULL, 1000); + u16 reply_len = 30; + u8 data[reply_len]; + ret = erpc_send_wait_reply(self_hw_cfg.ord, self_hw_cfg.local_id, 0x03, NULL, 0, data, &reply_len, 1000); ERPC_DEBUG("[test_task]send ret:%d\n", ret); + for (int i = 0; i < reply_len; i++) + { + ERPC_DEBUG("%c", data[i]); + } + ERPC_DEBUG("\n"); + UNUSED(ret); sys_sleep(1000); } @@ -156,7 +166,7 @@ int main(int argc, char *argv[]) ERPC_DEBUG("erpc_cmd_config ret:%d\n", ret); erpc_sleep_tick = sys_sleep; - HANDLE threadHandle[3]; + HANDLE threadHandle[4]; deal_lock = CreateMutex(NULL, FALSE, NULL); if (deal_lock == NULL) { @@ -171,13 +181,16 @@ int main(int argc, char *argv[]) } threadHandle[0] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)send_task, NULL, 0, NULL); threadHandle[1] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)rev_task, NULL, 0, NULL); - threadHandle[2] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)test_task, NULL, 0, NULL); + threadHandle[3] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)rev_task, NULL, 0, NULL); + threadHandle[4] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)test_task, NULL, 0, NULL); WaitForSingleObject(threadHandle[0], INFINITE); WaitForSingleObject(threadHandle[1], INFINITE); WaitForSingleObject(threadHandle[2], INFINITE); + WaitForSingleObject(threadHandle[3], INFINITE); CloseHandle(threadHandle[0]); CloseHandle(threadHandle[1]); CloseHandle(threadHandle[2]); + CloseHandle(threadHandle[3]); return 0; } \ No newline at end of file diff --git a/port_self.exe b/port_self.exe index bbbc9e844168555c2bdbd4b3cfab95f457e01c86..3e587f76062876978a1706af0864d6dc5c6c265f 100644 GIT binary patch delta 19574 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 delta 19055 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 V=Rvk0P;~wQzoNhX1pB-1{{hne1NHy_