51单片机红外遥控小车程序代码

学习51单片机遥控小车小车是很多单片机爱好者、电子制作爱好者必先项目,这里为大家介绍一款51单片机红外遥控小车的制作。51单片机红外遥控小车材料准备,首先当然是网购啦,主要购买如下配件:单片机最小系统板、3轮小车底盘,L298N两个电机控制电路板、电池盒,还有一些铜柱、扎带等,所需要的配件很容易在一家店中购齐的。


51单片机红外遥控小车,十分简单,产生我们先从红外遥控部分开始。网上打一个红外的例程进行改,就成了51单片机红外遥控小车程序了。

51单片机红外遥控小车用单片机最小板是是一块6元钱的最小板(就是哪种直接把IO引出来,加个晶振),电机控制板,与P连接。先在电脑上测试程序,测试好后,再把程序下载到单片机中,这里要说明一下的是红外的信号是间断发出的,所以是按一下就执行某个动作,要停止还得按停止按键。


51单片机红外遥控小车可以用一组电源同时给51单片机最小系统和电机控制板供电。


51单片机程序代码

#include //包含单片机寄存器的头文件

#include //包含_nop_()函数定义的头文件

#define uchar unsigned char

#define uint unsigned int

#define motor P1

void delay(uchar x);

sbit IRIN=P3^2; //红外数据线

uchar IRCOM[7];

main()

{

IRIN=1; //I/O口初始化

EA=1;

EX0=1;//中断0

motor=0xff;

while(1){

}

}

void delay(uchar x) //x*0.14MS

{

uchar i;

while(x--)

{

for(i=0;i

}

}

void IR_IN() interrupt 0 using 0

{

uchar j,k,N=0;

EX0=0;

delay(15);

if(IRIN==1)

{

EX0=1;

return;

}

//确认IR信号出现

while(!IRIN) //等IR变为高电平,跳过9ms的前导低电平信号。

{

delay(1);

}

for(j=0;j

{

for (k=0;k

{

while (IRIN)

{

delay(1);

}

while (!IRIN)

{

本零碎掌握全体由单片机零碎为中心,联合按钮输出和LED数字预示,由A/D采样电压经过闭环反馈与输出电压相比拟,继续相应调整,初由D/A转换输入的模仿电压,作为恒流源的基准输出电压。通路中采纳的集成演算放大器LM358,LM358外部囊括有两个金鸡独立的、高增值的、外部效率弥补的演算放大器,存在高增值、失调电压莫须有小的长处。

delay(1);

}

while(IRIN)

{

delay(1);

N++;

if(N>=30)

{

EX0=1;

return;

}

}

IRCOM[j]=IRCOM[j] >> 1;

if(N>=8)

{

IRCOM[j]=IRCOM[j] | 0x80;

}

N=0;

}

}

if (IRCOM[2]!=~IRCOM[3])

{

EX0=1;

return;

}

IRCOM[5]=IRCOM[2] & 0x0F; //取键码的低四位

IRCOM[6]=IRCOM[2] >> 4; //右移4次,高四位变为低四位

if(IRCOM[5]>9)

{

IRCOM[5]=IRCOM[5]+0x37;

}

else

IRCOM[5]=IRCOM[5]+0x30;

if(IRCOM[6]>9)

{

IRCOM[6]=IRCOM[6]+0x37;

}

else

IRCOM[6]=IRCOM[6]+0x30;

if(IRCOM[2]==0x40){//‘+’键

motor=0xf5;

}else if(IRCOM[2]==0x19){ //'-'

motor=0xfa;

}else if(IRCOM[2]==0x7){ //'

motor=0xf7;

}else if(IRCOM[2]==0x9){ //'>>'

motor=0xfd;

}else if(IRCOM[2]==0x16){ //'0'

motor=0xfe;

}else if(IRCOM[2]==0x0d){ //'c'

motor=0xfb;

}else if(IRCOM[2]==0x45){ //'off'

motor=0xff;

}

EX0=1; //退出外部中断

}

总之,这款51单片机红外遥控小车十分简单,非常适合单片机初学者学习仿制。

来自:http://blog.sina.com.cn/s/blog_68541adc0102w1od.html 点击阅读原文进入

7.选择合适的单片机,实现真正意义上单片化,可以省去了大量的硬件开发调试工作,提高了工作效率,系统的可靠性、抗干扰能力得到了显著的改善,同时使系统成本降低,更加适合微型化和便携化,对降低系统功耗有着决定性的用途。

生成海报
点赞 0

thePro

我还没有学会写个人说明!

相关推荐

51小车(一)

1.准备: 借鉴: 详细介绍如何从零开始制作51单片机控制的智能小车(一)———让小车动起来_慕羽★的博客-CSDN博客_新手怎么制作单片机智能小车 2.已有模块 (1)  已有电机驱动 (2)

基于8051单片机实现电子时钟+数字秒表设计

概述 电子时钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显 示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许

OV7670摄像头模块资料

OV7670摄像头模块资料 一、实物图和原理图 二、模块简介 OV7670 是 OV( OmniVision)公司生产的 CMOS VGA 图像传感器。该传感器体积小、工作电压低,提供单片 VGA