历史上的今天

今天是:2024年08月30日(星期五)

正在发生

2021年08月30日 | 51单片机-遥控器控制舵机

发布者:幸福梦想 来源: eefocus关键字:51单片机  遥控器  控制舵机 手机看文章 扫描二维码
随时随地手机看文章

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    else PWMOUT=0;

}


关键字:51单片机  遥控器  控制舵机 引用地址:51单片机-遥控器控制舵机

上一篇:51单片机-电位器控制舵机
下一篇:51单片机-温度传感器与串口

推荐阅读

4月8日晚,旷视科技(Face++)宣布收购艾瑞思机器人,进军智能机器人业务。AGV行业,乃至整个人工智能领域都在好奇——艾瑞思机器人有哪些值得收购的亮点?被收购后的艾瑞思接下来怎么打这手牌,是否能实现“1+1>2”的效果?初创型公司技术过硬,实现最大规模单仓机器人集群作业艾瑞思机器人是一家智能仓储解决方案提供商,致力于为客户提供整体仓储物流...
通过上两篇文章我们完成了对开发板的烧写,接下来聊一下 Nand 和 iNand。为什么要聊这个呢?我购买的开发板 Flash:支持512MB nand flash/4GB inand 可选,标配 4GB inand;它们除了结构上的不同,还跟系统更新有关啦,上两篇因为我的开发板是 iNand 所以一般用的是 fastboot 更新的。而 Nand 还可以通过 read、write、erase 指令进行...
专为早期 iPod 机型而制作的游戏 Music Quiz(音乐测试)重新出现在 iOS 14 中了,但它现在是 Siri 快捷指令中的一项额外功能,而不是独立的应用程序。Music Quiz 是早期的 iPod 游戏,通过播放设备目录中的随机歌曲片段来测试用户对自己音乐库的了解。然后,给玩家答案以供选择,并为正确的答案打分。在 9to5Mac 发现的新 iOS 14 Beta...
在8月结束前,我想对当前国内的混合动力(这篇文章里不特别说明时,混动指的都是不插电的HEV)车辆的状态做一些梳理和分享,使用的数据是中国的零售数据。 从1-7月的数据,能有以下的结论:混动产品的推动过程,是厂家自发对自身燃油车产品的替代过程,所以呈现出比较强的计划性。目前丰田和本田两家最有决心的企业进度都还可以,在他们的主导下1-7月,混...

史海拾趣

问答坊 | AI 解惑

ONSEI 推出PLL时钟发生IC

ON Semiconductor公司近日推出全集成锁相环(PLL)集成电路(IC)系列中的首个器件――NB4N507A,该系列专为替代昂贵的晶振而设计,以在各种消费和网络应用中产生时钟。  ON Semiconductor的NB4N507A是一种高性能硅PLL,其抖动性能可与 ...…

查看全部问答∨

基于Proteus的ARM虚拟开发

0  引言   现在,人们生活中的每个角落都有嵌入式设备的存在,比如数码相机、移动电话、TV机顶盒及掌上电脑等等。这些嵌入式设备多采用32位RISC嵌入式处理器作为核心部件。其中基于ARM核的嵌入式处理器独占鳌头,在32位RISC处理器中 ...…

查看全部问答∨

群里有没谁做232/485转CAN的产品

来自EEWORLD合作群arm fpga linux 嵌入1(63762526) 群主:wangkj…

查看全部问答∨

工业智能LCD用单片机驱动电路设计问题

要做一个单片机控制的LCD工业智能液晶电路,已知接口定义和串口通信、并行通信时序图,我想用并口,这样快些,还用加上拉电阻吗?数据位接P0(共8位),P1.0接/STB,P1.1接BUSY,程序设计思路: STB=1; while(1) {  if(Date!=0&&B ...…

查看全部问答∨

请问下面这个程序为什么只点亮了一个数码管,应该全部才对呀,怎么才能点亮全部?(at89s52)

#include<reg52.h> sbit dula=P2^6; sbit wela=P2^7; void main() {         wela=1;         P0=0xc0;         wela=0;             &nb ...…

查看全部问答∨

收到MAXIM的气象站了,质量不错.但觉得有必要做进一步改进

    收到MAXIM的气象站了,质量不错。把气象站通过附带的串口接到电脑上,用我们网站的程序可以读出风速、风向、温度等参数。     真正用起来非要通过串口接到电脑上,安装不方便,我想可以考虑用无线模块连起来。 ...…

查看全部问答∨

新手请教

最近在研究热线式传感器,从师兄那得到个公司做的传感器,结构很简单,引出的三根线我不知道是什么?不是太清楚输出的模拟信号范围是多少啊,还有就是它的响应时间能到微秒级吗?请高手指点…

查看全部问答∨

以太网通信优化

本人已经实现了arm与上位机通过以太网进行通信,用到了两个端口一个8000一个80,80用于网页简单控制arm,8000用于数据传输。但是在通信时非常的卡,网页发的命令arm过很久才会回复。&nbsp;&nbsp;&nbsp; 请问高手们如何优化,使通信变得流畅。 ...…

查看全部问答∨

程序仿真

程序仿真时候数组都出现了 can\'t  access memory ,这个怎么解决?是定义个数组地址吗? 怎么定义?…

查看全部问答∨

AD9850做信号发生器

用AD9850怎么产生各种波?原理是什么?求程序?我用的是AVR128…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved