久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2646|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

AT89S52單片機(jī)8按鍵8路舵機(jī)控制器源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:41770 發(fā)表于 2018-1-16 16:41 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

單片機(jī)源程序如下:
  1. /*舵機(jī)控制程序

  2. 8路舵機(jī)控制器  

  3. 芯片:AT89S52

  4. 晶振:12MHz

  5. ===================================================================================*/

  6. #include<config.h>

  7. #define uint8  unsigned char

  8. #define uint16 unsigned int



  9. sbit key1=P3^2;

  10. sbit key2=P3^3;

  11. //PWM的輸出端口

  12. sbit PWM_OUT0=P5^4;    //key1,key2

  13. sbit PWM_OUT1=P5^5;

  14. sbit PWM_OUT2=P0^2;

  15. sbit PWM_OUT3=P0^3;

  16. sbit PWM_OUT4=P0^4;

  17. sbit PWM_OUT5=P0^5;

  18. sbit PWM_OUT6=P0^6;

  19. sbit PWM_OUT7=P0^7;



  20. //PWM的數(shù)據(jù)值

  21. uint16 PWM_Value[8]={1500,1000,1500,1000,1750,2000,2500,2000}; uint8 order1;  //定時器掃描序列

  22. /*===================================================================================

  23.     定時器T0的中斷服務(wù)程序

  24.     一個循環(huán)20MS  = 8*2.5ms

  25. =====================================================================================*/

  26. void timer0(void) interrupt 1 using 1

  27. {

  28. switch(order1)

  29. {

  30. case 1:  PWM_OUT0=1;

  31.           TH0=-PWM_Value[0]/256;

  32.           TL0=-PWM_Value[0]%256;

  33.           break;

  34. case 2:  PWM_OUT0=0;        

  35.           TH0=-(2700-PWM_Value[0])/256;

  36.           TL0=-(2700-PWM_Value[0])%256;

  37.           break;

  38. case 3:  PWM_OUT1=1;

  39.           TH0=-PWM_Value[1]/256;

  40.           TL0=-PWM_Value[1]%256;

  41.           break;

  42. case 4:  PWM_OUT1=0;

  43.           TH0=-(2700-PWM_Value[1])/256;

  44.           TL0=-(2700-PWM_Value[1])%256;

  45.           break;

  46. case 5:  PWM_OUT2=1;

  47.           TH0=-PWM_Value[2]/256;

  48.           TL0=-PWM_Value[2]%256;

  49.           break;

  50. case 6:  PWM_OUT2=0 ;

  51.           TH0=-(2700-PWM_Value[2])/256;

  52.           TL0=-(2700-PWM_Value[2])%256;

  53.           break;

  54. case 7:  PWM_OUT3=1;

  55.           TH0=-PWM_Value[3]/256;

  56.           TL0=-PWM_Value[3]%256;

  57.           break;

  58. case 8:  PWM_OUT3=0;

  59.           TH0=-(2700-PWM_Value[3])/256;

  60.           TL0=-(2700-PWM_Value[3])%256;

  61.           break;

  62. case 9:  PWM_OUT4=1;

  63.           TH0=-PWM_Value[4]/256;

  64.           TL0=-PWM_Value[4]%256;  
  65.                    break;

  66. case 10: PWM_OUT4=0;

  67.           TH0=-(2700-PWM_Value[4])/256;

  68.           TL0=-(2700-PWM_Value[4])%256;

  69.           break;

  70. case 11: PWM_OUT5=1;

  71.           TH0=-PWM_Value[5]/256;

  72.           TL0=-PWM_Value[5]%256;

  73.           break;

  74. case 12: PWM_OUT5=0;

  75.           TH0=-(2700-PWM_Value[5])/256;

  76.           TL0=-(2700-PWM_Value[5])%256;

  77.           break;

  78. case 13: PWM_OUT6=1;

  79.           TH0=-PWM_Value[6]/256;

  80.           TL0=-PWM_Value[6]%256;

  81.           break;

  82. case 14: PWM_OUT6=0;

  83.           TH0=-(2700-PWM_Value[6])/256;

  84.           TL0=-(2700-PWM_Value[6])%256;

  85.           break;

  86. case 15: PWM_OUT7=1;

  87.           TH0=-PWM_Value[7]/256;

  88.           TL0=-PWM_Value[7]%256;

  89.           break;

  90. case 16: PWM_OUT7=0;

  91.           order1=0;

  92.           TH0=-(2700-PWM_Value[7])/256;

  93.           TL0=-(2700-PWM_Value[7])%256;

  94.           order1=0;

  95.           break;

  96.           default : order1=0;

  97.     }

  98.     order1++;

  99. }

  100. /*===================================================================================

  101. 初始化中斷   

  102. =====================================================================================*/

  103. void InitPWM(void)

  104. {

  105.    order1=1;

  106.    TMOD |=0x11;

  107.    TH0=-1500/256;    TL0=-1500%256;

  108.    EA=1;

  109.    EX0=0;

  110.    ET0=1; TR0=1;PT0=1;PX0=0;

  111. }



  112. void delay(void)

  113. {

  114.   uint16 i=100;

  115.   while(i--);

  116. }



  117. void main(void)

  118. {

  119. ……………………

  120. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
ok_8按鍵8路舵機(jī)控制器.rar (63.79 KB, 下載次數(shù): 34)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久激情网 | 国产探花在线精品一区二区 | 美女二区| 中文字幕日本一区二区 | 亚洲高清在线免费观看 | 成年人免费看的视频 | 欧美乱淫视频 | 99久久精品国产一区二区三区 | 久久久精品日本 | 国产精品视频在线免费观看 | 韩国精品一区 | 成人无遮挡毛片免费看 | 精品国产伦一区二区三区观看体验 | 成人午夜精品 | 伊人免费在线观看 | 男女羞羞免费视频 | 亚洲色图插插插 | 国产精品美女久久久久久免费 | 免费在线观看成人 | 国产久| 亚洲国产精品一区二区三区 | 日日做夜夜爽毛片麻豆 | www.国产精品 | 国产精品久久久久久久免费大片 | 欧美精品乱码久久久久久按摩 | 国产成人精品一区二区三区在线 | 日本三级电影免费观看 | 日韩国产在线 | 久国产视频 | 午夜免费视频 | 日韩一级黄色毛片 | 粉嫩一区二区三区国产精品 | 中文一区 | 午夜小视频免费观看 | 久久综合色综合 | 久久美国 | 天天碰夜夜操 | 911精品国产 | 亚洲一区二区三区四区五区午夜 | 成人免费视频网站在线看 | www国产成人免费观看视频,深夜成人网 |