|
发表于 2011-5-2 23:19:30
|
显示全部楼层
建议将timer()函数改写为参数传递机制:3 E3 i. L: {9 X0 k& Q
int timer0(int par)) R( U; I9 e2 S1 R0 {, b
{
" g1 l1 ^! h2 }# F& T& l% W8 O switch(par)
2 v5 _; ~# a$ p1 f{4 o& I# I) I- e7 n
case 1:
9 s3 U$ M/ ]! X/ @ o...* H; a$ I4 e) q/ a4 n: x
...! w% ^6 \2 W# O% |) ?
case 12: ( m& ^+ [7 c L/ M
PWM0_5=0 ;( V) {- n9 h& D7 m
TH0=-(3300-PWM_Value1[5])/256;-
* A; z) t; @. y# E7 P9 I TL0=-(3300-PWM_Value1[5])%256;7 } f8 }7 L% ~- Q$ s/ n
order1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。, [, r m. ~& ?
TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。% V% s# I, O" M( t% T1 n( q& E" P
break;;
3 a0 c& p4 c# Q8 Z: s}
! i5 M% _/ H0 |5 Freturn(par++); 4 R9 d; x4 x9 {+ m1 H$ _% s
}
* f% j3 D' z- U6 o x4 d' |. V8 J, k% x' ]
在主函数中调用timer0()的语句:+ s; U. a0 C& ~4 p* z
order1=timer0(order1);7 g3 z3 k; `. X/ q
if(order1==13) {order1=1; TR1=0;}
7 `" p5 d" c) Q7 R# _" C |
|