|
建议将timer()函数改写为参数传递机制:1 z3 u! X% E0 ?- w2 s int timer0(int par)& f5 a8 P$ M7 F. [+ n { * P# C" D U. f; N3 {switch(par) " p Z! R/ g% x* v5 N% V, k2 I, G{ , f F8 F: \" K6 R( H/ Tcase 1: # F8 s9 z5 h$ a6 j...2 W9 w* i G9 c: K4 Z8 s3 A2 _. V ... 1 w7 v) L2 Q' f6 acase 12: ( |4 l0 c! n0 n$ BPWM0_5=0 ;4 m7 d# `4 k; s) r1 g TH0=-(3300-PWM_Value1[5])/256;- + K" R ^( e! x; J8 kTL0=-(3300-PWM_Value1[5])%256; 3 p+ y/ i$ `- g/ M9 q2 `order1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则=1。& J# G7 e) _- e0 g* u) ?- w9 ]& s TR1=0; //为什么要在这里清零?建议删除该行,改为在主函数中调用timer0()后,判断如果order1==13,则清零。 ! P# S4 [" ^( p3 _0 B0 Mbreak;;6 G% z8 M0 k( @' @. b! J7 U v }5 D: R; B4 m6 a( y) O' ?, B return(par++);9 N4 w6 O9 e1 T6 i7 h- @/ z# v' R% \ N }8 `" z# t8 ^! w$ ?5 A4 M2 ? & }" d% _. T0 c. M$ @% O, j 在主函数中调用timer0()的语句:& K0 _ U+ l$ R+ j* W7 ] order1=timer0(order1);% J8 {2 K9 q: m5 r o if(order1==13) {order1=1; TR1=0;} U9 d$ `0 `0 o2 T; u |
|