找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

89c52制作舵機 搖頭 快速回位

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:278244 發(fā)表于 2019-4-21 21:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
廢話不多說直接代碼吧
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit pwm=P0^0;
sbit keyup=P3^2;
sbit keydn=P3^3;
sbit keysdk=P3^4;
sbit keysdm=P3^5;
uchar qi=10,zhi=10;
uchar count0,flag,jd;
int count1,sd=20;
void delay(uint z)
{
  uchar x,y;
  for(x=z;x>0;x--)
      for(y=110;y>0;y--);
}
void tm_init()
{
  TMOD=0x11;//¶¨Ê±Æ÷1¡¢2 ¹¤×÷ÔÚģʽ1 ¼´65536
  TH1=(65536-50000)/256;//¶¨Òå500ms
  TL1=(65536-50000)%256;
  TH0=0xff;//¶¨Òå0.1ms
  TL0=0x9c;
  IE=0x8a;
  TR0=1;
  TR1=1;  
}
void tm0_int() interrupt 1 //t0¶¨Òå
{
  uchar temp;
  TH0=0xff;//¶¨Òå0.1ms
  TL0=0x9c;  
  if(flag==1)
    temp=qi;
  else
    temp=zhi;
  if(count0<temp)
     pwm=1;
  else
     pwm=0;
  count0=count0+1;
  count0=count0%200;

}
void tm1_int() interrupt 3
{
   TH1=(65536-50000)/256;//¶¨Òå500ms
   TL1=(65536-50000)%256;
   count1++;
   if(count1==4)
      flag=0;     
   if(count1==sd)//30Ãë   600
   {
      flag=1;
      count1=0;
   }
      
}
void test()
{
   if(keyup==0)
   {
     delay(20);
     if(keyup==0)
     {
     
         qi++;
         count0=0;
         while(!keyup);
     }
   }
     if(keydn==0)
   {
     delay(20);
     if(keydn==0)
     {
     
         qi--;
         count0=0;
         while(!keydn);
     }
   }
    if(keysdk==0)
   {
     delay(20);
     if(keysdk==0)
     {
     
         sd=sd+20;
         count1=0;
         while(!keysdk);
     }
   }
   if(keysdm==0)
   {
     delay(20);
     if(keysdm==0)
     {
     
         sd=sd-20;
         count1=0;
         while(!keysdm);
     }
   }
}
  
void main()
{
  uint m=0;
  count0=0;count1=0;
  jd=15;
  flag=1;//falg=1ʱcount0=10 flag=0ʱcount0=10
  tm_init();
  while(1)
  {
   test();
  }
}



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

使用道具 舉報

沙發(fā)
ID:1 發(fā)表于 2019-4-22 04:36 | 只看該作者
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表