




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
編程語言基礎(chǔ)一、編程語言語言是一種傳遞信息的媒介。機(jī)器人工作時(shí),我們要給機(jī)器人發(fā)出一些命令,告訴機(jī)器人在接到什么樣的信號(hào)時(shí),應(yīng)當(dāng)做出何種響應(yīng),這些命令就是我們要編寫的程序。我們把用來編寫程序的語言稱為編程語言。編器程語言可分為低級(jí)語言和高級(jí)語言:低級(jí)語言又分為機(jī)器語言和匯編語言。機(jī)器語言:給機(jī)器發(fā)布命令不是用我們?nèi)伺c人之間使用的語言,機(jī)器只懂一樣?xùn)|西—數(shù)字,而且只能是由“0”和“1”組成的有序序列,如0100110、0111010等字串,由這種有序序列組成的集合就叫做機(jī)器語言。通常我們規(guī)定,用“1”表示高電平,用“0”表示低電平。匯編語言:鑒于機(jī)器語言的缺點(diǎn),人們又發(fā)明了種用比較容易讓人接受的英文縮寫來表示某個(gè)特定的“0”和“1”組成的有序序列,并用這些英文縮寫來編寫程序,這種編程語言叫做匯編語言。高級(jí)語言:為了克服低級(jí)語言的缺點(diǎn),人們又發(fā)明了種可讀性較好,又容易理解的高級(jí)語言。相對(duì)于高級(jí)語言,把機(jī)器語讠吾言、匯編語言統(tǒng)稱為低級(jí)語言。高級(jí)語言獨(dú)立于計(jì)算機(jī)硬件,它采用接近人們表達(dá)方式、功能完善的語句形式,易于被人們掌握。如高級(jí)語言的加法指令和減法指令與我們數(shù)學(xué)中的“+”和“-”運(yùn)算符相同。這種語言同樣需要被翻譯成機(jī)器語言,才能被機(jī)器接受。機(jī)器語言是一切語言的基礎(chǔ)。高級(jí)語言有很多種,而且在不斷地發(fā)展。本書介紹的簡易機(jī)器人的核心元件為ATMEGA48單片機(jī)。接下來將學(xué)習(xí)如何使用ATMEGA48單片機(jī)匯編語言語句來實(shí)現(xiàn)簡易機(jī)器人的基本動(dòng)作。在用匯編語言編寫程序前,必須先了解單片機(jī)系統(tǒng)的硬件連接,也就是要知道單片機(jī)I/O端口與外圍電路的管腳接線,以便通過單片機(jī)程序控制電路的工作。圖3-1給出了簡易機(jī)器人的單片機(jī)控制系統(tǒng)框圖,圖中PB口與左、右電機(jī)連接,通過程序控制PB口的狀態(tài)就可以實(shí)現(xiàn)對(duì)左、右電機(jī)的控制,而左、右電機(jī)分別驅(qū)動(dòng)機(jī)器人的左、右輪,從而實(shí)現(xiàn)機(jī)器人的前進(jìn)、后退、轉(zhuǎn)彎和停止等基本動(dòng)作。表3-1給出了簡易機(jī)器人的單片機(jī)PB口狀態(tài)與機(jī)器人動(dòng)作的關(guān)系。表中8位二進(jìn)制數(shù)分別對(duì)應(yīng)PB口的8位I/O口(PB7-PBO)。由于二進(jìn)制數(shù)表示比較復(fù)雜,我們將其轉(zhuǎn)化成十六進(jìn)制數(shù)表示。1.機(jī)器人前進(jìn)【程序】LDIR17,$33OUTPB,R17【程序分析】指令實(shí)現(xiàn)將數(shù)字“$33”傳送至PB口。其中,“$33”表示十六進(jìn)制數(shù),“$”為十六進(jìn)制符號(hào);“LDI”是將數(shù)據(jù)傳送至寄存器指令,它能將一個(gè)數(shù)據(jù)傳送至R16-R31(暫暫時(shí)存放數(shù)據(jù)的存儲(chǔ)單元)中的任一個(gè)寄存器中,在該程序中選用寄存器R17;“OUT”是將寄存器中的數(shù)據(jù)傳送至I/O口寄存器:“PB”是指PB口的寄存器。第一行通過數(shù)據(jù)傳送指令“LDI”將數(shù)據(jù)“$33”傳送至通用寄存器“R17”中。第二行通過數(shù)據(jù)傳送指令“OUT”將數(shù)據(jù)從寄存器中傳送至PB口。指令執(zhí)行后,PB7-PB0分別別為“00110011”,根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人前進(jìn)的功能。2.機(jī)器人后退【程序】LDIR17,$30OUTPB,RI7【程序分析】指令表示將數(shù)字“$30”傳送至PB口。指令執(zhí)行后,PB7-PBO分別為“00110000”。根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人后退的功能?!境绦颉縇DIRI7,$00OUTPB,R17【程序分析】指令表示將數(shù)字“$00”傳送至PB口。指令執(zhí)行后,PB7-PBO分別為“000000”。根據(jù)表3-1可知,該程序?qū)崿F(xiàn)機(jī)器人停止運(yùn)動(dòng)的功能。3.機(jī)器人停止【程序】CX:LDIR17,$33;機(jī)器人前進(jìn)OUTPB,R17SBICPC0,LZ;有障礙物JMPCXLZ:LDIR17,$31;機(jī)器人右轉(zhuǎn)OUTPB,R17JMPCXEND【程序分析】這段指令表示機(jī)器人向前運(yùn)行,當(dāng)安裝在機(jī)器人前面的傳感器檢測到有障礙物時(shí),機(jī)器人右轉(zhuǎn),從而避開障礙物。程序中“CX”、“LZ”稱為為標(biāo)號(hào),描述指令的位置?!癝BIC”是條件跳轉(zhuǎn)指令,表示當(dāng)PC0為0時(shí)跳轉(zhuǎn);否則執(zhí)行下一條語句。其中,“PC0”指的是PC口的第1位。當(dāng)PC0為0時(shí),表示機(jī)器人上的傳感器有信號(hào),說明機(jī)器人前方有障礙,此時(shí)程序跳轉(zhuǎn)至“LZ”所在的語句,執(zhí)行機(jī)器人右轉(zhuǎn)程序。“JMP”是無條件跳轉(zhuǎn)指令,當(dāng)執(zhí)行了“JMPCX”程序則返回到到“CX”位置繼續(xù)執(zhí)行。4.機(jī)器人避開障礙物二、程序流程圖1.什么是程序流程圖程序流程圖是用規(guī)定的圖形、連線和文字表示算法的一組圖形。在程序設(shè)計(jì)階段,用以表示程序運(yùn)行順序的流程圖稱為程序流程圖,簡稱流程圖。流程圖是程序設(shè)計(jì)中很有用的工具,它直觀、清晰、易懂、便于檢查、交流和修改,詳細(xì)的流程圖可以作為編寫程序的依據(jù)。繪制制流程圖后,根據(jù)流程圖編寫程序,可以使問題簡單化,易于理解。2.程序流程圖常用的符號(hào)在繪制流程圖時(shí),通常須采用符合國家標(biāo)準(zhǔn)的圖形符號(hào)。標(biāo)準(zhǔn)程序流程圖中常用的符號(hào)及名稱如下:起止框:一個(gè)程序的開始或結(jié)東。處理框:要處理的內(nèi)容。判斷框:框中的內(nèi)容為條件。輸入輸出框:數(shù)據(jù)的輸入或輸出。流程線:程序的流向。3.程序流程圖圖3-2為一程序流程圖實(shí)例,表示示當(dāng)機(jī)器人沿直線向前行走的過程中遇到障礙物時(shí),機(jī)器人會(huì)發(fā)出警報(bào)聲,并停止前進(jìn)。下面以該流程圖為例,說明程序流程圖中常用符號(hào)的畫法、意義及其在流程圖中的使用規(guī)則。
(1)圖中描述文字為“開始”和“結(jié)束”的扁扁橢圓形符號(hào)為起止框,它表示流程圖的起點(diǎn)及終點(diǎn)。每個(gè)流程圖只能有個(gè)“開始”和一個(gè)“結(jié)束”。
(2)圖中帶有箭頭的直線稱為流程線,表示程序執(zhí)行的路徑;流程線上的箭頭代表方向。
(3)圖中描述文字為“前進(jìn)”和“發(fā)報(bào)警信號(hào)并停車”的矩形符號(hào)為處理框,它表示各種處理功能的符號(hào):矩形內(nèi)的文字表示進(jìn)行什么處理。
(4)圖中描述文字為“有有障礙物?”
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 危險(xiǎn)品事故調(diào)查案例分析考核試卷
- 服務(wù)質(zhì)量評(píng)估與反饋系統(tǒng)考核試卷
- 保健品品牌宣傳策略的口碑營銷策略考核試卷
- 志愿者服務(wù)心理素質(zhì)培養(yǎng)方案考核試卷
- 技能鑒定試題及答案
- 荊州日?qǐng)?bào)面試題及答案
- 設(shè)施維護(hù)綠色節(jié)能技術(shù)應(yīng)用考核試卷
- 系統(tǒng)集成方案設(shè)計(jì)考核試卷
- 兒科出科試題及答案
- 外事實(shí)務(wù)試題及答案
- 泰享懂你 康養(yǎng)友伴-2024年新康養(yǎng)需求洞察白皮書-華泰人壽
- 校長競聘筆試題目及答案
- 2025-2030“一帶一路”背景下甘肅省區(qū)域經(jīng)濟(jì)發(fā)展分析及投資前景報(bào)告
- 2025五級(jí)應(yīng)急救援員職業(yè)技能精練考試題庫及答案(濃縮400題)
- 反恐知識(shí)宣傳主題班會(huì)
- 基礎(chǔ)護(hù)理技能實(shí)訓(xùn) 課件 模塊一項(xiàng)目四任務(wù)三血壓的測量
- 貴州省2024年12月普通高中學(xué)業(yè)水平合格性考試數(shù)學(xué)試卷(含答案)
- 北京市西城區(qū)2022-2023學(xué)年三年級(jí)上學(xué)期英語期末試卷(含聽力音頻)
- 海洋機(jī)器人與人工智能知到智慧樹章節(jié)測試課后答案2024年秋哈爾濱工程大學(xué)
- 2024-2025學(xué)年人教新目標(biāo)英語八年級(jí)下冊(cè)期末綜合檢測卷(含答案)
- 涼糕擺攤技術(shù)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論