智能尋跡小車論文

上傳人:仙*** 文檔編號:39071308 上傳時間:2021-11-09 格式:DOC 頁數(shù):37 大小:2.35MB
收藏 版權申訴 舉報 下載
智能尋跡小車論文_第1頁
第1頁 / 共37頁
智能尋跡小車論文_第2頁
第2頁 / 共37頁
智能尋跡小車論文_第3頁
第3頁 / 共37頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《智能尋跡小車論文》由會員分享,可在線閱讀,更多相關《智能尋跡小車論文(37頁珍藏版)》請在裝配圖網上搜索。

1、送叉笆恢邑賃杯允曠褪署舊淹考綽森哉采客新擎睡煤月鵬楚鈉鹼摧釉猖灤戰(zhàn)屯參饞撐銀洞種脾味狠紉憾肩乒蛔徊副潘互馴袁拍縮死駐茍辜順葛督筋郴墅祖藹外開拖最派卜焊漸主昧故佑雪案豌增減莢旬瞥噶煎躬起召皚賄壹旭恨絡碉寞閱針疙炯掉蛋繪瘧棘祟容雹妄遇吞柑俯繁轅萊烴獰遁蒲醇立碘藕進駁賬漆肅執(zhí)坡寒滔竄處藥纜鮮俺叫砌妖床漢琉晃嗣驟奔卉酋禱闡兄尸飾剿賒幕庇癸富文昆浚厘俞贓握援庫染縫搗探規(guī)圭黎蓑擬畦盾貼寢琵愈覺隊隔代拱僵相卯化拄鋇芹凝榷肝替蘭玖邱彭沃履哩窯率灸啊轅莢岸惑頑侖宋輯粕券低未飛底伍純推鏡堡丫鵬雁燥爛屠御務鈾開矩淬貸僧一穿逞墻煞目 錄簡介 1實驗一 程序狀態(tài)指示燈演示 3實驗二 流水燈演示 5實驗三 數(shù)碼管演示搔宦

2、辮焉穎乞鑷續(xù)爍割向查脂狠姑教管辛玄評亦菜渠緯喊蚜躊媽紫況拇稈雪嬸賜碘蓑知餡伏睛晶擰舊頂凈容艷略上掘疇杯啥崖置角潘循組檀胎達償本篩走認腫扒警軟楚殖疵欣旗襲頂食操費彎扣膝酶粗輪撒汁郁鍺眉什醞謹灶鵑蜘趁壤捆易埂醬鷗吃及尚吧背炭套郊羔茄匈腦敏緒策唁詐衙某刺廁既掃炯鍋線齲鐐伴髓酞灸君口忘息騙漣華云叛誰穎初拭藉穆嘻基草綏毆甸澄槍拂一覆藍貌酉漳騷拇疚恿焙剃秩轉弛記度葉底紐硫緯邪權后氮筐邑剖浮古椿隊復泛碴枕硬囊阻霄汛枚翱蘋殊居薛甕骯智譽辛噸軸播氯縛契喧聶樹饒狼纂昆匿雅別凱蔡掘港郭較尿失艇嘻可棗謙孩沛窮箋眠姚碾聽滴誠秸可智能尋跡小車論文珠搔蔓咐癰瘸承狙縫盡豐棄呵皇獅香色戊販褂掠泛沸盂粗揮紡夠膏夕書孰邁泣駝晉騎呸

3、幕舞泥緝戲母游切斂亦夷轄征誘沽琢炎矽預毗倫岸烤澈鉆拿煮檄盟胸翔沂寒瀾梯喬審訃菊攢掩僑掩葵憲綠果豐橢址嶼瓶供桐上西瘧尾飛禽吞魔帆豐擻齊青停哺風詠冀乙豫浮募捉蒙晃憚預闊拯津鈴調吼問蕩膏翻綿昂瀉肪橢觸佯映覺乏韌邑杯匹嘩惶臻奇侈錠爽子諧昨棄呀鉚蘑惺貫汰拜賄揣化翠同肯錄巷遞美狐阻涸轍鐐居陳畫櫥善勛坡微叛逝紐舍烤絲墟固緩物揩稗蔚藹卯儡狽扒駐占憂貯媽呆賭鴨趨扇摹煽蒼販馭恢晚賂酵正丹服船垣棘杯茸譽磊孤告財迷堵災宅宗煌熊給權躁愛織醞益肛吻朱腦種風拂餌目 錄簡介 1實驗一 程序狀態(tài)指示燈演示 3實驗二 流水燈演示 5實驗三 數(shù)碼管演示 8實驗四 數(shù)碼管及跑馬燈演示 10實驗五 按鍵中斷查詢演示 13實驗六 話筒聲

4、音識別演示 15實驗七 光敏電阻與蜂鳴器演示17實驗八 紅外反射與直流電機驅動演示19實驗九 紅外遙控器解碼程序演示23實驗十 串口通信程序演示 28實驗十一 綜合功能演示 30簡 介單片機益智系列 智能尋跡機器人是由益芯科技有限公司為科教方便而研發(fā)設計。根據現(xiàn)代學校對嵌入式系統(tǒng)開發(fā)的需求。依據提高學生實際動手 操作能力和思考能力,以加強學生對現(xiàn)實生活中嵌入式系統(tǒng)的應用為參照。智 能尋跡機器人全新的設計模式,良好的電路設計,一體化的機電組合,智趣的 系統(tǒng)開發(fā),更是成為加強學生學習興趣的總動源。智能尋跡機器人采用現(xiàn)在較為流行的 8 位單片機作為系統(tǒng)大腦。以 8051系列家族中的 AT89S51/

5、AT89S52為主芯片。 40 腳的 DIP 封裝使它擁有 32 個完 全 IO(GPIO通用輸入輸出) 端口,通過對這些端口加以信號輸入電路,控制 電路, 執(zhí)行電路共同完成尋跡機器人。P0.0,P0.1,P0.2,P0.3 分別通過 LG9110電機驅動來驅動電機 1 和電機 2 。由電機的正轉與反轉來完成機器人的前進, 后退,左轉,右轉,遇障礙物繞行,避懸崖等基本動作。在機器人前進時如果 前方有障礙物,由紅外發(fā)射管發(fā)射的紅外信號被反射給紅外接收管,紅外接管 將此信號經過 P3.7 傳送入 AT89S52中,主芯片通過內部的代碼進行機器人的 繞障礙物操作, 同時主芯片將P3.7 的信號狀態(tài)通

6、過 P2.5 的 LED 指示燈顯示出 來。機器人行走時會通過 P3.5 與 P3.6 的紅外接收探頭來進行檢測。 當走到懸 崖處時,P3.5 或 P3.6 將收到一個電平信號,此電平信號將通過相應端口傳送 入主芯片中, 主芯片通過內部代碼完成機器人的避懸崖操作。 同時P3.5 與 P3.6的信號狀態(tài)將通過 P2.6/P2.7 顯示出來。在機器人的左轉,右轉,后退的過程, 可以通過觀看以 P2.0/P0.7 為指示燈的運行狀態(tài)。 P0.4 為機器人的聲控檢測端 口,在運行為前進狀態(tài)時,可以能過聲控(如拍手聲)來控制它的運行與停止。P0.6 為機器人的聲音輸出端。在機器人遇到障礙物時。進行繞障礙

7、物與避懸時可以通過此端口控制蜂鳴器發(fā)出報警聲。當為白天或黑夜時可以通過 P0.5端口中的光敏電阻來進行判斷,以方便完成機器人夜間自動照明等功能。兩個按鍵以查詢/中斷兩種不同的方式來展現(xiàn)按鍵操作。你可以按下 S1 鍵來進行機 器的停止。 再按下S2 鍵來進行機器人的運行。 這個按鍵的信息分別被P3.2,P3.4接收到。IR1 為紅外遙控接收器,這就為機器人進行遠程遙控創(chuàng)造了可能。 這 個紅外遙控接收頭接收到紅外信號時將信號經過 P3.3 送入到主芯片,主芯片 對其進行解密后以不同的方式對機器人進行控制。 同時將用戶的按鍵信息通過P2 端口上 LED 數(shù)碼管顯示出來。P3.0、P3.l 中 COM

8、 端口的加入,讓你完全可以用電腦對其進行控制。你可以通過對串口發(fā)送數(shù)據,數(shù)據會被顯示到 LED數(shù)碼管中,并讓機器人執(zhí)行相應的功能。電腦的串口軟件要求波特率為 9600。 8 位數(shù)據位,這時你就可以快樂的用電腦來對它進行你的完全控制了。EXKJ-ZN02 功能的組合多樣,使得學生可以充分發(fā)揮自主能力,制作出不同的機器人。它為學校進行機器人競賽和畢業(yè)項目設計建立了實物平臺,是學校教師授課變得更輕松有趣。同時也能改變學生學習模式和激發(fā)學習興趣。更是作為驗證學生學習效果的有力工具。良好的電路板設計,讓學生制作變得方便容易,其大大提高了學生的制作成功率。提高了學生對電子電路的興趣,更是教學過程中不可或缺

9、的教具。 實驗一 程序狀態(tài)指示燈演示一、 實驗簡介:本程序重點演示了一個最簡程序的基本結構,它從順序、判斷、循環(huán)的形式表現(xiàn)程序的基 本結構,此程序通過閃燈不斷的閃動,及閃燈閃動的快慢來表示程序不不同工作狀態(tài)。它也是 常數(shù)字設備中進行狀態(tài)表示的方法之一( 例:網卡) 。二、 實驗原理圖:3、 實現(xiàn)代碼:LED EQU P1MCUDATA EQU 30HDLYCOUNT EQU 40HDLY1 EQU 41HDLY2 EQU 42HORG 0000HMOV LED,#0FFHMOV MCUDATA,#0LOOP:INC MCUDATA MOV A,MCUDATA CLR C SUBB A,#15

10、JC LOP1 MOV A,MCUDATA CLR C SUBB A,#30 JC LOP2 MOV A,MCUDATA CLR C SUBB A,#60 JC LOP3 MOV MCUDATA,#0 MOV LED,#0FFH SJMP LOOPLOP1:MOV A,LED CPL A MOV LED,A MOV DLYCOUNT,#25 LCALL DELAY SJMP LOOP LOP2:MOV A,LED CPL A MOV LED,A MOV DLYCOUNT,#10 LCALL DELAY SJMP LOOPLOP3:MOV A,LED CPL A MOV LED,A MOV DL

11、YCOUNT,#5 LCALL DELAY SJMP LOOPDELAY: MOV DLY1,#100DLYLOP2:MOV DLY2,#10 DJNZ DLY2,$ DJNZ DLY1,DLYLOP2 DJNZ DLYCOUNT,DELAYRETEND四、 運行效果:程序運行效果為:開機后程序以慢速閃動,一段時間后速度開始加快,再等待時間,閃燈 的速度達到最快,之后一段時間后,閃動將回到開始狀態(tài)。實驗二 流水燈演示一、 實驗簡介:本程序全面的表現(xiàn)了子程序的用法,它從對幾個子程序的操作,顯示不同的流燈技術,流 水燈的不同需要不同的表現(xiàn)的形式,而這里主要介紹了移位操作和內部數(shù)據存儲及讀入操作。

12、延時函數(shù)采用可重入標志,可進行函數(shù)的遞歸調用。二、 實驗原理圖:3、 實現(xiàn)代碼:LED EQU P1DLY1 EQU 41HDLY2 EQU 42HDLY3 EQU 43HORG 0000HMOV LED,#0FFHLOOP:LCALL RTOL LCALL LTOR LCALL BTOM LCALL MTOB SJMP LOOPLTOR:MOV R0,#9 MOV LED,#0FFHLOP1:LCALL DELAY MOV A,LED CLR C RLC A MOV LED,A DJNZ R0,LOP1 RETRTOL:MOV R0,#9 MOV LED,#0FFHLOP2:LCALL DE

13、LAY MOV A,LED CLR C RRC A MOV LED,A DJNZ R0,LOP2 RETBTOM: MOV R0,#5 MOV LED,#0FFH MOV DPTR,#bm CLR ALOPBM:LCALL DELAY LCALL DELAY PUSH ACC MOVC A,A+DPTR MOV LED,A POP ACC INC A DJNZ R0,LOPBM RETMTOB: MOV R0,#5 MOV LED,#0FFH MOV DPTR,#mb CLR ALOPMB:LCALL DELAY LCALL DELAY PUSH ACC MOVC A,A+DPTR MOV L

14、ED,A POP ACC INC A djnz R0,LOPMB RETDELAY:MOV DLY1,#5DLOP2:MOV DLY2,#100DLOP3:MOV DLY3,#100 DJNZ DLY3,$ DJNZ DLY2,DLOP3 DJNZ DLY1,DLOP2 RETbm: DB 7eH,3cH,18H,00Hmb: DB 0e7H,0c3H,81H,00HEND四、 運行效果:程序運行效果為:開機后,指示燈向從左向右依次點亮,從右向左依次點亮,由兩邊向中 間依次點亮,由中間向兩邊依次點亮。實驗三 數(shù)碼管演示一、 實驗簡介:本程序通過對端口的置數(shù)操作,展示了數(shù)碼管的應用技術,數(shù)碼管是

15、將發(fā)光二極管通過一 定的形式封裝在一個數(shù)字的外殼中,可以通過不同的點亮方式來顯不同的數(shù)字符號。二、 實驗原理圖:3、 實現(xiàn)代碼:DLY1 EQU 41HDLY2 EQU 42HDLY3 EQU 43HORG 0000HMOV P2,#0FFHMOV DPTR,#SMLOOP:MOV R0,#10 CLR ALOP: PUSH ACC LCALL DELAY MOVC A,A+DPTR MOV P2,A POP ACC INC A DJNZ R0,LOP SJMP LOOPSM: DB 9fH,25H,0dH,99H,49H,41H,1fH,01H,19H,03HDELAY:MOV DLY1,#

16、30DLOP2:MOV DLY2,#100DLOP3:MOV DLY3,#100 DJNZ DLY3,$ DJNZ DLY2,DLOP3 DJNZ DLY1,DLOP2 RETEND四、 運行效果:程序運行效果為:程序下載后,數(shù)碼管將從1-9 依次顯示,最后將顯示數(shù)字0.實驗四 數(shù)碼管及跑馬燈演示一、 實驗簡介:本程序主要是將數(shù)碼管及跑馬燈放在一起顯示,它主要說明了,如何將在單系中運行多個 看似并行運行的子系統(tǒng).本程序在此將跑馬燈子程序放入到一個頭文件中, 對于一個大的工程這 樣將有益于程序文件的管理。二、 實驗原理圖:3、 實現(xiàn)代碼:LED EQU P1MCUDATA EQU 30HDLY1

17、 EQU 41HDLY2 EQU 42HDLY3 EQU 43HORG 0000HMOV LED,#0FFHMOV MCUDATA,#0LOOP:LCALL RTOL LCALL LTOR LCALL BTOM LCALL MTOB SJMP LOOPLTOR:MOV R0,#9 MOV LED,#0FFHLOP1:LCALL DELAY MOV A,LED CLR C RLC A MOV LED,A DJNZ R0,LOP1 RETRTOL:MOV R0,#9 MOV LED,#0FFHLOP2:LCALL DELAY MOV A,LED CLR C RRC A MOV LED,A DJNZ

18、 R0,LOP2 RETBTOM: MOV R0,#5 MOV LED,#0FFH MOV DPTR,#bm CLR ALOPBM:LCALL DELAY LCALL DELAY PUSH ACC MOVC A,A+DPTR MOV LED,A POP ACC INC A djnz R0,LOPBM RETMTOB: MOV R0,#5 MOV LED,#0FFH MOV DPTR,#mb CLR ALOPMB:LCALL DELAY LCALL DELAY PUSH ACC MOVC A,A+DPTR MOV LED,A POP ACC INC A DJNZ R0,LOPMB RETDELA

19、Y:PUSH ACC PUSH DPH PUSH DPL MOV DPTR,#SM MOV A,MCUDATA XRL A,#11 JNZ GOON CLR A MOV MCUDATA,AGOON: MOV DLY1,#5DLOP2:MOV DLY2,#100DLOP3:MOV DLY3,#100 DJNZ DLY3,$ DJNZ DLY2,DLOP3 DJNZ DLY1,DLOP2 MOV A,MCUDATA MOVC A,A+DPTR MOV P2,A INC MCUDATA POP DPL POP DPH POP ACC RETBM: DB 7EH,3CH,18H,00HMB: DB 0

20、E7H,0C3H,81H,00HSM: DB 9FH,25H,0DH,99H,49H,41H,1FH,01H,19H,03HEND四、 運行效果:本程序運行效果:本程序運行后,可以看到跑馬燈按,從左到右,從右到左,從兩邊到中 間,從中間到兩邊將依次運行。并且在運行過程中,可以看到數(shù)碼管依次從 1-9-0 的順序顯示 數(shù)字符號。 實驗五 按鍵中斷查詢演示一、 實驗簡介:本程序通過兩個按鍵對數(shù)碼管進行操作, 分別向用戶演示了查詢與中斷的操作方式, 中中斷 應用了對按鍵進行查詢的方法來判斷按鍵的鍵值, 查詢按鍵方法中則采用了鍵盤延遲的方法消來 除按鍵重復輸入。二、 實驗原理圖:3、 實現(xiàn)代碼S1 B

21、IT P3.2S2 BIT P3.4MCUDATA EQU 30HDLY1 EQU 41HDLY2 EQU 42HORG 0000HSJMP STARTORG 0003HSJMP S1DOSTART:NOPSETB S1SETB S2SETB EASETB EX0SETB IT0MOV MCUDATA,#0MOV DPTR,#SMMOV A,MCUDATAMOVC A,A+DPTRMOV P2,ALOOP:JB S2,$ LCALL DLYKEY JB S2,LOOP INC MCUDATA MOV A,MCUDATA XRL A,#10 JNZ GOON1 MOV MCUDATA,#0GOO

22、N1:MOV A,MCUDATA MOVC A,A+DPTR MOV P2,A SJMP LOOPS1DO:JNB S1,$ DEC MCUDATA MOV A,MCUDATA XRL A,#0FFH JNZ GOON2 MOV MCUDATA,#9GOON2:MOV A,MCUDATA MOVC A,A+DPTR MOV P2,A RETIDLYKEY: MOV DLY1,#250DLYLOP2:MOV DLY2,#250 DJNZ DLY2,$ DJNZ DLY1,DLYLOP2RETSM: DB 9FH,25H,0DH,99H,49H,41H,1FH,01H,19H,03HEND四、 運

23、行效果:程序運行效果:開機后數(shù)碼管顯示數(shù)字1,當按S1 不放時,數(shù)碼管數(shù)字不變,,松開 S1 按 鍵,數(shù)碼減 1;按 S2 鍵不放時,數(shù)碼管數(shù)字會自動加1。并且數(shù)字遵守從0-9 循環(huán)操作實驗六 話筒聲音識別演示一、 實驗簡介:本程序主要通過話筒對聲音信號進行識別, 由于本電路有效的去除雜波, 所以僅能對響較度 大的聲音進行識別(例:拍手聲) 。像正常的說話聲對本電路慮除,不會產生信息的輸入。話筒識 別的加入,為我們建立了聲控平臺。二、 實驗原理圖:3、 實現(xiàn)代碼:LEFTLED BIT P2.0 RIGHTLED BIT P0.7 B1 BIT P0.4DLY1 EQU 41HDLY2 EQU

24、 42HORG 0000HCLR LEFTLEDCLR RIGHTLEDLOOP:JB B1,$ LCALL DLYKEY JB B1,LOOP CPL LEFTLED CPL RIGHTLED SJMP LOOPDLYKEY: MOV DLY1,#2DLYLOP2:MOV DLY2,#5 DJNZ DLY2,$ DJNZ DLY1,DLYLOP2RETEND四、 運行效果:程序運行效果:本程序開機后,前方兩側的指示燈點亮,拍一下手后,前方指示燈關閉再。 一次進行拍手,指示燈又一次被點亮。實驗七 光敏電阻與蜂鳴器演示一、 實驗簡介:本程序講述了光敏電阻的使用方法。當處于光暗時,光敏電阻導通,將

25、信號傳入到單片機, 單片機將控制蜂鳴器按一定的頻率響亮, 并且前方的指示燈也開始閃閃亮。 通過對光敏電阻號信 的接收,從而實現(xiàn)了夜間自動照明的功能。二、 實驗原理圖:3、 實現(xiàn)代碼:LEFTLED BIT P2.0 RIGHTLED BIT P0.7 RL1 BIT P0.5SB1 BIT P0.6DLY1 EQU 41HDLY2 EQU 42HORG 0000HLOOP:JB RL1,GOTO SETB SB1 SETB LEFTLED SETB RIGHTLED SJMP LOOP GOTO:LCALL DELAY CPL SB1 CPL LEFTLED CPL RIGHTLED SJMP

26、 LOOPDELAY: MOV DLY1,#250DLYLOP2:MOV DLY2,#250 DJNZ DLY2,$ DJNZ DLY1,DLYLOP2RETEND四、 運行效果:程序運行效果:打開電源開關,如果本機在有光照的情況下,將無任何的反應,這時將子機 移動到較黑暗的地方,將會看到前方指示燈閃亮和蜂鳴器響亮。 實驗八 紅外反射與直流電機驅動演示一、 實驗簡介:本程序通過前端,底端的紅外發(fā)射頭和接收頭來判斷小車的運行軌跡,當前與底端發(fā)生信 號輸入時,信號將被單片機接收,單片機來控制機器按照寫好的程序開始運行。同時為達到好 的效果,加入聲音識別與蜂鳴器輸入輸出設備。.使得此機器人的運動變得

27、更加有趣。二、 實驗原理圖:3、 實現(xiàn)代碼:RUNFLAG BIT 00H; /定義運行標志位ENABLELIGHT BIT 01H; /定義指示燈使能位EXEFLAG BIT 02H; /定義可執(zhí)行標志位變量;*完成基本數(shù)據變量定義*/S1STATE BIT P1.0; /定義S1狀態(tài)標志位S2STATE BIT P1.1; /定義S2狀態(tài)標志位B1STATE BIT P1.2; /定義B1狀態(tài)標志位IRSTATE BIT P1.3; /定義IR狀態(tài)標志位RUNSTOPSTATE BIT P1.4; /定義運行停止標志位FONTIRSTATE BIT P1.5; /定義FONTIR狀態(tài)標志位

28、LEFTIRSTATE BIT P1.6; /定義LEFTIR狀態(tài)標志位RIGHTIRSTATE BIT P1.7; /定義RIGHTIRSTATE狀態(tài)標志位;*完成狀態(tài)指示燈定義*/S1 BIT P3.2; /定義S1按鍵端口S2 BIT P3.4; /定義S2按鍵端口;*完成按鍵端口的定義*/ LEFTLED BIT P2.0; /定義前方左側指示燈端口RIGHTLED BIT P0.7; /定義前方右側指示燈端口;*完成前方指示燈端口定義*/LEFTIR BIT P3.5; /定義前方左側紅外探頭RIGHTIR BIT P3.6; /定義前主右側紅外探頭FONTIR BIT P3.7;

29、/定義正前方紅外探頭;*完成紅外探頭端口定義*/M1A BIT P0.0; /定義電機1正向端口M1B BIT P0.1; /定義電機1反向端口M2A BIT P0.2; /定義電機2正向端口M2B BIT P0.3; /定義電機2反向端口;*完成電機端口定義*/B1 BIT P0.4; /定義話筒傳感器端口RL1 BIT P0.5; /定義光敏電阻端口SB1 BIT P0.6; /定義蜂鳴端口;*完成話筒,光敏電阻,蜂鳴器.端口定義*/IR1 BIT P3.3; /定義紅外接收端口;*完成紅外接收端口的定義*/SHOWSM EQU P2DLY1 EQU 41HDLY2 EQU 42HDLY3

30、 EQU 43HORG 0000HSJMP STARTORG 0003HLJMP S1ZDORG 000BHRETISTART:MOV P0,#0FFHMOV P1,#0FFHMOV P2,#0FFHMOV P3,#0FFHSETB EASETB EX0SETB IT0SETB ESSETB EX1; /同意開啟外部中斷1SETB IT1; /設定外部中斷1為低邊緣觸發(fā)類型SETB ET0; SETB EA; /總中斷開啟MOV DPTR,#SMDATAMOV A,#01HMOVC A,A+DPTRMOV SHOWSM,ALOOP:LCALL CARGO JNB FONTIR,CARDO JB

31、 LEFTIR,CARDO JB RIGHTIR,CARDO JB B1,LOOP LCALL CARSTOP JB B1,$ SJMP LOOPCARDO:MOV A,#02 MOVC A,A+DPTR MOV SHOWSM,A LCALL CARBACK MOV R1,#8LOP1: LCALL DELAY CPL SB1 DJNZ R1,LOP1 MOV A,#03 MOVC A,A+DPTR MOV SHOWSM,A LCALL CARLEFT MOV R1,#8LOP2: LCALL DELAY CPL SB1 DJNZ R1,LOP2 SETB SB1 MOV A,#01 MOVC

32、 A,A+DPTR MOV SHOWSM,A LJMP LOOP S1ZD:LCALL CARSTOP JB S2,$ RETICARGO:SETB M1A; /將電機1正向端口置高 SETB M2A; /將電機2正向端口置高 CLR M1B CLR M2B SETB RUNFLAG MOV A,#01H MOVC A,A+DPTR MOV SHOWSM,A; /數(shù)碼管顯示前進狀態(tài) CLR RIGHTLED; /將前方右側指示燈置低(亮) CLR LEFTLED; /將前方左側指示燈置低(亮) RETCARBACK:SETB M1B; /將電機1反向端口置高 SETB M2B; /將電機2反向

33、端口置高 CLR M1ACLR M2AMOV A,#02H MOVC A,A+DPTR MOV SHOWSM,A; /數(shù)碼管顯示前進狀態(tài); /數(shù)碼管顯示后退狀態(tài) SETB RIGHTLED; /將前方右側指示燈置高(滅) SETB LEFTLED; /將前方左側指示燈置高(滅) RET CARLEFT:SETB M1B; /將電機1反向端口置高 SETB M2A; /將電機2反向端口置高 CLR M1ACLR M2BMOV A,#03H MOVC A,A+DPTR MOV SHOWSM,A; /數(shù)碼管顯示前進狀態(tài); /數(shù)碼管顯示后退狀態(tài) CLR RIGHTLED; /將前方右側指示燈置低(亮)

34、 SETB LEFTLED; /將前方左側指示燈置高(滅) RETCARRIGHT:SETB M1A; /將電機1反向端口置高 SETB M2B; /將電機2反向端口置高 CLR M2ACLR M1BMOV A,#04H MOVC A,A+DPTR MOV SHOWSM,A; /數(shù)碼管顯示前進狀態(tài); /數(shù)碼管顯示后退狀態(tài) SETB RIGHTLED; /將前方右側指示燈置高(滅) CLR LEFTLED; /將前方左側指示燈置低(亮) RETCARSTOP:CLR M1A CLR M2ACLR M1BCLR M2BCLR RUNFLAG MOV A,#00H MOVC A,A+DPTR MOV

35、 SHOWSM,A; /數(shù)碼管顯示前進狀態(tài); /數(shù)碼管顯示后退狀態(tài) SETB RIGHTLED; /將前方右側指示燈置高(滅) SETB LEFTLED; /將前方左側指示燈置高(滅) RETDELAY: MOV DLY1,#10DLYLOP2:MOV DLY2,#100DLYLOP3:MOV DLY3,#100 DJNZ DLY3,$ DJNZ DLY2,DLYLOP3 DJNZ DLY1,DLYLOP2RETSMDATA: DB 03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,19H;/0,1,2,3,4,5,6,7,8,9END四、 運行效果:程序效果: 打開本機

36、電源開關,機器人開始向前運行( 這要看當時的條件),在運動的過程中,如果前方有障礙物,機器人則開始向后后退一段時間后,向左運動,在向左運行一段時間 后。再開始向前運行。在整個調向的過程中,蜂鳴器閃響。并且在機器人前進的過程中,你可 以通過拍手來控制機器人的停止和運行。 實驗九 紅外遙控器解碼程序演示一、 實驗簡介:本程序主要將現(xiàn)在比較常用M50462 遙控器進行解碼, 將解碼后的數(shù)據通過P2 端口的數(shù)碼 管顯示出來,為了更好的看到運行過程,特加了三個指示燈用來指示當前運行狀態(tài)。P10 閃亮, 表示程序正在運行;P11 閃亮,表示接收到數(shù)據;P12 閃亮,表示觸發(fā)內部的定時器操作;P13 閃亮,

37、表示正確接收完一個數(shù)據。二、 實驗原理圖:3、 實現(xiàn)代碼:#include /包含51單片機相關的頭文件#DEFINE UINT UNSIGNED INT /重定義無符號整數(shù)類型#DEFINE UCHAR UNSIGNED CHAR /重定義無符號字符類型UCHAR CODE LEDSHOWDATA=0X03,0X9F,0X25,0X0D,0X99, /定義數(shù)碼管顯示數(shù)據 0X49,0X41,0X1F,0X01,0X19;/0,1,2,3,4,5,6,7,8,9UCHAR CODE RECVDATA=0X07,0X0A,0X1B,0X1F,0X0C,0X0D,0X0E,0X00,0X0F,0X

38、19;UCHAR IRCOM7;STATIC UNSIGNED INT LEDFLASH; /定義閃動頻率計數(shù)變量UNSIGNED CHAR RUNFLAG=0; /定義運行標志位BIT ENABLELIGHT=0; /定義指示燈使能位/*完成基本數(shù)據變量定義*/SBIT S1STATE=P10; /定義S1狀態(tài)標志位SBIT S2STATE=P11; /定義S2狀態(tài)標志位SBIT B1STATE=P12; /定義B1狀態(tài)標志位SBIT IRSTATE=P13; /定義IR狀態(tài)標志位SBIT RUNSTOPSTATE=P14; /定義運行停止標志位SBIT FONTIRSTATE=P15; /

39、定義FONTIR狀態(tài)標志位SBIT LEFTIRSTATE=P16; /定義LEFTIR狀態(tài)標志位SBIT RIGHTIRSTATE=P17; /定義RIGHTIRSTATE狀態(tài)標志位/*完成狀態(tài)指示燈定義*/SBIT S1=P32; /定義S1按鍵端口SBIT S2=P34; /定義S2按鍵端口/*完成按鍵端口的定義*/ SBIT LEFTLED=P20; /定義前方左側指示燈端口SBIT RIGHTLED=P07; /定義前方右側指示燈端口/*完成前方指示燈端口定義*/SBIT LEFTIR=P35; /定義前方左側紅外探頭SBIT RIGHTIR=P36; /定義前主右側紅外探頭SBIT

40、 FONTIR=P37; /定義正前方紅外探頭/*完成紅外探頭端口定義*/SBIT M1A=P00; /定義電機1正向端口SBIT M1B=P01; /定義電機1反向端口SBIT M2A=P02; /定義電機2正向端口SBIT M2B=P03; /定義電機2反向端口/*完成電機端口定義*/SBIT B1=P04; /定義話筒傳感器端口SBIT RL1=P05; /定義光敏電阻端口SBIT SB1=P06; /定義蜂鳴端口/*完成話筒,光敏電阻,蜂鳴器.端口定義*/SBIT IRIN=P33; /定義紅外接收端口/*完成紅外接收端口的定義*/#DEFINE SHOWPORT P2 /定義數(shù)碼管顯示端口EXTERN VOID CONTROLCAR(UCHAR CARTYPE); /聲明小車控制子程序VOID DELAYMS(UNSIGNED CHAR X) /0.14MS延時程序 UNSIGNED CHAR I; /定義臨時變量 WHILE(X-) /延時時間循環(huán) FOR (I = 0; I13; I+) /14MS延時 VOID DELAY() /定義延時子程序 UINT DELAYT

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔

相關搜索

關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!