项目16红外遥控器的设计.ppt
任务1,红外遥控技术在机器人及电器产品中已得到广泛应用,本项目的任务是利用单片机控制技术与红外遥控技术相结合制作一个具有红外遥控功能的电动车。用红外遥控器控制小车前进、停止、后退及左右转的运行状态。,跟我学1-TC9148红外发射芯片工作原理,跟我学2-TC9149红外接收驱动芯片工作原理,动手做1画出硬件电路图,具体参考教材227页,动手做2器件准备及电路制作,动手做3编写应用程序,#include#include/红外遥控相关头文件,后面附录void EXT_INT0_ISR(void)EXT_INT0 static unsigned char i=0;TR0=0;/关定时器EX0=0;/关中断IE0=0;/清标志位TF0=0;/清标志位if(Fashe=1)Fashe=0;Jieshou=1;i+;if(i=10)i=0;RE_Datai=TH0*256+TL0;,void EXT_INT1_ISR(void)EXT_INT1/转弯控制EX1=0;IE1=0;if(+State=2)State=0;delay_ms(100);EX1=1;void TIMER1_OVF_ISR(void)TIMER1_OVF/遥控自动转换void delay_ms(unsigned int n)/延时程序0(避免重复调用)unsigned int i,j;for(j=n;j0;j-)for(i=112;i0;i-);void Clear(void)unsigned char i;for(i=0;i10;i+)RE_Datai=5880;,/函数名:Car_Telecontrol/函数功能:小车遥控程序/形式参数:无/返回值:无void Car_Telecontrol(void)unsigned char Dir=0;P3|=0 x33;if(P30=0)Dir=1;if(P31=0)Dir=2;if(P34=0)Dir=3;if(P35=0)Dir=4;switch(Dir)case 1:Right_Motor_Go Left_Motor_Go break;/前进case 2:Right_Motor_Back Left_Motor_Go break;/左转case 3:Right_Motor_Go Left_Motor_Back break;/右转case 4:Right_Motor_Back Left_Motor_Back break;/后退default:Right_Motor_Stop Left_Motor_Stop break;/停止,/函数名:System_Init/函数功能:系统定时器、中断等初始化/形式参数:无/返回值:无void System_Init(void)Timer0_Init Timer1_Init Ext0_Init Ext1_InitClear();void main(void)System_Init();EA=1;/开总中断while(1)Car_Telecontrol();,动手做4调试并运行程序,将做好的硬件电路板和单片机开发系统连接好,进行以下操作(1)输入源程序(2)编译源程序(3)调试软硬件,排查错误(4)将调试好的程序下载至89C51芯片中,脱机运行,观察结果。,该项目涉及红外遥控技术、单片机软件解码技术及直流电机驱动控制技术的应用。通过查阅红外遥控技术应用、专用芯片及器件资料,编制解码程序的训练,巩固单片机中断技术的运用能力和提高将实用技术、器件与单片机应用技术进行集成转化的综合运用能力。为进一步完成单片机在无线传输技术中的综合应用项目制作奠定基础。,项目小结,