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

正文內(nèi)容

氣敏傳感器信號采集系統(tǒng)設(shè)計-資料下載頁

2025-08-20 11:46本頁面

【導(dǎo)讀】廢氣、交通工具中排放的各種氣體都在不斷地污染環(huán)境,影響我們的生存。這些氣體在帶給人們能源、生產(chǎn)生活提供方便的同時,它們本身是有毒、易燃的化。學(xué)物品,給燃氣燃具用戶深深埋下了火災(zāi)、中毒、爆炸的隱患。一方面人類對各種有毒。或爆炸,造成人身傷亡和財產(chǎn)損失。災(zāi)等事故已經(jīng)發(fā)揮著越來越大的作用。到一定的警界值時,發(fā)出報警信號,從而能夠保障人們自身和生產(chǎn)與生活的安全。氣敏傳感器及單片機是本設(shè)計的的兩大核心內(nèi)容。有適用氣體及應(yīng)用領(lǐng)域,新技術(shù)新產(chǎn)品正在成為未來氣體檢測儀器儀表的主流。目前國內(nèi)用于燃氣濃度監(jiān)測的也主要是這兩種氣體傳感器[1]。而且隨著現(xiàn)代電子工業(yè)的發(fā)展,電阻型氣敏傳感器的工作。為了實現(xiàn)以上功能:系統(tǒng)應(yīng)該具備氣體傳感器及其適配電路模塊、A/D轉(zhuǎn)。該傳感器己成為世界上產(chǎn)量最大、使用最廣的氣體傳感器。電阻式半導(dǎo)體氣體傳感器依據(jù)其。材料在通過氣體時產(chǎn)生電阻,測量其形成電動勢從而測量氣體濃度。

  

【正文】 機的硬件進行操作,表達和運算能力也較強,許多以前只能采用匯編語言來解決的問題都可以用 C 語言來解決?;?C 語言的特點,用 C語言進行單片機應(yīng)用程序設(shè)計是單片機開發(fā)應(yīng)用的必然趨勢。 用 C 編寫程序比匯編更符合人們的思考習(xí)慣,開發(fā)者可以擺脫與硬件無必要 的接觸,更專心的考慮功能和算法而不是考慮一些細節(jié)問題,這樣就減少了開發(fā)和調(diào)試的時間。C 語言具有良好的程序結(jié)構(gòu) ,適用于模塊化程序設(shè)計,因此采用 C 語言設(shè)計單片機應(yīng)用系統(tǒng)程序時,首先要盡可能地采用結(jié)構(gòu)化的程序設(shè)計方法,將功能模塊化,由不同的模塊完成不同的功能,這樣可使整個應(yīng)用系統(tǒng)程序結(jié)構(gòu)清晰,易于調(diào)試和維護,還可增強可讀性和移植性 [13]。 在實際單片機程序設(shè)計中,程序結(jié)構(gòu)一般均采用如下結(jié)構(gòu): include /*頭文件說明部份 */ unsigned char x1, x2; /*全局變量聲明部份 */ ?Function1(? ){ /*功能函數(shù)定義部份 */ ?? } main() { inti,j。 /* 整型變量聲明部份 */ Function1(?)。 /* 功能函數(shù)說明部份 */ ??} 單片機 C 語言與標(biāo)準 C 語言的區(qū)別 由于現(xiàn)在越來越多的產(chǎn)品都采用單片機開發(fā),所完成的計算和控制工作也日趨復(fù) 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 26 頁 共 46 頁 雜,但是單片機系統(tǒng)是一種資源十分有限的系統(tǒng),這主要表現(xiàn)在程序存儲器資源的不足,因此在程序設(shè)計時如何使用好這些有限的資源就顯得十分重要。用 C 語言編程雖然具有許多的優(yōu)點,但是生成的代碼相對要長,要是編程技術(shù)不好,生成的代碼甚至有可能比匯編語 言生成的代碼長幾倍,因此對編程者來說,應(yīng)該注意到單片機 C語言和一般意義上的標(biāo)準 C 語言的區(qū)別,對程序進行適當(dāng)?shù)膬?yōu)化。 算法設(shè)計問題 單片機 C語言和標(biāo)準 C語言存在著很大差別,在計算機上進行 C 語言程序設(shè)計時由于不必考慮程序代碼的長短,只需考慮程序功能實現(xiàn),但是在單片機上進行 C 語言程序設(shè)計就必須考慮系統(tǒng)的硬件資源。有時并不是程序的算法越簡單、長度越短越好,因為有一些算法要調(diào)用一些內(nèi)部的子程序和函數(shù),生成的機器代碼長度非常長。不同的算法對程序代碼長度影響十分大,因此在進行程序設(shè)計時,就盡量采用程序生成代 碼短的算法,在不影響程序功能實現(xiàn)的情況下可以采用一些優(yōu)化算法。 在單片機 C 語言編譯成機器代碼時,不同的運算生成的機器代碼的長度相差很大,盡可能地減少程序中對某種數(shù)據(jù)類型的運算種類 ,越復(fù)雜的數(shù)據(jù)類型效果越明顯。在進行數(shù)據(jù)計算時,在一定的精度范圍內(nèi),可以用一些近似的計算來完成一些運算 ,既不損失精度又能減少大量的代碼。比如:用邏輯 AND/amp。取模比 MOD/%操作更有效。 數(shù)據(jù)存儲器的分配 單片機內(nèi)部數(shù)據(jù)存儲器 RAM 只有幾百字節(jié),如果擴展外部存儲器 RAM 來提高數(shù)據(jù)存儲量話必將會增加了硬件成本 ,使系統(tǒng)更加 的復(fù)雜,訪問外部存儲器比訪問內(nèi)部存儲器所需的代碼也要長得多。有效地使用片內(nèi)存儲器、提高存儲器空間的利用率對開發(fā)者來說十分關(guān)鍵。 內(nèi)部處理器、內(nèi)部堆棧、壓縮棧、所有程序變量和所有包含進來的庫函數(shù)都將使用數(shù)量有限的內(nèi)部數(shù)據(jù)存儲器 RAM。因為 C 語言采用了存儲器的覆蓋技術(shù),可以在程序進行連接時 ,它將那些已經(jīng)被其它程序段釋放了的存儲器空間重新定義給另一個程序段的變量使用 ,當(dāng)這個程序運行結(jié)束時再將這些存儲器釋放以供其它程序段使用。全局變量的作用范圍是整個程序 ,因此不能被釋放;靜態(tài)變量由于在函數(shù)的調(diào)用中專用不變 ,也不能被 釋放;只有局部變量中的動態(tài)變量可以被釋放。 因此在進行程序設(shè)計時應(yīng)該盡量的使用局部變量,提高內(nèi)部數(shù)據(jù)存儲器的使用率。在 C語言中程序中間結(jié)果及參數(shù)傳傳遞是通過內(nèi)部的寄存器來完成的,要是內(nèi)部的存儲 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 27 頁 共 46 頁 器不夠,將會給你的程序帶來許多莫名其妙的錯誤。例如在進行程序設(shè)計時語句不應(yīng)該太長,一個長語句可以分成多個語句,這樣的話可以大的減少中間變量,當(dāng)然太長時就會造成臨時寄存器的不夠用,導(dǎo)致計算出錯。 綜上所述 C語言具有很強的功能性和結(jié)構(gòu)性,可以縮短單片機控制系統(tǒng)的開發(fā)周期,而且易于調(diào)試和維護,已經(jīng)成為目前單片機語言中最流行的 編程語言。 本設(shè)計就是運用C 語言編寫的單片機應(yīng)用程序以 89C51 單片機控制采集氣體信號采集顯示及存儲報警。 軟件設(shè)計程序框圖 由硬件電路的設(shè)計可知,系統(tǒng)的應(yīng)用軟件設(shè)計主要包括初始化程序、 A/D轉(zhuǎn)換子程序、顯示子程序、數(shù)據(jù)存儲子程序及聲光報警子程序的設(shè)計。 圖 軟件設(shè)計主程序流程圖 軟件程序設(shè)計 [14] 初始化子程序 所謂初始化,是對將要用到的單片機內(nèi)部部件或擴展芯片進行初始工作狀態(tài)設(shè)定。初始化子程序的主要工作是設(shè)置定時器的工作模式、初值預(yù)置、開中斷和打開定時器等。在本設(shè)計中,使用了 1個中斷,即 INT_T0。 INT_T0 中斷采用方式 1的工作方式,完成ADC0809時鐘信號的輸入功能。在設(shè)計中 ADC0809的 CLOCK是接在 AT89C51單片機的 是 否 系統(tǒng)初始化 調(diào)用模數(shù)轉(zhuǎn)換子程序 判斷氣體濃度是否超標(biāo) 數(shù)據(jù)處理 聲光報警 調(diào)用液晶顯示子程序 調(diào)用存儲子程序 返回 開始 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 28 頁 共 46 頁 端口。這就要求從 輸出 CLOCK 信號供 ADC0809 使用,因此 CLOCK 信號就要用軟件來產(chǎn)生。此外,初始化程序中還使液晶初始化顯示字符串“ density” (濃度 )。 模數(shù)轉(zhuǎn)換子程序 A/D 轉(zhuǎn)換子程序用來控制對輸入的模擬電壓信號的采集測量,并將對應(yīng)的數(shù)值存入相應(yīng)的內(nèi)存單元,設(shè)計中采用查詢方式。其轉(zhuǎn)換流程圖如圖: 圖 AD轉(zhuǎn)換子程序框圖 在 A/D 轉(zhuǎn)換開始之前,逐次逼近寄存器的 SAR 內(nèi)容為 0,在 A/D 轉(zhuǎn)換過程中, SAR存放“試探”數(shù)字量,在轉(zhuǎn)換完畢后,它的內(nèi)容即為 A/D 轉(zhuǎn)換的結(jié)果數(shù)字量。邏輯控制與定時電路再 START 正脈沖啟動后工作,每來一個 CLK 脈沖,該電路就可能告知向 SAR中傳送一次試探值,對應(yīng)輸出 U0與 U1比較,確定一次比進制,經(jīng)過 8次逼近,即可獲得最后轉(zhuǎn)換的結(jié)果數(shù)字量。此處, EOC端口的信號顯示 ADC0809 的狀態(tài),開始 A/D轉(zhuǎn)換時, EOC 為低電平,轉(zhuǎn)換結(jié)束后,輸出高電平。 存儲模塊子程序 AT24C512有兩種寫入方式:一種是字寫入方式,另一種是頁寫入方式。本設(shè)計中采用字寫入方式。 字寫入方式時,通常在向 AT24C512 發(fā)送設(shè)備地址字并接到應(yīng)答信號后,還需要發(fā)送 2個 8位地址來選擇要寫數(shù)據(jù)的地址。 AT24C512接收到這個地址后會應(yīng)答一個零信號,然后接收 8 位數(shù)據(jù)進來,并再返回一個零應(yīng)答信號。 否 是 AD 初始化 啟動 AD 轉(zhuǎn)換 AD 轉(zhuǎn)換結(jié)束 輸出結(jié)果 開始 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 29 頁 共 46 頁 圖 字寫 入操作流程 圖 數(shù)據(jù)存儲子程序流程圖 仿真結(jié)果 在設(shè)計中用的是 51 單片機,所以選用 Keil 軟件和 Protues 軟件來聯(lián)合仿真。其各個模塊仿真結(jié)果如下所述 [14][15] [16]。 調(diào)理電路仿真時,用滑動變阻器代替?zhèn)鞲衅髅舾须娮鑱泶罱蚴诫娐芬垣@得一定的橋路 輸出,然后連到儀用放大器輸入端,放置電壓探針來查看仿真結(jié)果,其結(jié)果如下圖所示 。 開始 發(fā)送數(shù)據(jù) 發(fā)送兩個 8 位字節(jié)地址 發(fā)送啟動信號 地址加 2 總線初始化 存儲數(shù)據(jù) 返回 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 30 頁 共 46 頁 圖 調(diào)理電路仿真結(jié)果 電源部分仿真結(jié)果如下圖所示。 圖 電源部分仿真結(jié)果 單片機控制的模數(shù)轉(zhuǎn)換及顯示報警電路仿真時,在 ADC0809 的輸入端給定一個電壓信號來仿真,其結(jié)果如下所示圖。 圖 輸入電壓為 圖 輸入電壓為 度顯示 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 31 頁 共 46 頁 圖 輸入電壓為 圖 輸入電壓為 清華 大學(xué) 2020 屆畢業(yè)設(shè)計說明書 第 32 頁 共 46 頁 5 結(jié)論 在查閱各方面資料和指導(dǎo)教師的指導(dǎo)下, 氣敏傳感器的數(shù)據(jù)采集系統(tǒng)的 設(shè)計基本完成。在設(shè)計過程中力求系統(tǒng)電路簡單,成本低,系統(tǒng)穩(wěn)定性高并易于使用和完善。基本完成了畢業(yè)設(shè)計的設(shè)計要求,但是由于本人水平有限,系統(tǒng)設(shè)計仍然存在很多不足和改進之處。 本設(shè)計 以 AT89C51 單片機為核心,以氣敏傳感器檢測天然氣氣體的濃度,經(jīng)過信號調(diào)理后,通過 AD 轉(zhuǎn)換器讀入單片 機中,單片機對檢測到的信號進行數(shù)據(jù)處理判斷,如果質(zhì)量濃度超過預(yù)定數(shù)值,將發(fā)出聲光報警,最后再由微機控制顯示輸出氣體濃度。 通過實踐,使我對 C語言和單片機有了新的認識和理解,并且熟練了 Proteus和 Keil軟件的
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1