版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
简易红外线遥控系统的设计与制作分享一个比较好玩的电路,前段时间也提到过,那就是无编码红外遥控器的制作方法,听起来高大上吧,其实做起来并没有那么难,下面这个就是红外接收电路的原理图,元件也没有几个,发射电路就更简单了,这次还是以接收电路为主。红外接收管就是下面黑色的这个,长得很像LED灯,白的是红外发射管,他也发光只不过是发出的红外光,人眼看不到。回到原理图上,当接收管接收到红外光后就会导通,此时电源正极会连到MOS管栅极(G)上,MOS管导通,进而LED灯会发光。如果接收管没有接收到红外光,红外接收管就会截止,这样也不能满足MOS管的导通条件,进而LED灯也不发光,这就是这个红外接收电路的原理,很简单,如果手里没有MOS管可用NPN型三极管来代替。这个电路有一个比较容易错的地方就是红外接收管接的顺序问题,原理图上已经标明了出来,如果接反了这个电路是不能够正常工作的,除此之外还可以用万用表电阻档来判断长脚和短脚对应原理图上的管脚,主要是由于在红外光下接收管的正向导通电阻会变小,而太阳光中含有红外光,可在光下测一遍,室内测一遍,根据阻值变化判断管脚。上图这个是红外发射电路,其实也没啥和普通驱动LED灯发光的电路没啥区别,只不过这个发出的是红外光而已,这里不要忘了加限流电阻,没有这个电阻有可能把红外发射管给烧掉。上面这个图片就是实际检测的效果图,如果大家做出来不要让太阳直射,由于太阳光中也含有红外线,所以阳光直射会对这个电路造成干扰,很明显的看到,当发射电路打开开关后,接收电路中的LED灯就会发光,关掉开关灯就会灭,下图这个就是实际检测的效果。这个电路我们还可以再改改创新一下,比如把LED灯换成继电器,还可以控制家里的220V灯泡,也可以自己做个红外遥控车等等,就看你怎么用了。
简易红外遥控小车设计1.总体设计主要设计思想:本设计利用通用红外遥控器控制小车后轮两个电机的动作来实现小车走、停、转弯等功能。并通过软件控制小车方向和PWM调速小车的转速。具体思想如下:通过外部中断1接收红外信息,并通过软件解码,根据接收信息的不同通过PWM和控制函数做出响应,并且在二极管上面反映出来,所以说二极管充当车灯和档位指示灯的作用,且每次接收信号,蜂鸣器鸣叫用来显示有信号的传入。主要设计任务:红外遥控小车的设计主要分两大步,第一是硬件实现的设计,第二是单片机软件实现的设计。(1)其中硬件又分几块:51单片机最小系统板,小型直流电机(3~9V)驱动电路模块,红外接收模块(已集成在最小系统板),蜂鸣器和二极管显示模块,车体。(2)软件比较简单,但也分了几块:外部中断红外接收解码模块,PWM电机调速模块,主程序。2.设计任务与要求(1)主要完成的性能指标本小车设计完成后能够实现如下功能:前进、后退、左前传(以做轮胎为轴转弯)、右前转、左圆转(以车体为轴进行转弯)、右圆转、左倒转、右倒转、紧急暂停、123级加减速。(2)器件选择本设计主要用到以下材料:51单片机一个、通用遥控器一个、红外接收头一个、5号电池7节、车体(双电机+万向轮)一套、蜂鸣器一个、杜邦线若干、二极管9个、L9110S电机驱动芯片2个、其他电阻电容若干(3)单片机选择本设计用到宏晶公司的STC——125A32Ad单片机(4)说明总体框图(可选)(5)画出总线路图(硬件)51单片机最小系统如右:红外电路图如下:L9110S电机驱动电路如下:L9110S电气特性如下:完成后的驱动:实现后的实物图如下:(6)流程图及程序清单//*******************************************************************************//***************简易红外小车完全调试程序//***************版本V0.2//***************2012年5月13日10:49:26//***************修改优化时间2012年5月14日0:02:21//***************再次修改时间2012年5月18日20:49:28//***************Madeby**************#include<reg52.h>#include"intrins.h"#defineuintunsignedint#defineucharunsignedcharsbitM11=P1^0;//电机1接口sbitM12=P1^1;sbitM21=P1^2;//电机2接口sbitM22=P1^3;sbitLED0=P0^0;//左前灯sbitLED1=P0^1;//
档1灯sbitLED2=P0^2;//档2灯sbitLED3=P0^3;//档3灯sbitLED4=P0^4;//紧急灯sbitLED5=P0^5;//右前灯sbitLED6=P0^6;//左后灯sbitLED7=P0^7;//右后灯sbitF=P1^4;//蜂鸣器接口ucharTEMP1=0;//全局变量,用于存放红外返回值
-用于PWM占空比的控制ucharTEMP2=10;//用于方向的控制sbitInt0=P3^3;//
红外接收采用外部中断1uchardatabus[7];//用于红外接收存放数据//************************************************************//延时函数voiddelay1(uintxms)//delay0.1ms{uinti,j;for(i=xms;i>0;i--)for(j=13;j>0;j--);}//************************************************************//********************接受解码函数ucharRec(){uchartemp=0;//函数内部临时变量,用于返回函数值uinti=0;//
用于存放数据的临时变量uintj=0;uintm=0;//
局部计数临时变量uintn=0;//
局部计数临时变量uintk=0;//
局部计数临时变量EX1=0;//关外部中断1
,以防再次外部1中断的介入while(!Int0)//用于计时前9Ms低电平的引导码{delay1(1);m++;//计数引导码的长度}if(m<=60)//50,可变,大概数,m应该在90左右,如果引导码时间太小(如<50),就表示//此次接收有误,返回0return0;//while(Int0)//用于计时4.5ms高电平的引导码{delay1(1);n++;//计时高电平}if(n<=30)//20大概值,应该在45左右,如果太小或太大,都有问题return0;//当上面的两步都完成时,表示9ms低电平,4.5ms高电平的引导码验证完毕//可进行下步接收数据工作。后面有32位高低电平组成的编码分为:系统码1,系统码2,数据码和数据反码//其中前16位,为用户识别码(系统码1和2)用于区别不同的电器,因为使用的通用遥控器和接收器所以//不用关心前16位。M11=M12=M21=M22=0;//进入中断,停止电机,防止电机颤抖for(i=0;i<4;i++)//4组接收for(j=0;j<8;j++)//每组8个高低信号{//数据0由0.56ms低+0.56ms高组成即
1:1//数据1由0.56ms低+1.655ms高组成
1:3while(!Int0)//过滤数据的低位
0.56ms低电平{delay1(1);}while(Int0)//
进入高电平计时{delay1(1);k++;//k计时每次的高电平}databus[i]=databus[i]>>1;//
数据接收数组首先默认接收为0信号,即databus【i】第7位移入0if(k>=10)//而后,判断刚才接收到的数据是否为1,因为1的高点平持续1.655ms//低电平持续0.56ms,所以只要k大于10,就能确定为1{databus[i]=databus[i]|0x80;//
若为1,把第8位置1}k=0;//把k的值重新置零};if(databus[2]!=~databus[3])//2和3组数据为反码关系。所以判断它们是否相反,来确定接收数据//是否正确return0;temp=databus[2];//
返回赋值returntemp;//}//****************************************************//**********红外接受中断服务函数,+接受编码TEMP1,TEMP2voidint0()interrupt2{uchartemp;//临时存放红外接收函数返回值uinti=0;//计数临时变量LED4=1;//(因紧急灯是闪烁的每次中断时结果不一样,为保证效果)先灭紧急指示灯temp=Rec();//
红外函数返回赋值switch(temp)//对返回的数据进行编码,方便后面的操作{case0x0d:{TEMP1=0;//TEMP1,编码用作,PWM参数,全局变量,LED1=LED2=LED3=1;//对应的指示灯状态break;}case0x0c:{TEMP1=1;LED1=0;LED2=LED3=1;break;}case0x18:{TEMP1=2;LED1=LED3=1;//2档LED2=0;break;}case0x5e:{TEMP1=3;//TEMP1用于控制PWM占空比LED3=0;LED1=LED2=1;break;}case0x40:{TEMP2=0;//紧急状态(暂停)。TEMP2用于控制电机,暂停,前进,左右转,break;}case0x46:{TEMP2=1;//前进LED0=LED5=0;//指示灯设置LED6=LED7=1;break;}case0x44:{TEMP2=2;//左前转LED0=0;LED5=1;LED6=LED7=1;break;}case0x43:{TEMP2=3;//右前转LED5=0;LED0=1;LED6=LED7=1;break;}case0x15:{TEMP2=4;//倒车状态LED6=LED7=0;//67为倒车指示灯LED0=LED5=1;break;}case0x07:{TEMP2=5;//左后转LED6=0;LED7=LED0=LED5=1;break;}case0x09:{TEMP2=6;//右后转LED7=0;LED6=LED0=LED5=1;break;}case0x45:{TEMP2=7;//左园转LED0=LED7=0;LED5=LED6=1;break;}case0x47:{TEMP2=8;//右园转LED5=LED6=0;LED0=LED7=1;break;}}//每次接受红外,蜂鸣器蜂鸣一次F=1;delay1(300);F=0;EA=1;//开总中断EX1=1;//开外1中断IT1=1;//下降沿触发}//*****************************************//**********电机驱动函数voidPWM_RUN(){uintm=0;//临时计数变量ucharn=0;//uinti=0;//m=TEMP1*100;//m有0,1,2,3状态,PWM每小时间片为3*100,所以m*100n=TEMP2;//TEMP1用于控制转速,TEMP2用于控制前后左右//对n(TEMP2)进行解码,设置不同的电机工作方式//注:暂定M*1=1,M*2=0正传,M*1=0,M*2=1倒转,M*1=M*2=0,停止if(n==0)//紧急状态,{M11=M12=M21=M22=0;LED4=~LED4;//设置紧急灯动作delay1(1000);}if(n==1)//m1和m2都前转,前进{M11=1;M12=0;M21=1;M22=0;}if(n==2)//m1停止,m2前转,实现左前转弯{M11=0;M12=0;M21=1;M22=0;}if(n==3)//m1前转,m2停止,实现右前转{M11=1;M12=0;M21=0;M22=0;}if(n==4)//m1m2倒转,实现倒车{M11=0;M12=1;M21=0;M22=1;}if(n==5)//m1停止,m2倒转,实现左后转{M11=0;M12=0;M21=0;M22=1;}if(n==6)//m1倒转,m2停止,实现右后转{M11=0;M12=1;M21=0;M22=0;}if(n==7)//m1倒传,m2前转,实现左方向,原地打转{M11=0;M12=1;M21=1;M22=0;}if(n==8)//m1前转,m2倒转,实现右方向,原地打转{M11=1;M12=0;M21=0;M22=1;}/*//PWM实现部分while(m--)_nop_();//电机动作while(i<300-m)//
电机歇菜{M11=M12=0;M21=M22=0;_nop_();i++;}while(1);*/}//**
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 18391.2-2026信息技术元数据注册系统(MDR)第2部分:分类
- 老年人睡眠障碍光生物节律精准调控专家共识要点总结2026
- 智慧体育试题及答案分享
- 骨科简答试题及完整答案
- 直击法治社区试题及最终答案
- 2026广东湛江市审计局招聘审计专员办事处初级审计员5人考试备考题库及答案详解
- IPD考试专项试题及答案详解
- 2026新疆农业职业技术大学招聘事业单位人员65人笔试模拟试题及答案详解
- 2026广东深圳市宝安区翻身实验学校(西校区)诚聘小学、初中和高中教师考试备考试题及答案详解
- 2026大理州国家保密局公开选调事业单位工作人员笔试备考题库及答案详解
- 2026-2030旋转蒸发仪行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2026年广州市南沙区黄阁镇人民政府编外工作人员招聘笔试参考题库及答案解析(完整版)
- 【中小学】【开学收心】主题班会:开学吧!八仙小队
- 2026年海南中考(语文)考试真题及参考答案
- 2026秋新北师大版小学数学五年级上册教学计划附进度表
- 水利水电工程单元工程施工质量检验表与验收表(SLT631.5-2025)
- 《管理学》(第二版)课件全套 高教版马工程 第0-16章 绪论 - 组织变革与创新
- GB/T 13908-2020固体矿产地质勘查规范总则
- FZ/T 07023-2021纺织产品水足迹核算、评价与报告通则
- 常见外科手术器械的介绍课件
- 一年级数学家长会课件PPT
评论
0/150
提交评论