|
建议将timer()函数改写为参数传递机制:2 B1 G' K+ H/ [) m. M int timer0(int par) 4 S% b" v" Z/ \' w6 H+ u1 P9 {; b{ ! K8 P, ~* j9 A* ~. I+ Sswitch(par)' f5 S" l) ^3 `$ N {; a! c, i4 C: s# _# T9 c5 B case 1:; {; s6 M g/ g3 t* [& |- x$ s0 { ...6 Q: B/ w9 l5 n0 m) }; P) Z ...- F* |$ l, X) r3 u8 a case 12: $ H% O: E$ ^; o1 A% IPWM0_5=0 ; , X _- M! C7 ^2 O3 {# vTH0=-(3300-PWM_Value1[5])/256;-; ?8 i7 y" Y2 Z1 P* L TL0=-(3300-PWM_Value1[5])%256; " G7 \: L$ P9 h w7 I! {: }; Eorder1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。( B. M$ c# X \ TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。 * I$ I2 Z1 m+ b9 K: [# s7 n8 \+ Q( qbreak;;: E3 |$ T$ W, s0 a } " b7 v+ L: N/ d/ k+ o3 Z Wreturn(par++);$ M" ^& O5 a- a q3 k1 Q9 ^0 y } 2 v( J/ T/ {+ U3 p2 R( p # ^1 S0 {) b, [在主函数中调用timer0()的语句:( T7 w" u+ S& ^( r& m' u order1=timer0(order1);$ M( C0 p* [3 j n, V if(order1==13) {order1=1; TR1=0;}% d( ~: k, h8 Q4 @8 |+ e
|
|