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

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

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

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

單片機 ? 來源:未知 ? 作者:易水寒 ? 2017-12-21 14:07 ? 次閱讀

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

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

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

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

51單片機程序代碼

#include //包含單片機寄存器的頭文件

#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信號出現(xiàn)

while(!IRIN) //等IR變?yōu)楦唠娖剑^9ms的前導(dǎ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單片機紅外遙控小車十分簡單,非常適合單片機初學(xué)者學(xué)習(xí)仿制。


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

    關(guān)注

    6040

    文章

    44594

    瀏覽量

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

    關(guān)注

    22

    文章

    347

    瀏覽量

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

    關(guān)注

    4

    文章

    42

    瀏覽量

    15453

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

文章出處:【微信號:aidanpianji,微信公眾號:單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    51單片機pwm和spwm

    51單片機pwm
    發(fā)表于 01-08 15:54 ?1次下載

    基于51單片機的手動數(shù)字時鐘

    具體實現(xiàn)功能由51單片機+8位共陰數(shù)碼管+獨立按鍵構(gòu)成。具體功能:(1)利用數(shù)碼管顯示時分秒,顯示格式為“時-分-秒”;(2)利用6個按鍵控制時、分、秒,設(shè)定好后自動開始時鐘顯示;(3)設(shè)置秒復(fù)位
    的頭像 發(fā)表于 10-22 14:12 ?277次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的手動數(shù)字時鐘

    基于51單片機的停車場管理系統(tǒng)

    具體實現(xiàn)功能由51單片機+按鍵模塊+LCD1602顯示+報警模塊+74HC595模塊+LED指示燈等構(gòu)成。具體功能:(1)根據(jù)紅外傳感器原理,用兩個按鍵代替駛?cè)霗z測紅外傳感器和駛出檢測
    的頭像 發(fā)表于 10-22 14:12 ?313次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的停車場管理系統(tǒng)

    基于51單片機遙控開關(guān)仿真(雙機通信)

    具體實現(xiàn)功能由51單片機+獨立按鍵+繼電器+LED燈等構(gòu)成。實現(xiàn)功能:(1)本仿真設(shè)計的是一款遙控開關(guān),采用51單片機進(jìn)行
    的頭像 發(fā)表于 10-22 14:12 ?340次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>遙控</b>開關(guān)仿真(雙機通信)

    基于51單片機遙控音樂系統(tǒng)仿真

    ”,表示播放,按下接收器的停止按鍵后停止播放音樂;(4)按下復(fù)位按鍵后回到初始狀態(tài)。仿真演示視頻:基于51單片機遙控音樂系統(tǒng)仿真-仿真視頻設(shè)計介紹51
    的頭像 發(fā)表于 10-22 14:12 ?192次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>遙控</b>音樂系統(tǒng)仿真

    基于51單片機紅外防盜報警系統(tǒng)模擬

    ,紅外檢測指示燈亮,發(fā)出聲光報警;(4)按下取消報警/布防按鍵,退出布防模式,取消報警。仿真演示視頻:設(shè)計介紹51單片機簡介51單片是一種低
    的頭像 發(fā)表于 10-22 14:12 ?245次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的<b class='flag-5'>紅外</b>防盜報警系統(tǒng)模擬

    基于51單片機的簡易無人公交控制器

    車輛開始啟動;(4)當(dāng)車上人數(shù)大于6人時,蜂鳴器響,表示超載。仿真演示視頻:設(shè)計介紹51單片機簡介51單片是一種低功耗、高性能CMOS-8位微控制器,擁有靈巧的8位CPU和可編程Fla
    的頭像 發(fā)表于 10-22 14:10 ?150次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的簡易無人公交控制器

    把esp8266加入到c51單片機單通道程序怎么寫

    要將ESP8266模塊加入到C51單片機的單通道程序中,您需要了解如何通過串行通信(UART)與ESP8266進(jìn)行通信。以下是如何實現(xiàn)這一點的步驟和示例代碼。 步驟 1:硬件連接 首先,您需要
    的頭像 發(fā)表于 10-18 11:32 ?695次閱讀

    51單片機驅(qū)動

    電子發(fā)燒友網(wǎng)站提供《51單片機驅(qū)動.exe》資料免費下載
    發(fā)表于 09-20 11:46 ?5次下載

    單片機燒錄程序的基本步驟是什么

    單片機燒錄程序的基礎(chǔ),它包含了單片機芯片、電源、接口等基本元件。在選擇單片機開發(fā)板時,需要考慮以下幾個方面: (1)單片機型號:根據(jù)項目需
    的頭像 發(fā)表于 09-02 09:47 ?1257次閱讀

    51單片機燒錄軟件怎么用

    準(zhǔn)備工作 確保您已經(jīng)安裝了51單片機燒錄軟件,如Keil、IAR等。 準(zhǔn)備好51單片機開發(fā)板和燒錄器,如STC-ISP等。 確保您的計算機已經(jīng)安裝了相應(yīng)的驅(qū)動
    的頭像 發(fā)表于 08-22 09:26 ?1391次閱讀

    基于51單片機PT2262四路無線遙控搶答器設(shè)計

    本資源內(nèi)容概要:? ? ? ?這是基于51單片機PT2262四路無線遙控搶答器設(shè)計包含了電路圖源文件(Altiumdesigner軟件打開)、C語言程序源代碼(keil軟件打開)。本資
    發(fā)表于 06-25 10:33 ?0次下載

    基于51單片機熱釋紅外報警設(shè)計

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

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

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

    基于51單片機的智能小車驅(qū)動MAX7219控制點陣屏顯示小車運動狀態(tài)?

    智能小車點陣屏顯示 個人是小白,想求各位大佬幫忙!??!用51單片機控制小車運動,并驅(qū)動MAX7219控制點陣屏顯示小車運動狀態(tài),就是當(dāng)
    發(fā)表于 02-05 00:50