找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2810|回复: 3
收起左侧

跪求可用89c51控制数字舵机的单片机程序

[复制链接]
ID:246914 发表于 2018-7-30 18:43 | 显示全部楼层 |阅读模式
50黑币
求一个程序stc89c51程序,控制数字舵机,由一个角度定时几秒后旋转九十度。最好能由按键触发开始运行。

回复

使用道具 举报

ID:301757 发表于 2018-8-1 17:25 | 显示全部楼层
望采纳

#include <reg52.h>
unsigned char count;      
sbit pwm =P3^0 ;         
sbit jia =P3^2;         
sbit jan =P3^3;           
unsigned char jd;        
void delay(unsigned char i)
{
  unsigned char j,k;
  for(j=i;j>0;j--)
    for(k=125;k>0;k--);
}

void Time0_Init()         
{
                TMOD = 0x01;         
                IE   = 0x82;
                TH0  = 0xfe;
                TL0  = 0x33;                  
    TR0=1;               
}

void Time0_Int() interrupt 1
{
        TH0  = 0xfe;            
        TL0  = 0x33;

    if(count<jd)              
      pwm=1;                 
    else
      pwm=0;                 

    count=(count+1);         
    count=count%40;                          
}


void keyscan()              
{
   if(jia==0)              
  {
    delay(10);           
    if(jia==0)            
     {
      jd++;               
      count=0;              
      if(jd==6)
        jd=5;               
      while(jia==0);        
     }
  }

  if(jan==0)               
  {
    delay(10);
    if(jan==0)
     {
      jd--;               
      count=0;
      if(jd==0)
        jd=1;              
      while(jan==0);
     }
  }
}

void main()
{
jd=1;
count=0;
Time0_Init();              
while(1)
{
  keyscan();               

}
}
回复

使用道具 举报

ID:246914 发表于 2018-8-1 21:58 | 显示全部楼层

这个程序见  改成每次转九十度的时候度数不准,应该咋改呢
回复

使用道具 举报

ID:284786 发表于 2019-6-14 10:13 | 显示全部楼层
不知道这个你解决了没有  我现在也遇到了这个

楼主  可不可以分享一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表