|
发表于 2011-5-2 23:19:30
|
显示全部楼层
建议将timer()函数改写为参数传递机制:7 ?- H- b+ z) ?1 G
int timer0(int par)& k1 }6 j `. d) R
{
, ^& ^/ f1 r1 ^& M: P& W2 D$ o switch(par)$ u* N, }) O$ t+ j+ v
{' v! y) H$ k- |6 ?/ A2 c
case 1:
: h8 B2 Y( `' W1 W...
5 A5 r' b% r( k' }9 k$ M ~; O...
6 j& \. E& p: W E6 d ccase 12: $ `" [7 d3 o* _" a% w* N3 Q
PWM0_5=0 ;
( J+ ^" @3 D8 ] TH0=-(3300-PWM_Value1[5])/256;-
, V1 Z9 N* a1 A" [1 W+ l TL0=-(3300-PWM_Value1[5])%256;. }5 x+ d) W: l# F
order1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。
3 T: @2 b8 R _5 K9 R$ c3 ` TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。+ t6 U! M$ v4 K- M3 s
break;;
/ K% M5 _- D O9 u}5 U7 y' l% `* Z2 e
return(par++);
9 S2 D9 \3 c9 r# r1 ~; b4 M}2 |0 i& u2 q7 P: ]& k4 @
1 q) ^: E8 a- W9 Q( L" J( p
在主函数中调用timer0()的语句:# c! @8 f! B4 u5 F- ?
order1=timer0(order1);- t+ p$ g3 W$ c% |7 _
if(order1==13) {order1=1; TR1=0;}
( T+ h% l2 e/ [7 u |
|