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

正文內(nèi)容

畢業(yè)論文-智能轉(zhuǎn)速測量系統(tǒng)的軟件設(shè)計(參考版)

2025-07-01 10:12本頁面
  

【正文】 //開放中斷TR0=1。ET0=1。 */TH0 = 0x00。 M10=0。 /* GATE0=0。i++)。while(ms)for(i=0。 //開放中斷TR1=1。ET1=1。 */TH1= 0xD8。 M10=0。 /* GATE0=0。Disbuf[3] = speed%10。Disbuf[1] = (speed/100)%10。speed = K*(PlusCounter/PLUS_PER)。uint PlusCounter。P0 |= 0xF0。LED_DAT = table[Disbuf[3]]。P0 |= 0xF0。LED_DAT = table[Disbuf[2]]。P0 |= 0xF0。LED_DAT = table[Disbuf[1]]。P0 |= 0xF0。LED_DAT = table[Disbuf[0]]。}//不再測速 等待復(fù)位i } } } }}//在數(shù)碼管上顯示一個四位數(shù)void DisplayFresh(){P0 |= 0xF0。 Disbuf[3] = 0x84。 //開機時,初始化為0000 Disbuf[1] = 0x84。 //周期定時清零 TH0=TL0 = 0x00。 //計算轉(zhuǎn)速,并把結(jié)果放入數(shù)碼管緩沖區(qū)//定時刷新數(shù)碼管顯示 } if(Flag_clac) { Flag_clac = 0。 //防按鍵抖動 if(!P1^0) { if(Flag_Fresh) { Flag_Fresh = 0。init_timer1()。Disbuf[3] = 0。 //開機時,初始化為0000Disbuf[1] = 0。 //定時器T0用于單位時間內(nèi)收到的脈沖數(shù) //要速度不是很快,T0永遠不會益處 Flag_Err = 1。 if(TcounterTIME_CYLC) { Flag_clac = 1。 Flag_Fresh = 1。 //d定時器 T1用于數(shù)碼管的動態(tài)刷新 TH1 = 0xD8。//延時函數(shù) void Delay(uint ms)。//初始化定時器T0void init_timer0()。 //超量程標(biāo)志//在數(shù)碼管上顯示一個四位數(shù) void DisplayFresh()。 //刷新標(biāo)志bit Flag_clac = 0。//顯示緩沖區(qū)uint Tcounter = 0。//速度傳感器信號接在T1上define TIME_CYLC 100 //12M晶振,定時器10ms中斷一次我們1秒計算一次轉(zhuǎn)速 // 1000ms/10ms = 100define PLUS_PER 30 //碼盤的齒數(shù),這里假定碼盤上有30個齒,即傳感器檢測到30個脈沖,認(rèn)為1圈define K //校準(zhǔn)系數(shù)uchar code table[]={0xC0,0XF9,0xA4,0XB0,0x99,0x92,0x82,0XF8,0x80,0x90, 0xFF,0x00 }。sbit LED_SEG3 = P0^0。sbit LED_SEG1 = P0^2。畢業(yè)設(shè)計(論文)與資料若有不實之處,本人承擔(dān)一切相關(guān)責(zé)任。盡我所知,除了文中特別加以標(biāo)注和致謝的地方外,畢業(yè)設(shè)計(論文)中不包含其他人已經(jīng)發(fā)表或撰寫過的成果,不包含他人已申請學(xué)位或其他用途使用過的成果。學(xué)校有權(quán)保留送交的畢業(yè)設(shè)計(論文)的原文或復(fù)印件,允許畢業(yè)設(shè)計(論文)被查閱和借閱;學(xué)??梢怨籍厴I(yè)設(shè)計(論文)的全部或部分內(nèi)容,可以采用影印、縮印或其他復(fù)制手段保存畢業(yè)設(shè)計(論文)。畢業(yè)設(shè)計(論文)知識產(chǎn)權(quán)聲明本人完全了解西安工業(yè)大學(xué)有關(guān)保護知識產(chǎn)權(quán)的規(guī)定,即:本科學(xué)生在校攻讀學(xué)士學(xué)位期間畢業(yè)設(shè)計(論文)工作的知識產(chǎn)權(quán)屬于西安工業(yè)大學(xué)。感謝作者的學(xué)友和朋友們對自己的關(guān)心和幫助。杜老師淵博的學(xué)識、敏銳的思維、民主而嚴(yán)謹(jǐn)?shù)淖黠L(fēng),使學(xué)生收益匪淺,終生難忘。杜玉軍老師追求真理、獻身科學(xué)、嚴(yán)以律己、寬已待人的崇高品質(zhì)對學(xué)生將是永遠的鞭策。(2)轉(zhuǎn)速的定時時間長、短,其設(shè)定值是人為估計的,可以針對具體的應(yīng)用,根據(jù)轉(zhuǎn)速的實際情況來調(diào)整定時時間。希望通過以后工作中的不斷學(xué)習(xí)和探索,能進一步提高自己對單片機電路系統(tǒng)軟件設(shè)計的認(rèn)識和μVision3軟件的應(yīng)用能力,不斷完善自己的軟件設(shè)計水平。(1)該設(shè)計還可繼續(xù)完善的功能有:通過對鍵盤的拓展實現(xiàn)①最高轉(zhuǎn)速的顯示②最低轉(zhuǎn)速的顯示③設(shè)定其他一些工作參數(shù)。3.程序設(shè)計與調(diào)試 本系統(tǒng)進行了全面的程序設(shè)計,顯示程序、鍵盤程序,中斷服務(wù)程序和初始化程序,并對這些程序在μVision3軟件上進行了編譯和調(diào)試,經(jīng)運行無誤后,并通過編程器寫入芯片中,完成了智能轉(zhuǎn)速測量系統(tǒng)的轉(zhuǎn)速計算、顯示功能,并能實現(xiàn)鍵盤的開始/停止功能,完成了設(shè)計的要求。首先將二進制轉(zhuǎn)換成十制后,再計算出轉(zhuǎn)速值,最后送入顯示緩沖區(qū)并進行顯示。操作員通過鍵盤可以輸入數(shù)據(jù)或指令,實現(xiàn)了簡單的人機通信。2.軟件系統(tǒng)設(shè)計部分(1)系統(tǒng)初始化程序的設(shè)計根據(jù)硬件電路的要求,將各硬件電路置于其規(guī)定的狀態(tài);根據(jù)需要,對定時器、計數(shù)器、串行口等設(shè)置工作狀態(tài),預(yù)置了初值。本設(shè)計的具體研究成果如下:1.測量方法在本設(shè)計測量原理上采用先進的M的測量方法,保證了高轉(zhuǎn)速的測量中獲得較高的精度。 (2) 6 結(jié)論本文根據(jù)智能轉(zhuǎn)速測量系統(tǒng)的硬件設(shè)計和要求,設(shè)計出相應(yīng)軟件系統(tǒng)。注:,需將Project/options for Target‘Target 1’/Output中Create HEX Fi對話框選中。 調(diào)試界面調(diào)試還可以使用設(shè)置斷點的方式,在定時器T1的中斷服務(wù)程序的起點處設(shè)了一個斷點,(s),(1)所示,再次運行并停止后,可看到,(s),(2)所示,計算可知,(ms),可以根據(jù)這一結(jié)果,對定時常數(shù)略作修改,使得定時時間最接近于10(ms)。在調(diào)試中,可以采用單步運行對程序進行檢查,修改錯誤,并通過各參數(shù)窗口,觀察數(shù)值是否與設(shè)定值相同。在調(diào)試之前應(yīng)先修改晶振的頻率,打開菜單Project/options for Target‘Target 1’會現(xiàn)一個對話框,在Target修改晶振頻率。 程序的加載界面選擇菜單Project/Build target進行連接,此時編譯過程的信息將出現(xiàn)在編譯窗口中,出現(xiàn)的語法錯誤會有提示,根據(jù)提示,修改源程序,直到編譯通過。本程序保存為*. C。運行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20MB以上空閑的硬盤空間、Win9NT、Win2000、WinXP等操作系統(tǒng)。5.2本系統(tǒng)開發(fā)平臺 C51軟件集成開發(fā)環(huán)境隨著單片機開發(fā)技術(shù)的不斷發(fā)展,單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前流行的用于開發(fā)51系列單片機的軟件。并具有單步運行、設(shè)斷點運行、狀態(tài)查詢等功能。開發(fā)工具能自動生成目標(biāo)文件;配有反匯編軟件,能將目標(biāo)程序轉(zhuǎn)換為匯編語言程序文本;有豐富的子程序庫可供用戶調(diào)用。通常,單片機的開發(fā)工具至少需要仿真機和編程器兩種,前者用以調(diào)試程序,后者用于將調(diào)試完成后的程序代碼寫入單片機芯片中。 //防按鍵抖動if(!P1^0){ ……}},在完成初始化工作以后,即循環(huán)等待,每1s時間到之后,T1中斷程序?qū)x取T0中的計數(shù)值,并將其放入約定的存儲單元中,并且判斷是否有鍵按下,主程序即轉(zhuǎn)入計算,第一步判斷是否有鍵按下,第二步將16進制數(shù)的結(jié)果轉(zhuǎn)化為BCD碼,第三步,將BCD碼轉(zhuǎn)化并送入顯示緩沖區(qū)。在按鍵過程中會有按鍵抖動,因此我們一般通過軟件延遲程序?qū)存I命令延遲510ms再執(zhí)行,便可減少抖動造成的誤差。本課題的硬件設(shè)計中使用了2個按鍵,功能分別是實現(xiàn)轉(zhuǎn)速測量的啟動/停止和復(fù)位。 //選通第一位數(shù)碼管LED_DAT = table[Disbuf[0]]。送入顯示緩沖區(qū) P2 |= 0xF0。Disbuf[2] = 8。 數(shù)碼管顯示流程圖程序如下: 當(dāng)轉(zhuǎn)速為182時,即 Disbuf[0] = 0。下面以顯示182為例,即速度為182R/min加以說明。由于數(shù)碼管共有4位,延遲5ms,因此,每20ms即可輪流點亮每個數(shù)碼管一次,利用人的視覺暫留現(xiàn)象,可以穩(wěn)定地顯示各位數(shù)碼管的值。 }判斷Tcounetr是否到達100了,如果到達100,則說明1秒時間已到,程序?qū)㈥P(guān)閉T0計數(shù)器,然后對T0中已計得的數(shù)據(jù)進行處理,然后再去進行顯示,否則直接轉(zhuǎn)去顯示。1. 秒信號的產(chǎn)生中斷產(chǎn)生后:define TIME_CYLC 100Tcounter++。 //T0、T1分別初始化init_timer1()。Disbuf[3] = 0。 //開機時,初始化為0000Disbuf[1] = 0。 //計算轉(zhuǎn)速標(biāo)志bit Flag_Err = 0。 //時間計數(shù)器bit Flag_Fresh = 0。以下是程序定義變量及進行初始化的程序行。TRTR0分別用于開啟T1和T0的開關(guān)位,其中TR1由系統(tǒng)開啟時,直接置位,打開T1,開始定時,經(jīng)運行判斷后,打開TR0。TF1 TR1 TF0 TR0 IE1 IT1 IE0IT0 控制寄存器TCON的位定義圖TF0、TF1分別為定時器T0和計數(shù)器T1的溢出標(biāo)志位,TR0和TR1在正常情況下,都沒有溢出標(biāo)志,只有當(dāng)計數(shù)值或定時值超過65536時,才能有溢出中斷請求,這兩位是由硬件置位和硬件清零,不需另行設(shè)置。}將控制字分別送入TMOD。程序如下:void init_timer0() // T0、T1分別定義{TMOD= 0xF1。M1M0=00,13位計數(shù);M1M0=01,16位計數(shù);M1M0=10,自動再裝入8位計數(shù);M1M0=11,工作于模式3狀態(tài)。C/T=1,工作于計數(shù)器方式;C/T=0工作于定時器方式。GATE=1,只有INT0/1引腳為高電平且用指令置TR0/1=1時,才能啟動定時/計數(shù)器0/1的工作。由GATE、軟件控制位TR0/1和INT0/1共同決定定時/計數(shù)器0/1的打開或關(guān)閉。其8位控制。由于AT89C51單片機在中斷時,會附加延時38個周期,在滿足一定條件的情形下,驗
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1