• 大小: 24KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: 51舵机  

资源简介

51单片机舵机角度控制程序 ,定时器实现的角度控制程序。 内容为KIEL C程序文件

资源截图

代码片段和文件信息


//只利用一个定时器 T0,定时时间为 0.5ms,定义一个角度标识,数值为 1、2、3、4、5,
//实现 0.5ms、1ms、1.5ms、2ms、2.5ms 高电平的输出,再定义一个变量,数值最大为 40,实现周期为 20ms。
//每次进入定时中断,判断此时的角度标识,进行
//相应的操作。比如此时为 5,则进入的前 5 次中断期间,信号输出为高电平,即为 2.5ms 的
//高电平。剩下的 35 次中断期间,信号输出为低电平,即为 17.5ms 的低电平。这样总的时间
//是 20ms,为一个周期。
//用51板上s1和s2按键
//用P1^7输出 PWM信号控制舵机


#include “reg52.h“ 
#define uchar unsigned char
unsigned char count;      //0.5ms次数标识 
sbit pwm =P1^7 ;          //PWM信号输出 
uchar jd=3;

void Time0_Init()            //定时器初始化 

 TMOD = 0x01;             //定时器0工作在方式1     
 IE= 0x82; 
 TH0= 0xfe; 
 TL0= 0x33;               //11.0592MZ晶振,0.5ms 
 TR0=1;                   //定时器开始 

void Time0_Int() interrupt 1 //中断程序 

 TH0  = 0xfe;             //重新赋值 
 TL0  = 0x20; 
    if(count      pwm=1;                  //确实小于,PWM输出高电平 
    else 
      pwm=0;                  //大于则输出低电平 
      count=(count+1);          //0.5ms次数加1 
      count=count%40;     //次数始终保持为40 即保持周期为20ms 
}
void UA_initi()
{
  SCON=0X50;
  TMOD|=0X20;
  TL1=0XFD;
  TH1=0XFD;
  TR1=1;

}
void delayms(uchar t)
{
    uchar i;
while(t--)
for(i=0;i<122;i++);
}

void main() 

   Time0_Init();
   UA_initi();
   while(1)
   {
      jd=3;//  delayms(20);ET0=0;
  delayms(200);
  delayms(200);
  jd=5; // ET0=1;delayms(20);E0=0;
  delayms(100);
  delayms(200);
  jd=1; // ET0=1;delayms(20);ET0=0;
  delayms(100);
  delayms(200);
  jd=3; //  ET0=1;delayms(20);ET0=0;
  delayms(200);
  delayms(200);
   }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-08-17 22:10  工程8(舵机)\
     文件        3567  2012-12-13 13:00  工程8(舵机)\8
     文件         887  2012-12-13 13:00  工程8(舵机)\8.hex
     文件          37  2012-12-13 13:00  工程8(舵机)\8.lnp
     文件        5758  2012-12-13 13:00  工程8(舵机)\8.M51
     文件         165  2013-03-25 19:35  工程8(舵机)\8.plg
     文件       72568  2013-03-25 19:35  工程8(舵机)\8.uvopt
     文件       13223  2012-12-11 13:58  工程8(舵机)\8.uvproj
     文件       55210  2012-12-13 15:03  工程8(舵机)\8_uvopt.bak
     文件           0  2012-12-11 12:51  工程8(舵机)\8_uvproj.bak
     文件        1806  2012-12-13 13:00  工程8(舵机)\MAIN.c
     文件        3750  2012-12-13 13:00  工程8(舵机)\MAIN.LST
     文件        3918  2012-12-13 13:00  工程8(舵机)\MAIN.OBJ
     文件        6376  2009-05-07 14:37  工程8(舵机)\STARTUP.A51

评论

共有 条评论

相关资源