国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

ELEOK

標(biāo)題: 51單片機(jī)舵機(jī)轉(zhuǎn)動(dòng)實(shí)驗(yàn)程序與Proteus仿真圖 [打印本頁]

作者: eng    時(shí)間: 2021-7-20 18:59
標(biāo)題: 51單片機(jī)舵機(jī)轉(zhuǎn)動(dòng)實(shí)驗(yàn)程序與Proteus仿真圖
本實(shí)驗(yàn)可以了解舵機(jī)是如何被控制轉(zhuǎn)動(dòng)的。只要控制串口輸出的高低電平比例便可以控制舵機(jī)轉(zhuǎn)動(dòng)的角度。壓縮包中有程序和仿真,程序中有清晰的注釋可以學(xué)習(xí)。
完整代碼和proteus仿真文件: 舵機(jī)角度轉(zhuǎn)動(dòng).zip (142.23 KB, 售價(jià): 3 E幣)
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)部分源程序如下:完整源程序請下載附件
  1. #include "reg51.h"
  2. #define u8 unsigned char
  3. #define u16 unsigned int
  4. sbit pwm3=P2^0;//發(fā)出PWM波
  5. //1ms=-90  2ms=+90
  6. //先轉(zhuǎn)到+90度,然后-90度
  7. //220V 50Hz=20ms   110V 60Hz
  8. void delay(u16 i){while(i--);}
  9. //先delay出20ms   900ms
  10. void main()//-90°到+90°
  11. {//30°誤差小于1°
  12.         while(1)
  13.                
  14.         {
  15.         pwm3=1;delay(250);
  16.         pwm3=0;delay(1750);// +90度
  17.           delay(60000);
  18.                 delay(60000);
  19.       
  20.         pwm3=1;delay(50);
  21.         pwm3=0;delay(1950);// -90度
  22.           delay(60000);
  23.                 delay(60000);
  24.       
  25.         pwm3=1;delay(128);
  26.         pwm3=0;delay(1872);// -60度
  27.           delay(60000);
  28.                 delay(60000);
  29.                         pwm3=1;delay(146);
  30.         pwm3=0;delay(1854);// -30度
  31.           delay(60000);
  32.                 delay(60000);
  33.                         pwm3=1;delay(165);
  34.         pwm3=0;delay(1835);// 0度
  35.           delay(60000);
  36.                 delay(60000);
  37.                         pwm3=1;delay(183);
  38.         pwm3=0;delay(1817);// 30度
  39.           delay(60000);
  40.                 delay(60000);
  41.       
  42.         pwm3=1;delay(202);
  43.         pwm3=0;delay(1798);// 60度
  44.           delay(60000);
  45.                 delay(60000);
  46.       
  47.       
  48.         }
復(fù)制代碼






歡迎光臨 ELEOK (http://m.afoofa.cn/) Powered by Discuz! X5.0