0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

初学单片机之51红外遥控小车程序

单片机 来源:未知 作者:易水寒 2017-12-21 14:07 次阅读

学习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)

{

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单片机红外遥控小车十分简单,非常适合单片机初学者学习仿制。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6014

    文章

    44208

    浏览量

    625458
  • 红外遥控
    +关注

    关注

    22

    文章

    346

    浏览量

    45218
  • 程序代码
    +关注

    关注

    4

    文章

    42

    浏览量

    15373

原文标题:51单片机红外遥控小车程序代码

文章出处:【微信号:aidanpianji,微信公众号:单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于51单片机热释红外报警设计

    本资源内容概要:       这是基于51单片机热释红外报警设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开)、元件清单(excel表
    发表于 06-25 10:15 0次下载

    基于51单片机的路灯【固定时间,红外,DS1302,LCD1602】(仿真)

    基于51单片机的路灯【固定时间,红外,DS1302,LCD1602】(仿真)
    的头像 发表于 04-10 00:44 296次阅读
    基于<b class='flag-5'>51</b><b class='flag-5'>单片机</b>的路灯【固定时间,<b class='flag-5'>红外</b>,DS1302,LCD1602】(仿真)

    基于单片机的语音小车设计

    电子发烧友网站提供《基于单片机的语音小车设计.rar》资料免费下载
    发表于 01-12 09:46 2次下载

    基于51单片机红外遥控器设计

    电子发烧友网站提供《基于51单片机红外遥控器设计.rar》资料免费下载
    发表于 01-12 09:22 6次下载

    基于51单片机红外报警器的设计与制作

    电子发烧友网站提供《基于51单片机红外报警器的设计与制作.rar》资料免费下载
    发表于 01-12 09:18 23次下载

    基于51单片机红外报警器的设计与制作

    电子发烧友网站提供《基于51单片机红外报警器的设计与制作.rar》资料免费下载
    发表于 01-03 11:32 11次下载

    基于51单片机红外遥控器设计

    电子发烧友网站提供《基于51单片机红外遥控器设计.rar》资料免费下载
    发表于 01-03 11:23 1次下载

    基于单片机红外风扇遥控

    电子发烧友网站提供《基于单片机红外风扇遥控.rar》资料免费下载
    发表于 10-20 09:11 8次下载
    基于<b class='flag-5'>单片机</b>的<b class='flag-5'>红外</b>风扇<b class='flag-5'>遥控</b>

    AVR寻迹小车程序

    AVR寻迹小车程序
    发表于 10-01 22:10

    基于51单片机红外遥控发射接收proteus仿真设计

    设计一个51单片机红外遥控发射接收proteus仿真设计
    的头像 发表于 09-24 14:04 2455次阅读
    基于<b class='flag-5'>51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>红外</b><b class='flag-5'>遥控</b>发射接收proteus仿真设计

    基于51单片机红外检测光照检测智能台灯仿真设计

    基于51单片机红外检测光照检测智能台灯仿真设计
    的头像 发表于 09-20 09:26 1147次阅读
    基于<b class='flag-5'>51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>红外</b>检测光照检测智能台灯仿真设计

    51单片机烧写程序的方法

    STC89C51是应用广泛的51单片机,很多人都是通过该单片机入门学习的,单片机的学习需要勤动手。单片机
    的头像 发表于 09-11 10:10 4561次阅读
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>烧写<b class='flag-5'>程序</b>的方法

    基于51单片机遥控台灯系统设计

    本次遥控台灯系统使用的是STC89C52单片机作为主控芯片,通过红外检测模块检测红外信号,通过声音识别模块识别语音,采集到的数据会上传到单片机
    的头像 发表于 09-01 09:06 635次阅读
    基于<b class='flag-5'>51</b><b class='flag-5'>单片机</b>的<b class='flag-5'>遥控</b>台灯系统设计

    基于51单片机灭火小车电路图及程序

    本资源内容概要: 这是基于51单片机的灭火小车设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(keil软件打开) 。 本资源适合人群:
    发表于 08-29 15:54 10次下载

    基于51单片机红外遥控继电器电路图及程序

    本资源内容概要: 这是基于51单片机红外遥控继电器灯设计包含了电路图源文件(Altiumdesigner软件打开)、C语言程序源代码(ke
    发表于 08-21 10:02 2次下载