遥控器控制舵机

您所在的位置:网站首页 单片机舵机编程教学视频 遥控器控制舵机

遥控器控制舵机

2024-07-12 22:13| 来源: 网络整理| 查看: 265

Dotcpp  >  编程教程  >  混合例程  >  遥控器控制舵机 遥控器控制舵机 点击打开在线编译器,边学边练 1.题目要求

我们在第九章第2讲第一个例程“按键控制舵机桨”的基础上,实现用红外遥控器的前三行按键控制舵机桨停留在我们想要的位置,这样就实现了无线遥控控制机械结构运动的简单功能。

2.main.c测试代码#include  #include  //详见第六章第8讲 #include     //详见第八章第11讲 #include  //详见第十三章第2讲   sbit PWMOUT=P1^7; u8  highval = 10; void main() {     LED_Init();          //初始化LED硬件模块     EA = 1;      InitInfrared();      //初始化红外接收功能     TIM0_Init(100,34);   //定时0.1ms,舵机专用,34是微调使定时精度更高,每次微调都由中断函数里的内容而决定     ShowNumber(highval);         while (1)     {         if (irflag)      //接收到红外数据时刷新显示         {             irflag = 0;                     //以下是遥控器第一行按键             if(ircode[2]==0x45)highval=5;                if(ircode[2]==0x46)highval=7;              if(ircode[2]==0x47)highval=10;                   //以下是遥控器第二行按键             if(ircode[2]==0x44)highval=12;             if(ircode[2]==0x40)highval=14;             if(ircode[2]==0x43)highval=16;                     //以下是遥控器第三行按键             if(ircode[2]==0x07)highval=19;             if(ircode[2]==0x15)highval=22;             if(ircode[2]==0x09)highval=24;                   ShowNumber(highval);           }       } }     void TIM0_IRQHandler() interrupt 1 {      static  u8 pwm=0;     TH0 = T0RH;              //重新加载重载值     TL0 = T0RL;         pwm++;     if(pwm>=200)pwm=0;       //pwm在0~199之间间隔0.1ms变化,周期为20ms         if(pwm%10==0)SEG_Scan(); //间隔1ms刷新数码管         if(pwm


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3