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

正文內(nèi)容

氣壓高度表設(shè)計畢業(yè)設(shè)計(編輯修改稿)

2025-07-27 23:11 本頁面
 

【文章內(nèi)容簡介】 ADC,SPC,USART等,3路16位定時器,每個定時器包含4路輸入捕獲輸出比較單元,一路高級16位定時器,可產(chǎn)生6路PWM信號,包含IIC,USART,SPI,CAN,USB等總共9個通信接口。圖31 STM32F10X系列系統(tǒng)結(jié)構(gòu)圖 STM32單片機(jī)特點 STM32 的特點很多,本系統(tǒng)選擇 STM32 主要考慮其以下幾個方面的特點:集成度高,供電電壓低 STM32是完全集成的混合信號系統(tǒng)級芯片,片內(nèi)集成了 ADC、溫度傳感器、SPI、定時器等模擬和數(shù)字外設(shè),這些功能部件的高度集成為系統(tǒng)減小體積,降低功耗,提高可靠性提供了方便。同時STM32擺脫了 5V 供電標(biāo)準(zhǔn),供電電壓范圍低至 ~ 之間,根據(jù)功耗與電源電壓平方成正比的關(guān)系,采用較低的工作電壓將大大降低功耗。低功耗功能和特性 要使得單片機(jī)的電流消耗降低,具有低功耗功能十分重要。低功耗單片機(jī)應(yīng)可提供不同級別的低功耗工作方式。STM32 具有兩種功能級別的低功耗工作模式,即待機(jī)模式和停機(jī)工作模式。在待機(jī)方式下,CPU 停止工作,所有外設(shè)仍處于工作狀態(tài),當(dāng)有中斷產(chǎn)生或系統(tǒng)復(fù)位,CPU 退出等待方式。在停機(jī)方式下 CPU 和所有的數(shù)字外設(shè)都停止工作,當(dāng)有內(nèi)部或外部復(fù)位產(chǎn)生時處理器退出停機(jī)方式,停機(jī)方式下電源電流消耗僅為 14μA。而在待機(jī)模式下,芯片的工作電流為2至3μA。可通過設(shè)置電源控制寄存器(PCON)的相應(yīng)位進(jìn)入低功耗工作模式。合理的運用這兩種工作模式,可減少非工作狀態(tài)下得電流消耗??焖凫`活的時鐘系統(tǒng) 時鐘系統(tǒng)是降低單片機(jī)功耗的關(guān)鍵,進(jìn)入或退出低功耗模式以及快速執(zhí)行指令處理數(shù)據(jù)的能力都與系統(tǒng)時鐘有著密切的關(guān)系。由于 CPU 在等待時鐘穩(wěn)定下來期間會消耗電流,因此在低功耗系統(tǒng)中“即時啟動”功能的時鐘必不可少。STM32 可以在 10μs~20μs時間內(nèi)為 CPU 提供穩(wěn)定的系統(tǒng)時鐘,減少了不必要的電流消耗。 同時 STM32可提供內(nèi)部振蕩器和外部振蕩器兩種時鐘源,內(nèi)部時鐘振蕩器在無需外部器件支持下可提供 2MHz、4 MHz、8 MHz、16 MHz 的時鐘;外部振蕩器有晶體、RC/C、外部 CMOS 時鐘 4 種方式可供選擇。內(nèi)部帶有PLL,可以輕易獲得自己想要的時鐘頻率。兩種時鐘振蕩器可分別獨立運行,也可同時使用,通過軟件控制可以在兩個時鐘之間方便的轉(zhuǎn)換,這樣就為在低功耗和正常工作狀態(tài)選擇合適的工作頻率提供了方便。豐富的中斷源 STM32 支持多達(dá)60多個中斷,并且每個中斷源的優(yōu)先級分為響應(yīng)優(yōu)先級和搶占優(yōu)先級,總共可配置為7個等級,豐富的中斷源使得系統(tǒng)的事件驅(qū)動能力增強,CPU 的執(zhí)行效率增加。對于單片機(jī)系統(tǒng)而言,中斷越多,其防止浪費電流的 CPU 查詢和降低功耗的靈活性越大。CPU 的查詢意味著 CPU 工作在等待事件的發(fā)生狀態(tài),不僅造成 CPU 帶寬的浪費而且消耗了額外的電流。比如在鍵盤或按鍵的應(yīng)用中,如果采用查詢方式,不僅查詢自身會消耗功率,而且需要定時器控制輪詢間隔時間,增加額外的定時器電流消耗。如果采用中斷方式,CPU 只在按鍵按下時響應(yīng)中斷,其他時間處于等待方式。 另外,STM32單片機(jī)官方提供很齊全的參考資料,特別是中文資料很豐富,加上STM32市場占有率高,因此在使用STM32過程中如果遇到問題,可以比較方便的解決,特別是對經(jīng)驗并不豐富的學(xué)生來說。STM32F103RBT6單片機(jī)的最小系統(tǒng)如圖32所示。圖32 STM32F103RBT6單片機(jī)最小系統(tǒng) 氣壓傳感器 本系統(tǒng)為氣壓高度表,因此控制器需要先測量當(dāng)前氣壓,再通過一定計算公式計算得出當(dāng)前高度,所以,氣壓測量精度直接影響到高度的計算,因此氣壓傳感器的選型非常重要,它的性能直接決定了整個系統(tǒng)的性能。本系統(tǒng)采用了MS5534BP數(shù)字氣壓傳感器。 氣壓傳感器概述 MS5534BP氣壓傳感器是一個數(shù)字傳感器,它內(nèi)部包含一個氣壓傳感器、一個AD轉(zhuǎn)換器和一個數(shù)字通信接口,傳感器先將氣壓這一非電量轉(zhuǎn)化成為一個電量,但其為模擬量,AD轉(zhuǎn)換器將這個模擬量轉(zhuǎn)化為數(shù)字量,并通過數(shù)字通信接口將數(shù)字量輸出到外部控制器,供其計算和控制。 MS5534BP傳感器具有如下特性: 測量范圍從1KPa至110KPa。 片上存儲了6組軟件校正數(shù)據(jù)。 具有15位精度的模數(shù)轉(zhuǎn)換器。 具有三線式數(shù)字通信接口。 。 MS5534BP傳感器的結(jié)構(gòu)圖如圖33所示。圖33 MS5534BP傳感器結(jié)構(gòu)圖 氣壓傳感器一般為壓阻式壓力傳感器,它是利用單晶硅的壓阻效應(yīng)制成的,其壓敏元件為分布在硅膜片特定方向上的四個半導(dǎo)體電阻,這四個電阻構(gòu)成惠斯登電橋,當(dāng)膜片受到外界壓力時,電橋失去平衡,如果對電橋加以恒流源或恒壓源激勵,便可得到與被測壓力成比例的輸出電壓,間接的測出壓力值。 由于氣壓測量還跟當(dāng)前的氣溫有很大關(guān)系,所以傳感器內(nèi)還有一個溫度傳感器,可以測量當(dāng)前環(huán)境溫度,并將溫度值作為氣壓計算的修正參數(shù),進(jìn)一步提高傳感器的測量精度。 由圖34可以看出,傳感器的輸出是與氣溫有很大關(guān)系的。圖34 氣壓與氣壓關(guān)系 從圖中可以看出,溫度不同時,傳感器在相同氣壓下的輸出值是有一定差別的,但是從圖中還可以看到,在相同溫度下,傳感器的輸出和實際氣壓值基本呈線性關(guān)系,因此溫度對測量的影響可以再引入一個參數(shù)進(jìn)行修正,就是當(dāng)前氣溫,所以傳感器內(nèi)部也包含一個溫度傳感器,這樣通過單片機(jī)進(jìn)行修正計算,便能得到較為準(zhǔn)確的氣壓值。 氣壓傳感器的校正 根據(jù)MS5534B的數(shù)據(jù)手冊說明,此傳感器的輸出值是未經(jīng)校正的測量值,必須通過外部的控制器進(jìn)行校正后,才能得到較為準(zhǔn)確的測量值。在芯片上,針對溫度測量和氣壓測量分別寫入了兩組校正參數(shù),每組有2個16的數(shù)據(jù),即總共有64位的校正數(shù)據(jù),這些數(shù)據(jù)必須通過外部控制器通過數(shù)字接口讀出,讀取可以在芯片初始化之后。 WORD1,WORD2,WORD3和WORD4為芯片內(nèi)存存儲的四組校正參數(shù),每組為16位長度,這四組參數(shù)需要通過異味和累加,得到6組實際校正參數(shù),分別為C1,C2,C3,C4,C5和C6,這六組實際校正參數(shù)在芯片內(nèi)的存儲方式如圖35所示。圖35 實際校正參數(shù)在芯片內(nèi)的存儲方式 通過上圖,可以看到實際校正參數(shù)C1,C2,C3,C4,C5和C6在校正參數(shù)WORD1,WORD2,WORD3和WORD4中的存儲位置,通過控制器的計算,可以從校正參數(shù)得到實際校正參數(shù)的結(jié)果,在STM32中的計算代碼如下: C1=WORD11。 C5=(WORD1amp。0X1)|(WORD26)。 C6=WORD2amp。0X3F。 C4=WORD36。 C3=WORD46。 C2=((WORD3amp。0X3F)6)|(WORD4amp。0X3F)。 在讀取并計算得到實際校正參數(shù)之后,控制器需要再讀取溫度值和氣壓值D1和D2,讀取完畢之后,控制器就可以根據(jù)這些參數(shù)計算得到想要的溫度值和氣壓值,計算過程主要分三部分。計算標(biāo)準(zhǔn)溫度 首先控制器需要根據(jù)C5計算標(biāo)準(zhǔn)溫度,其過程如圖36所示。圖36 標(biāo)準(zhǔn)溫度計算計算實際溫度 第二步控制器根據(jù)標(biāo)準(zhǔn)溫度,D2和C6計算得到實際溫度,其計算過程如圖37所示。圖37 實際溫度計算計算經(jīng)過溫度校正的氣壓值。 第三步控制器需要根據(jù)C2,D2,C5,C1,C3,和D1計算溫度補償?shù)臍鈮褐?,其計算過程如圖38所示。圖38 溫度校正的氣壓計算 經(jīng)過以上三個步驟,即可初步計算得到溫度值和氣壓值。 此部分計算過程在STM32單片機(jī)中的代碼如下所示: UT1=8*C5+20224。 dT=D2UT1。 TEMP=200+dT*(C6+50)/1024。 OFF=C2*4+((C4512)*dT)/4096。 SENS=C1+(C3*dT)/1024+24576。 X=(SENS*(D17168))/16384OFF。 P=X*10/32+2500。 但是僅通過以上計算,仍然會存在一定的誤差,為了盡量減少這個誤差,在MS5534BP的數(shù)據(jù)手冊中提出了二階溫度補償?shù)恼`差校正方式,可以進(jìn)一步減少由于溫度導(dǎo)致的測量誤差。 二階溫度補償 為了在整個溫度范圍內(nèi)獲得最佳的誤差校正,控制器需要采用二階溫度補償計算來消除由于溫度傳感器輸出非線性問題導(dǎo)致的誤差,此部分的計算方法比較簡單,根據(jù)測量的溫度值,在不同范圍采取不同的算法計算出一個溫度補償參數(shù)和一個氣壓補償參數(shù),最后,用測量到的初始溫度值和氣壓值減去補償參數(shù),就可以得到經(jīng)過二階溫度補償?shù)臏囟戎岛蜌鈮褐?,此部分的計算過程如圖39所示。圖39 二階溫度補償算法 此部分計算過程在STM32單片機(jī)中的代碼如下所示:if(TEMP200) { T2=11*(C6+24)*(200TEMP)*(200TEMP)/pow(2,20)。 P2=3*T2*(P3500)/pow(2,14)。 } else if((TEMP=200)amp。(TEMP=450)) { T2=P2=0。 } else { T2=3*(C6+24)*(450TEMP)*(450TEMP)/pow(2,20)。 P2=T2*(P10000)/pow(2,13)。 } TEMP=TEMPT2。 P=PP2。 二階溫度補償可以有效的解決由于溫度傳感器非線性問題導(dǎo)致的測量誤差,在溫度很低或者很高的時候,此補償方法尤為有效,可以大幅減少誤差,采用二階溫度補償和不采用此補償?shù)臏囟日`差情況如圖310所示。圖310 二階溫度補償效果圖 從上圖可以看出,在極端溫度情況下,二階溫度補償計算可以將誤差值從10度以上降至1度以內(nèi),效果非常明顯。 氣壓傳感器通信接口 傳感器與控制器之間的通信采用三線同步串行通信接口,三個接口分別為SCLK,DOUT和DIN,其中,SCLK是通信的同步時鐘信號,DOUT是傳感器的輸出端口,即控制器的輸入端口,DIN是傳感器的輸入端口,即控制器的輸出端口。 時鐘信號由控制器產(chǎn)生輸入至傳感器,傳感器的輸出端是數(shù)據(jù)的輸出端,也是傳感器的狀態(tài)引腳,通過檢測此信號的電平,控制器可以知道傳感器處于轉(zhuǎn)換狀態(tài)或者轉(zhuǎn)換結(jié)束狀態(tài),以便于及時接收數(shù)據(jù),控制器通過對DIN信號輸入正確的數(shù)據(jù),就可以控制傳感器輸出相應(yīng)的數(shù)據(jù)。在控制器對傳感器輸入數(shù)據(jù)時,正確的數(shù)據(jù)應(yīng)該保持在時鐘信號的上升沿期間。 傳感器初始化 在第一次操作傳感器時,控制器需要給傳感器發(fā)送初始化命令,將傳感器初始化之后才能進(jìn)行后續(xù)操作,傳感器的初始化操作時序如圖311所示。圖311 傳感器初始化時序 由圖可以看出,初始化命令為控制器連續(xù)對傳感器發(fā)送21位的數(shù)據(jù),這21位數(shù)據(jù)為0x155540,初始化命令后傳感器不會返回數(shù)據(jù)。 傳感器原始數(shù)據(jù)讀取 每次要計算當(dāng)前的溫度值和氣壓值時,控制器就需要從傳感器重新讀取原始數(shù)據(jù)D1和D2,讀取D1數(shù)據(jù)的信號時序圖如圖312所示。圖312 傳感器讀取D1時序圖 由圖可知,讀取數(shù)據(jù)時,控制器要先給傳感器發(fā)送一段數(shù)據(jù),傳感器才會開始進(jìn)行AD轉(zhuǎn)換,轉(zhuǎn)換完畢
點擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1