人妻暴雨中被强制侵犯在线,亚洲国产欧美日韩精品一区二区三区,四虎影免看黄,国产无人区二卡三卡四卡不见星空

 找回密碼
 注冊(cè)會(huì)員

QQ登錄

只需一步,快速開始

搜索

單片機(jī)C語言程序問題,請(qǐng)教

[復(fù)制鏈接]
11#
 樓主| 發(fā)表于 2011-5-2 20:41:27 | 只看該作者
回復(fù) metalstorm 的帖子
2 |6 K' e( V* _
  Q3 L; {) j+ Y5 J  A' W額,不好意思,沒說清楚,在主函數(shù)中已經(jīng)給order1賦值1了
12#
 樓主| 發(fā)表于 2011-5-2 20:43:34 | 只看該作者
回復(fù) robi 的帖子& l8 l) J% v* B: c) \
1 u. @6 t7 u! O% _) M' x
額,那個(gè)是switch函數(shù),和pwm沒關(guān)系
13#
發(fā)表于 2011-5-2 20:52:18 | 只看該作者
回復(fù) 三月的暴風(fēng)雪 的帖子
7 `$ z& i3 @' F" @, G5 ~0 e
. p0 E9 M) X1 N+ j3 K2 WOOP編程思想一般都建議子函數(shù)使用參數(shù)傳遞機(jī)制。當(dāng)單步執(zhí)行到case12時(shí),能否通過編程軟件的調(diào)試功能查看timer()函數(shù)中的order1變量的實(shí)際值是多少?最好在order++語句前增加一個(gè)輸出語句,將order1打印出來,這個(gè)值才是千真萬確的判斷條件。如果order1不等于1,能排除不少可能因素。, A& r% H. `  R+ x4 s9 l! ^
14#
發(fā)表于 2011-5-2 21:01:06 | 只看該作者
回復(fù) 三月的暴風(fēng)雪 的帖子4 H8 K6 w6 L8 @9 c4 r* O
$ Q1 U5 I) b, h/ V4 u2 O0 A
               嗯~看懂了~
15#
 樓主| 發(fā)表于 2011-5-2 21:41:59 | 只看該作者
回復(fù) metalstorm 的帖子
  n* O; {* X4 q( Y0 \6 e; T- B) ~& @0 G4 o
嗯,按您的方法調(diào)試了,在執(zhí)行order1++之前一直等于1,直到執(zhí)行完order1++之后,那個(gè)就是跳到TL0=-(3300-PWM_Value1[5])%256;    order1=0;
7 L3 q, P; a$ d  N3 H: j$ T0 |0 X, D# Z7 y( J
TR1=0;
" {( h# s0 \) L* n
# Q* k! H+ w; ~2 R, K3 x1 \break;
/ h- ^- t# S5 ^/ B
3 A! }( b. h. Y0 E$ e相當(dāng)郁悶/ g! b) N5 z) Z
16#
發(fā)表于 2011-5-2 22:11:59 | 只看該作者
不太明白,學(xué)習(xí)了,
17#
發(fā)表于 2011-5-2 23:19:30 | 只看該作者
建議將timer()函數(shù)改寫為參數(shù)傳遞機(jī)制:
3 b$ \/ g% b7 U& D+ O- ?8 s2 yint timer0(int par)
' o2 S( k& F# h2 B8 W+ P8 x0 R{
+ l4 f9 O1 |3 Q0 U) l        switch(par)2 S2 H( M9 H0 h$ m+ n
{
: s* t6 u) ^1 x$ }- bcase 1:6 [! `) a& |; F: h3 f
...
4 u: u: i% I9 D. f0 }+ _...) ~$ v8 S# _6 w* m
case 12:  
) J8 F- s3 s! G  @7 `        PWM0_5=0 ;, z0 I* W- `- ?* @' g6 z
        TH0=-(3300-PWM_Value1[5])/256;-
6 A$ v3 R& m* L2 |; N        TL0=-(3300-PWM_Value1[5])%256;
9 P6 N1 V) P7 k8 L* E        order1=0;  //為什么要在這里清零?建議刪除該行,改為在主函數(shù)中調(diào)用timer0()后,判斷如果order1==13,則=1。# J1 ~4 i5 Y% Y4 u' @) ]& ?; q
        TR1=0;  //為什么要在這里清零?建議刪除該行,改為在主函數(shù)中調(diào)用timer0()后,判斷如果order1==13,則清零。
9 ]( ?1 f, i, }7 X  {, S        break;;
$ s: C' f/ z# o% q}. B, n( U3 r5 U
return(par++);
4 e- d4 d9 l1 Z' f% c0 L: H}
9 U* o& s! {6 C# w+ U8 ~3 m' N# G4 ^
在主函數(shù)中調(diào)用timer0()的語句:. P& Z; b- J' o( C
order1=timer0(order1);
7 N" n4 ]) _* `. T/ A4 u- e. oif(order1==13) {order1=1; TR1=0;}
: ?0 ~4 h3 |1 _

點(diǎn)評(píng)

Thank you very much!  發(fā)表于 2011-5-2 23:37
18#
發(fā)表于 2011-5-3 20:07:29 | 只看該作者
看了一下你的程序,沒看明白要實(shí)現(xiàn)什么功能,感覺有點(diǎn)亂,switch沒這么用的。
7 ^! E- |8 h8 q按說跳轉(zhuǎn)沒問題,如果出現(xiàn)異常,建議寫個(gè)測(cè)試函數(shù)test(),本函數(shù)逐個(gè)顯示所有變量的當(dāng)前值,test()加在每個(gè)break;之前。

點(diǎn)評(píng)

呵呵,謝謝,已經(jīng)可以了  發(fā)表于 2011-5-3 23:02

本版積分規(guī)則

Archiver|手機(jī)版|小黑屋|機(jī)械社區(qū) ( 京ICP備10217105號(hào)-1,京ICP證050210號(hào),浙公網(wǎng)安備33038202004372號(hào) )

GMT+8, 2025-7-19 11:06 , Processed in 0.067306 second(s), 13 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回復(fù) 返回頂部 返回列表