From 429a7b3f34b8c207962544757fdf09c056ccb782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=A1=E5=9D=82=E3=82=B9=E3=83=90=E3=83=AB?= Date: Tue, 20 May 2025 13:36:46 +0800 Subject: [PATCH] archieve: homework7 test1 --- homework7/homework7.pdsprj | Bin 19683 -> 17526 bytes homework7/src/homework7.h | 47 +++++++++++++++++++++++++++++++++++++ homework7/src/test1.c | 22 +++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 homework7/src/homework7.h create mode 100644 homework7/src/test1.c diff --git a/homework7/homework7.pdsprj b/homework7/homework7.pdsprj index b444d4a1ae0778ccbcfb55ce28a2ecb5b2ac724f..05896c692948ece48f2e031372cc31199efc1578 100644 GIT binary patch literal 17526 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 literal 19683 zcmZs?V|ZoH@;01_?TKwC6Wewsw!M=~Y)x$2wr$&XGO_JU@MO+!&iSA7Uhjvsy4T%R zcUASS>fYCayc7s1DiAObB+#Tuy~gFGZ#xPQ5D?Pmf%pRQ!$yH%MJqKX|g{d*s9$s^2{&6RN3i) z_@Yd3E7!R-m*tV$8@bCaymhlWk~Ah*Vu$LmMpcq2DzJ6KsrLGCxYWewrSb9p@X!E? zM>VA)=bpo7IOj#1%K?H#CEyFMIl~QdadB5yjF5iupn7`Nf&f?^T>`^&QoYFI3jU7X zJd4T#h9@~8&-BZ89)|_uLW))%=2zxCo&`d4^s3l7$l-U0Vvt|uZ3f>J5!99iB6J8D zs7N*7d?|r5iebW~B4p!%QNHJ)7F@HVCq2aas+tB21@` zxO*ZPOtFo)iv=8vfrPl5ctg0;@0YwgN`TxSq^3toa3c;>6Ljx8OitL(s{)_v14{^B zUC8xD($@>irNDhOq>v@AjNVuRqwHvYe0+wbxTfr=-_WXc>@uWR5SU(C`~B5W4YY&P z)e)|~OkPFA+0kW+{}FYx%uFoE9eh=>xHwlEcav?}Gr&#Rq3U%9?v6jl>nrUC0uI(u zj-Ve^YgL~ZxLf{obtvA^RgEuR*?G^$<+*Kfk-dTRxp0Mnn)W~pd=^&md6+TFW3{^B+#zRo z3EaIy-}3kI_aPhD2T@PY_J@1z)2E7_O)8c7Wo+Core&@HHoRe1n}PiHTn^r43mmC+8e5}Yd5_pO}MQgs_%t$Ek8a6yPK5bxkcgt`J$Wd zTPn|hZ`3APd&5S7hm4V5UE_^(X8|}J<6%exF$0V;hqp6C>Oqxa_zJsvjJjlU#G`0) zUDZj0ar9KSdncRh)UhQeq+`r!MpJoa8MNHb?W%=?MOkzE!X+Lp7*NhfdFlHzz*$(5 z(vp~ywFxBo>0b@gC&VXrI}UxUu3hvhGF5L>s`}In?{FrP;*wyQG#6`YWC;qPP;^#C zXTLq7KV#J6P93aJAXZgjxN7Aas(0gq84tdO8t}?Y7h2Vgn1|UnC77PFZuUk1>gMT- zo*WY*qEjovjIEza`X4h}-|bo7e(1xsIh512>nBw%h%leknmS%%IUTEOzXobQRL}|Z z(LtyrRqH1SotloMz0*XMhhYMHTKu3LLPK#}WIM4laL$=%O<&bktD`e@Lf^rZf0wCx#b#s$5g?$;{4f8vObIK>o_oURX(^|Cw3r_g(~@RW1dp<)?0=KF z95;$pf^))S8<}?f#w4K#wr0*~6-1T-VDwGQRT1d<+CWW(pg?_E8(i*WE8tP%>-ZJl z?5*wQN?kjNuk3Z>g&&&emaohHvc>*#Ji}7yzp=`{qpzZrNmh1X$ut_c^ z2MV72ZV!N&=267(WDIhJR_taj;2g!sjz)DfPFyt6S*Lwh@MY@g0Y;*utK!byD{%b& z5T;xi*wQo9EZteb4vA2gJQFue)x`->unRHdz36SEtIZz5_8nb;Y3AJ@N0#g*_s!3| zG}uTm60}aBG~|~OA=_eb_-o_(xSGTTwQT%Bu4PWvTN4dgT@gJ|g^?|GEyFWhY5>ea z;tGN`;WqJ*T8EBv!@L@`}wt>?Q7w}arxP@UQf zcAvn9Z{`^HhI%D`WLz}u?tP_;YU&X(quH?S<(tRZ%Qjp@qLr z)Rw14ilOwVd3x5HfD3J#adKlUBs4Z9sgLGftLO?}$U!KA%v4K!PuNMa3NKXVh%Nu# zsZJRt@Ew1wc3MxgGCH4;wm}1ibPkC{hKlh)BWIRoNU=swWkI~M%Wr>#C@-R%SuzDD zLcFQ~6$C;~4=>VKl1{2&^Ew}TN}hqWn2~jVI@fhsqa;Dmf)iVr3C^y3M>Ni`CmPF= z8Mn|ADRRI175oca`7|bSk4s*QZY)$$UJ1Z&e#~qDEoO7{2x6B|BMW<1tzWc1RX?PKBqW|xG3uAFUwf7lX8F8$ zpX3|Bb>QSFkhvlu#7Ow<8GZ9S>Ld~?OXuad$9^ou(WB(RVx-e?pV1BWiOV5Ec<Q*-Rq3u@OB`z}6yhs5mQyXSln|iX@k3^H z=!@kPq$BsFTF7S5Yy$%-T$y>prN3?m;Fj-*hfZP%h<8lG!d+5Nx-jo;MtHvo_$^#8 z>=rY>)jg;*iip7`>552@LY4_|0xg94z}M>25$Dwy(yNo(gb>kdLYGD(^zwFWwzs0H zbHBJjHr^2kr(5x%vCy7CMN1IIVfRcV)NU4-@{$YHafYuJT^ltU)Eg#v=JOQ*ukMPg z22abN3Nd7$>XV2Q0erVCF=fFs*%<0>Wkk^*Z2=a{)z_59P{o8glg-o*F(nvoa8i*1lUd8RcIXbBex|&Nm6O|g?XE5db9&Uw7&5RkNcgDik|jwe(07>1 z06H*uzT)S6&8b9CWv^ckU5V&|q`73AR8(@sZ`;e@#jjqH9nz{CZhgrG8k|MI=%+uk z-HLJX&!=7@)WU^G%wvQME_LiPd^aH| zacx7B^!O=nufHhAbf+rgT@Lenvyk$G3N=D_t}FY6A~kiYUBN_G!Sn^?cCmb#2xTF| z(%{%St!~6?3C5}^=Z*tKplN1&lK@*TqYmG4-!QdTx(aTD%3CVs27*cc4Z4IemyWgY z1w|T50F7l~H>7M604%HDFEwir@)pvYDHn0;cyge)3tcR7IWNE>RH)%5VpytfL6vZ? z+((IcW2Y&mEJd;_mwlyv_klz0Q88`j&B>7*%s=a|xSU+V!*c#~@}IdCz@7rKP`J$#V5t)yFh)q%kQqoN~P7 zqqk78V^{+$sIcX(^C(l4Vyy+JR+uTy$~%)LtQXf_j3&uwpB+l&>=R)dm0f6b=$$1i z&xtnKN0qFpGn_q@a$@e;q(xkRcf_rhT}-ta^IB@lRIW3$Csop}0ab5VN!xZ$wQ4RH zN7O*S164#vK6!ROWMRj_@t31m}Dcg`j-HIh@UCa%yoCX z`#(+1O%hKfk?PwxsDaBp21PVwX444?f@Y7xN$?BT%*6?)+lvOmfChU1XShe6-a2**rFF#V!-jR}5Da=ax z^V*F4Wf9+`>RZDQeKw$T#D$B)MrC}0Wz&9}I2&q{jATGIHaFN?w_hb21|K^I;byg1 zkbO||%p|k6;K=f2u^yJCNM%n5KlP0;1x}%O-LmN(JY9-KiVIpF4#y0}e{&km8b#02 z?Xp}{qbpTaXPz|HneS;AF&;k2)xxWTZ)ss#I>VH1VgfHu#O_lBpcTNEsDgfxrt+#DrB20 zYmez&$s#~5n4!)RCqtSSa#pe=y*J*W5wsuJm0(^iH2&d*7kyGGnqH-#uA>znjfU0Nb3w~A7-wraIWdG#-ToWkjIJ@VL&g+; z_Zea_4e1z5$dKCDc8>A%e#RuQM;8INPIQtEb_%2Ac}rd$oD+128SWG4huAThGJwda z(%KW$OMCDwlWtMs7$&K9s=ireGyn~akOFb0GA(* zT{e`4lM=HNcmT|x5b92*eZ35~jpat(In3z-E?j9ZI#c1bv z-Zt*-46G`{H8vSftc=P=TgCN&<|ZCZjH$8hoqh*OHU*2vyMfrAa`FThrU+TEKJ1@w z7B*Bkv5GA*87=3o@ZwQ|PBn~f$-Khz(#=T=L)RXZe56?{O373cdxLuv2|O%JnOPJW zG9$&i#}Vj-VmF3{Eg>GZCRi<4u-m3)x%3ggaPlCP;)`wenM$ZJ7S9Zh28#Aa$|!c{ z$X-JP)FR3aHqLX5Xe=F?#ms};r{}jXYy`XZZSKD8exukD8mO7Amk;y%GH;kvUn@cd zDdKYN_J#JVV7*rEac+QcD~-d-HAf>ZrUJR3#=ci4?0u@r$f^Wcg@%f}ilm(Q;>A7U zr2wB+a5`_u~g`JGEK(N6zxSd zqqleP>q`_?ug=%Ha$7md2inG%XX-D7RWR{0xl;m&+T$!`jpzy7Iy+*yJ#LZobsR(= zvs@TIi*4&WA*>LloXhLQC9}BRm@4AEj>(2CT zXF(CvDdt~C=m7S6uSqa#W>pSkbrZh2ji23LC{;$S7Vdr20e=`wme$q+tnSqI7HG8f z&}7inat?#=-2$pJWAI#j)#K5Rds$DX%+MQW-uToeKH0LSkQ-+@Ll&e}`>0i5PNCbY zCjdJ%`q-33nG>^MCNmDcU)>UIJRAO-K=tFnv6t1N?HR`;?f&uvv2mvFFe8t4{%K^T zw-uNkP3)IFKkJw&^`(@K5=szCF zoOr+XvZi*_#TCGe=NuAb|e*5#YPT$7N0r$Fzy8Qw(QP9bUSp&5Ez=bJLe%TgPg4dPJy>uiv zhCNr5C`;5p|GWnS*I6|W)IZs zF6}4K#n_zH1cAJXlJ;{ouDotOCxW@ytz$K(yw*pD2{~Pi(dF zqN4J$R0DM$wMu8EIM81NQyCP7>2_X;pl1RxPhVYzkzCRuvezko%C0SlW6?z|v2EGq z^Do%tD{*2)F(RFpl=QmfC^eJNn>x!KSS69LG~0zhOUWJ-*%kEmJBeE8MCBhz1x=<- zMoDLFTwLE=at&TDEUj&_C48i%y!H=UH>yx-rKeEnYk&7Hl9HdeBu zW?d@3sx8qQL;?=I=FG5Cvs0iaYg%iOp9L&+Sacij>fo-eGFmgJH`Irv9q4B)18dM~Eht!uO)K654hwn$q*L0eHh)l)pDFW619xUF=a z5RE*qTp9LgGqH4^QqWb4EY9h9_o{e&r4KU)A-JZZsByBY@yn>S%JOI*SJlIBeQW?6 zX2S8s`6x1DeyGe{^f$<14|y6iZN+?Whh!&5X_UddEycg%Szt~F(#)MJ3 zLp>)aXF^tHV$%iPzHyako{NVsf551!$bQ{-<5~#}-poSxYO)w{jpXjPV1 zW8}?D1A)@BTo`^Z{BFrXc$wpPJT?-coAhk)7vIDhN`1 ztv- zIsk1`P-fKq0TpYNMl(pAGo86eijs3v(65bcR%q7;8#bcts%vk7E^XH0)2bm&YdYw6 z#GQ@^I~?Fr9^^awUj5gd(WJccF;OqdC|dzfJ?uLQK^8l0NV;@}rv=|In1&wBHfZ`S zpQ}Q3hi0P)bjG}u+mk4N5I_UVd|3c(1sCW>2(3YWq5@5YE`>^l9|Iwnc956pj(5S1 z%cjgp^|6Sd!DSD=Q`l`u6!gPH{=S*(;NYMO8j2Pe-NXVO&?IPkghc|3dG>%HyIm%4 z#z4>~xP6FfQ=<*{H3aPNyqv0&%t>X92T&a!Y*mWLafCe(x&}jR_k)P7(S6mkDA*#W zkiIVwf^txhu z(mJU5e9+)=tKRwCU;|QLbaNohF7Dp23IFa%fpH4wK(WYY;}wzXU>B>z*f%@CUX1S? zZR7?L%IYIy(mSIT{+=dXa`Xr%@BGxj^pvekw8>QOni%-vnWO9c@#9!t@VS-GOBdd%HRTI5uiE5sk*wE_a;m+8pev<&WbW-e`A14Nfv;# zS`LvBhwlArAd7-tMcM~Fhl2hNJm_J_Qa_F1bU#y;^J|I~mp^eotFYMkm9g3zUH^DW^%o>T|74E2 zL>X@+xfCXS+_)d3=}-sAvMEg00~Ugx(VG0}Z}T*N;^rT;VFQW>(#s^2)}|Ry4N~iq zoO3TvcGvM7D2pi}YwD&3^!$vpy&zWaH=y3OFClsfzLeV>5Dr#SnN+tw=4id?@+xsS z?j_Kmp?0O0Iy7NyCGq`lxWVQHH6P}OZ3pZnsUxL zMp zXR^|&jSo;$9ny;Zhq0)$dOjHv_0g15@v%Xp`HXGs-?qdS=}lKewlvnWj-}}nG}VJy zUdBm}bCUVW4Blr!Drnl&`spvG9LVly3Cdr%bbjsbqhGqKZPHp^4k1~svsj11n~%XD zS~ay3ly|(a(!;Tc&EaS@^glS-l5u>T8eA%PX@{#usWmOGO=eku5t7BhTaw)MWD0T} z{^VPk1MNf7hRr-PH#mvLnhRde<53ol0An*(I;%;Pbf<(_el3BA)0uC)E#hQ$VfkbL zEC#`Y=7r>JI?>igOu-JSbHiEfvMd}SG@`;5p{))wg=?6hBo>u96m3Au?|^_Y}Xn;h$B{Nj0B&nsw}bE`mmo{Wls!(=^G@8;v;veZawpL6pB znH1VRmA@_-vH=_w?w)Z{^^>*sB!P==x`tan!cO2;2_w2F@(0x9e(k_@f zzx4Osii!_B*NxhWc`yYwbe_Z&Ng+I~{Lyo!Df54KD|M<7@^jGLld;JlI&%2@g2Jvam?@vsZgCBp} z&xjO1KCjFx6oZ#%)FY@yrDGrtKY#rk>&OsKat31HU zsM0^3zWgNXaeMZ~UxE>~CF~Zq4%ep7zL@PCF4R`#MQVu(n>5buY%y+MO28sBN zDg(*ffq)oBmanEyj_`TxgF%M^Q}}!hfwlSIbuahGOa&67sC2RbYCu+x3<|sYP_Ai4 zzEZrT5%N@SEQ(=Uih;BT)63Ku7=pX1&}}01myGqStZq2; z0ZI-gM&)Fh2KUmau@bSChxAA#)@?wLOT~C$hiG|I98SY%*%K#^WC7hVi-z}>S_#`G zd{*umPIGx_EhuV%5T+@gszva3<-)I0n1Z3o#v(O|U(&efWYuvegny&-B;O~jDvv>_ z*Ou2B|JI(@?Og9kw7RW9b?FE&3?CMNe#u6vN-Tg2wJdK zGY$W-lVhC!rb#>KWaLj&JI>WaQ1&=7AQO}DJdPY&h<|HCRQtqg>L1PWKFt_b?rL*Z zIg4ItXHW)eqfRppgO?A5Nz|SmWTp01I_Z|+%jw-r0Anw5w9`&WSl}!uSnqY_qX~H~N zetpoGmuPeKXK>y$yUV*Os?cfM)>UeBf z{outxgit>0FYB|V^|?4lZk@o+(ZbAED!X)G4@u#-yM^C4CKmm`c1tk47Vzgfrbh>V zMXx4F52*(M7?5O04SVXfF9BcAGYWDO=k%sD1(ypV$eX$0&~}~Kih6E9_@B(HgWg?o zf25#s@St(+Q$dVm5wUo<(NtI|1p!i+ZUD|$0MKlPZ(o4hl;@FHm2~sNs`==hgaW#) zHS`_H>NL2h;85@7;yvrmJ%A$TQOl4e8`eXq+WB z-9RhQh@+OXge`g3IIu!WUQ%Y2TI?JgU`-njBwbq=;G}EzL}91p%ap9%oXFUCIRby9 z+~ytR6?x(fN{JPYMTQ;goeg_l=sDfxEfbxqgH8J$xUnMc=`$>CRy6h*Gc{Z~B9F`nsfN3-_dC zBB9VyC`yuCnE4#SR7NJvJP&u$0(=M2a(Y3TT4Uh=Kv^v(KaZT^(f(x( zb^!&hGfrQ9*Qh*;P50hohB!?=009Sfqu;bb#)C6svMiu?xIecNz8LG%T}e732n@dt z>bo&+i-A1Zgh#EjwB)?-c%RbyG>&n)i=oq%OLHWA*9PFBcwTPN|=6{iBT4K|pG zK_#yNB8V(vd(N$eYQXI&{cJbWepMB+gwFFbW^n$;*#5GleP3!w=FQ=ih-K3$~u=rM|nDbCAtwtb(Y+be2xUzYL zfjC7r*$bey&vE?XpQE!wr9u+x`Y1ZA3gb2#-GV7{FEg!j7Z`84P2R5x;x-uFV*h+` zK;#++x-d!^ekmqMhQs0DTQCTM^El&?GFpEiSCk0aWxXeQrSbai{fW&!+Ew6!qgseW z7?WmHXf_IZ9dEg%vWEkAG!#1?7MHa5Ov6Yo4IvPi z+s~U{{Iuo{0zsV~>ko_cJ1jfrI$wi=r-GY2L-=1s+czq-OOqa6IDDU1E6ohVW#(M) z&kb)~ZUdCLH|2l<1-y(lo1xi5Hs6Dr1ob+b!cbg7n&t=?E|q_Q^6uPYgC0ykr+3S> z^ZIqSYx<%%AXhCBFxaU60{tS0i$>0H`PtJp%0RN&tm@uvlVDS~;6!=2G1Z{4z=IA7 zX&NICprqu{ZxHq-5|rAIK|73N_2O9k0iU zbUBinLytsjM3-!-!Mf}_kxWocF~pT=E5U1WztiR6l_SBrb#i5tcp$=7)WG(ml+;R& zW=c9B+gH<1(^I6L}--y!##X-DmWD9I%PbSos2guhc#Tw1c(thlYbU-izhYJywaZyDVE}Z8Lm( ztzndlv32BT6_%}jYT&A3AS4xLM~PU6*>)_G4{tn@yM8BTZ$jv~%o4 z`FR__aNy@0tKw?ODN$lXhO^df)=n`@%Q=x)7j3j1wz>b;|px41t0cSm5d zC%$)fB3Xh0N?C|a2H{AhT_KaY3Rj1t4U-Hd?&zwXFrilk+EUv>{H!Y_u45Muct*x; zz5}o1A+gs};it_FTgl_s_({1}?LclWHt}OlN^SCMh;WbPXHH4Z z@~Ak`Ja6ZeaWAH8(^5>VL3)i|mo08+bqD6MlroFb2Eyuw+Uk7Yc{#>Kq5#UG?bzOl zgm;nFCAQ<3`z~SaO#HQcWl0?Vbq|dzR(7$xYo@PsPS?7T7^>Pt(;Xt2b2rY3L_2@> zOU%~QH?COg#k2R271cSZg!k9_dOdS=mT&YBsdg4e?Upq@V=$yTwSfyng*jN9TdNB* z!Yb+$YxXKJ$%Pi;Z{hQ88mBz30R@%j<$?9~Rw^?ulv50hv|TJl8T`C11}7P@ni7H%LJ(5DPOpfZBTA&IG* zK<5mvP9at{{F(=72&QiFK25~PQpaQK?Jrb0I(J};)~1$^LyM77cNE0&k?(39kdr1F zKiM91m><~d>T5MdS}9gnC!20I(kWMCXIa_#6m}FjTE16?s%ZMut4{&wy{E=i%=J0S z#1@YyVCtDO!&7nd)lFmbP*7#8%YR_5<(!s`^`WKDX3jp8tT*FO9~{XS@Y=GcsJJ&c z>JlSTm$lsxGtv0I6r0s3%^mkBshq;fOh_l*EtuFdScMz8vmHnhbBTtn8IKdm2pBRM z+8g7CWz0!diB>R+UoISXz|H=4aNByl^Gng=TpN4O$Wl`_UkQ7(=)u|ZpiOsWtu6&+ znY{<#KHS5jHeNY+0^}_gl=HAiCz9ymj zttr=gZhQnS_9PX~WZuPxmVJRvXQ>n=Q$CO@!7(|?V8PD>&&Wl%UT0JWgy&awUsa<^ z^s14I%+!ym)c5*Qvd(8dro1vU;+NIAZz!I%tjKwAKg97v7O*97Ifz*74(e-2de!u^ znyfJfhCyqqd-1YLNm-sW@6q0}QYUKeY=%m8tGUdDpDRB$s&KA1K03s3uW_H(ZE&tL z?t8X4cKWP=$vu`O5B(9=E`^_~bNfTymiJrW&mefoA3(BDe)~>+0)<`>54(?RT-){r zd^E7&FrNE4)5o&D ziMb)QJW1}=vCgWFm|ErQqKqXysu6Rs$bLeMKEsNnpKWbf?9}S;g(UBURA{}p2Bd+7 zaGKrndKU-x64z#`RMiA2sQb2p;`4ERG9{wtkfmrYKt+7Sf8f|`2^aj*14H(A-22o_ z?=Qy^2%WVJ{U1d^CVE#b^B|9j7YxmFLQD)#+9$qEtbZ>YTIWG*D*lQ=HqV1xo;UaX zl0}&4p5FhC(B5%fc zlw6?$LZHhGfQ1R+g$6-Bod#Rdq-j#eau6tMWTe1UFci&zf1*vm5(7D=HXU>tyTj%Z zuVRS{wK%0W=tvp)S(7X1oiS;!(yOhQe_rYbkC4Zrpm!|5jO5kFfm>r%%p$CaKXEv? zXEjhFWv`fbv*(fC zt0=S+%?Mi)JQy{%g>~r3cI=KC)aIb%I@X3fA*ehi{o@j9lT{zr2Ncef8iXn`ro6k5 zrIIU6mLG9k5p@e@3Nf2Xp{PBo13QiV6_Vi zo&E`r0kK+wdDzZXI9~Sm}8R5Lzn+UqXDfsz>tPhX6xv~dOrV3x zGoQJrb~0O)$ynDebQ;sG1x!sP*W&5KrEvAlk4ynF3W24bB~7qKx@ZlFHHHIWqav|2 zX?V-x@w3jNZ`;VYN>}FJbrRfa&fE6Sl?*AOXToKzQ4=>B%thSmw2W+jqVJm(rdHEy znHy)b5(}*rCz9JMwp??|LRIbvt}&}%tVm>t<*FqQ((Sdbz^lxaa^|MyZYU2k}{8yF#-os%Gv1pJb&L87eU=3yXUt75JaTZIlb$&DIy5 zhCFx$iq}?!g*O!1p}Ouz3czPQr;4r1Aa4#-Pi)=q=LR2@ilsre8V{k0g*OB6CG_D} zKMTAUG$l0h3!S5EXd{)A$Yr#3jEmj~??n$Np-Z!jR^w&B@2x7%E^#cn_w-Z_)BziL zgGx>h{!AT<#4-;;J$30ig=*BS8K%4HbwDZ$DE6MRc__rkMSI-TAPKo%YwZv_Ax;m zxR7BX5#)Wvs2$rRi5xSw*axa$%VuN@i+vALQ~@0SoZWq1atu(KsD8Sfn}Pv+yHkHL znfIfIN_gC`OW4$6-oBhK7S<_|+`GN2>y#tn%g(BJLw+WH)8b(8M($cAjXB;xR`*B| z<`v|t+8~Y*qe~hFdh@WA3-DG?8D8R*{f_Q@Eb1sPo#JoIMpY?kHc@H^>G>pucNnlh z#a~~&vsE~bs!;^KW|1_7Pshy<-`J%yRAQsl&qr+?JG{n67PGZQ5u@O!XV)L zO;wb2jFX|cuf?hYSl9}C+KRe;=xtzd1k;KwOXz`aVczX$%g%-%^~LWvW^q$=VY=_3(#*P!Q^UM=Cb8e6|SlMj8KWsep*lC(hdPvV}l>#^6zy!`GZ%XmH zyyztI4)p+?YkMHs%fJJ-{sR`M*cf=tej&gI!cE@XgGQV^WXB-jU>r_w z1mX7rT6I6qrsfyV+ST)ckJ9SaK!ot&{6cXb0HgIq@C63~gxOsroy8O$2n9skn)y`hco z00#L-a{A1Db7&Qh+zZlY4`S=^ZwL-?-n+2!@h|E;BA@9bKN+(hN#g>gerFOG14D>QH$B zyb}P*@t*pwh8fPlNum=p1VZFQ!`zbn)?_}{1=0)JrUHfq)G^A-j31^ge^l1Jl-p*_ z3RdirS$=!;B??txon!t-Cxy@TaNvU0`Rd(Dre^(psIj$9OQgG39lmsME5u|>|MT;p zw9i@S&qf##3ijVmHnV8KJJ5yiSm@Ya%(_o3RI9Yo%lkV83?E({@oiA7NeAbxmsr{rP2*TCa1N$(xh z4B}~qdV165hT44J7?W{^{6f$7cKTss^L(|75U<_!YV@=7HpGre$4hYW%*KX>%bKzr812{o;d|xn z=&Ras+_)33VVQ6~E^4`$81hYPuV+m5x^UtkLN$*ETQ!M{my?^bQJbWU#M1jDhnhbX0%?l9 zbpacV?(^WnghrVWaVV;%nUhLiHaJx^#J096<9> z{ClbNZU0mp*akk3X<(xgi z_#u%NeOD6};w zsm4Bb?XDu*IPN_w>TOx_SwLUbx-RU9{l(QHLjw2PhtJ-zJ9k&@Zs@yKP{(k|be;c6 zZk#T)J=D7WX_?)iHFZp*d_ z`A4H;I*ZKmIh1d)%nfrvsKFEIQIbI?-Y^9*zS39Hiag+(g%-fSpPpaPDE}$courud z<#WUr8YoXgSB)w)>jul+EdMnb9f4p}5T}Jv0l*K(tJ}VrtwMu_XKiTQ%;@h98gU|7| zhUQEtx1?gszy68o3_8`38Rl2cxTIyeWV!gh<)-KU}c2RihuBj)}xY{vD7uf45r6$J0M z?JH#vDT5)0es%V?7S+<*$DR8L3W&5#A!SJ6}3t~xTp zN=x|=(yj!$ranSsKZYveust{`<$3|G#J`W$+eSde$W$;H4 zQ=etL%#p3E-M@RK&|_!fxve8(1RVdVoL9!bl7G7K;;lBrs{Iq4XuNRMJ-0r^b1FGv zU;W{Oxj9d#DLH(z@cE{Tq_xr<`3+p%|EuHNG(?#9%P)WSFz6b9QZ?bJqI2 zpY>VqTEFLc-{*P$c>Y-H`?6(&?z6m7oV}!SVsOlLXi{6HRZpX{*Vm^xbNPip>0VKB zdVN%KwW5JhWne}uJ=aN06(JAb7K@Jd$lVCLDgFp4*OZVolh$cD5@Lu861q6g?xU}| z`pIOUnw*Y$qIm6^L0pu2Tzta$@F7k=fuVMxz=Yi1pq|;;mq34!!nD*B2)p)nj(Oyd z(<8>SzQ)AJrwW(!sNJO9&)GqYNPT?ICnIiqqMiZsu1YM)c9 z*7gm?;X6XC$;?PwtFv-=lWj8@)8nk^ygAR4=)^kMx`A?+KbosHA!M~sO~cdS{OqAm zNNEH9rV8f?*wA`P&8pNs1#y$%u`&t;yyRSW#Zq>S(?c4GV)wewA;CnQ0)&~<67r^J z$r6c=@eWCm{Q1swof|^Dr)!eohy?o-Iocn<<4`SB4UE1NNc3R(BucseEX`tlB!eQ= zIJ}x}>m>yWEr6?(|c+Jw2RE3VZkptx}Qx zR+BY3R~l@M*|ZJb)toA(npOFx(b2l$HyApnDJ@p^7ml>oE-wfpKWF%~C!{ci)Sy*e zl~5}Mx+V0%6XK28CN+pArFjuMOJkObH%WYo9mT?Fy<8F|W15Vpj$WnPSReavx-g!1 z5|P^7^?JTQ%6wzKqDnFmuF!rVbff=uxthiFV|dlL0d!Zft1x`ihe;YS@krw*LY2|+_jXEuGg|Mc+^lwuaRi3k&BsZoKRK76k^R&}^t!Se{=_>0cGXA@KX9B)*??^lV}k zB^F6Ef>`y;-%=Ht+<>GY+pVV;Q|$siU6tIZm|6ahhY49M1gJbL1gP{%EwG3ppU6pK z=(jz5sfJ1|i!D;D*3G)V96Ujw(J-p)DAc1{p*i6r2WGB4H*ktp-Fo8!3ymW3B-$PC^V9UJf)bu}qlq1{Yo_^jPOeE#cbg z6yeKk4b+NyfO#aqXoQ6Y^qXf^W05GX{JGn48#3?rL~J>Z{t3ei#)NXAQJUpg3|>(D z*!xq}2@umUL1@o8dm$XOy=#Oi7LEd~%jkbwB`^V^`rYbOZRmOlB2NnoYB%I2%K>fM2Z3+4Q%Qsc%8#mJ7QV~sy5C-U9YNQ+H}g?FE=py5 z-PSYG{+`c3bh4&86oLcWatRqH+v_A@&)!QAYRjm&`K7DAqAt@3k1 z=@LB^g1zi0!~+NGVCj7ZK@6cW+1S`jLckHpCU3z7)`4H2SO$B(yPIWRWD2WY(3X@< z^;1)xYHz?G>}@-(P0Z766Oe;eM+ebR->|mo+X_ZmDFKwm`*!3TYz#>(KJkyHcZ)fm zV~0m)`bVKstLMX$0_4LF!H1&dm;ng;6W6-~ZWaY?MWY?pN|R7M!P@v#qI)CTtYz_0 z#90X5aBy8c|6G+^gWY|HK2@vyHI?3lyiD5RmU*^KiMLKwK0?v|o^W7xX0{G)@EP@T zo2u3Y(fAkd&zvg%r=56*m`XCd*4r%-zp`0RbE{ojt=MuYvVBI2*`mZ4bEJCdmwBv@ zhAjG?l?rkB2gW!K$er65!`tqdsNgNEcR_yzOD#cHp(lkSR>M}VLKko+!RuLhUBb<3;jsIVBZ%SDj9i_wdnBtHBmJUV-N8 zy-90x$=W7I_wDW(Zl|*6$_DWDzO+e>N$TA!qJ|elbUSeR1W&DXe~GmXjT^qYwQ+RA zJU!Q6b=XKU`-AZeI4$&+Z}8Bs?%4e*MLLa<$_wGkTg$qd`_uPMN=Ra4XU%jKp4axb z1t)2@X_YuU6CVY`1>$7-!&?j-U+6Ry4;Z4nYHT-D{X?Yg_lay1k{5Mv^TZVH z>6QpY>Xug)@k-dtFU%I7Q#;5&Xj-G a6#%*)3c$r)K=8{$0pNrKaVWR{a`$g-%~Kly diff --git a/homework7/src/homework7.h b/homework7/src/homework7.h new file mode 100644 index 0000000..25d2720 --- /dev/null +++ b/homework7/src/homework7.h @@ -0,0 +1,47 @@ +/* + * name: homework7.h + * author: msksbr + * date: 2025-5-20 + * purpose: + * variable: + * 1. pins number for 8x8 LED matrix + * function: + * 1. initialize the 8x8 LED matrix x template + */ + +#include + +// variable: +// 1. pins number for 8x8 LED matrix: +// Y template: +sbit LED_Y0 = P2 ^ 0; +sbit LED_Y1 = P2 ^ 1; +sbit LED_Y2 = P2 ^ 2; +sbit LED_Y3 = P2 ^ 3; +sbit LED_Y4 = P2 ^ 4; +sbit LED_Y5 = P2 ^ 5; +sbit LED_Y6 = P2 ^ 6; +sbit LED_Y7 = P2 ^ 7; +// X template: +sbit LED_X0 = P3 ^ 0; +sbit LED_X1 = P3 ^ 1; +sbit LED_X2 = P3 ^ 2; +sbit LED_X3 = P3 ^ 3; +sbit LED_X4 = P3 ^ 4; +sbit LED_X5 = P3 ^ 5; +sbit LED_X6 = P3 ^ 6; +sbit LED_X7 = P3 ^ 7; + +// function: +// 1. initialize the 8x8 LED matrix x template: +void init_x_template() +{ + LED_X0 = 0; + LED_X1 = 0; + LED_X2 = 0; + LED_X3 = 0; + LED_X4 = 0; + LED_X5 = 0; + LED_X6 = 0; + LED_X7 = 0; +} \ No newline at end of file diff --git a/homework7/src/test1.c b/homework7/src/test1.c new file mode 100644 index 0000000..ce0f5ac --- /dev/null +++ b/homework7/src/test1.c @@ -0,0 +1,22 @@ +/* + * name: test1.c + * author: msksbr + * date: 2025-5-20 + * description: a test program for a homework + * homework zh_CN: 点亮点阵左上角的那个LED小灯 + * homework en_US: light up the LED in the top left corner of the LED matrix + */ + +#include "homework7.h" + +void test1() +{ + init_x_template(); + LED_X0 = 1; + LED_Y7 = 0; +} + +void main() +{ + test1(); +} \ No newline at end of file