历史上的今天
返回首页

历史上的今天

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

正在发生

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

2021-08-30 来源:eefocus

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;

}


推荐阅读

史海拾趣

Erocore Enterprise Co Ltd公司的发展小趣事

Erocore Enterprise Co Ltd公司自XXXX年在电子行业中创立之初,就专注于电子元件的研发和生产。公司创始人深知技术是企业发展的核心,因此投入大量资源用于技术研究和人才引进。在初创期,Erocore通过不断的技术创新,积累了一定的技术储备和行业经验,为其在后续的市场竞争中奠定了坚实的基础。

CITIZEN公司的发展小趣事

在20世纪中叶,西铁城公司迎来了一次重要的技术突破。1956年,公司成功研制出防震手表,并通过了空中坠表实验,这一创新轰动了整个行业。防震手表的推出不仅提升了西铁城产品的品质,也进一步巩固了其在全球腕表市场中的地位。这一技术的成功应用,也显示了西铁城在精密加工和测量技术方面的实力。

台湾兆欣(EMTEK)公司的发展小趣事

随着科技的不断进步和市场需求的不断变化,兆欣始终保持对新技术和新应用的敏锐洞察力。他们不断推出创新产品和技术解决方案,引领着行业的发展方向。同时,兆欣还积极与高校和科研机构合作,共同推动电子行业的创新和发展。这种持续的创新精神是兆欣在电子行业中保持领先地位的关键所在。

请注意,以上故事是基于兆欣公司的发展历程和事实进行创作的,但具体细节和数据可能因时间和市场变化而有所不同。

西安航天民芯公司的发展小趣事

随着新能源汽车市场的蓬勃发展,西安航天民芯敏锐地捕捉到了这一机遇。公司投入大量资源进行新能源汽车BMS管理芯片的研发,并成功推出了国内首款新能源汽车专用BMS管理芯片。这一创新产品填补了国内空白,为公司在新能源汽车领域赢得了先机。

博流(Bouffalo Lab)公司的发展小趣事

随着公司的发展壮大,博流积极寻求与全球知名企业的合作机会。其中,与谷歌的合作尤为引人注目。作为Google Matter EAP合作伙伴,博流与谷歌共同推动Matter协议在智能家居生态系统中的应用,为用户提供更加便捷、智能的家居体验。此外,博流还与多家产业链上下游企业建立了紧密的合作关系,共同推动物联网产业的发展。

Amphion Semiconductor Ltd公司的发展小趣事

随着公司的发展壮大,博流积极寻求与全球知名企业的合作机会。其中,与谷歌的合作尤为引人注目。作为Google Matter EAP合作伙伴,博流与谷歌共同推动Matter协议在智能家居生态系统中的应用,为用户提供更加便捷、智能的家居体验。此外,博流还与多家产业链上下游企业建立了紧密的合作关系,共同推动物联网产业的发展。

问答坊 | AI 解惑

大家看看这两个波形的同步怎么产生?

大家帮帮我,其中三角波的频率是5KHz,梯形波是100个阶梯一个周期,上下对称,希望频率可调…

查看全部问答>

AT89C2051的频率计设计

前辈们好,我是在用 AT89C2051做个频率计 ,用定时器1做1秒定时,用定时器0用来当做计数器,我的输入信号是电平为 0.5V的正玄信号,请问这个信号能被检测出来吗?…

查看全部问答>

摄像机芯片组合(厂家内部资料)

为了提高广大技术员的摄像机识别能力,特把一些常见的芯片组合列出: 专业红外夜视摄像SONY产品型号及芯片组合   1、A4212SP/G4212SP/D4212SP:   芯片: CXD3141、CXD1267、CXA2096+ICX405; 2、A4512SP/G4512SP/D451 ...…

查看全部问答>

不明白+-*/的用法

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY dat2bcd ISPORT(CLK:IN STD_LOGIC;     DAT:IN STD_LOGIC_VECTOR(7 DOWNTO 0);     BCD ...…

查看全部问答>

关于热释电红外传感器re200b和BISS0001的问题

电路图如上,做的是一个人体检测报警器 有采用菲涅尔透镜,传感器焊在电路板上,透镜盖在上面 现在按照以上的电路及参数做了板子,具体情况如下: 1.有人时,输出重复跳变,每次输出“1”约10秒,输出“0”约0.5秒; 2.没人时,基本跟有人的 ...…

查看全部问答>

搞嵌入式,但是不学模电。可不可以?

想搞偏软的嵌入式,比如写启动代码,linux驱动,Qt。数电学过。模电没学好。不知道会不会影响发展?…

查看全部问答>

VxWorks 下的网络编程 遇到的问题 Tornado Errors while downloading

基于 vxworks 的开发工具 Tornado 下的网络编程 调试问题, 望各位仁兄慷慨解答, 小弟感激不已! 程序 服务端 与 客户端 编译通过, 逻辑上也不存在错误, 现把 服务端 与 客户端 程序以 2个任务的形式 放在 main() 中运行, 当我下载到仿真 器下的时 ...…

查看全部问答>

给我推荐几本你们觉得很不错的书好不好呢

我想学驱动开发 windows和linux的都想学 但是我现在什么都不知道 也不知道怎么去学习 希望各位前辈能介绍介绍你们觉得不错的书籍 或者介绍一下你们学习的经验啊 希望你们能抽点时间帮帮我 麻烦你们了…

查看全部问答>

模电、数电参考书

我个人认为,初学者或者一般水平的人,看模电,推荐使用清华童诗白的模电、阎石的数电,还不错的。浙大的电路原理也还可以。…

查看全部问答>

Zigbee Mac 层协议

MAC层功能:MAC层需要处理接入到物理无线信道等事务,并负责下列的任务:一、             能产生网络信标(如果设备是协调器二、             同信标保持同步三 ...…

查看全部问答>