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

正文內(nèi)容

大棚倉庫溫濕度自動(dòng)控制系統(tǒng)的畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-01-04 10:59 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 大于單片機(jī)兩個(gè)機(jī)器周期,就能使單片機(jī)復(fù)位。 程序運(yùn)行過程中如果跑飛了、程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),就需要用到手動(dòng)復(fù)位。手動(dòng)復(fù)位就是在上電復(fù)位電路的電容兩邊并聯(lián)一個(gè)微動(dòng)開關(guān),需要手動(dòng)復(fù)位時(shí)將其按下,使之接通, RST獲得高電平,而且人按動(dòng)按鈕的時(shí)間肯定是超過兩個(gè)機(jī)器周期的,于是單片機(jī)復(fù)位。 7 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 液晶顯示模塊 測(cè)量到的溫濕度值將顯示到液晶屏 LCD1602上,它可以顯示 2行,每行 16個(gè)字符。 LCD1602共有三個(gè)存儲(chǔ)器 ,它們是 CGROM、 CGRAM和 DDRAM。CGROM用來保存 LCD1602內(nèi)部固化的一些字符的字模,比如英文的 26個(gè)字母的大小寫; CGRAM用來保存用戶自己取的字模,比如,如果要顯示漢字,就必須自己去漢字字模,在這里我們都用英語字母,故不用 CGRAM;DDRAM用來存儲(chǔ)要顯示的字符的字模,它和屏幕上的位置是對(duì)應(yīng)的,第一行為 00H到 0FH,第二行為 40H到 4FH。在這里需要注意的是,在向LCD1602寫入顯示數(shù)據(jù)存儲(chǔ)器地址時(shí),根據(jù)控制指令的格式,最高位 D7為 1,所以寫入的數(shù)據(jù)為,第一行 80H到 8FH,第二行 C0H到 CFH。 它與單片機(jī)的接口電路如下圖所示: 圖 LCD1602與單片機(jī)的接口電路 溫濕度傳感器模塊 溫濕度傳感器選用瑞士 Sensirion公司生產(chǎn)的 SHT11 [5]。 SHT1X系列共有三個(gè)型號(hào): SHT SHT1 SHT15,他們都是 SMD貼片封裝的,他們依次性能越來越好,其中 SHT11屬于經(jīng)濟(jì)型的溫濕度傳感器。三者的溫濕度性能如下圖所示。 8 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 圖 SHT1X系列各型號(hào)傳感器的濕度、溫 度最大誤差 從曲線中可以看出,無論是濕度還是溫度, SHT10的誤差都是最大的,SHT15誤差最小,但是它們的價(jià)格也相差很大, SHT11多為二三十元一個(gè),而 SHT15價(jià)格上百。因此,從滿足大棚溫濕度監(jiān)測(cè)的要求來看, SHT11已經(jīng)足夠,故選用 SHT11。 SHT11與單片機(jī)的接口電路如下所示: 圖 SHT11與單片機(jī)的接口電路 SHT11采用類似于 I2C的兩線制串行總線,一根是時(shí)鐘線,一根是數(shù)據(jù)線。數(shù)據(jù)線要通過一個(gè)上拉電阻接到 VCC,目的是避免信號(hào)沖突,使單片機(jī)的引腳只提供低電平,要得到高電平則使該引腳懸空,由上拉電阻提供高電平。 報(bào)警電路的設(shè)計(jì) 當(dāng)大棚內(nèi)的溫濕度超過上下限時(shí),除了需要啟動(dòng)溫濕度調(diào)節(jié)器之外,還需要進(jìn)行報(bào)警,這里用到的是蜂鳴器 [4]。蜂鳴器為一種采用一體化結(jié)構(gòu)的電子器件, 采用了直流電壓來供電,廣泛應(yīng)用到了計(jì)算機(jī)、報(bào)警器、復(fù)印機(jī)、電子玩具、電話機(jī)、汽車電子設(shè)備、定時(shí)器等電子產(chǎn)品之中用作發(fā)聲器。 蜂鳴器分為有源蜂鳴器和無源蜂鳴器。有源蜂鳴器由于內(nèi)部集成了振蕩源,所以使用直流電壓就可以驅(qū) 動(dòng)它鳴叫;無源蜂鳴器內(nèi)部沒有振蕩源,因此一般使用 2K~ 5K方波來驅(qū)動(dòng)。本設(shè)計(jì)中使用的是有源蜂鳴器,在它兩端加載 5V的直流電壓就可以使之鳴叫。 報(bào)警電路設(shè)計(jì)如下圖: 9 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 圖 報(bào)警電路圖 蜂鳴器工作電流一般為 10mA,而單片機(jī)的 I/O口只能承受幾毫安的電流,因此需要加三極管進(jìn)行驅(qū)動(dòng)。如上圖所示,單片機(jī)的 I/O口中的 接 PNP型三極管的基極,當(dāng) ,三極管導(dǎo)通, 5V的電壓加載到蜂鳴器兩端,于是蜂鳴器鳴叫;當(dāng) 電平時(shí),三極管截至,蜂鳴器不鳴叫。 按鍵電路設(shè)計(jì) 圖 按鍵電路圖 鍵盤分為編碼式和非編碼式鍵盤 [6]。其中,非編碼式鍵盤又包括矩陣式鍵盤和獨(dú)立式鍵盤。矩陣式鍵盤較為復(fù)雜,一般用于按鍵數(shù)目較多,而單片機(jī)可用的 I/O口又比較有限時(shí)。本控制系統(tǒng)中只需要用到 4個(gè)按鍵,數(shù)目較少,并且可用的 I/O口充足,故采用獨(dú)立式鍵盤,一個(gè)按鍵對(duì)應(yīng)一個(gè)單片機(jī)的 I/O口管腳。 本設(shè)計(jì)中總共用到 4個(gè)按鍵式開關(guān),他們用來改變?cè)O(shè)定的溫濕度上下限數(shù)值。從 S1到 S4,分別控制進(jìn)入溫度上下限設(shè)置 、進(jìn)入濕度上下限設(shè)置、數(shù)值加、數(shù)值減、確認(rèn)并退出。 本設(shè)計(jì)中的鍵盤是低電平有效。未按鍵時(shí),上拉電阻保證了單片機(jī)的I/O口是確定的高電平;當(dāng)某個(gè)鍵按下時(shí), I/O口變?yōu)榈碗娖健? 10 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 元件清單 本次設(shè)計(jì)需要用到的元器件如下表所示: 關(guān)鍵器件的介紹 AT89C52 AT89C52是一種低功耗、高性能 CMOS 8位微控制器,存儲(chǔ)器是采用Atmel公司高密 [3] 度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè) 80C51產(chǎn)品的指令和引腳完全兼容。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程 Flash,使得 AT89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 AT89C52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié) Flash, 256字節(jié) RAM, 32 位 I/O 口線,看門狗定時(shí)器, 2 個(gè)數(shù)據(jù)指針,三個(gè) 16位定時(shí)器 /計(jì)數(shù)器,一個(gè) 6向量 2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外, AT89C52可降至 0Hz靜態(tài)邏輯操作,支持 2種軟件可選擇節(jié)電模式。空閑模式下, CPU 停止工作, 允許 RAM、定時(shí)器 /計(jì)數(shù)器、串口、中斷繼續(xù)工作;掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)停止一切工作,直到下一個(gè)中斷或硬件復(fù)位為止。 AT89C52引腳圖 11 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 圖 AT89C52的引腳結(jié)構(gòu)圖 P0口: P0口是一個(gè) 8位漏極開路的雙向 I/O口。作為輸出口,每位能驅(qū)動(dòng) 8個(gè) TTL邏輯電平。對(duì) P0端口寫“ 1”時(shí),引腳用作高阻抗輸入 [1]。在 Flash編程時(shí), P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序 校驗(yàn)時(shí),需要外部上拉電阻。 P1口: P1口是一個(gè)具有內(nèi)部上拉電阻的 8位雙向 I/O口, P1輸出緩沖器能驅(qū)動(dòng) 4個(gè) TTL邏輯電平。對(duì) P1端口寫“ 1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流 (IIL)。 P2口: P2口是一個(gè)具有內(nèi)部上拉電阻的 8位雙向 I/O口, P2輸出緩沖器能驅(qū)動(dòng) 4個(gè) TTL邏輯電平。對(duì) P2端口寫“ 1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流 (IIL)。 P3口: P3口是一個(gè)具有內(nèi)部上拉電阻的 8位雙向 I/O口, P3輸出緩沖器能驅(qū)動(dòng) 4個(gè) TTL邏輯電平。對(duì) P3端口寫“ 1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流 (IIL)。 RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí), RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平,單片機(jī)復(fù)位。 ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許 ) 輸出脈沖用于 12 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 鎖 存地址的低 8位字節(jié)。一般情況下, ALE仍以時(shí)鐘振蕩頻率的 1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。應(yīng)注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè) ALE脈沖。 PSEN:程序儲(chǔ)存允許輸出 (PSEN)是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令 (或數(shù)據(jù) )時(shí),每個(gè)機(jī)器周期兩次 PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次 PSEN信號(hào)。 EA/VPP:外部訪問允許,欲使 CPU僅訪問外部程序存儲(chǔ)器 (其地址為0000HFFFFH), EA端必須保持低電平 (接地 )。需注意的是:如果加密位 LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存 EA端狀態(tài)。 4 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)的工作流程是,操作人員在計(jì)算機(jī)上輸入需要設(shè)定的溫濕度限定值,當(dāng)設(shè)定的溫濕度值與檢測(cè)溫濕度值不同時(shí),單片機(jī)控制系統(tǒng)則會(huì)采取相應(yīng)的調(diào)節(jié)動(dòng)作 [2]。此程序流程包括五個(gè)部分,第一部分是主程序,其描述總體結(jié)構(gòu);第二部分是 SHT11溫度采集程序,其功能是通過 SHT11傳感器采集溫濕度值,并進(jìn)行修正;第三部分是 LCD1602顯示子程序,對(duì)LCD1602進(jìn)行初始化,將溫濕度進(jìn)行顯示;第四部 分是輸出控制子程序,對(duì)設(shè)定值和實(shí)際值進(jìn)行判斷,并決定是否進(jìn)行溫濕度的調(diào)節(jié);第五部分是按鍵輸入電路,用來修改溫濕度上下限值。 軟件設(shè)計(jì)的總體結(jié)構(gòu) 此次設(shè)計(jì)的大棚溫濕度自動(dòng)控制系統(tǒng)由一個(gè)主程序調(diào)用多個(gè)子程序組成,分別包括 SHT11溫濕度采集子程序、 LCD1602液晶顯示子程序、輸出控制子程序、鍵盤掃描子程序,如圖所示: SHT10溫濕度采集子程 LCD1602 液晶屏顯示子程序 13 輸出控制子程序 鍵盤掃描子程序 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 圖 程序總體結(jié)構(gòu) 主程序主要就是調(diào)用各個(gè)子程序的 C語言文件中定義的函數(shù),實(shí)現(xiàn)SHT1 LCD1602初始化等操作,然后測(cè)量溫濕度,調(diào)用函數(shù)對(duì)數(shù)據(jù)進(jìn)行處理,最后進(jìn)行顯示并輸出控制信號(hào)。 在 Keil3工程中編寫程序的時(shí)候,為了讓整個(gè)工程看起來?xiàng)l理清晰,要按照各個(gè)模塊分別新建 C文件寫子程序。某個(gè) C文件要調(diào)用其它 C文件中的函數(shù)時(shí),要在當(dāng)前 C語言文件中先進(jìn)行聲明,然后再調(diào)用,或者也可以把每個(gè) C文件中定義的函數(shù)都寫到相同名字下的 .h 頭文件中,其他 C文件要調(diào)用該函數(shù)時(shí)要在前面加上 include *.h,將頭文件包括進(jìn)來。對(duì)于變量也是如此,如果某個(gè)變量也在其他 C文件中使用,那么要在一個(gè)C文件總將它定義為全局變量,即在函數(shù)外面定義。其他 C文件要使用該變量時(shí),要先使用 extern將全局變量的作用域擴(kuò)展到本 C語言文件。 14 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 主要模塊的設(shè)計(jì)流程框圖 主程序流程圖 圖 主程序流程圖 15 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) SHT11子程序流程圖 圖 SHT11子程序流程圖 溫濕度傳感器 SHT11使用類似于 I2C總線的時(shí)序與單片機(jī)通信 [8],由于 51單片機(jī)沒有 I2C接口,所以需要編寫程序,用單片機(jī)的某兩個(gè) I/O口管腳模擬 I2C總線的時(shí)序,從而與 SHT11通信。 SHT11有 4種時(shí)序:?jiǎn)?dòng)傳輸時(shí)序、寫字節(jié)時(shí)序、讀字節(jié)時(shí)序及復(fù)位時(shí)序。復(fù)位時(shí)序和啟動(dòng)傳輸時(shí)序可通過依次拉低或拉高時(shí)鐘線和數(shù)據(jù)線,因而實(shí)現(xiàn)起來比較簡(jiǎn)單;而寫時(shí)序和讀時(shí)序就比較復(fù)雜。寫時(shí)序用來發(fā)送控制字,即發(fā)送命令,測(cè)量結(jié)束后,發(fā)出讀時(shí)序讀回測(cè)量數(shù)據(jù)。向 SHT11的 8個(gè)數(shù)據(jù)位的 寫入,于第 9個(gè)時(shí)鐘周期之后,讀取應(yīng)答位,應(yīng)答位為 0時(shí),表示 SHT11正確接收。 SHT11讀寫數(shù)據(jù)的規(guī)則是:在時(shí)鐘線的下降沿之后數(shù)據(jù)線改變狀態(tài),并在時(shí)鐘線的上升沿有效。 16 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) LCD1602子程序流程圖 圖 LCD1602子程序流程圖 17 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 輸出控制子程序流程圖 圖 輸出控制子程序 18 蘭州交通大學(xué)博文學(xué)院畢業(yè)設(shè)計(jì) 軟件設(shè)計(jì)所用工具 KeiluVision4 本次設(shè)計(jì)采用 Keil3 uVision4來編寫 C語言程序,通過它的編譯器進(jìn)行編譯、連接,最后將生成的機(jī)器碼下載到單片機(jī)上 [7]。 Keil3編譯器是目前最流行的單片機(jī)開發(fā)的軟件,它是美國(guó) Keil 3Software公司開發(fā)的 C語言開發(fā)系統(tǒng)。它提供了一個(gè)完整的開發(fā)方案,包括 C編譯器、庫管理、連接器、宏匯編和一個(gè)功能強(qiáng)大的仿真調(diào)試器等,通過一個(gè)集成開發(fā)環(huán)境將這些部份組合在一起。 Keil3整合了豐富的庫函數(shù)和功能強(qiáng)大的集成開 發(fā)調(diào)試工具。此外,Keil3生成的目標(biāo)代碼效率非常高,這一點(diǎn)從生成的匯編語言就可以看出,大多生成的匯編語句很緊湊,容易理解。 Proteus Proteus用來對(duì)電路進(jìn)行仿真,它的功能強(qiáng)大,包括單片機(jī)在內(nèi)的眾多元器件都可以仿真 [7]。把 Keil3編譯、連接后生成的 hex文件導(dǎo)入 Proteus單片機(jī)中即可對(duì)單片機(jī)進(jìn)行仿真。 Proteus軟件是英國(guó) Labcenter electronics 公司出版的 EDA工具軟件,Proteus不僅具有其它 EDA軟件的仿真功能,還可對(duì)單片機(jī)及其外圍器件進(jìn)行仿
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1