freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于mc9s12xs128微控制器智能車的軟件設(shè)計(jì)-wenkub

2023-07-08 17:18:01 本頁(yè)面
 

【正文】 me Simulaor amp。打開(kāi)bin文件夾,這就是編譯的結(jié)果。 編寫代碼工程文件生成以后,回到自動(dòng)生成的文件系統(tǒng)。   它是一個(gè)單一的開(kāi)發(fā)環(huán)境,在所有所支持的工作站和個(gè)人電腦之間保持一致。 CodeWarrior介紹CodeWarrior[9]包括構(gòu)建平臺(tái)和應(yīng)用所必需的所有主要工具: IDE、編譯器、調(diào)試器、編輯器、鏈接器、匯編程序等。它擁有一個(gè)MSCAN模塊,兼容CAN A、B;一個(gè)串行外設(shè)接口(SPI)模塊;兩個(gè)支持LIN的串行通信接口(SCI);高達(dá)91個(gè)通用輸入/輸出(GPIO)引腳。S12XS系列保留了S12X CPU,去掉了另一個(gè)CPU——XGATE,保留了先進(jìn)的技術(shù),簡(jiǎn)化了操作,是S12X系列的經(jīng)濟(jì)型產(chǎn)品,目前有三種型號(hào):XS25XS128和XS64,三者除了在內(nèi)存方面有些差異,其余資源基本相同。S12X系列的CPU以復(fù)雜指令集CISC架構(gòu),集成了中斷控制器,有豐富的尋址方式。但不可諱言的,本土廠商的價(jià)格戰(zhàn)是對(duì)外商造成威脅的關(guān)鍵因素。MASKROM的MCU價(jià)格便宜,但程序在出廠時(shí)已經(jīng)固化,適合程序固定不變的應(yīng)用場(chǎng)合;FALSHROM的MCU程序可以反復(fù)擦寫,靈活性很強(qiáng),但價(jià)格較高,適合對(duì)價(jià)格不敏感的應(yīng)用場(chǎng)合或做開(kāi)發(fā)用途;OTPROM的MCU價(jià)格介于前兩者之間,同時(shí)又擁有一次性可編程能力,適合既要求一定靈活性,又要求低成本的應(yīng)用場(chǎng)合,尤其是功能不斷翻新、需要迅速量產(chǎn)的電子產(chǎn)品。)第二章 MCU 什么是MCU? MCU(Micro Control Unit)中文名稱為微控制單元,又稱單片微型計(jì)算機(jī)(Single Chip Microputer)或者單片機(jī),是指隨著大規(guī)模集成電路的出現(xiàn)及其發(fā)展,將計(jì)算機(jī)的CPU、RAM、ROM、定時(shí)數(shù)器和多種I/O接口集成在一片芯片上,形成芯片級(jí)的計(jì)算機(jī),為不同的應(yīng)用場(chǎng)合做不同組合控制。)第三章:開(kāi)發(fā)環(huán)境(介紹了IDE開(kāi)發(fā)環(huán)境,以及CodeWarrior的基本使用方法。其中PID控制以實(shí)現(xiàn)方法簡(jiǎn)單和控制過(guò)程穩(wěn)定可靠,而應(yīng)用范圍最廣,所以本文決定采用PID來(lái)作為小車方向和速度的控制算法。說(shuō)明該競(jìng)賽在全國(guó)高校中的影響力與日俱增,成為續(xù)教育部已舉辦的電子設(shè)計(jì)、數(shù)學(xué)建模、機(jī)械設(shè)計(jì)、結(jié)構(gòu)設(shè)計(jì)等四大專業(yè)競(jìng)賽之后的又一重要賽事。該競(jìng)賽以“立足培養(yǎng),重在參與,鼓勵(lì)探索,追求卓越”為指導(dǎo)思想,旨在促進(jìn)高等學(xué)校素質(zhì)教育,培養(yǎng)大學(xué)生的綜合知識(shí)運(yùn)用能力、基本工程實(shí)踐能力和創(chuàng)新意識(shí),激發(fā)大學(xué)生從事科學(xué)研究與探索的興趣和潛能,倡導(dǎo)理論聯(lián)系實(shí)際、求真務(wù)實(shí)的學(xué)風(fēng)和團(tuán)隊(duì)協(xié)作的人文精神,為優(yōu)秀人才的脫穎而出創(chuàng)造條件。本文主要介紹了,使用S12微控制器為核心和紅外收發(fā)管為傳感器智能車系統(tǒng)的軟件設(shè)計(jì)。目錄摘要 IV關(guān)鍵字 IVAbstract VKey words V第一章 緒論 1 背景 1 現(xiàn)狀 1 技術(shù)路線 1 本文結(jié)構(gòu) 2第二章 MCU 3 什么是MCU? 3 MC9S12XS128微控制器 4第三章 開(kāi)發(fā)環(huán)境 6 CodeWarrior介紹 6 新建工程 7 編寫代碼 7 編譯和仿真 7 調(diào)試程序 7 編程語(yǔ)言 8 規(guī)范化代碼 8第四章 總體設(shè)計(jì) 9 硬件設(shè)計(jì) 9 軟件設(shè)計(jì) 10第五章 軟件設(shè)計(jì) 12 系統(tǒng)模塊初始化 12 PLL 12 PIT 13 ADC 14 PWM 15 路面信息采集 16 數(shù)字濾波 17 黑線識(shí)別 17 起始線、十字線、窄道和坡道 18 黑線坐標(biāo)計(jì)算 19 PID控制算法 19 無(wú)線傳輸 21 23第六章 設(shè)計(jì)總結(jié) 25參考文獻(xiàn) 26附錄 27附錄一 27附錄二 27附錄三 28附錄四 28附錄五 29附錄六 30附錄七 34附錄八 35致謝 40 基于MC9S12XS128微控制器的智能車軟件設(shè)計(jì)與實(shí)現(xiàn)摘要2006年,第一屆“飛思卡爾”杯全國(guó)大學(xué)生智能車競(jìng)賽在清華大學(xué)舉行,隨著2009年第四屆競(jìng)賽的成功舉辦,該競(jìng)賽的影響力越來(lái)越大。包括PLL、PWM和ADC等主要模塊的初始化,以及方向和速度的PID控制算法、無(wú)線數(shù)據(jù)采集等,還有設(shè)計(jì)過(guò)程中遇到的一些問(wèn)題和解決辦法。競(jìng)賽要求在組委會(huì)提供的賽車模型上[1],使用飛思卡爾半導(dǎo)體公司的8位或16位微控制器,通過(guò)自行增加傳感及驅(qū)動(dòng)電路,和編寫相應(yīng)控制軟件,制作一個(gè)能自主識(shí)別道路的賽車,按照規(guī)定路線行駛,以完成時(shí)間最短者為勝。 技術(shù)路線 由于賽車是自行在賽道上行駛的,不允許人為操縱,而且賽道布局是比賽時(shí)當(dāng)場(chǎng)揭曉,事先無(wú)法對(duì)賽車行駛路徑進(jìn)行預(yù)先設(shè)定,所以只能讓賽車傳感器反饋回的路徑信息,自行在賽道上行駛。 本文結(jié)構(gòu)本文主要是基于MC9S12XS128對(duì)智能車軟件部分進(jìn)行設(shè)計(jì)和開(kāi)發(fā)。)第四章:總體設(shè)計(jì)(介紹了智能車系統(tǒng)設(shè)計(jì)的各個(gè)模塊和具體實(shí)現(xiàn)方法。 MCU按其存儲(chǔ)器類型可分為無(wú)片內(nèi)ROM型和帶片內(nèi)ROM型兩種。   微控制器在經(jīng)過(guò)這幾年不斷地研究、發(fā)展,歷經(jīng)4位,8位,到現(xiàn)在的16位及32位,甚至64位。   由于制程的改進(jìn),8位MCU與4位MCU價(jià)差相去無(wú)幾,8位已漸成為市場(chǎng)主流;目前4位MCU大部份應(yīng)用在計(jì)算器、車用儀表、車用防盜裝置、呼叫器、無(wú)線電話、CD播放器、LCD驅(qū)動(dòng)控制器、LCD游戲機(jī)、兒童玩具、磅秤、充電器、胎壓計(jì)、溫濕度計(jì)、遙控器及傻瓜相機(jī)等;8位MCU大部份應(yīng)用在電表、馬達(dá)控制器、電動(dòng)玩具機(jī)、變頻式冷氣機(jī)、呼叫器、傳真機(jī)、來(lái)電辨識(shí)器(CallerID)、電話錄音機(jī)、CRT顯示器、鍵盤及USB等;16位MCU大部份應(yīng)用在行動(dòng)電話、數(shù)字相機(jī)及攝錄放影機(jī)等;32位MCU大部份應(yīng)用在Modem、GPS、PDA、HPC、STB、Hub、Bridge、Router、工作站、ISDN電話、激光打印機(jī)與彩色傳真機(jī);64位MCU大部份應(yīng)用在高階工作站、多媒體互動(dòng)系統(tǒng)、高級(jí)電視游樂(lè)器(如SEGA的Dreamcast及Nintendo的GameBoy)及高級(jí)終端機(jī)等。中斷有7個(gè)優(yōu)先級(jí),并且內(nèi)核支持優(yōu)先級(jí)的調(diào)度,最多可有117個(gè)中斷源,S12X可訪問(wèn)最多8MB的全部存儲(chǔ)空間。下面先簡(jiǎn)單地介紹下XS128的常用內(nèi)部資源模塊,: XS128內(nèi)部資源1. 內(nèi)存。3. 定時(shí)器和模數(shù)轉(zhuǎn)換器。另外,CodeWarrior IDE支持開(kāi)發(fā)人員插入他們所喜愛(ài)的工具,使他們可以自由地以希望的方式工作。在每個(gè)所支持的平臺(tái)上,性能及使用均是相同的,無(wú)需擔(dān)心主機(jī)至主機(jī)的不兼容。,與系統(tǒng)硬件有關(guān)。再選擇【Full Chip Simulation】仿真模式,單擊【Debug】按鈕,可以在PC上仿真運(yùn)行該程序。RealTime Debugger 編程語(yǔ)言 CodeWarrior目前支持C、C++和匯編語(yǔ)言,可以根據(jù)自己的喜好來(lái)選擇。 規(guī)范化代碼 整個(gè)程序也許不是一個(gè)人就能完成的,因此,保持良好的代碼格式很有必要。第四章 總體設(shè)計(jì) 競(jìng)賽分為:光電組、攝像頭組、電磁組,因?yàn)樗械脑O(shè)計(jì)均要求在規(guī)則范圍內(nèi)實(shí)現(xiàn),且本文主要介紹光電組智能車的軟件設(shè)計(jì),所以就只介紹光電組相關(guān)的規(guī)則和要求:1. 賽道。2. 車模。 通過(guò)仔細(xì)的了解規(guī)則,才能準(zhǔn)確的設(shè)計(jì)出符合要求的系統(tǒng)。3. 舵機(jī)驅(qū)動(dòng)模塊,通過(guò)MCU直接輸出相應(yīng)的PWM給舵機(jī),使其旋轉(zhuǎn)相應(yīng)角度。只有確定了具體硬件,才能設(shè)計(jì)出相應(yīng)的軟件。2. 路面信息和速度采集。4. 方向和速度控制。本節(jié)重點(diǎn)介紹下PLL、PIT、ADC和PWM模塊的初始化,因?yàn)檫@幾個(gè)模塊都是主要使用到的,其它模塊就不一一詳述了。3. CRG Reference Divider Register (REFDV),該寄存器為IPLL提供更精確倍頻系數(shù)。值得注意的是,設(shè)置PLL模塊后,需要兩個(gè)指令周期左右的時(shí)間,等待鎖相環(huán)穩(wěn)定后再啟用,才能初始化成功。3. PIT Micro Timer Load Register 0 to 1 (PITMTLD01),該寄存器用于設(shè)置PIT模塊中的8位計(jì)數(shù)器初值,以實(shí)現(xiàn)24位的計(jì)數(shù)。5. PIT Multiplex Register(PITMUX),該寄存器對(duì)定時(shí)器通道的8位時(shí)基進(jìn)行選擇。6. PIT Interrupt Enable Register(PITINTE),該寄存器為中斷使能寄存器,為不同的PIT通道中斷使能。7. PIT TimeOut Flag Register(PITTF),該寄存器為溢出標(biāo)志位,當(dāng)某一通道的8位計(jì)數(shù)器和16位計(jì)數(shù)器遞減到0時(shí),該位置1。2. ATD Control Register 2 (ATDCTL2),該寄存器的第6位(AFFC),是選擇是否使用ATD轉(zhuǎn)換完成標(biāo)志位快速清零,AD轉(zhuǎn)換結(jié)束標(biāo)志的清除方式有兩種:讀結(jié)果寄存器自動(dòng)清零和軟件中斷服務(wù)程序里手動(dòng)寫1清除。4. ATD Control Register 4 (ATDCTL4),該寄存器的PRS[4:0],是AD時(shí)鐘預(yù)分頻設(shè)置控制位。 根據(jù)硬件電路設(shè)計(jì),12只光電管分為偶數(shù)和奇數(shù)兩組,同時(shí),PJ6作為偶數(shù)組和PJ7作為奇數(shù)組的輸入控制,低電平點(diǎn)亮工作,使得兩組管子能夠交替工作,減小干擾。(程序詳見(jiàn)附錄3) PWM PWM(PulseWidth Modulator)是脈沖寬度調(diào)制,可以用來(lái)控制舵機(jī)和電機(jī)。3. PWM Polarity Register (PWMPOL),極性選擇寄存器,當(dāng)PPOL[7:0]=1時(shí),先輸出高,再輸出低。以Clock A為例,: Clock A預(yù)分頻選擇6. PWM Scale Register (PWMSCLx),分為PWMSCLA和PWMSCLB兩個(gè)8位寄存器,用于對(duì)Clock A和B再次分頻,得到Clock SA和SB。舵機(jī)的工作頻率理論上是50Hz~300Hz,這里采用50Hz就可以了,電機(jī)的工作頻率可以使用10KHz,設(shè)計(jì)使用PWM通道級(jí)聯(lián),級(jí)聯(lián)02467通道,級(jí)聯(lián)后,PWMPWMPWMPWM7為對(duì)應(yīng)16位輸出通道。(程序詳見(jiàn)附錄5) 黑線識(shí)別 經(jīng)過(guò)濾波后的值,算作一次完整的采集過(guò)程,ATDData[12]保存了12只管子的AD值,通過(guò)根據(jù)每只管子的具體情況,來(lái)設(shè)置不同的動(dòng)態(tài)閥值LEDGateValue[12],來(lái)得到光電管的開(kāi)關(guān)值LEDHistoryValue[5] ,LEDHistoryValue[0]表示當(dāng)前值,歷史值往后推移。根據(jù)光電管每個(gè)相隔20㎜的一字排布,可以推斷出通過(guò)起始線時(shí)可能出現(xiàn)的狀態(tài),: 通過(guò)起始線時(shí)可能出現(xiàn)的狀態(tài) 再進(jìn)行建模和邊沿檢測(cè),可以看出不管狀態(tài)如何,都存在兩個(gè)下降沿和上升沿,因此,可以利用這一特性,輔助檢測(cè)黑管數(shù)目,就能很好的識(shí)別到起始線了。當(dāng)當(dāng)前黑線個(gè)數(shù)大于前1次值,前1次值大于前2次值的時(shí)候,認(rèn)定為駛?cè)胝溃环粗疄轳偝稣?。(程序詳?jiàn)附錄7) PID控制算法為了提高控制性,車模采用了車速和方向的閉環(huán)控制,可看出MCU起到控制器的角色,它根據(jù)傳感器的檢測(cè)值和給定值的偏差,經(jīng)計(jì)算產(chǎn)生控制量,驅(qū)動(dòng)執(zhí)行機(jī)構(gòu)去控制小車的行駛狀態(tài)。(t)表示給定值,e(t)表示偏差,u(t)表示計(jì)算得到的控制量,c(t)表示被控輸出。 經(jīng)過(guò)考慮,最后決定系統(tǒng)采用增量型PID算法,來(lái)作為小車方向和速度的控制算法。(程序詳見(jiàn)附錄8) 無(wú)線傳輸小車的調(diào)試是必不可少的過(guò)程,調(diào)試過(guò)程中需要對(duì)小車運(yùn)行時(shí)的數(shù)據(jù)進(jìn)行分析和修改,以提高小車的行駛速度和穩(wěn)定性。確定比例系數(shù)Kp時(shí),首先去掉PID的積分項(xiàng)和微分項(xiàng),可以令Ti=0、Td=0,使之成為純比例調(diào)節(jié)。比例系數(shù)Kp確定之后,設(shè)定一個(gè)較大的積分時(shí)間常數(shù)Ti,然后逐漸減小Ti,直至系統(tǒng)出現(xiàn)振蕩,然后再反過(guò)來(lái),逐漸增大Ti,直至系統(tǒng)振蕩消失。如果需要設(shè)定,則與確定Kp的方法相同,取不振蕩時(shí)其值的30%。I的作用是調(diào)和,使得誤差為0。撥碼開(kāi)關(guān)主要用于在比賽前,提前設(shè)定幾個(gè)檔位,可以在比賽中使用最合適的檔位;前瞻可以改用激光收發(fā)管來(lái)提高;在車速較慢的時(shí)候是用不到制動(dòng)的,但是如果前瞻大了,就能提高車速,提前減速了,可以通過(guò)零輸出,或是短時(shí)間翻轉(zhuǎn)電機(jī)來(lái)實(shí)現(xiàn)這一功能。 //disengage PLL to system PLLCTL_PLLON=1。 //pllclock=2*osc*(1+SYNR)/(1+REFDV)=80MHz。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1