系統(tǒng)詳細(xì)設(shè)計報告_第1頁
系統(tǒng)詳細(xì)設(shè)計報告_第2頁
系統(tǒng)詳細(xì)設(shè)計報告_第3頁
系統(tǒng)詳細(xì)設(shè)計報告_第4頁
系統(tǒng)詳細(xì)設(shè)計報告_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、系統(tǒng)詳細(xì)設(shè)計報告 1設(shè)計要求設(shè)計一個狹窄足印的雙足競步機器人。結(jié)構(gòu)只有雙足、并只能以走路的方式來移動,機器人要分清楚正面及背面,以箭頭方向作為正面,是自主式脫線控制,用不多于6只伺服馬達(dá)和一個伺服馬達(dá)控制板來完成,機器人最大尺寸為200mm(長)X 200mm(寬)X 300mm(高),重量不超過1Kg.,狹窄足印競步機器人, 單足最大尺寸要能放入(長)150mm X (寬)60mm長方格內(nèi)。機器人頭部要能放入(長)200mm X (寬)100mm長方格內(nèi)。比賽場地(即擂臺,如圖2.1所示)大小為長、寬分別為是2000 mm,寬600mm的長方形矮臺,臺上表面即為擂臺場地。機器人從出發(fā)區(qū)啟動后

2、,沿著起點線走上擂臺。(見圖2) 圖2 機器人由與腳底板相鄰的舵機控制機器人的重心左右移動來實現(xiàn)前進(jìn)(見下圖1)與腳底板相連的舵機平放在腳底板上,舵機的扭力輸出軸與前進(jìn)方向平行。 圖1 1.1系統(tǒng)主要技術(shù)指標(biāo)及功能機器人通過步行的方式從起點線走到終點線(相距200cm,限寬60cm)。競賽開始時,機器人先向前走出3步距離、立正、然后臥下(身體向前)、向前翻跟斗3次,再起立、向前走出3步距離、立正、然后臥下(身體向后)、再向后翻跟斗2次、再起立、然后以輕快步履走向終點、參賽機器人要在5分鐘以內(nèi)完成所有動作。也就說機器人要沿著直線行走,并且要走得既快又穩(wěn)。從場地來看,雙足競步機器人的做工一定要精細(xì)

3、,做工的精度一定要高,必要時做到標(biāo)準(zhǔn)化。另一方面由于在機器人身上沒有各種輔助措施,機器人的穩(wěn)定性一地要強,應(yīng)用程序要穩(wěn)定,各關(guān)節(jié)的設(shè)計要合理可靠等。由于比賽中規(guī)定在完成全部動作且得分相同的情況下,按耗時越少排名越高的原則確定名次。所以,最重要的一點是要盡量減少機器人完成動作所用的時間。 2總體方案 2.1軟件應(yīng)用平臺方案 程序的軟件設(shè)計階段利用AVRmega128系列單片機仿真器進(jìn)行在線的編程調(diào)試,在PC機上編寫,然后通過串口COM1下載至仿真器,實現(xiàn)在線編程調(diào)試功能。軟件運行環(huán)境為Windows 7。 2.2機械構(gòu)造方案 根據(jù)確定的自由度配置方案以及選用的模擬舵機、控制板,設(shè)計機器人的零件。

4、本著結(jié)構(gòu)簡單、盡量采用通用零件、外形美觀等原則,對機器人的機構(gòu)及外觀進(jìn)行優(yōu)化。 2.3硬件電路方案 主板是采用AVR控制板原理圖,該主板是以ATmega128L單片機微控制器為核心,包括電源模塊、USB下載模塊、ISP下載模塊、電機驅(qū)動模塊、外部晶振以及各種I/O接口。為了滿足對機器人主控制平臺的需求,我們設(shè)計了基于AVR開發(fā)平臺的機器人主控制板。 主控制板 3硬件詳細(xì)設(shè)計 3.1硬件模塊框圖 3.2模塊方案分析比較 3.2.1主芯片 AVR控制板采用的是Atmega128L AVR芯片(如圖4-2所示),圖4-2 Atmega128L內(nèi)部結(jié)構(gòu)圖該芯片具有如下特點: 高性能、低功耗的 8 位A

5、VR 微處理器 先進(jìn)的RISC結(jié)構(gòu) 131 條指令 大多數(shù)指令執(zhí)行時間為單個時鐘周期 32個8位通用工作寄存器 全靜態(tài)工作 工作于16 MHz時性能高達(dá)16 MIPS 只需兩個時鐘周期的硬件乘法器 非易失性程序和數(shù)據(jù)存儲器 16K 字節(jié)的系統(tǒng)內(nèi)可編程Flash 擦寫壽命: 10,000次 具有獨立鎖定位的可選Boot代碼區(qū) 通過片上Boot程序?qū)崿F(xiàn)系統(tǒng)內(nèi)編程 真正的同時讀寫操作 512字節(jié)的EEPROM 擦寫壽命: 100,000次 1K字節(jié)的片內(nèi)SRAM 可以對鎖定位進(jìn)行編程以實現(xiàn)用戶程序的加密 JTAG 接口(與IEEE 1149.1標(biāo)準(zhǔn)兼容) 符合JTAG標(biāo)準(zhǔn)的邊界掃描功能 支持?jǐn)U展的片

6、內(nèi)調(diào)試功能 通過JTAG接口實現(xiàn)對Flash、EEPROM、熔絲位和鎖定位的編程外設(shè)特點:1. 兩個具有獨立預(yù)分頻器和比較器功能的8位定時器 /計數(shù)器2. 一個具有預(yù)分頻器、比較功能和捕捉功能的16位定時器/ 計數(shù)器3. 具有獨立振蕩器的實時計數(shù)器RTC4. 四通道PWM5. 8路10 位ADC6. 8個單端通道7. TQFP封裝的7個差分通道8. 2個具有可編程增益 (1x, 10x, 或200x)的差分通道9. 面向字節(jié)的兩線接口10. 兩個可編程的串行USART11. 可工作于主機/ 從機模式的SPI串行接口12. 具有獨立片內(nèi)振蕩器的可編程看門狗定時器13. 片內(nèi)模擬比較器 特殊的處理

7、器特點:1. 上電復(fù)位以及可編程的掉電檢測2. 片內(nèi)經(jīng)過標(biāo)定的RC振蕩器3. 片內(nèi)/ 片外中斷源4. 6種睡眠模式: 空閑模式、ADC噪聲抑制模式、省電模式、掉電模式、Standby 模式以及擴(kuò)展的Standby模式 I/O和封裝32 個可編程的I/O口40 引腳PDIP封裝, 44 引腳TQFP封裝,與44 引腳MLF封裝 工作電壓: ATmega16L:2.7 - 5.5VATmega16:4.5 - 5.5V 速度等級 0 - 8 MHz ATmega16L0 - 16 MHz ATmega16 ATmega16L 在1 MHz, 3V, 25C時的功耗 正常模式: 1.1 mA 空閑模

8、式: 0.35 mA 掉電模式: 1 A下圖4-3為ATmega16L實物圖。圖4-3 ATmega16L芯片上述這些特點使采用AVR單片機的應(yīng)用系統(tǒng)不僅具有運行速度快、結(jié)構(gòu)簡單、功能強大的特點,而且具有高可靠性和良好的經(jīng)濟(jì)型。AVR軟件可以直接進(jìn)行C/C+語言程序開發(fā),繞開了復(fù)雜難懂的匯編,從而可以進(jìn)行更有效率的系統(tǒng)設(shè)計開發(fā)工作。 3.2.2舵機選型 本設(shè)計所選舵機為北京森漢科技有限公司生產(chǎn)的SH-14-M舵機,該類型舵機的扭力達(dá)到14公斤且為同軸雙端輸出銅合金齒輪舵機。價格適中且規(guī)格參數(shù)能夠滿足雙足機器人的各項性能要求。并且可以進(jìn)行模擬位置鎖存,大大減少控制端的數(shù)據(jù)量,適合多級聯(lián)動控制。裝

9、有防撞減震軸承,減少磨損,并且密封。采用國際標(biāo)準(zhǔn)的PWM控制格式,便于移植到其他平臺使用。因此在綜合了開銷,性能等一系列因素后我們選擇了SH-14-M型舵機。舵機SH-14-M實物圖4-4所示:圖4-4 舵機SH-14-M實物圖舵機SH-14-M參數(shù)如表1所示:表1 舵機SH-14-M參數(shù)表參數(shù)名稱工作速度工作電壓 扭矩重量尺寸參數(shù)值0.16秒/60度5-9V14kg/cm56g40x20x46mm本設(shè)計需要使用6個舵機,其接口為硬件開發(fā)板PWM1-PWM10接口。 一個舵機內(nèi)部包括了一個小型直流馬達(dá)、一組變速齒輪組、一個反饋可調(diào)電位器和一塊電子控制板。其中,高速轉(zhuǎn)動的直流馬達(dá)提供了原始動力,

10、帶動變速齒輪組,使之產(chǎn)生高扭力的輸出,齒輪組的變速比愈大,舵機的輸出扭力也愈大,也就是說越能承受更大的重量,單轉(zhuǎn)動的速度也愈低。一個微型伺服馬達(dá)是一個典型閉環(huán)反饋系統(tǒng),其原理可由下圖4-5所示:圖4-5 舵機的工作原理示意圖減速齒輪組由馬達(dá)驅(qū)動,其輸出端帶動一個線性的比例電位器作位置檢測,該電位器把轉(zhuǎn)角坐標(biāo)轉(zhuǎn)換為一比例電壓反饋給控制單元,控制單元將其與輸入的控制脈沖信號比較,產(chǎn)生糾正脈沖,并驅(qū)動馬達(dá)正向或反向地轉(zhuǎn)動,使齒輪組的輸出位置與期望值相符,從而達(dá)到舵機精確定位的目的。SH-14-M舵機的轉(zhuǎn)角達(dá)到 185 度,由于采用 8 為 CPU控制,所以控制精度最大為 256 份。經(jīng)過實際測試和規(guī)

11、劃,分了 250份。將 0185 分為 250 份,每份 0.74 度。 控制所需的 PWM 寬度為 0.5ms2.5ms,寬度 2ms。 舵機的控制信號是脈沖位置調(diào)制信號,周期一般為2ms,當(dāng)方波的脈沖寬度改變時,舵機轉(zhuǎn)軸的角度發(fā)生變化,角度變化與脈沖寬度的變化成正比。一般舵機的輸出軸轉(zhuǎn)角與輸入信號的脈沖寬度之間的關(guān)系可用下圖4-6所示。 3.3步態(tài)規(guī)劃方案選擇 3.3.1步態(tài)規(guī)劃基本原則雙足競步機器人的步態(tài)規(guī)劃,是指機器人行走過程中其各組成部分運動軌跡的規(guī)劃,比如說,腳掌何時離開地面、擺動相中整個腳掌在空中的軌跡、何時落地等。關(guān)鍵之就在于所規(guī)劃的軌跡必須滿足零力矩點(ZMP)穩(wěn)定條件,否則

12、,機器人不能穩(wěn)定步行步態(tài)規(guī)劃要解決的問題主要有:1. 保證機器人本體不和環(huán)境或者自身發(fā)生干涉,從而導(dǎo)致無法實現(xiàn)預(yù)定的軌跡。2. 保證機器人的穩(wěn)定性。機器人的穩(wěn)定性問題一直是困擾兩足步行機器人發(fā)展的重要問題,由于各個關(guān)節(jié)間的藕合作用,很難設(shè)計出理想的ZMP軌跡。 3.3.2步態(tài)規(guī)劃具體方法 合適的步態(tài)設(shè)計是機器人實現(xiàn)動態(tài)行走的關(guān)鍵。在計算各關(guān)節(jié)軌跡之前,首先要建立機器人所在的空間坐標(biāo)系。坐標(biāo)系的 x軸指向機器人的正面,y軸由右側(cè)指向左側(cè),z軸垂直向上,原點0位于后腳完全落地時踝關(guān)節(jié)在地面上的垂直投影處。當(dāng)機器人沿著直線往前走時,由于只考慮前向運動,雙腳和 腰部在側(cè)方向( y軸)上的位置是不變的,

13、因為設(shè)定條件為機器人在水平地面行走,且腳面抬起高度為0,所以z軸位置不變。因此,僅僅討論在 x平面內(nèi)的軌跡。機器人所在的空間坐標(biāo)系如圖3-1 所示 。圖3-1 機器人的空間坐標(biāo)系雙足機器人完整的步行過程包括三個階段(1) 起步階段:由初始的雙腿并立靜止?fàn)顟B(tài)變化到行走狀態(tài),一條腿向前跨出了半步距離,髖部速度從零上升到恒定值; (2) 整步階段:兩條腿交替地向前跨出一步距離,髖部速率保持不變; (3) 落步階段:后腿向前跨出半步,落在與另一條腿并行的部位,髖部速度減少到零,恢復(fù)成雙腿并立靜止?fàn)顟B(tài)。主要討論整步的軌跡計算。前向運動的規(guī)劃步驟如下: (1) 確定步速和步長; (2) 設(shè)定初始參數(shù),計算

14、踝關(guān)節(jié)和髖關(guān)節(jié)軌跡 ; (3) 根據(jù)踝關(guān)節(jié)和髖關(guān)節(jié)軌跡計算膝關(guān)節(jié)軌跡; (4) 計算ZMP軌跡; (5) 改變參數(shù)值,返回第 2步; (6) 選取具有最大穩(wěn)定性的軌跡。 步態(tài)規(guī)劃的流程圖如圖3-2所示。圖3-2 雙足機器人的步態(tài)規(guī)劃流程圖雙足步行機器人行走控制的關(guān)鍵是根據(jù)踝關(guān)節(jié)和髖關(guān)節(jié)的運動軌跡確定膝關(guān)節(jié)的運動軌跡。在腳面抬起高度為0的情況下,膝關(guān)節(jié)的軌跡由步幅唯一決定,而步幅和步速則可唯一確定出髖關(guān)節(jié)的軌跡,其步態(tài)周期圖如圖3-3所示。圖3-3 步態(tài)周期圖因為單支撐和雙支撐是一個交替的過程,雙腿支撐需要有一定時間來保證ZMP點由后腳移動到前腳,所以我們?nèi)‰p支撐的時間間隔為20%個周期。從上圖

15、可以看出在一個完整的步態(tài)周期里包括了兩個雙支撐和兩個單支撐時間段,雙支撐占20%個周期,單支撐占80%個周期。對于單腿來說整個周期里只有一個擺動周期,占40%個周期,支撐周期由一個單支撐和兩個雙支撐組成,占60%個周期。根據(jù)機器人自身結(jié)構(gòu)特點,在行走時采用“平行步態(tài)”,如圖所示。機器人采用這種步態(tài)行走時,兩腳的落腳痕跡是相互平行的,實現(xiàn)這種步態(tài)行走的機器人對其自由度要求較少,但對穩(wěn)定平衡提出了較高的要求。 3.4控制系統(tǒng)軟件設(shè)計 3.4.1ATmega128L的介紹 ATmega128是基于增強的AVR RISC結(jié)構(gòu)的低功耗8 位CMOS微控制器。由于其先進(jìn)的指令集以及單時鐘周期指令執(zhí)行時間,

16、ATmega128 的數(shù)據(jù)吞吐率高達(dá)1 MIPS/MHz,從而可以減緩系統(tǒng)在功耗和處理速度之間的矛盾。ATmega128 AVR 內(nèi)核具有豐富的指令集和32個通用工作寄存器。所有的寄存器都直接與運算邏輯單元(ALU) 相連接,使得一條指令可以在一個時鐘周期內(nèi)同時訪問兩個獨立的寄存器。這種結(jié)構(gòu)大大提高了代碼效率,并且具有比普通的CISC 微控制器最高至10倍的數(shù)據(jù)吞吐率。為了獲得最高的性能以及并行性, AVR 采用了Harvard 結(jié)構(gòu),具有獨立的數(shù)據(jù)和程序總線。程序存儲器里的指令通過一級流水線運行。CPU 在執(zhí)行一條指令的同時讀取下一條指令( 在本文稱為預(yù)取)。這個概念實現(xiàn)了指令的單時鐘周期運

17、行。程序存儲器是可以在線編程的FLASH??焖僭L問寄存器文件包括32個8 位通用工作寄存器,訪問時間為一個時鐘周期。從而實現(xiàn)了單時鐘周期的ALU 操作。在典型的ALU 操作中,兩個位于寄存器文件中的操作數(shù)同時被訪問,然后執(zhí)行運算,結(jié)果再被送回到寄存器文件。整個過程僅需一個時鐘周期。寄存器文件里有6個寄存器可以用作3個16 位的間接尋址寄存器指針以尋址數(shù)據(jù)空間,實現(xiàn)高效的地址運算。其中一個指針還可以作為程序存儲器查詢表的地址指針。這些附加的功能寄存器即為16 位的X、Y、Z 寄存器。ALU支持寄存器之間以及寄存器和常數(shù)之間的算術(shù)和邏輯運算。ALU也可以執(zhí)行單寄存器操作。運算完成之后狀態(tài)寄存器的內(nèi)

18、容得到更新以反映操作結(jié)果。程序流程通過有/ 無條件的跳轉(zhuǎn)指令和調(diào)用指令來控制,從而直接尋址整個地址空間。大多數(shù)指令長度為16 位,亦即每個程序存儲器地址都包含一條16 位或32 位的指令。程序存儲器空間分為兩個區(qū):引導(dǎo)程序區(qū)(Boot 區(qū)) 和應(yīng)用程序區(qū)。這兩個區(qū)都有專門的鎖定位以實現(xiàn)讀和讀/寫保護(hù)。用于寫應(yīng)用程序區(qū)的SPM 指令必須位于引導(dǎo)程序區(qū)。在中斷和調(diào)用子程序時返回地址的程序計數(shù)器(PC) 保存于堆棧之中。堆棧位于通用數(shù)據(jù)SRAM,因此其深度僅受限于SRAM 的大小。在復(fù)位例程里用戶首先要初始化堆棧指針SP。這個指針位于I/O 空間,可以進(jìn)行讀寫訪問。數(shù)據(jù)SRAM 可以通過5 種不同的

19、尋址模 式進(jìn)行訪問。3.4.2程序設(shè)計 主程序按照規(guī)則要求完成對各個功能模塊的邏輯調(diào)用和時序的調(diào)用開始時在可以躲在障礙物的情況下,先走3步、立正、然后臥下(身體向前)、向前翻跟斗3次,再起立、向前走3步、立正、然后臥下(身體向后)、再向后翻跟斗2次、再起立、然后以輕快步履走向終點、要在指定5分鐘或少于指定時間內(nèi)完成所有動作,及要走到終點。當(dāng)系統(tǒng)開始后進(jìn)行初始化,機器人呈現(xiàn)立正狀態(tài)。緊接著紅外傳感器檢測是否有障礙物,如有障礙物則執(zhí)行避障子程序,否則執(zhí)行正常的行走子程序(其中行走子程序包括前進(jìn)和前后翻動作),然后判斷是否走完所需要的動作,如完成則程序結(jié)束,否則返回紅外檢測處開始執(zhí)行,程序重復(fù)執(zhí)行最

20、終完成設(shè)定的動作。其主程序流程圖見圖5-2所示。機器人要完成的行走任務(wù)為:先走3步、立正、向前翻跟斗3次、向前走3步、再向后翻跟斗2次、然后以輕快步履走向終點。行走的各階段都有其標(biāo)志位,當(dāng)進(jìn)入行走子程序時,開始判斷此時要執(zhí)行的動作是前進(jìn)、向前翻還是向后翻,判斷完后執(zhí)行相應(yīng)的動作并返回主程序并繼續(xù)檢測障礙物。其行走子程序流程圖如下圖5-3所示。4調(diào)試與測試方案4.1主控制板得設(shè)計與調(diào)試4.1.1PCB設(shè)計技巧 為了滿足對機器人主控制平臺的需求,我們設(shè)計了基于AVR開發(fā)平臺的機器人主控制板。機器人主控制板的原理圖如附錄1所示。進(jìn)行PCB設(shè)計時的技巧和方法如下: (1) 傳輸線拐角要采用45角,以降

21、低回?fù)p。 (2) 要采用絕緣常數(shù)值按層次嚴(yán)格受控的高性能絕緣電路板。這種方法有利于對絕緣材料與鄰近布線之間的電磁場進(jìn)行有效管理。 (3) 要完善有關(guān)高精度蝕刻的PCB設(shè)計規(guī)范。要考慮規(guī)定線寬總誤差為+/-0.0007英寸、對布線形狀的下切(undercut)和橫斷面進(jìn)行管理并指定布線側(cè)壁電鍍條件。對布線(導(dǎo)線)幾何形狀和涂層表面進(jìn)行總體管理,對解決與微波頻率相關(guān)的趨膚效應(yīng)問題及實現(xiàn)這些規(guī)范相當(dāng)重要。 (4) 突出引線存在抽頭電感,要避免使用有引線的組件。高頻環(huán)境下,最好使用表面安裝組件。 (5) 對信號過孔而言,要避免在敏感板上使用過孔加工(pth)工藝,因為該工藝會導(dǎo)致過孔處產(chǎn)生引線電感。如

22、一個20層板上的一個過孔用于連接1至3層時,引線電感可影響4到19層。 (6) 要提供豐富的接地層。要采用模壓孔將這些接地層連接起來防止3維電磁場對電路板的影響。 (7) 要選擇非電解鍍鎳或浸鍍金工藝,不要采用HASL法進(jìn)行電鍍。這種電鍍表面能為高頻電流提供更好的趨膚效應(yīng)此外,這種高可焊涂層所需引線較少,有助于減少環(huán)境污染。(8) 阻焊層可防止焊錫膏的流動。但是,由于厚度不確定性和絕緣性能的未知性,整個板表面都覆蓋阻焊材料將會導(dǎo)致微帶設(shè)計中的電磁能量的較大變化。一般采用焊壩(solder dam)來作阻焊層。4.1.2 PCB調(diào)試心得 硬件電路部分,由于原理圖的簡單而正確,所以畫的PCB,刻出

23、來的單片機的最小系統(tǒng)板也基本是沒什么問題的,電路調(diào)試階段主要出現(xiàn)一些焊接上的問題,因為是AD的初學(xué)者,所以也會有一點畫板子過程當(dāng)中出現(xiàn)的問題,比如封轉(zhuǎn)畫的不合適等。貼片元件的焊接,主要難度在主控芯片的焊接,這是個熟能生巧的活,當(dāng)然自己的細(xì)心很重要。測試時,一點一點的測,發(fā)現(xiàn)有問題耐心解決,勿要動不動就重新焊板子,這樣解決不了任何問題,只是一味浪費元件材料和時間。4.2舵機調(diào)試 在軟件部分,就雙足競步機器人的編程中可以體會到,整個程序并不復(fù)雜。主要圍繞PWM波的控制,通過讓單片機輸出端口產(chǎn)生高低平而產(chǎn)生PWM波,從控制一個舵機動到控制多個舵機同時動。主要用到兩個定時器,一個用來控制PWM波的周期

24、,一個定時器用來控制PWM波的脈寬,通過給舵機賦不同脈寬的PWM波,使得舵機產(chǎn)生不同的角度,以形成一系列的動作,讓機器人動起來。多級的調(diào)試中主要是機器人步伐的分解。通過用上位機軟件進(jìn)行機器人步伐的分解。步伐的分解基本上是個經(jīng)驗活。5附錄 5.1電路原理圖 5.2 PCB布線圖 5.3程序附件#include#include /定義動作作態(tài)及動作數(shù) unsigned int dj_number=6;/定義舵機的個數(shù) unsigned int dj_state=1;/舵機狀態(tài)數(shù)volatile unsigned int count=0,count1=0;unsigned int data126=

25、95,93,85,82,98,85, /立正到起步 93,93,81,90,98,104, 93,96,81,53,113,90, 82,113,81,53,113,90, 82,113,95,53,113,90, 81,104,95,60,117,90, /循環(huán)走路 81,104,81,60,117,99, 117,77,90,89,81,99, 113,72,90,93,81,81, 113,72,81,93,81,90, 95,95,81,60,117,90, 81,104,95,60,117,90 ; volatile unsigned int state=0; volatile un

26、signed int init_dj6=90,90,80,80,90,80; unsigned int i=10;/是一個全局常量,主要是在舵機角度是否到位數(shù)組中用 unsigned int xunji(void);/引導(dǎo)機器人行走函數(shù) void change(unsigned int angle);/將角度裝換成計數(shù)初值得函數(shù) void servo(int dn,int s);/判斷一個舵機是否轉(zhuǎn)到位的函數(shù)void Delay_us(unsigned int count) unsigned int j = 0,s; for(s=count;s0;s-) for(j=16;j0;j-);/-函

27、 數(shù) 名:Delay_ms(unsigned int count)void Delay_ms(unsigned int count1) unsigned int j; for(j=count1;j0;j-) Delay_us(400);/-/角度與時間轉(zhuǎn)換及初值計算void change(unsigned int angle) int t=0;/將角度轉(zhuǎn)換為時間 /t=500+(2/180)*angle*1000; t=2*(angle*100/9+600); /因為是16M的晶振,如是8m則無需*2 / TCNT1H=(int)(65536-t)/256;/在將時間轉(zhuǎn)化為計數(shù)初值 TCNT1L=(int)(65536-t)%256; sei(); / 開定時器1,0X02=8分頻 /-/-確定輸出端口 void whichout(unsigned int i) switch(i) case 1:PORTA=0X01;break; case 2:PORTA=0X02;break; case 3:PORTA=0X04;break; cas

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論