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

正文內(nèi)容

畢業(yè)設(shè)計-基于at89c52單片機的溫控電風(fēng)扇設(shè)計-在線瀏覽

2025-03-06 00:51本頁面
  

【正文】 平,然后再延時一定時間;當?shù)碗娖窖訒r時間到時,再對 I/O 電平取反,使其變成高電平,如此循環(huán)即可得到 PWM 信號。 ( 2)利用定時器。但是此方法編程相對復(fù)雜。在 STC12 系列單片機中自身帶有PWM 控制器,但本系統(tǒng)所應(yīng)用到的 AT89C52 單片機無此功能。 對于方案二,相對于其他用硬件或是 軟件相結(jié)合的方法實現(xiàn)對電機進行調(diào)速而言,采用 PWM 用純軟件的方法來實現(xiàn)調(diào)速過程,具有更大 的靈活性,并大大降低了成本,能夠充分發(fā)揮單片機的功能,對于簡單速度控制系統(tǒng)的實現(xiàn)提供了一種有效的途徑。 第三章 各單元模塊的硬件設(shè)計 6 第三章 各單元模塊的硬件設(shè)計 系統(tǒng)主要器件包括 DS18B20 溫度傳感器、 AT89C52 單片機、五位 LED 共陰數(shù)碼管、風(fēng)扇直流電機,達林頓反向驅(qū)動器 ULN2803。 系統(tǒng) 器件簡介 DS18B20 單線數(shù)字溫度傳感器簡介 DS18B20 數(shù)字溫度傳感器,是采用美國 DALLAS 半導(dǎo)體公司生產(chǎn)的DS18B20 可組網(wǎng)數(shù)字溫度傳感器芯片封裝而成,它具有微型化、低功耗、高性能、抗干擾能力強、易配微型處理器等優(yōu)點,可直接將溫度轉(zhuǎn)化成串行數(shù)字信號供處理器處理。 DS18B20 的主要特征:測量的結(jié)果直接以數(shù)字信號的形式輸出,以“一線總線”方式串行傳給 CPU,同時可傳送 CRC 校驗碼,具有極強的抗干擾糾錯能力;溫度測量范圍在 55℃ ~ +125℃之 間,在 10℃ ~ +85℃時精確度為177。 DS18B20 內(nèi)部結(jié)構(gòu)主要有四部分: 64 位 ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器 TH 和 TL、配置寄存器。 達林頓反向驅(qū)動器 ULN2803 簡介 本系統(tǒng)要用單片機控制風(fēng)扇直流電機,需要加驅(qū)動電路,為直流電機提供足夠大的驅(qū)動電流。 ULN2803 在使用時接口簡單,操作方便,可為電機提供較大的驅(qū)瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 7 動電流,它實際上是一個集成芯片,單塊芯片可同時驅(qū)動 8 個電機。 UNL2803 由 8 個 NPN 達林頓晶體管組裝而成,共 18 個引腳,引腳 1~ 8 分別是 8 路驅(qū)動器的輸入端,輸入信號可直接是 TTL 或是 CMOS 信號;引腳 11~ 18 分別是 8 路驅(qū)動器的輸出端;引腳 9 為接地線,引腳 10 為電源輸入。本系統(tǒng)選用的電機為 12V 直流無刷電機,可用 ULN2803來驅(qū)動。 AT89C52 有 40 個引腳,各引腳介紹如下: VCC: +5V 電源線; GND:接地線。這 8 條引腳共有兩種不同的功能,分別適用于兩種不同的情況。第二種情況是單片機帶片外存儲器,其各個引腳在 CPU 訪問片外存儲器時先是用于傳送片外存儲器的低 8 位地址,然后傳送 CPU 對片外存儲器的讀寫數(shù)據(jù)。它也可作為通用的 I/O 口使用,與 P0 口一樣用于傳送用戶的輸入輸出數(shù)據(jù),所不同的是它片內(nèi)含上拉電阻而 P0 口沒有,故 P0 口在做該用途時需外接上拉電阻而 P1 口則不需要。 P2 口: P2 口為一個內(nèi)部含有上拉電阻的 8 位雙向 I/O 口,它可以作為通用I/O 口使用,傳送用戶的輸入 /輸出數(shù)據(jù),同時可與 P0 口的第二功能配合,用于輸出片外存儲器的高 8 位地址,共同選中片外存儲單元,但此時不能傳送存儲器第三章 各單元模塊的硬件設(shè)計 8 的讀寫數(shù)據(jù)。 P3 口: P3 口引腳是 8 個帶內(nèi)部上拉電阻的雙向 I/O 口,當 P3 口寫入 1 后,它們被內(nèi)部上拉為高電平,它也可以作為普通的 I/O 口使用,傳送用戶的輸入輸出數(shù)據(jù), P3 口也作為一些特殊功能端口使用,如圖 31 所 示。當振蕩器復(fù)位器件時,要保持 RST 腳兩個機器周期的高電平狀態(tài)。在不瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 9 訪問片外存儲器時,單片機自動在 ALE/PROG 線上輸出頻率為 1/6 晶振頻率的脈沖序列。在由外部程序存儲器取指期間,每個機器周期兩次 PSEN 有效。 EA /VPP:允許訪問片外存儲器 /編程電源 線,當 EA 保持低電平時,則在此期間允許使用片外程序存儲器,不管是否有內(nèi)部程序存儲器。在 FLASH 編程期間,此引腳也用于施加 12V編程電源( VPP)。 LED 數(shù)碼管簡介 本系統(tǒng)選用五個 LED 數(shù)碼管來進行溫度顯示。 LED 數(shù)碼管可以分為共陰極和共陽極兩種結(jié)構(gòu),如圖 32( a)和圖 32( b)所示。通過單片機引腳輸出高低電平,可使數(shù)碼管顯示相應(yīng)的數(shù)字或字母,這種使數(shù)碼管顯示字形的數(shù)據(jù)稱字形碼,又稱段選碼 。這里 07H 即為數(shù)字 7 的段選碼。 電路設(shè)計 開關(guān)復(fù)位與晶振電路 在單片機應(yīng)用系統(tǒng)中,出單片機本身需要復(fù)位以外,外部擴展 I/O 接口電路也需要復(fù)位,因此需要一個包括上電和按鈕復(fù)位在內(nèi)的系統(tǒng)同步復(fù)位電路。笨設(shè)計中開關(guān)復(fù)位與晶振電路如圖 33 所示,當按下按鍵開關(guān)S1 時,系統(tǒng)復(fù)位一次。 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 11 圖 33 系統(tǒng)復(fù)位與晶振電路 獨立 按鍵 連接電路 按鍵 包括兩個獨立按鍵 S2 和 S3,一端與單片機的 和 口連接,另一端接地,當按下任一鍵時, P1 口讀取低電平有效。其中按鍵 S2 為加按鍵,每按一次,系統(tǒng)對最初設(shè)定值加一,按鍵 S3 為減按鍵 ,每按下一次,系統(tǒng)對初定值進行減一計算。 第三章 各單元模塊的硬件設(shè)計 12 圖 34 獨立按鍵連接電路 數(shù)碼管顯示電路 本設(shè)計制作中選用 5 位共陰極數(shù)碼管作為顯示模塊,它和單片機硬件的接口如圖 35 所示。 5 位數(shù)碼管的段選 a、 b、 c、 d、 e、 f、 g、 dp 線分別與單片機的 ~ 口連接,其中 P0 口需要接一 10K 的上拉電阻,以使單片機的 P0口能夠輸出高低電平。 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 13 圖 35 數(shù)碼管顯示電路 溫度采集電路 DS18B20 數(shù)字溫度傳感器通過其內(nèi)部計數(shù)時鐘周期的作用,實現(xiàn)了特有的溫度測量功能。如果計數(shù)器計數(shù)到 0 時,高 溫度系數(shù)振蕩周期還未結(jié)束,則表示測量的溫度值高于 55℃,被預(yù)置在 55℃的溫度寄存器中的值就加 1℃,然后這個過程不斷反復(fù),知道高溫系數(shù)振蕩周期結(jié)束為止。由于溫度振蕩器的拋物線特性的影響,其內(nèi)用的斜率累加器進行補償。只須將 DS18B20 信號線與單片機 1 位 I/O 線相連,且單片機的 1 位 I/O 線可掛多個 DS18B20,就可第三章 各單元模塊的硬件設(shè)計 14 實現(xiàn)單點或多點溫度檢測。 圖 36 溫度采集電路 風(fēng)扇電機驅(qū)動與調(diào)速電路 本設(shè)計中由單片機的 I/O 口輸出 PWM 脈沖,通過一個達林頓反向驅(qū)動器ULN2803 驅(qū)動 12V 的直流無刷電機以及實現(xiàn)風(fēng)扇電機轉(zhuǎn)速的調(diào)節(jié)。當環(huán)境 溫度升高時,直流電機的轉(zhuǎn)速會相應(yīng)按照設(shè)定的等級有所提高;當環(huán)境溫度下降時,電機的轉(zhuǎn)速會相應(yīng)的下降;當環(huán)境溫度低于設(shè)置溫度時,電機停止轉(zhuǎn)動,而環(huán)境溫度又高于預(yù)設(shè)溫度時,電機重新啟動。 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 15 圖 37 風(fēng)扇電機驅(qū)動與調(diào)速電路 系統(tǒng)選用的風(fēng)扇電機為 12 直流無刷電機,達林頓反向驅(qū)動器 ULN2803 輸入TTL 信號為 5V 或 CMOS 信號為 6~ 15V 時,輸出的最大電壓為 50V,最大電流為500mA,工作溫度范圍為 0~ 70℃。 電路總圖 電路總圖主要包括 系統(tǒng)復(fù)位與晶振電路、獨立按鍵連接電路、數(shù)碼管顯示電路、溫度采集電路 、 風(fēng) 扇電機驅(qū)動與調(diào)速電路等,如圖 38 所示。 DS18B20 初始化函數(shù)完成對 DS18B20 的初始化; DS18B20 溫度轉(zhuǎn)換函數(shù)完成對環(huán)境溫度的實時采集;溫度讀取函數(shù)完成主機對溫度傳感器數(shù)據(jù)的讀取及數(shù)據(jù)換算, 按鍵 掃描函數(shù)則根據(jù)需要完成初值的加減設(shè)定;溫度處理函數(shù)對采集到的溫度進行分析處理,為電機轉(zhuǎn)速的變化提供條件;風(fēng)扇電機控制函數(shù)則根據(jù)溫度的數(shù)值完成對電機轉(zhuǎn)速及啟停的控制。 圖 41 主程序圖 開始 程序初始化 調(diào)用 DS18B20 初始化函數(shù) 調(diào)用 DS18B20 溫度轉(zhuǎn)換函數(shù) 調(diào)用溫度讀取函數(shù) 調(diào)用 按鍵 掃描函數(shù) 調(diào)用數(shù)碼管顯示函數(shù) 調(diào)用溫度處理函數(shù) 調(diào)用風(fēng)扇電機控制函數(shù) 結(jié)束 第四章 軟件設(shè)計 18 主要程序代碼 按鍵掃描程序 void keyscan(void) { if(key1==0) { dmsec(5)。 if(sheding==100) sheding=20。 } else if(key2==0) { dmsec(5)。 if(sheding==0) sheding=20。 } } 溫度處理程序 void deal(uint tmp) //溫度處理 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 19 { if(tmp=sheding) { gaonum=0。 } else if((tmpsheding)amp。(tmp=(sheding+5))) { gaonum=1。 } else if((tmpsheding+5)amp。(tmp=(sheding+10))) { gaonum=2。 } else if((tmpsheding+10)amp。(tmp=(sheding+15))) { gaonum=3。 } else { gaonum=4。 } } 第四章 軟件設(shè)計 20 用 Keil C51 編寫程序 Keil C51 是美國 Keil Software 公司開發(fā)的 51 系列兼容單片機 C 語言的軟件開發(fā)系統(tǒng),與單片機匯編語言相比, C 語言不僅語句簡單靈活,而且編寫的函數(shù)模塊可移植性強,因而易學(xué)易用,效率高。 Keil C51 軟件不僅提供了豐富的庫函數(shù),而且它強大的集成開發(fā)調(diào)試工具為程序編輯調(diào)試帶來便利,在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。 Keil C51 的使用界面如圖 32 所示。 Proteus 軟件有十多年的歷史,在全球廣泛使用,它不僅和其他 EDA 工具一樣有原理布圖、 PCB 自動或人工布線及電路仿真的功能,而且更重要的功能是,它的電路仿真是互動的,可以根據(jù)仿真實時觀察到現(xiàn)象驗證設(shè)計的正確性及準確性并及時改變程序代碼、原理圖連接以及元件屬性等。 Proteus 有 4 個功能模塊:智能原理圖設(shè)計、完善的電路仿真功能、獨特的單片機協(xié)同仿真功能以及實用的 PCB 設(shè)計平 臺。軟件的使用主界面如圖 43 所示。在原理圖繪制連接好后再把編譯好的程序加載到 AT89C52 單片機中。 把溫度傳感器 DS18B20 溫度設(shè)置為 攝氏度,用 按鍵 S2 調(diào)節(jié)預(yù)設(shè)的溫度為 23 攝氏度。 圖 44 仿真效果圖一 瓊州學(xué)院本科畢業(yè)論文 (設(shè)計 ) 23 把溫度傳感器 DS18B20 溫度設(shè)置為 攝氏度,用 按鍵 S2 調(diào)節(jié)預(yù)設(shè)的溫度為 23 攝氏度。 圖 45 仿真效果圖二 把溫度傳感器 DS18B20 溫度設(shè)置為 攝氏度,用 按鍵 S2 調(diào)節(jié)預(yù)設(shè)的溫度為 23 攝氏度。 第四章 軟件設(shè)計 24 圖 46 仿真效果圖三 在上一步仿真的基礎(chǔ)上(溫度傳感器 DS18B20 溫度設(shè)置為 攝氏度,系統(tǒng)預(yù)設(shè)的溫度為 23 攝氏度),用 按鍵 S2 調(diào)節(jié)系統(tǒng)預(yù)設(shè)溫度至 31 攝氏度,此時可知預(yù)設(shè)溫度大于溫度傳感器檢測到的溫度,觀察到直流風(fēng)扇電機的轉(zhuǎn)速逐漸變慢,最后轉(zhuǎn)速變?yōu)?0,符合系統(tǒng)要實現(xiàn)的功能,如圖 47 所示。當環(huán)境溫度低于系統(tǒng)預(yù)設(shè)的溫度時,風(fēng)扇自動停止運轉(zhuǎn),實現(xiàn)了系統(tǒng)所設(shè)計的功能。 第五章 系統(tǒng)調(diào)試 26 第五章 系統(tǒng)調(diào)試 軟件調(diào)試 按鍵顯示部分的調(diào)試 起初根據(jù)設(shè)計編寫的系統(tǒng)程序:程序的按鍵接口采用 P1 口,數(shù)碼管現(xiàn)實采用 P0 控制 LED 的段碼, P2 口控制 LED 的位碼,從而實現(xiàn) 按鍵 功能以及數(shù)碼管的顯示。 經(jīng)過查找分析,發(fā)現(xiàn) 按鍵 掃描程序沒有按鍵消抖部分,按鍵在按下與松手時,都會有一定 程序的抖動,從而可能使單片機做出錯誤的判斷,導(dǎo)致按鍵條件預(yù)設(shè)溫度時失靈,甚至根本不工作。 數(shù)碼管不能正確的顯示,主要是因為所有數(shù)碼管的段碼都由 P0 口傳送,而數(shù)碼管顯示又采用了動態(tài)掃描的方式,但在程序中卻沒有設(shè)置顯示段碼的暫存器,導(dǎo)致當 P0 口傳送段碼時發(fā)生混亂,不能正確識別段碼。 在 按鍵 加入了消抖程序,數(shù)碼管顯示程序中加入了段碼的存儲空間后 ,數(shù)碼管能夠正常的顯示,按鍵也能正常的工作,達到了較好的效果。軟件設(shè)計采用了 口為數(shù)字溫度輸入口,但是需要對輸入的數(shù)字信號進行處理后才能
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1