|
3#
樓主 |
發(fā)表于 2011-5-2 18:35:14
|
只看該作者
這是部分程序,前面的程序沒有任何問題,當(dāng)執(zhí)行" |- E+ O( d) U
case 1:
7 `( m. R6 H# ` x# P PWM0_0=1;
( g- k8 \( ^' H8 m% R* T9 L4 L- R TH0=-PWM_Value1[0]/256;+ u; I1 D, O; q9 X! p
TL0=-PWM_Value1[0]%256;. W! M- T& ^( |0 m6 i4 x
break;5 C4 ?) l6 v% ?4 X; H/ t
時(shí),break沒有起作用,反而直接到了case 12中的這一步
1 c8 V9 b' v: X8 aTL0=-(3300-PWM_Value1[5])%256;
* Z2 I6 n3 [& \" S/ ^ order1=0;
- o/ }6 z, W) J7 b. s2 M TR1=0;
6 `6 x; Y8 ^7 ?' ]+ t. ? break;
. X {6 {$ B. Q" O T$ J* A }+ ^" q, }8 A: e$ w3 ?! N) B
order1++;
4 M P: M' L/ ^在case12中結(jié)束循環(huán)的: d* h# s1 `+ @8 c& K3 l
/*===================================================================================
7 {8 j3 p0 L( @) ], ~* p% X9 O 定時(shí)器T0的中斷服務(wù)程序
! {3 G9 h+ ~' x1 f 一個(gè)循環(huán)20MS ≈ 6*3.33ms
$ X$ D9 @% x0 K+ Z, a* s8 t! K( X=====================================================================================*/- }1 o* Q( L) S8 N( {
void timer0(void) interrupt 1 using 16 {+ W" |1 m# z" i
{4 Q, n! j, d" a* Q+ m2 `# {
switch(order1)$ ] ~2 g% a, p% F4 V+ @& \
{* t6 V8 l/ [( Y+ Z) P3 k, S' h
case 1:
- F1 s) h" |4 L6 i n# @4 G PWM0_0=1;
. y. H! x! A9 V* x K TH0=-PWM_Value1[0]/256;
; a% w8 j" }, W: i8 f" H TL0=-PWM_Value1[0]%256;
, q, j) u4 ^% d @1 U9 d; T break;
8 S3 \5 b/ D/ v5 w9 {case 2:
* e. f/ T. o8 _7 [2 { PWM0_0=0; # U% Z3 X5 M8 M; k& a/ m
TH0=-(3300-PWM_Value1[0])/256;
6 l. q; n# g0 t# ]! _# s& Q TL0=-(3300-PWM_Value1[0])%256;
) A: t1 K/ X& B" C3 b8 s break;6 g& k: R: E! Y4 E
case 3: , A) G$ ^" M. h F! c: z: i
PWM0_1=1;5 l3 ?! b+ r) n6 y" j2 p
TH0=-PWM_Value1[1]/256;
# _& I: V8 O: o: ~ TL0=-PWM_Value1[1]%256;
$ [! Z' Y) Y7 d4 P w8 M9 F break;
* ?9 t- V5 i8 ycase 4: % j# [' p7 e- d% G" F5 y
PWM0_1=0;
+ q. g# p6 ~. i9 { TH0=-(3300-PWM_Value1[1])/256;8 z/ Q7 K- i& R8 L* x
TL0=-(3300-PWM_Value1[1])%256;
8 Y3 ]. d! d' u* L0 c+ C: a break;
: ~2 w5 A* A+ Z3 q. s- \9 Y/ w4 ucase 5: 9 U0 a" z7 u8 ^1 k9 b- p. }
PWM0_2=1;: M' _* m; w' Q- v( R C
TH0=-PWM_Value1[2]/256;
6 d- C* z- y N TL0=-PWM_Value1[2]%256;
' u/ J' O j1 }0 R) Z- Q, Y# b, ] break;
7 ^8 N$ R% t* |, D/ Ncase 6: 4 V9 Z A" S* B2 @3 Y
PWM0_2=0 ; S7 O6 H& Q/ H/ l4 E e- E
TH0=-(3300-PWM_Value1[2])/256;
3 x i7 m' E7 Q; A TL0=-(3300-PWM_Value1[2])%256;0 x$ {4 H$ i, M7 _8 K& `
break;& j/ P# `0 a6 F
case 7:
5 `6 |; i. f- c) s; C2 Q4 q3 w9 K1 @ PWM0_3=1; S! N' N h+ h9 c+ J
TH0=-PWM_Value1[3]/256;
% |4 |6 r: i. L TL0=-PWM_Value1[3]%256;& Q: |: Z3 l( Q( X+ R
break;' D) W6 [ L* R
case 8:
6 v8 o3 b ]. D/ t PWM0_3=0; : O3 j1 E$ m, z8 | e8 j2 n: V/ S
TH0=-(3300-PWM_Value1[3])/256;
/ N# }. N1 V; Y' z3 X2 D2 P. ^9 ` TL0=-(3300-PWM_Value1[3])%256;
% y- M7 W, T7 ^/ E! H break;4 \/ u* [: v9 K* H
case 9:
( c6 n, M* |1 ~$ o/ D5 N4 @( T PWM0_4=1;% `6 p8 p/ } ?
TH0=-PWM_Value1[4]/256;
+ n" X) A2 ~, t2 l TL0=-PWM_Value1[4]%256;( G3 V9 h/ V2 Z& u+ N# r1 W l
break;3 @, [3 w7 |+ J; h5 Y
case 10: % q& K. N/ T9 c9 l$ C1 {' g6 G
PWM0_4=0;
; X. u# [0 o2 }8 W0 t; n8 p TH0=-(3300-PWM_Value1[4])/256;
% N0 q2 |% c" V% ]1 ~( [% C TL0=-(3300-PWM_Value1[4])%256;
* Y0 }6 g9 j7 R) M break;# T( z0 _5 l, V! Q
case 11: # N, a) R9 @$ E8 J6 x
PWM0_5=1;: m+ |- Q) r3 ?! b3 {
TH0=-PWM_Value1[5]/256;) F: ?; O- ]( E9 @6 e( C7 x
TL0=-PWM_Value1[5]%256;& O% ~8 H" ^) b8 N% p! O$ E
break;
* M- r, z9 C. O9 K Ocase 12: 4 w. E6 }5 N- \; L3 e* L
PWM0_5=0 ;
, C1 |& f: N" ~! a% [* a TH0=-(3300-PWM_Value1[5])/256;) g) M4 o" b# c5 A! R
TL0=-(3300-PWM_Value1[5])%256;
; z; I3 I$ u( q4 a( y: u+ x order1=0;0 D$ h4 I4 R" m! @6 y" S
TR1=0;
# [2 u% X2 I' M break;
; [+ W) l+ r7 x3 k }/ @3 t- H7 v, w
order1++;
u5 ]* Z1 m/ u6 E" M- z} |
|