版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、語音控制小車系 別: 專 業(yè): 姓 名: 學(xué) 號:目錄1 關(guān)于語音控制小車2 語音控制小車簡介 2.1功能介紹 2.2設(shè)計要求 2.3參數(shù)說明 3 硬件 介紹3.1硬件框圖 3.2 SPCE061A精簡開發(fā)板 3.3 控制板框圖 4 小車的功能實現(xiàn)原理 4.1直走的實現(xiàn)過程 4.2 轉(zhuǎn)彎的實現(xiàn) 4.3 PWM調(diào)速的原理 4.4 語音識別原理簡介 5 軟件系統(tǒng)設(shè)計5.1軟件流程 紅外接收模塊5.2紅外解碼程序設(shè)計 5.3控制器控制程序 6 常見問題 1 關(guān)于語音控制小車語音控制小車是 凌陽 大學(xué) 計劃推出的基于SPCE061A的代表性使用作品,它配合61板推出,綜合使用了SPCE061A的眾多資
2、源,小車控制系統(tǒng)使用單片機芯片控制直流電機的調(diào)速、正轉(zhuǎn)、反轉(zhuǎn)。配合語音識別功能使小車更具趣味性,提高學(xué)習(xí)的積極性,更使我們對學(xué)習(xí)的科學(xué)實踐部分得到完整的驗證。2 語音控制小車簡介2.1功能介紹:1. 小車運動控制: 通過SPCE061A的I/O端口,驅(qū)動控制板的H橋電路,進(jìn)而控制前輪電機和后輪電機。 2. 聲控功能: 利用特定人語音識別實現(xiàn)小車的名稱和動作訓(xùn)練,并根據(jù)相應(yīng)的語音指令輸入執(zhí)行前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停車等動作。 3. 定時控制功能: 利用時基定時器設(shè)定運行時間,小車運行同時啟動定時器,時間到小車停止運行。 2.2設(shè)計要求:利用SPCE061A單片機和智能小車控制電路板,實現(xiàn)下述功
3、能: 1 可以通過簡單的I/O操作實現(xiàn)小車的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)功能; 2 配合SPCE061A的語音特色,利用系統(tǒng)的語音播放和語音識別資源,實現(xiàn)語音控制的功能; 3 可以在行走過程中聲控改變小車運動狀態(tài); 4 在超出語音控制范圍時能夠自動停車。 可以自行安裝各類傳感器,配合程序?qū)崿F(xiàn)小車的循跡、避障等功能.2.3參數(shù)說明:車體:雙電機四輪驅(qū)動 供電:電池(四節(jié)AA電池:1.2V*4 或 1.5V*4)工作電壓:DC 4V6V 工作電流:運動時約 200mA3 硬件 介紹3.1硬件框圖 系統(tǒng)組成主要包括以下兩部分:SPCE061A精簡開發(fā)板、語音小車控制電路板。 圖中的語音輸入部分MIC_ I
4、N、按鍵輸入KEY、聲音輸出部分的功率放大環(huán)節(jié)等已經(jīng)做到了精簡開發(fā)板61板上,為我們使用提供了很大的方便。在電機的驅(qū)動方面,采用全橋驅(qū)動技術(shù),利用四個I/O端口分為兩組分別實現(xiàn)兩個電機的正傳、反轉(zhuǎn)和停三態(tài)運行,如下圖所示。 3.2SPCE061A精簡開發(fā)板“61板”是SPCE061A EMU BOARD的簡稱,是以凌陽16位單片機SPCE061A為核心的精簡開發(fā)仿真實驗板,大小相當(dāng)于一張撲克牌。 “61板”除了具備單片機最小系統(tǒng)電路外,還包括有電源電路、復(fù)位電路、ICE電路、音頻電路(含MIC輸入部分和DAC音頻輸出部分)等,“61板”可以采用電池供電。圖 3-1所示為該精簡開發(fā)板的實物圖。
5、3.3 控制板框圖 控制板的結(jié)構(gòu)框圖如圖所示,它包括接口模塊,兩路電機控制模塊,預(yù)留傳感器接口,以及電源模塊四大部分。 1 電源模塊 由于小車采用 4 節(jié)AA電池供電,電壓最高可以達(dá)到 6 V,考慮到 61板的安全加入了電源模塊。電源模塊的電路原理圖如圖所示,電源模塊的作用是將電池組提供的電壓穩(wěn)定在5V以內(nèi)為61板供電。電源模塊采用集成穩(wěn)壓芯片 7805,在輸出端(控制板的JP11)并接一個 470F濾波電容和一個 0.1F的去藕電容,增強系統(tǒng)電壓的穩(wěn)定性和抗干擾性能。 2 傳感器擴(kuò)展接口 為了小車后期開發(fā)的方便,在小車的控制板上預(yù)留了很多的傳感器接口和模組接口。如果在設(shè)計中需要添加傳感器或者
6、相關(guān)的模組,只要參照電路原理圖以及相關(guān)說明連接電路就可以了,十分的方便。 圖 2.13是一個開關(guān)型傳感器的接口電路,其中1、2為傳感器信號輸入,3、4為電源,5、6為地??紤]到很多的開關(guān)型傳感器的信號輸出為集電極開路的OC門結(jié)構(gòu),所以在電源端和信號端之間加入一個4.7K的上拉電阻。使用時,只需要將電源線、地線、信號線按照圖中標(biāo)注連接好,然后再將信號端(圖中的1端或2端)接到SPCE061A的相應(yīng)I/O端口,在程序中把對應(yīng)的端口設(shè)置為輸入即可。 3 方向電機控制電路 方向控制由前輪驅(qū)動實現(xiàn),包括左轉(zhuǎn)和右轉(zhuǎn),前輪驅(qū)動電路也是一個全橋驅(qū)動電路,如圖 5-12所示:Q7、Q8、Q9、Q10四個三極管組
7、成四個橋臂,Q7和Q10組成一組,Q8和Q9組成一組,Q11控制Q8、Q9的導(dǎo)通和關(guān)斷,Q12控制Q7和Q10的導(dǎo)通和關(guān)斷,而Q11、Q12由IOB10和IOB11控制,這樣就可以通過IOB10和IOB11控制前輪電機的正轉(zhuǎn)和反轉(zhuǎn),進(jìn)而控制小車的左轉(zhuǎn)和右轉(zhuǎn)。 4 動力電機驅(qū)動電路 動力驅(qū)動由后輪驅(qū)動實現(xiàn),負(fù)責(zé)小車的直線方向運動,包括前進(jìn)和后退,后輪驅(qū)動電路是一個全橋驅(qū)動電路,如圖 5-12所示:Q1、Q2、Q3、Q4四個三極管組成四個橋臂,Q1和Q4組成一組,Q2和Q3組成一組,Q5控制Q2、Q3的導(dǎo)通和關(guān)斷,Q6控制Q1和Q4的導(dǎo)通和關(guān)斷,而Q5、Q6由IOB9和IOB8控制,這樣就可以通過
8、IOB8和IOB9控制四個橋臂的導(dǎo)通和關(guān)斷控制后輪電機的運行狀態(tài),使之正轉(zhuǎn)反轉(zhuǎn)或者停轉(zhuǎn),進(jìn)而控制小車的前進(jìn)和后退。 4小車的功能實現(xiàn)原理 4.1 直走的實現(xiàn)過程 只要讓小車的左右兩側(cè)的輪子同時朝前旋轉(zhuǎn),小車就會受到向前的作用力而朝前運動,這樣就實現(xiàn)了小車的前進(jìn)功能。由于小車每一側(cè)的輪子由同側(cè)的電機控制,所以要實現(xiàn)兩側(cè)的四個輪子同時朝前轉(zhuǎn),只需要左右兩個電機正轉(zhuǎn)即可。由表 2.2可知兩個電機都正轉(zhuǎn)的控制組合為IOB13 IOB10=1010,也就是說只要把IOB13 IOB10設(shè)置為“1010”就實現(xiàn)了小車的前進(jìn)功能。 同理,只要讓兩個電機同時反轉(zhuǎn),就實現(xiàn)了小車的倒退功能。此時的IOB13 IO
9、B10端口數(shù)據(jù)為“0101”。 4.2 轉(zhuǎn)彎的實現(xiàn)過程 在某些場合,小車還需要轉(zhuǎn)彎,那么小車又是怎樣實現(xiàn)轉(zhuǎn)彎的呢?其實只要讓一側(cè)的輪子停轉(zhuǎn),讓另一側(cè)的旋轉(zhuǎn),這樣小車就會朝著一個方向偏轉(zhuǎn)。比如讓右側(cè)的輪子停轉(zhuǎn),左側(cè)的輪子前轉(zhuǎn),對應(yīng)的端口輸出狀態(tài)為IOB13 IOB10=0010,此時小車就會向右前方旋轉(zhuǎn),最終實現(xiàn)右前轉(zhuǎn)。另外還有左前轉(zhuǎn),右后轉(zhuǎn),左后轉(zhuǎn)等動作,詳細(xì)的端口輸出狀態(tài)見表 2.2。 但是這種轉(zhuǎn)彎的實現(xiàn)方案在實際的測試中并不理想,小車轉(zhuǎn)彎所走的弧線半徑比較大,有時近似在走直線。造成這種現(xiàn)象的原因是:小車轉(zhuǎn)彎是通過一側(cè)的輪子停轉(zhuǎn),另一側(cè)的輪子正轉(zhuǎn)或者反轉(zhuǎn)實現(xiàn)的。但是雖然一側(cè)的電機停轉(zhuǎn)了,另一
10、側(cè)旋轉(zhuǎn)的輪子會帶著停轉(zhuǎn)的輪子一起運動,這樣小車偏轉(zhuǎn)的趨勢就不明顯,小車轉(zhuǎn)彎的半徑就會比較大,不能達(dá)到理想的目的。 我們使用了一種近似插補的實現(xiàn)方案,如圖 3.1所示。將所要走的弧線切割成若干個小段,在段和段的連接處,作一定角度的原地旋轉(zhuǎn),然后再直走到下一個連接點。如圖 3.1示,從A點出發(fā),讓小車在原地做一定角度的旋轉(zhuǎn)(即一側(cè)的輪子正轉(zhuǎn),另一側(cè)的輪子反轉(zhuǎn)),然后讓小車直行,到B點處再重復(fù)執(zhí)行原地旋轉(zhuǎn)動作,然后再直行到達(dá)C點。如此一直到弧線的終點H,這樣就完成了一定弧度的轉(zhuǎn)彎。圖示為左拐的過程,右拐的原理是一樣的,只是原地旋轉(zhuǎn)的方向不同而已。 在實際的操作中需要注意的有兩點:一是順時針旋轉(zhuǎn)還是逆
11、時針旋轉(zhuǎn)一定要清楚,可以參看表;第二是時間的分配,也就是在每個點上旋轉(zhuǎn)所占時間和直走所占時間分別為多長,二者要合理搭配,如果旋轉(zhuǎn)的時間過短,每次旋轉(zhuǎn)角度很小,整體的旋轉(zhuǎn)趨勢就不明顯,轉(zhuǎn)彎的弧度太?。蝗绻D(zhuǎn)時間過長,小車可能就不會正常的走弧線。圖 3.1:采用近似插補方案實現(xiàn)小車的轉(zhuǎn)彎過程 4.3 PWM調(diào)速的原理 如果需要調(diào)速,可以直接調(diào)用SPCE061A的PWM資源,通過調(diào)節(jié)PWM的占空比來實現(xiàn)速度的調(diào)節(jié)。由第2.4.3節(jié)調(diào)速電路分析可知:調(diào)速部分直接連接到了61板的PWM輸出,只要在程序中對PWM相關(guān)端口進(jìn)行合理的設(shè)置,在MOTSP端就有PWM信號產(chǎn)生,加在小車電機兩端的電壓就是一PWM
12、電壓信號,對應(yīng)的電機電壓波形如圖示: PWM調(diào)速原理圖 此時加在電機兩端的平均電壓Uo=Th/(Th+Tl)*VCC。 可以通過調(diào)整PWM的占空比,來改變Th和Tl的比值,從而改變Uo的大小。這樣就通過PWM資源調(diào)節(jié)加在電機兩端的平均電壓,從而改變電機的轉(zhuǎn)速,最終實現(xiàn)調(diào)節(jié)小車速度的目的。 另外也可以利用其他的方式讓端口輸出如圖 3.2所示的波形,即軟件模擬的PWM,在這里就不對這種方案做過多的說明。 4.4 語音識別原理簡介語音識別主要分為“訓(xùn)練”和“識別”兩個階段。在訓(xùn)練階段,單片機對采集到的語音樣本進(jìn)行分析處理,從中提取出語音特征信息,建立一個特征模型;在識別階段,單片機對采集到的語音樣本
13、也進(jìn)行類似的分析處理,提取出語音的特征信息,然后將這個特征信息模型和已有的特征模型進(jìn)行對比,如果二者達(dá)到了一定的匹配度,則輸入的語音被識別。 語音識別的具體流程如圖所示: 5軟件系統(tǒng)設(shè)計5.1軟件流程 主程序流程圖 流程說明:語音識別小車的程序流程如上圖所示,分為四大部分來說明:初始化部分、訓(xùn)練部分、識別部分、重訓(xùn)操作。 初始化部分:初始化操作將IOB13IOB10設(shè)置為輸出端,用以控制電機,將IOA的低8位設(shè)置為下拉的輸入端,用來連接按鍵。 訓(xùn)練部分:訓(xùn)練部分完成的工作就是建立語音模型。程序一開始就會去判斷小車是否被訓(xùn)練過,如果沒有訓(xùn)練過則會要求對其進(jìn)行訓(xùn)練,并且會在訓(xùn)練成功之后將訓(xùn)練的模型
14、存儲到Flash當(dāng)中,在以后使用時就不需要重新訓(xùn)練了;如果已經(jīng)訓(xùn)練過會把存儲在Flash中的模型調(diào)出來裝載到辨識器中。 識別部分:在識別環(huán)節(jié)當(dāng)中,如果辨識結(jié)果是名字,直接置待命標(biāo)志,然后等待動作命令。只有檢測到待命標(biāo)志,小車才會根據(jù)相應(yīng)的辨識結(jié)果執(zhí)行動作,如果沒有待命標(biāo)志即使識別到動作命令也不會執(zhí)行動作。小車在執(zhí)行完對應(yīng)的命令之后,將清除待命標(biāo)志,結(jié)束待命狀態(tài)。 重訓(xùn)操作:考慮到有重新訓(xùn)練的需求,所以在這里設(shè)置了重新訓(xùn)練的按鍵,程序運行時循環(huán)掃描該按鍵,什么時間檢測到此鍵按下,則將擦除語音模型存儲區(qū)首單元(0 xe000)所在的頁,等待復(fù)位到來。復(fù)位后,程序重新從頭開始執(zhí)行,當(dāng)檢測到語音模型存
15、儲區(qū)首地址為0 xffff(擦除后的值)時會要求重新對其進(jìn)行訓(xùn)練。 紅外接收模塊5.2紅外解碼程序設(shè)計紅外解碼程序主要工作為等待紅外線信號出現(xiàn),并跳過引導(dǎo)信號,開始收集連續(xù)32位的表面數(shù)據(jù),存入內(nèi)存的連續(xù)空間。位信號解碼的原則是:以判斷各個位的波寬信號來決定高低信號。位解碼原理如下:解碼為0:低電平的寬度0.56ms+高電平的寬度0.56ms。解碼為1:低電平的寬度1.68ms+高電平的寬度0.56ms。程序中必須設(shè)計一精確的0.1ms延時時間作為基礎(chǔ)時間,以計數(shù)實際的波形寬度,若讀值為5表示波形寬度為0.5ms,若讀值為16表示波形寬度為1.6ms,以此類推。高電平的寬度1.12ms為固定,
16、因此可以直接判斷低電平的寬度的計數(shù)值5或時16,來確定編碼為0或是1。程序中可以減法指令SUBB來完成判斷,指令“SUBB A,R2”中若R2為計數(shù)值,A寄存器設(shè)為8,就可如下:當(dāng)“8R2”有產(chǎn)生借位,借位標(biāo)志C=1,表示編碼為1。當(dāng)“8R2”無產(chǎn)生借位,借位標(biāo)志C=0,表示編碼為0。將借位標(biāo)志C經(jīng)過右移指令“RRC A”轉(zhuǎn)入A寄存器中,再經(jīng)由R0寄存器間接尋址存入內(nèi)存中。5.3控制器控制程序; 紅外遙控機器人ASM程序;-HOMEEQU 14 ;伺服馬達(dá)回到中點時間常數(shù)BACKEQU 3 ;伺服馬達(dá)反轉(zhuǎn)時間常數(shù)FOR EQU 25 ;伺服馬達(dá)正轉(zhuǎn)時間常數(shù); -;遙控器按鍵16比較碼CODE_
17、K1 EQU 19H ;機器人前進(jìn)比較碼CODE_K2 EQU 18H ;機器人后退比較碼CODE_K3 EQU 0AH ;機器人左轉(zhuǎn)比較碼CODE_K4 EQU 09H ;機器人右轉(zhuǎn)比較碼CODE_K5 EQU 0BH ;機器人回到中點比較碼CODE_K6 EQU 14H ;機器人行走啟動進(jìn)比較碼; -IRCOM EQU 30H ;紅外線信號解碼數(shù)據(jù)放置變量起始地址COM EQU 32H ;比較第3字節(jié)變量; -IRIN EQU P3.2 ;紅外線IR信號輸入位引腳定義WLEDEQU P3.7 ;發(fā)光二極管引腳定義SPK EQU P3.4 ;壓電喇叭引腳定義DJL EQU P1.0 ;左側(cè)伺
18、服馬達(dá)引腳定義DJR EQU P1.1 ;右側(cè)伺服馬達(dá)引腳定義; -ORG 0H ;程序代碼由地址0開始執(zhí)行JMP BEGIN ;進(jìn)入主程序; -BEGIN: CLR DJL ;關(guān)閉左側(cè)伺服馬達(dá)CLR DJR ;關(guān)閉右側(cè)伺服馬達(dá)CLR SPK ;關(guān)閉壓電喇叭 CALL LED_BL ;發(fā)光二極管閃爍,表示程序開始執(zhí)行 CALL BZ ;壓電喇叭發(fā)出嘀的一聲 CALL GO_HOME ;全部伺服馬達(dá)回到中點 CALL LED_BL ;發(fā)光二極管閃爍,表示機器人準(zhǔn)備完畢 CALL BZ ;壓電喇叭發(fā)出嘀的一聲CALL QD ;運行行走啟動子程序,擺好行走姿態(tài)SETB IRIN ;紅外線信號IR輸入
19、位設(shè)為高電平,準(zhǔn)備接收紅外信號LOOP:MOV R0,#IRCOM ;設(shè)置IR解碼起始地址CALL IR_IN ;進(jìn)行IR解碼CALL OP ;進(jìn)行解碼比較,并控制機器人動作 JMP LOOP ;繼續(xù)循環(huán)執(zhí)行; -DELAY:MOV R6,#50 ;10ms延時子程序D1: MOV R7,#99 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,DELAY RET; -LED_BL: MOV R1,#4 ;發(fā)光二極管閃爍子程序LE1: CPL WLED ;發(fā)光二極管反向 MOV R5,#10 CALL DELAY ;進(jìn)行100ms延時 DJNZ R1,LE1 RET; -BZ: MOV
20、 R6,#0 ;壓電喇叭發(fā)聲子程序B1: SETB SPK ;壓電喇叭得電,開始發(fā)聲 DJNZ R6,B1 MOV R5,#5CALL DELAY ;進(jìn)行50ms延時 CLR SPK ;關(guān)閉壓電喇叭 RET; -DEL: ;0.1ms延時子程序 MOV R5,#1DELAY1: MOV R6,#2E1: MOV R7,#22E2: DJNZ R7,E2 DJNZ R6,E1 DJNZ R5,DELAY1 RET; -IR_IN: ;紅外解碼子程序I1:JNB IRIN,I2 ;等待紅外IR信號出現(xiàn)JMP I1I2:MOV R4,#20 ;發(fā)現(xiàn)紅外IR信號,延時一下I20:CALL DELDJN
21、Z R4,I20JB IRIN,I1 ;確認(rèn)紅外IR信號出現(xiàn)I21:JB IRIN,I3 ;等待IR變?yōu)楦唠娖紺ALL DELJMP I21I3:MOV R3,#0 ;8位數(shù)清0LL:JNB IRIN,I4 ;等待IR變?yōu)榈碗娖紺ALL DELJMP LLI4:JB IRIN,I5 ;等待IR變?yōu)楦唠娖紺ALL DELJMP I4I5:MOV R2,#0 ;0.1ms 計數(shù)L1:CALL DELJB IRIN,N1 ;等待IR變?yōu)楦唠娖組OV A,#8 ;設(shè)置減數(shù)為8CLR C ;清除借位標(biāo)志CSUBB A,R2 ;判斷高低位MOV A,R0 ;取出內(nèi)存中原先數(shù)據(jù)RRC A ;右移指令,將借位
22、標(biāo)志C右移進(jìn)入A寄存器中 MOV R0, A ;將數(shù)據(jù)寫入內(nèi)存中 INC R3 ;處理完成一位,R3+1(R3計數(shù))CJNE R3,#8, LL ;循環(huán)處理8位MOV R3,#0 ;R3清0INC R0 ;處理完成1個字節(jié),R0+1(R0計數(shù))CJNE R0,#34H, LL ;循環(huán)收集到4個字節(jié)JMP OK ;至完成返回N1:INC R2 ;R2+1(R2計數(shù))CJNE R2,#30, L1 ;0.1ms 計數(shù)過長,時間到自動離開OK:RET ;完成返回; -OP: 執(zhí)行解碼動作子程序MOV A,COMCJNE A,#CODE_K5, A1 ;對解碼進(jìn)行比較,看是否是回到中點指令,否就轉(zhuǎn)至下
23、一項比較CALL LED_BL ;發(fā)光二極管閃爍CALL BZ ;壓電喇叭發(fā)出嘀的一聲CALL GO_HOME ;執(zhí)行回到中點CALL LED_BL ;發(fā)光二極管閃爍CALL BZ ;壓電喇叭發(fā)出嘀的一聲RETA1:MOV A,COMCJNE A,#CODE_K1, A2 ;對解碼進(jìn)行比較,看是否是前進(jìn)指令,否就轉(zhuǎn)至下一項比較CALL BZ ;壓電喇叭發(fā)出嘀的一聲CALL GO_FOR ;執(zhí)行前進(jìn) RETA2:MOV A,COMCJNE A,#CODE_K2, A3 ;對解碼進(jìn)行比較,看是否是后退指令,否就轉(zhuǎn)至下一項比較CALL BZ ;壓電喇叭發(fā)出嘀的一聲 CALL GO_BACK ;執(zhí)行后
24、退 RETA3: ;LMOV A,COMCJNE A,#CODE_K3, A4 ;對解碼進(jìn)行比較,看是否是左轉(zhuǎn)指令,否就轉(zhuǎn)至下一項比較CALL BZ ;壓電喇叭發(fā)出嘀的一聲 CALL GO_L ;執(zhí)行左轉(zhuǎn) RETA4: ;R MOV A,COM CJNE A,#CODE_K4, A5 ;對解碼進(jìn)行比較,看是否是右轉(zhuǎn)指令,否就轉(zhuǎn)至下一項比較CALL BZ ;壓電喇叭發(fā)出嘀的一聲 CALL GO_R ;執(zhí)行右轉(zhuǎn)RETA5:MOV A,COMCJNE A,#CODE_K6, A6 ;對解碼進(jìn)行比較,看是否是行走啟動指令,否就轉(zhuǎn)至下一項CALL LED_BL ;發(fā)光二極管閃爍CALL BZ ;壓電喇叭
25、發(fā)出嘀的一聲 CALL QD ;執(zhí)行行走啟動CALL LED_BL ;發(fā)光二極管閃爍CALL BZ ;壓電喇叭發(fā)出嘀的一聲 RETA6: RET ;返回; -HOME1: SETB DJZ ;各伺服電機回中點控制子程序 SETB DJLSETB DJRMOV R4,#HOMEG1:CALL DELDJNZ R4,G1CLR DJZCLR DJLCLR DJRMOV R4,#(200-HOME)G2:CALL DELDJNZ R4,G2RET; -GO_HOME: MOV R3,#15 ;機器人回中點子程序H1: CALL HOME1 DJNZ R3,H1 RET ; -DJL_FOR: SET
26、B DJL ;左側(cè)電機正轉(zhuǎn)子程序 MOV R4,#FORFL1: CALL DEL DJNZ R4,FL1 CLR DJL MOV R4,#(200-FOR)FL2: CALL DEL DJNZ R4,FL2 RET ; -DJR_FOR: SETB DJR ;右側(cè)電機正轉(zhuǎn)子程序 MOV R4,#FORFR1: CALL DEL DJNZ R4,FR1 CLR DJR MOV R4,#(200-FOR)FR2: CALL DEL DJNZ R4,FR2 RET ; -DJL_BACK: SETB DJL ;左側(cè)電機反轉(zhuǎn)子程序 MOV R4,#BACKDJLBA1: CALL DEL DJNZ
27、R4,DJLBA1 CLR DJL MOV R4,#(200-BACK)DJLB2: CALL DEL DJNZ R4,DJLB2 RET ; -DJR_BACK: SETB DJR ;右側(cè)電機反轉(zhuǎn)子程序 MOV R4,#BACKDJRBA1: CALL DEL DJNZ R4,DJRBA1 CLR DJR MOV R4,#(200-BACK)DJRB2: CALL DEL DJNZ R4,DJRB2 RET ; -GO_FOR: MOV R3,#5 ;機器人向前行走子程序F1: CALL DJZ_FOR DJNZ R3,F1 MOV R3,#10F2: CALL DJR_BACK DJNZ
28、R3,F2 MOV R3,#10F3: CALL DJL_BACK DJNZ R3,F3 MOV R3,#5F4: CALL DJZ_BACK DJNZ R3,F4 MOV R3,#10F5: CALL DJL_FOR DJNZ R3,F5 MOV R3,#10F6: CALL DJR_FOR DJNZ R3,F6 RET; -GO_BACK: MOV R3,#10 ;機器人向后行走子程序BA1: CALL DJL_BACK DJNZ R3,BA1 MOV R3,#10BA2: CALL DJR_BACK DJNZ R3,BA2 MOV R3,#5BA4: CALL DJZ_FOR DJNZ
29、R3,BA4 MOV R3,#10BA5: CALL DJR_FOR DJNZ R3,BA5 MOV R3,#10BA6: CALL DJL_FOR DJNZ R3,BA6 MOV R3,#5BA7: CALL DJZ_BACK DJNZ R3,BA7 RET; -GO_L: MOV R3,#10 ;機器人左轉(zhuǎn)行走子程序GL1: CALL DJL_BACK DJNZ R3,GL1 MOV R3,#5GL2: CALL DJZ_FOR DJNZ R3,GL2 MOV R3,#10GL3: CALL DJR_BACK DJNZ R3,GL3 MOV R3,#10GL7: CALL DJL_FOR
30、DJNZ R3,GL7 MOV R3,#5GL4: CALL DJZ_BACK DJNZ R3,GL4 MOV R3,#10GL5: CALL DJR_FOR DJNZ R3,GL5 RET; -GO_R: MOV R3,#10 ;機器人右轉(zhuǎn)行走子程序GR1: CALL DJR_BACK DJNZ R3,GR1 MOV R3,#5GR2: CALL DJZ_FOR DJNZ R3,GR2 MOV R3,#10GR3: CALL DJL_BACK DJNZ R3,GR3 MOV R3,#10GR4: CALL DJR_FOR DJNZ R3,GR4 MOV R3,#5GR5: CALL DJZ_BACK DJNZ
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于微服務(wù)的分布式農(nóng)產(chǎn)品銷售與溯源管理系統(tǒng)實現(xiàn)
- 基于熵值法的A公司財務(wù)績效研究
- 雙功能豌豆蛋白水解物促進(jìn)胰島素釋放機制研究及GLP-1促泌肽與DPP-4抑制肽結(jié)構(gòu)鑒定
- 2025年度工程機械鏟車租賃合作協(xié)議電子版
- 2025年度特色火鍋店門面房租賃合作協(xié)議
- 部編人教版小學(xué)數(shù)學(xué)試卷
- 2025年度臨時工聘用與團(tuán)隊建設(shè)協(xié)議
- 昌樂二模中考數(shù)學(xué)試卷
- 2025年度港口集裝箱裝卸服務(wù)合作協(xié)議
- 二零二五年度房貸服務(wù)合同
- 無人化農(nóng)場項目可行性研究報告
- 《如何存款最合算》課件
- 社區(qū)團(tuán)支部工作計劃
- 拖欠工程款上訪信范文
- 2024屆上海市金山區(qū)高三下學(xué)期二模英語試題(原卷版)
- 《wifi協(xié)議文庫》課件
- 《好東西》:女作者電影的話語建構(gòu)與烏托邦想象
- 一年級下冊數(shù)學(xué)口算題卡打印
- 2024年中科院心理咨詢師新教材各單元考試題庫大全-下(多選題部分)
- 真人cs基于信號發(fā)射的激光武器設(shè)計
- 2024年國信證券招聘筆試參考題庫附帶答案詳解
評論
0/150
提交評論