




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
機(jī)器人程序設(shè)計(C語言)新工科建設(shè)之路·機(jī)器人技術(shù)與應(yīng)用系列循環(huán)程序設(shè)計一讓機(jī)器人動起來第三章C51單片機(jī)的輸入/輸出接口控制機(jī)器人運動的伺服電機(jī)以不同速度運動是通過單片機(jī)的輸入/輸出(I/O)接口輸出不同脈沖序列來實現(xiàn)的。C51系列單片機(jī)有4個8位的并行I/O接口:P0、P1、P2和P3。AT89S52引腳:AT89S52有44根引腳,其中32根是I/O端口引腳,如圖3-1所示。其中有29根具備兩種用途(用圓括號寫出),既可作為I/O端口,也可作為控制信號或地址及數(shù)據(jù)線。單燈閃爍控制01為了驗證P1接口的輸出電平是不是由你編寫的程序控制,可以采用一個非常簡單的辦法,就是在想驗證的接口引腳上接一個發(fā)光二極管。當(dāng)輸出高電平時,發(fā)光二極管滅;輸出低電平時,發(fā)光二極管亮。單燈閃爍控制單燈閃爍控制LED電路元器件(1)紅色發(fā)光二極管,2個。(2)470Ω電阻,2個。單燈閃爍控制LED電路搭建在搭建電路前先認(rèn)識面包板。教學(xué)板前端,那塊白色的、有許多孔或插座的區(qū)域稱為無焊料的面包板。面包板連同它三邊黑色插孔稱為原型區(qū)域,如圖3-2所示。單燈閃爍控制LED電路搭建單燈閃爍控制LED電路搭建在面包板插孔插上元器件,如本任務(wù)用到的電阻、LED燈,就可以構(gòu)成本書例程的電路。元器件靠面包板插孔彼此連接。單燈閃爍控制LED電路搭建面包板上共17列插孔,列與列之間互不相通。整個面包板通過中間槽分為兩塊,它們之間的插座互不相通。每一小列由5個插孔組成,這5個插孔在面包板上是電氣相連的。單燈閃爍控制現(xiàn)在按照圖3-3所示電路,在教學(xué)板的面包板上搭建起實際電路。LED電路搭建單燈閃爍控制圖3-3所示的電路原理圖指引你如何連接電路元器件,使用唯一的符號來表示不同的元器件。這些器件符號用細(xì)線相連,表示它們是電氣相連的。在電路原理圖中,當(dāng)兩個器件符號用細(xì)線相連時,表示它們之間是電氣連接的。細(xì)線還可以將元器件和電壓端口連接。LED電路搭建單燈閃爍控制圖3-4為元器件電路符號與實際元器件的對應(yīng)圖。元器件符號圖的上方就是該元器件的零件圖。LED電路搭建單燈閃爍控制LED電路搭建根據(jù)圖3-3實際搭建好的電路參考圖3-5所示。單燈閃爍控制LED電路搭建實際搭建電路時應(yīng)注意:確認(rèn)發(fā)光二極管的短針腳(陰極)插入面包板,通過電阻與P10相連。確認(rèn)發(fā)光二極管的長針腳(陽極)插入"+5V"插口,這里+5V就是電路圖上的Vcc。單燈閃爍控制HighLowLed.c是如何工作的與第1章程序相比,本例程多使用了一個頭文件BoeBot.h,其中定義了兩個延時函數(shù);voiddelay_nms(unsignedinti)和voiddelay_nus(unsignedinti)。單燈閃爍控制修飾符unsigned放到int前面,指定后面的變量為無符號數(shù)。如果加上修飾符signed,則指定是“有符號數(shù)”。如果既不指定signed,也不指定為unsigned,則隱含為有符號(signed)。實際上,signed是可以省略的。無符號整型數(shù)據(jù)unsignedint單燈閃爍控制單片機(jī)端口引腳信號隨時間的變化可以用時序圖來描述,一個端口引腳的時序圖反應(yīng)的是其高、低電壓信號與時間的變化關(guān)系圖。時序圖簡介機(jī)器人伺服電機(jī)控制信號02機(jī)器人伺服電機(jī)控制信號圖3-8所示是高電平持續(xù)1.5ms,低電平持續(xù)20ms,然后不斷重復(fù)地控制脈沖序列。該脈沖序列發(fā)給經(jīng)過零點標(biāo)定后的伺服電機(jī),伺服電機(jī)不會旋轉(zhuǎn)。如果此時電機(jī)旋轉(zhuǎn),那么表明電機(jī)需要標(biāo)定。機(jī)器人伺服電機(jī)控制信號由圖3-8、圖3-9和圖3-10可知,控制電機(jī)運轉(zhuǎn)速度的是高電平持續(xù)的時間,當(dāng)高電平持續(xù)時間為1.3ms時,電機(jī)順時針全速旋轉(zhuǎn);當(dāng)高電平持續(xù)時間1.7ms時,電機(jī)逆時針全速旋轉(zhuǎn)。按照任務(wù)1中給單片機(jī)微控制器編程,使P1端口的兩個引腳(P1_0和P1_1)控制兩個LED燈閃爍,重新給單片機(jī)編程,就可以給這兩個引腳發(fā)出伺服電機(jī)的控制信號。機(jī)器人伺服電機(jī)控制信號機(jī)器人伺服電機(jī)控制信號按照圖3-12所示的伺服電機(jī)與教學(xué)板的連接原理圖和實際接線圖,將兩個電機(jī)的連接線連接到教學(xué)板上。具體連接時,注意將P1_0引腳的控制輸出用來控制右邊的伺服電機(jī),P1_1則用來控制左邊的伺服電機(jī)。機(jī)器人伺服電機(jī)控制信號機(jī)器人伺服電機(jī)控制信號單片機(jī)編程發(fā)給伺服電機(jī)的高、低電平信號必須具備更精確的時間。機(jī)器人伺服電機(jī)控制信號用下面的程序片段代替例程HighLowLed.c中相應(yīng)的程序片段,編譯、連接、執(zhí)行代碼,觀察連接到P1_0腳的機(jī)器人輪子是不是逆時針全速旋轉(zhuǎn)。計數(shù)并控制循環(huán)次數(shù)03計數(shù)并控制循環(huán)次數(shù)for語句最方便的控制一段代碼執(zhí)行次數(shù)的方法是利用for循環(huán),語法如下:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語句計數(shù)并控制循環(huán)次數(shù)for語句它的執(zhí)行過程如下:(1)求解表達(dá)式1。(2)求解表達(dá)式2,若其值為真(非0),則執(zhí)行for語句中指定的內(nèi)嵌語句,然后執(zhí)行第(3)步;若其值為假(0),則結(jié)束循環(huán),轉(zhuǎn)到第(5)步。(3)求解表達(dá)式3。(4)轉(zhuǎn)回第(2)步繼續(xù)執(zhí)行。(5)循環(huán)結(jié)束,執(zhí)行for語句下面的一個語句。計數(shù)并控制循環(huán)次數(shù)for語句for語句最簡單的應(yīng)用形式,也就是最易理解的形式如下:for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增/減值)語句計數(shù)并控制循環(huán)次數(shù)自增和自減C語言有兩個很有用的運算符-—自增和自減,即“++”和“_”。運算符“艸”是操作數(shù)加1,而“-”是操作數(shù)減1。換句話說:“x=x+1”同“x++”,“x=x-1”同“x—”。計數(shù)并控制循環(huán)次數(shù)for循環(huán)控制電機(jī)的運行時間下面是for循環(huán)的例子,它會使電機(jī)運行幾秒鐘。用計算機(jī)來控制機(jī)器人的運動04用計算機(jī)來控制機(jī)器人的運動scanf()函數(shù)scanf()函數(shù)與printf()函數(shù)對應(yīng),在C語言庫的stdio.h中定義。它的一般形式如下:scanf("格式控制字符串",地址列表);用計算機(jī)來控制機(jī)器人的運動scanf()函數(shù)程序運行結(jié)果如圖3-13所示。①輸出“ProgramRunning!”和“Pleaseinputpulsenumber:”。②程序處于等待狀態(tài),等待輸入數(shù)據(jù)。③在發(fā)送區(qū)(顯示窗口下面的窗口)輸入數(shù)據(jù)并回車,然后單擊“發(fā)送”按鈕,將數(shù)據(jù)發(fā)送給變量PulseNumber。④scanf()函數(shù)收到數(shù)據(jù)后,執(zhí)行下面的語句,輸出“Pleaseinputpulseduration:”。⑤處于等待狀態(tài)。用計算機(jī)來控制機(jī)器人的運動scanf()函數(shù)程序運行結(jié)果如圖3-13所示。⑥在發(fā)送區(qū)再輸入數(shù)據(jù),然后單擊“發(fā)送”按鈕,將數(shù)據(jù)發(fā)送給變量PulseDuration。⑦程序接收到兩個數(shù)據(jù)后執(zhí)行剩余的程序,讓伺服電機(jī)運轉(zhuǎn)。用計算機(jī)來控制機(jī)器人的運動scanf()函數(shù)用計算機(jī)來控制機(jī)器人的運動工程素質(zhì)和技能歸納本章涉及的主要技能①C51系列單片機(jī)的引腳定義和分布。②用C51單片機(jī)的P1端口的位輸出控制單燈和雙燈閃爍,時序圖的概念,while循環(huán)的引入和延時函數(shù)的使用。③機(jī)器人伺服電機(jī)的控制脈沖序列,通過給C51編程讓其輸出這些控制脈沖序列。④自增運算符的使用。⑤for循環(huán)的使用以控制機(jī)器人的運動。⑥如何通過串口輸入數(shù)據(jù)控制機(jī)器人的運動。用計算機(jī)來控制機(jī)器人的運動科學(xué)精神的培養(yǎng)①比較BS2微控制器與C51單片機(jī)微控制器輸入、輸出接口的使用方法。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 投資協(xié)議書合同
- 用于解析域名的協(xié)議書是
- 物流公司合作協(xié)議書
- 應(yīng)急救援協(xié)作框架協(xié)議書
- 簽安置協(xié)議書了
- 協(xié)議書離婚冷靜期
- 傳統(tǒng)節(jié)慶文化活動方案策劃
- 離職被逼簽競業(yè)協(xié)議書
- 旅游團(tuán)隊租車合同樣本(2025年版)
- 財務(wù)公司咨詢方案選哪家
- 2012建設(shè)工程造價咨詢成果文件質(zhì)量標(biāo)準(zhǔn)
- 多模式數(shù)據(jù)融合在金融預(yù)測中的應(yīng)用
- 遼寧省大連市外研版七年級上冊 專項 五選四 短文選句 模擬練習(xí)
- 物業(yè)客戶投訴處理及技巧培訓(xùn)課件
- 紐約中央公園景觀分析
- 職業(yè)衛(wèi)生培訓(xùn)粉塵和噪聲
- 《趙威后問齊使》
- 紅色中國風(fēng)西安旅游PPT模板
- 三國志11全人物能力數(shù)值表
- 2023年09月黑龍江省綏化市“黑龍江人才周”引進(jìn)度1068名企事業(yè)單位人才筆試歷年難易錯點考題薈萃附帶答案詳解
- 籃球運動競賽的編排方法PPT課件模板
評論
0/150
提交評論