|
发表于 2011-5-2 23:19:30
|
显示全部楼层
建议将timer()函数改写为参数传递机制:; B) n: ?( H4 j% A
int timer0(int par)
" I$ q3 P; D" _* i! F7 {{
, k: @( d9 L; ? switch(par)/ E6 ~' a7 v- c$ B" e) Z
{
7 @8 t: n7 O& Jcase 1:3 o* C& K; ]9 r2 }0 K2 ~# b- ^
...4 W+ f3 K1 [$ I+ L- t( Y
...
d+ H' w, q7 a7 q% P/ Tcase 12:
# W+ O* E& T- H2 D PWM0_5=0 ;$ s; g9 H. c! V' ]9 M
TH0=-(3300-PWM_Value1[5])/256;-
; ]2 @3 C* p3 p" ?7 [ @/ B TL0=-(3300-PWM_Value1[5])%256;
: L# W6 H1 h% N3 ?- `1 E' d' G order1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。
. G3 S8 V+ c; \3 l' m8 m0 I TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。! l* o. h. j' z1 }9 m
break;;0 P- {5 }! u0 `
}0 h# U3 I& F, \2 }, s% A; l' ]
return(par++); ; I; s/ b, |+ ~
}- y4 ~5 b3 t/ O" z, m
% @# J3 z: D, ]1 j' z( E2 d在主函数中调用timer0()的语句:% W+ i0 } Q# w* r4 S) L3 N& h) D
order1=timer0(order1);
9 W& R& v& R& Y9 v% }if(order1==13) {order1=1; TR1=0;}
8 t1 M& E3 m4 E4 h( L3 r |
|