标题: 教你如何 51单片机控制mg995舵机 [打印本页]

作者: 51hei学习技术中    时间: 2016-10-12 12:32
标题: 教你如何 51单片机控制mg995舵机
这是我的小车雏形,还没完成,之前就一直卡在舵机控制部分,今天终于搞定了。接下来我就将我注意的所有部分说出来,和大家分享一下我的经验:

1 单片机,舵机,电源共地;
2 用两个稳压芯片进行供电,将电源分开来;
3 舵机信号端没有直接连接单片机IO口,我串了一个10K的电阻,也就是这一步之后我就可以控制我的舵机了。




之前听很多人说是信号端直接连IO口也可以控制的,但是我就是一直都不可以了,今天我就串了一个10K的电阻之后意外发现可以控制舵机了
所以我就发这个帖子出来,和大家分享,同时感谢那些帮我思考的人,感谢你们~~

需要比较清楚的电路的人可以留言,如果我看需要的人很多的话我就传上来吧~~~

基于大众的要求,要求资料,那我就把我的参考资料发上来吧~不过这些不是我小车的电路,只是参考而已,大家也可以拿去参考一下,不过我这个帖子主要是和大家分享一下舵机控制的问题,因为我发现很多人都是会有这个疑问的,所以我会控制了我就发这个帖子上来和大家交流一下,下面就是我参考的 小车电路图和一个简单的程序,已经我的
供电方面的一个框架~~




(小车正在完善中.....)




源程序:
  1. #include
  2. #define uint unsigned int         
  3. #define uchar unsigned char

  4. sbit P1_0=P1^0;                         //PWM信号输出端                 
  5. void Init_t0(void);                        //子函数声明               
  6. void main()  
  7. {         
  8.         P1_0=0;                                 //置PWM初始输出为高电平                        
  9.         Init_t0();
  10.         while(1);                                 //等待中断
  11. }

  12. void Init_t0(void)
  13. {   
  14.         TMOD=0x01;                  //设置定时器0工作方式1后面运行TR位启动
  15.         TH0=(65536-1500)/256;
  16.         TL0=(65536-1500)%256;         //1.5ms 的高电平
  17.         EA=1;
  18.         ET0=1;
  19.         TR0=1;         
  20. }

  21. /*******************中断服务程序**********************/  

  22. void PWM0() interrupt 1         //定时器0中断,产生方波
  23. {  
  24.         if(P1_0==1)                         //如果上个电平为1,则下个低电平的时间为18.5ms
  25.         {  
  26.                 TH0=(65536-18500)/256;                 //试过t1=1500;t0=20000-t1;但舵机老是吱吱的响,推测:运算耗时.
  27.                 TL0=(65536-18500)%256;
  28.         }
  29.         else                                         //如果上个电平为0,则下个高电平为1.5ms
  30.         {
  31.                 TH0=(65536-1500)/256;
  32.                 TL0=(65536-1500)%256;
  33.         }
  34.         P1_0=~P1_0;
  35. }


复制代码

程序.rar (634 Bytes, 下载次数: 359)

仿智能车电路.rar (53.76 KB, 下载次数: 141)


作者: 1473421439    时间: 2017-4-30 13:50
我的舵机通电后转了一下就不动了,按键也无法控制,我用的这是这个型号的舵机,单片机用的stc89c52rc,程序应该没错
作者: 51hww34    时间: 2017-7-30 20:47
感谢分享,回复赚点下载B
作者: yeyuaihaozhe    时间: 2017-9-9 22:40
楼主程序是遥控的
作者: stc0079    时间: 2017-10-9 10:57
学习学习。。。
作者: renchao159    时间: 2017-10-12 15:24
感谢分享
作者: 狄利克雷    时间: 2017-10-29 23:27
非常感谢楼主
作者: travellerxuqi    时间: 2017-11-22 19:30
8v的电源是电池吗?
作者: gaoyuana    时间: 2017-11-23 01:30

非常感谢楼主
作者: 爱新觉罗司令    时间: 2017-12-1 12:45
正好有用,感谢分享,下载了
作者: 51busy    时间: 2017-12-16 01:08
学习学习
作者: 学习无极境    时间: 2018-3-20 12:17
谢谢程序
作者: 是事实    时间: 2018-4-13 21:44
感谢楼主
作者: 陈帅帅儿    时间: 2018-4-27 23:30
楼主,棒
作者: zero711    时间: 2018-5-1 23:45
感谢楼主分享
作者: 忙着赶作业    时间: 2018-5-2 01:12
感谢楼主分享,是好材料
作者: zhushao    时间: 2018-5-5 22:01
可以的 有很大帮助
作者: jfhsjhdsg    时间: 2018-5-7 18:08
蛮有用的
作者: 半吊子    时间: 2018-5-18 14:33
超级感谢楼主,大一新生想学点东西。
作者: 半吊子    时间: 2018-5-18 14:34
超级感谢楼主,大一新生想学点东西。

作者: Vonsama    时间: 2018-6-12 20:48
非常感谢楼主 赚点币
作者: werty12    时间: 2018-6-20 01:20
楼主为什么要加一个10K的电阻呢?串联后电流不是更小了么?
作者: 李子木    时间: 2018-6-30 20:20
还不错

作者: 刘磊l    时间: 2018-7-15 21:10
学习学习
作者: 黑会不会    时间: 2018-8-30 17:20
有帮助
作者: youyou1979    时间: 2018-9-1 09:56
漂亮,又学习到了一招
作者: TCE    时间: 2018-9-5 14:39
感谢分享
作者: 18925405284    时间: 2018-9-6 16:24
真的是很好  回复一下   
作者: yangheng    时间: 2018-11-12 14:42
感谢分享
作者: Li420982    时间: 2018-12-8 00:15
我也遇到了抖动问题
作者: yyy13660134652    时间: 2018-12-8 09:07
厉害厉害
作者: AIYLE520    时间: 2019-2-16 23:12
那个信号线串的电阻值得一试,因为我也一直不成功,哈哈
作者: 5151du    时间: 2019-2-17 11:38
学习学习感谢分享啊
作者: aigo13428149596    时间: 2019-3-22 15:24
谢谢分享,下载学习了
作者: 绿豆水    时间: 2019-3-25 10:25
感谢楼主分享
作者: 学习123学习    时间: 2019-3-26 11:34

感谢无私楼主分享
作者: qianliang95    时间: 2019-5-17 13:31
谢谢楼主 帮助很大
作者: xinjintao521    时间: 2019-7-14 23:39
我的一直在响不转
作者: 空间    时间: 2019-7-24 14:51
厉害,感谢楼主

作者: lxg.21    时间: 2019-7-24 16:03
主函数里的P1-1=0,不应是设置成低电平吗?可以解释一下吗?
作者: 王小邢    时间: 2019-8-2 08:46
不错不错,在搞按键

作者: whileand    时间: 2019-8-2 10:59
感谢楼主大大
作者: 伊特    时间: 2019-8-2 15:26
谢谢楼主
作者: xzsxzs    时间: 2019-8-5 21:12
支持楼主,继续你的小车
作者: zhy111    时间: 2019-12-15 16:53
S3003与STC8952rc不能运行
作者: zhuiya    时间: 2019-12-16 15:08
感谢分享,下载学习一下

作者: zhuiya    时间: 2019-12-16 15:09
感谢分享,下载学习一下。
作者: 龙柏俊    时间: 2020-5-16 01:48
为什么要串联10K的电阻?
作者: 老白给了    时间: 2020-8-12 21:21
就动了一下,我再看看吧谢谢楼主
作者: 分钟前    时间: 2021-7-9 16:05
Li420982 发表于 2018-12-8 00:15
我也遇到了抖动问题

10K并没有解决抖动问题,你解决了吗


作者: 分钟前    时间: 2021-7-9 16:07
MG995加10K电阻并没有解决抖动问题,请问
作者: 2128548700    时间: 2021-11-1 16:52
程序的效果是怎么样的?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1