|
发表于 2011-5-2 23:19:30
|
显示全部楼层
建议将timer()函数改写为参数传递机制:
4 ?/ f4 L! R# x6 eint timer0(int par)
! I: o/ }3 D' ~0 ^* A{ {, [& t+ R! _& X h/ v
switch(par); ~7 c1 Y- p6 z
{. N( y2 z0 v- X
case 1:
3 W6 D# ?9 V S2 E" o: P5 k...
6 f# g0 q. C$ w$ L1 P...2 ~; t8 N5 S" X7 }3 ]. b( ^
case 12:
) D3 v- X& F& v6 N r PWM0_5=0 ;
. x5 L- c K3 s) U TH0=-(3300-PWM_Value1[5])/256;-! y8 U8 a8 l9 L" w9 `
TL0=-(3300-PWM_Value1[5])%256;8 f/ i }: R/ F' S
order1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。
& r. V m$ C0 ~; C TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。0 @) v# W0 p- ]; H8 `4 @0 M5 D o
break;;
/ O1 U% j( I) j" _7 L7 G0 s5 M/ C3 Y U}' s3 T5 ?+ }9 S! c0 U
return(par++); 6 X- ~/ O+ O6 L
}
& g) y8 V9 ^: |0 }* b# p" y& U5 _
. k" H, l3 A1 C( F1 N# y在主函数中调用timer0()的语句:
' Q: T& c$ g) ^5 M6 {% V( Jorder1=timer0(order1);
% ]' Y& K( P; ^6 @8 w. k: s1 cif(order1==13) {order1=1; TR1=0;}2 E: `$ ]# w7 N! x8 x. k
|
|