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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

C51單片機(jī) 9G舵機(jī) 0-180自動(dòng)轉(zhuǎn)動(dòng)的程序

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
單片機(jī):stc12c5a60s2
晶振:12M
功能:舵機(jī)自動(dòng)從0至180度來回?cái)[動(dòng)
  1. /*********************************************************************************************
  2. 單片機(jī):stc12c5a60s2
  3. 晶振:12M
  4. 功能:舵機(jī)自動(dòng)從0至180度來回?cái)[動(dòng)

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

  6. /*********************************************************************************************
  7. 說明:
  8. 高電平值0.5到2.5mS 對(duì)應(yīng) 舵機(jī)的 -90度到+90度。
  9. 一個(gè)高、低電平的總長(zhǎng)是20mS

  10. /*********************************************************************************************/


  11. #include <STC12C5A60S2.H> //STC12Cx052或STC12Cx052AD系列單片機(jī)頭文件
  12. sbit R_Key = P3 ^ 4;//右轉(zhuǎn)鍵
  13. sbit L_Key = P3 ^ 5;//左轉(zhuǎn)鍵
  14. sbit PWM_OUT = P3 ^ 6;//PWM輸出接口
  15. bit OUT;//高低電平切換標(biāo)志位
  16. unsigned char SG1;//舵機(jī)角度設(shè)置

  17. /*********************************************************************************************
  18. 函數(shù)名:毫秒級(jí)CPU延時(shí)函數(shù)
  19. 調(diào)  用:DELAY_MS (?);
  20. 參  數(shù):1~65535(參數(shù)不可為0)
  21. 返回值:無
  22. 結(jié)  果:占用CPU方式延時(shí)與參數(shù)數(shù)值相同的毫秒時(shí)間
  23. 備  注:應(yīng)用于1T單片機(jī)時(shí)i<600,應(yīng)用于12T單片機(jī)時(shí)i<125
  24. /*********************************************************************************************/
  25. void DELAY_MS (unsigned int a){
  26.         unsigned int i;
  27.         while( a-- != 0){
  28.                 for(i = 0; i < 600; i++);
  29.         }
  30. }
  31. /*********************************************************************************************/

  32. /*********************************************************************************************
  33. 函數(shù)名:定時(shí)/計(jì)數(shù)器初始化函數(shù)
  34. 調(diào)  用:T_C_init();
  35. 參  數(shù):無
  36. 返回值:無
  37. 結(jié)  果:設(shè)置SFR中T/C1和(或)T/C0相關(guān)參數(shù)
  38. 備  注:本函數(shù)控制T/C1和T/C0,不需要使用的部分可用//屏蔽
  39. /**********************************************************************************************/
  40. void T_C_init (void){
  41.         TMOD = 0x11; //高4位控制T/C1 [ GATE,C/T,M1,M0,GATE,C/T,M1,M0 ]
  42.         EA = 1;        //中斷總開關(guān)

  43.         TH0 = 0xFF; //16位計(jì)數(shù)寄存器T0高8位
  44.         TL0 = 0xF5; //16位計(jì)數(shù)寄存器T0低8位
  45.         ET0 = 1; //T/C0中斷開關(guān)
  46.         //TR0 = 1; //T/C0啟動(dòng)開關(guān)
  47. }
  48. /**********************************************************************************************/

  49. /*********************************************************************************************
  50. 函數(shù)名:定時(shí)/計(jì)數(shù)器0中斷處理函數(shù)
  51. 調(diào)  用:[T/C0溢出后中斷處理]
  52. 參  數(shù):無
  53. 返回值:無
  54. 結(jié)  果:重新寫入16位計(jì)數(shù)寄存器初始值,處理用戶程序
  55. 備  注:必須允許中斷并啟動(dòng)T/C本函數(shù)方可有效,重新寫入初值需和T_C_init函數(shù)一致
  56. /**********************************************************************************************/
  57. void T_C0 (void) interrupt 1  using 1{ //切換寄存器組到1
  58.         unsigned int a;
  59.         if(OUT==0){//判斷高低脈沖標(biāo)志//
  60.                 a= 0x0A*SG1+0x01F3;//0x0A是1度的時(shí)間長(zhǎng),0x01F3是0.5mS時(shí)間長(zhǎng)。
  61.                 a= 0xFFFF - a;//算出定時(shí)開始值
  62.                 TH0 = a/0xFF; //16位計(jì)數(shù)寄存器T0高8位
  63.                 TL0 = a%0xFF; //16位計(jì)數(shù)寄存器T0低8位
  64.                 OUT = 1;//標(biāo)志切換
  65.                 PWM_OUT=1;//PWM輸出高電平
  66.         }else{
  67.                 a= 0x4E1F - (0x0A*SG1+0x01F3);//0x4E1F是20mS的時(shí)間長(zhǎng)
  68.                 a= 0xFFFF - a;//算出定時(shí)開始值
  69.                 TH0 = a/0xFF;
  70.                 TL0 = a%0xFF;
  71.                 OUT = 0;
  72.                 PWM_OUT=0;//PWM輸出低電平
  73.         }
  74. }
  75. /**********************************************************************************************/

  76. /*********************************************************************************************
  77. 函數(shù)名:主函數(shù)
  78. 調(diào)  用:無
  79. 參  數(shù):無
  80. 返回值:無
  81. 結(jié)  果:程序開始處,無限循環(huán)
  82. 備  注:
  83. /**********************************************************************************************/
  84. void main (void){
  85.         P3M0 = 0x60;        //
  86.         P3M1 = 0x00;        //設(shè)置推挽輸出
  87.         DELAY_MS (500);
  88.         

  89. …………余下代碼請(qǐng)下載附件…………
復(fù)制代碼



下載:
自動(dòng)0~180度回來擺動(dòng).rar (1.38 KB, 下載次數(shù): 202)

評(píng)分

參與人數(shù) 4黑幣 +61 收起 理由
xiou + 1 贊一個(gè)!
奇點(diǎn)zy + 5 贊一個(gè)!
左手陽光右手沙 + 5 很給力!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2017-3-14 22:17 | 只看該作者
好資料,51黑有你更精彩

回復(fù)

使用道具 舉報(bào)

板凳
ID:164988 發(fā)表于 2017-3-14 23:34 | 只看該作者
已買了兩個(gè)9G舵機(jī) ,正好用上,感謝樓主分享,謝謝!
回復(fù)

使用道具 舉報(bào)

地板
ID:267919 發(fā)表于 2017-12-27 19:02 | 只看該作者
在做舵機(jī)SG90的課設(shè)
回復(fù)

使用道具 舉報(bào)

5#
ID:315120 發(fā)表于 2018-5-21 17:37 | 只看該作者
樓主好人,剛好需要
回復(fù)

使用道具 舉報(bào)

6#
ID:404498 發(fā)表于 2018-9-30 20:26 | 只看該作者
89c52rc能用嗎
回復(fù)

使用道具 舉報(bào)

7#
ID:404498 發(fā)表于 2018-9-30 23:25 | 只看該作者
        共享資料的黑幣獎(jiǎng)勵(lì)!
回復(fù)

使用道具 舉報(bào)

8#
ID:405273 發(fā)表于 2018-10-19 09:30 | 只看該作者
能精確控制舵機(jī)轉(zhuǎn)角嗎?比如按鍵一下 5度
回復(fù)

使用道具 舉報(bào)

9#
ID:58240 發(fā)表于 2018-10-21 22:22 | 只看該作者
感謝分享     
回復(fù)

使用道具 舉報(bào)

10#
ID:374198 發(fā)表于 2018-12-27 08:20 | 只看該作者
想問一下,9g舵機(jī)回中原理是什么???
回復(fù)

使用道具 舉報(bào)

11#
ID:973173 發(fā)表于 2021-10-18 23:41 | 只看該作者
不知道一開始通電的時(shí)候會(huì)不會(huì)自動(dòng)轉(zhuǎn)?
回復(fù)

使用道具 舉報(bào)

12#
ID:969161 發(fā)表于 2021-11-10 23:20 | 只看該作者
謝謝樓主,這個(gè)不錯(cuò),正需要看舵機(jī)的。
回復(fù)

使用道具 舉報(bào)

13#
ID:969161 發(fā)表于 2021-11-10 23:28 | 只看該作者
我以前抄了一個(gè)程序,但舵機(jī)就是不能正常轉(zhuǎn)動(dòng)起來,到現(xiàn)在都不知道是什么原因。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 婷婷色国产偷v国产偷v小说 | 超碰在线观看97 | 亚洲网站免费看 | 免费一区二区三区 | 一区二区精品 | 色综合天天网 | 亚洲国产二区 | 午夜日韩精品 | 日本在线免费视频 | 精品久久香蕉国产线看观看亚洲 | 老头搡老女人毛片视频在线看 | 欧美日韩中文在线 | 国产一级电影网 | 国产精品成人品 | 免费超碰 | 国产精品区一区二区三 | 日韩在线观看一区 | 精品一区二区三区四区 | 亚洲精品www | 久久这里只有精品首页 | 成人超碰 | 欧美激情综合 | 国产97碰免费视频 | 免费观看成人鲁鲁鲁鲁鲁视频 | 一区二区三区四区在线免费观看 | 国产一区 | 黄色中文字幕 | 日韩国产精品一区二区三区 | 欧洲av一区 | 色视频网站 | 日韩中文字幕视频在线 | 亚洲一区二区国产 | 国产精品污www一区二区三区 | 欧一区二区 | 国产精品欧美一区二区 | 日韩在线免费视频 | 成人精品久久久 | 91免费在线 | 97久久精品| 国产精品成人在线 |