欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 舵機(jī)實(shí)物不成功,求大神幫忙看下代碼 [打印本頁]

作者: kakami    時(shí)間: 2019-8-13 10:36
標(biāo)題: 舵機(jī)實(shí)物不成功,求大神幫忙看下代碼
疑問1舵機(jī)它不轉(zhuǎn)。
  1. #include<reg51.h>

  2. #define uchar unsigned char           //宏定義無符號(hào)字符型
  3. #define uint  unsigned  int           //宏定義無符號(hào)整型
  4. uint b;                //中斷值
  5. uint N=0;                //占空比計(jì)數(shù)值
  6. uint X=8;                                                   //初始角度值  (取值范2~15)
  7.                
  8. uchar key_up;
  9. uchar key_down;

  10. sbit P3_6=P3^6;//角度加30°
  11. sbit P3_7=P3^7;//角度減30°
  12. sbit PWM=P1^0;//輸出


  13. void get_key()

  14. {
  15. while(P3_6==0)           //按鍵加按下
  16. {key_up=1;
  17. }
  18. while(P3_7==0)           //按鍵減按下
  19. {key_down=1;
  20. }
  21. }





  22. void timer0( ) interrupt 1 //定時(shí)器0工作方式1
  23. {
  24. TH0=0xFF;          //重裝計(jì)數(shù)初值
  25. TL0=0x62;          //重裝計(jì)數(shù)初值
  26. b++;
  27. get_key();


  28. if (key_up==1)
  29.        {
  30.            if(X!=11)//判斷是否計(jì)數(shù)到9999
  31.               {
  32.                X=X+1;//加一
  33.                key_up=0;
  34.                            }
  35.         }
  36. if (key_down==1)
  37.        {
  38.             if(X!=5)//判斷是否計(jì)數(shù)到0
  39.               {
  40.                    X=X-1;//減一
  41.                key_down=0;
  42.                }
  43.         }

  44. }





  45. void main()
  46. {
  47. TMOD=0X01;          //定時(shí)器中斷0
  48. TH0=0xFF;          //重裝計(jì)數(shù)初值
  49. TL0=0x62;          //重裝計(jì)數(shù)初值
  50. EA=1;                                  //開CPU中斷
  51. ET0=1;                                  //開T/C0中斷
  52. TR0=1;

  53. while(1)                           //無限循環(huán)
  54. {


  55. PWM=1;                   //輸出PWM正
  56. while(1)
  57. {
  58. b=0;
  59. while(!b);
  60. if (N==X)
  61. PWM=0;
  62. if (N==100)
  63. break;
  64. N++;

  65.           }
  66.             N=0;
  67.           }
  68. }
復(fù)制代碼



作者: yzwzfyz    時(shí)間: 2019-8-13 13:02
本帖最后由 yzwzfyz 于 2019-8-13 15:28 編輯

七竅通了六竅了。
作者: 曹志成    時(shí)間: 2019-8-13 16:26
我不知道你晶振多少,用keil調(diào)試了一下
[url=][/url]
[url=][/url]
  ,要不你把這個(gè)定時(shí)改改 調(diào)到20ms,如果能輸出pwm,舵機(jī)接電和接地都沒問題,你再換個(gè)舵機(jī),還可以再把線檢查一下,這個(gè)只能自己琢磨了,  實(shí)物做不成功是不是很絕望,哈哈    我在弄那個(gè)液晶1602的時(shí)候線接錯(cuò)了弄了半天,后來又發(fā)現(xiàn)顯示錯(cuò)位,不知道為什么單片機(jī)一根連線不通換了就好了。

IMG_20190813_161603.jpg (2.58 MB, 下載次數(shù): 63)

IMG_20190813_161603.jpg

屏幕截圖(1).png (366.93 KB, 下載次數(shù): 47)

屏幕截圖(1).png

作者: 愛學(xué)習(xí)的路飛    時(shí)間: 2019-8-13 16:46
emmm......我不知道你那個(gè)定時(shí)器中斷是多少時(shí)間,而且,,,你按鍵連最基本的10ms消抖都沒有。用51的IO口直接PWM輸出的話,確實(shí)簡(jiǎn)單點(diǎn)。你可以檢查下占空比是不是不夠?建議你在調(diào)試的時(shí)候直接將PWM輸出的占空比比例調(diào)大一點(diǎn),這樣下載后觀察到的現(xiàn)象更明顯,便于調(diào)試。
作者: 林野變    時(shí)間: 2019-8-13 21:06
32寫  比較簡(jiǎn)單
作者: qzwddf    時(shí)間: 2019-8-13 22:49
在中斷里面加點(diǎn)燈程序看中斷工作了嗎,在while里面分別加點(diǎn)燈程序看循環(huán)正常嗎,根據(jù)我的經(jīng)驗(yàn)判斷,你這個(gè)情況應(yīng)該飛到“溢出”中斷區(qū)了
作者: witheMe    時(shí)間: 2019-8-14 11:12
按鍵不消抖的后果是你按了一次鍵,結(jié)果程序已經(jīng)跑了不知道多少遍了,x的值并不是你所想的+1或-1,而是經(jīng)過了無數(shù)次這樣子的運(yùn)算




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1