0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

初學(xué)單片機(jī)之51紅外遙控小車程序

單片機(jī) ? 來(lái)源:未知 ? 作者:易水寒 ? 2017-12-21 14:07 ? 次閱讀

學(xué)習(xí)51單片機(jī)遙控小車小車是很多單片機(jī)愛(ài)好者、電子制作愛(ài)好者必先項(xiàng)目,這里為大家介紹一款51單片機(jī)紅外遙控小車的制作。51單片機(jī)紅外遙控小車材料準(zhǔn)備,首先當(dāng)然是網(wǎng)購(gòu)啦,主要購(gòu)買如下配件:?jiǎn)纹瑱C(jī)最小系統(tǒng)板、3輪小車底盤,L298N兩個(gè)電機(jī)控制電路板、電池盒,還有一些銅柱、扎帶等,所需要的配件很容易在一家店中購(gòu)齊的。

51單片機(jī)紅外遙控小車,十分簡(jiǎn)單,產(chǎn)生我們先從紅外遙控部分開(kāi)始。網(wǎng)上打一個(gè)紅外的例程進(jìn)行改,就成了51單片機(jī)紅外遙控小車程序了。

51單片機(jī)紅外遙控小車用單片機(jī)最小板是是一塊6元錢的最小板(就是哪種直接把IO引出來(lái),加個(gè)晶振),電機(jī)控制板,與P連接。先在電腦上測(cè)試程序,測(cè)試好后,再把程序下載到單片機(jī)中,這里要說(shuō)明一下的是紅外的信號(hào)是間斷發(fā)出的,所以是按一下就執(zhí)行某個(gè)動(dòng)作,要停止還得按停止按鍵。

51單片機(jī)紅外遙控小車可以用一組電源同時(shí)給51單片機(jī)最小系統(tǒng)和電機(jī)控制板供電。

51單片機(jī)程序代碼

#include //包含單片機(jī)寄存器的頭文件

#include //包含_nop_()函數(shù)定義的頭文件

#define uchar unsigned char

#define uint unsigned int

#define motor P1

void delay(uchar x);

sbit IRIN=P3^2; //紅外數(shù)據(jù)線

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;

}

//確認(rèn)IR信號(hào)出現(xiàn)

while(!IRIN) //等IR變?yōu)楦唠娖?,跳過(guò)9ms的前導(dǎo)低電平信號(hào)。

{

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次,高四位變?yōu)榈退奈?/p>

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單片機(jī)紅外遙控小車十分簡(jiǎn)單,非常適合單片機(jī)初學(xué)者學(xué)習(xí)仿制。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6023

    文章

    44376

    瀏覽量

    628364
  • 紅外遙控
    +關(guān)注

    關(guān)注

    22

    文章

    347

    瀏覽量

    45398
  • 程序代碼
    +關(guān)注

    關(guān)注

    4

    文章

    42

    瀏覽量

    15399

原文標(biāo)題:51單片機(jī)紅外遙控小車程序代碼

文章出處:【微信號(hào):aidanpianji,微信公眾號(hào):?jiǎn)纹瑱C(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于51單片機(jī)熱釋紅外報(bào)警設(shè)計(jì)

    本資源內(nèi)容概要:? ? ? ?這是基于51單片機(jī)熱釋紅外報(bào)警設(shè)計(jì)包含了電路圖源文件(Altiumdesigner軟件打開(kāi))、C語(yǔ)言程序源代碼(keil軟件打開(kāi))、元件清單(excel表
    發(fā)表于 06-25 10:15 ?0次下載

    基于51單片機(jī)的路燈【固定時(shí)間,紅外,DS1302,LCD1602】(仿真)

    基于51單片機(jī)的路燈【固定時(shí)間,紅外,DS1302,LCD1602】(仿真)
    的頭像 發(fā)表于 04-10 00:44 ?364次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的路燈【固定時(shí)間,<b class='flag-5'>紅外</b>,DS1302,LCD1602】(仿真)

    基于單片機(jī)的語(yǔ)音小車設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的語(yǔ)音小車設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-12 09:46 ?3次下載

    基于51單片機(jī)紅外遙控器設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)紅外遙控器設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-12 09:22 ?9次下載

    基于51單片機(jī)紅外報(bào)警器的設(shè)計(jì)與制作

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)紅外報(bào)警器的設(shè)計(jì)與制作.rar》資料免費(fèi)下載
    發(fā)表于 01-12 09:18 ?23次下載

    基于51單片機(jī)紅外報(bào)警器的設(shè)計(jì)與制作

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)紅外報(bào)警器的設(shè)計(jì)與制作.rar》資料免費(fèi)下載
    發(fā)表于 01-03 11:32 ?11次下載

    基于51單片機(jī)紅外遙控器設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)紅外遙控器設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-03 11:23 ?3次下載

    基于單片機(jī)的語(yǔ)音小車設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的語(yǔ)音小車設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-03 11:03 ?2次下載

    基于CW32的遙控循跡小車

    本實(shí)驗(yàn)是使用CW32單片機(jī)制作一個(gè)入門的遙控循跡小車。遙控采用藍(lán)牙配合手機(jī)APP進(jìn)行遙控。循跡使用一個(gè)5路的循跡模塊。使用OLED模塊進(jìn)行顯
    的頭像 發(fā)表于 11-17 17:46 ?888次閱讀
    基于CW32的<b class='flag-5'>遙控</b>循跡<b class='flag-5'>小車</b>

    基于51單片機(jī)無(wú)線遙控流水燈電路圖及程序

    本資源內(nèi)容概要: 這是基于51單片機(jī)的無(wú)線遙控流水燈設(shè)計(jì)包含了電路圖源文件(Altiumdesigner軟件打開(kāi))、C語(yǔ)言程序源代碼(keil軟件打開(kāi)) 。 本資源適合人群:
    發(fā)表于 11-06 18:15 ?0次下載

    基于51單片機(jī)PWM波實(shí)現(xiàn)拖尾燈的程序

    電子發(fā)燒友網(wǎng)站提供《基于51單片機(jī)PWM波實(shí)現(xiàn)拖尾燈的程序.doc》資料免費(fèi)下載
    發(fā)表于 10-24 10:00 ?1次下載
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>PWM波實(shí)現(xiàn)拖尾燈的<b class='flag-5'>程序</b>

    基于單片機(jī)紅外風(fēng)扇遙控

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)紅外風(fēng)扇遙控.rar》資料免費(fèi)下載
    發(fā)表于 10-20 09:11 ?8次下載
    基于<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>紅外</b>風(fēng)扇<b class='flag-5'>遙控</b>

    采用單片機(jī)發(fā)送并接收紅外遙控信號(hào)的方法

    電子發(fā)燒友網(wǎng)站提供《采用單片機(jī)發(fā)送并接收紅外遙控信號(hào)的方法.pdf》資料免費(fèi)下載
    發(fā)表于 10-18 09:36 ?1次下載
    采用<b class='flag-5'>單片機(jī)</b>發(fā)送并接收<b class='flag-5'>紅外</b><b class='flag-5'>遙控</b>信號(hào)的方法

    AVR尋跡小車程序

    AVR尋跡小車程序
    發(fā)表于 10-01 22:10

    基于51單片機(jī)紅外遙控發(fā)射接收proteus仿真設(shè)計(jì)

    設(shè)計(jì)一個(gè)51單片機(jī)紅外遙控發(fā)射接收proteus仿真設(shè)計(jì)
    的頭像 發(fā)表于 09-24 14:04 ?2869次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>紅外</b><b class='flag-5'>遙控</b>發(fā)射接收proteus仿真設(shè)計(jì)