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

正文內(nèi)容

單片機溫度控制器設(shè)計畢業(yè)論文-資料下載頁

2025-07-02 19:40本頁面

【導(dǎo)讀】集與控制系統(tǒng)的研發(fā)與應(yīng)用在很大程度上提高了生產(chǎn)生活中對溫度的控制水平。本設(shè)計論述了一種以STC89C52單片機為主控制單元。系統(tǒng)設(shè)計了相關(guān)的硬件電路和相關(guān)應(yīng)用程序。系統(tǒng)程序主要包括主程序,讀出溫度子程序,計算溫度子程序、按鍵。處理程序、LCD顯示程序以及數(shù)據(jù)存儲程序等。上,構(gòu)成一個完整的微型計算機,故又稱為單片微型計算機。除工業(yè)領(lǐng)域外,單。片機還廣泛應(yīng)用于各種民用電子、電器之中。MCS-51是由美國INTEL公司20世紀80年代生產(chǎn)的一系列8位單片機的總稱,是最早最典型的產(chǎn)品。該系列其他單片機都是在8051的基礎(chǔ)上進行功能的增、內(nèi)核單片機的公司,主要有ATMEL、WINBOND、NXP、NCDRAGON等。4KB程序存儲器ROM。字節(jié)的數(shù)據(jù)存儲器RAM。21個特殊功能寄存器。外部程序存儲器尋址空間為64KB。機而言,使用最為廣泛的還是匯編語言和C語言。學(xué)習(xí)中,使用最多的還是KeiluVision3。定合適的單片機型號。源程序文件,并將文件添加到項目中去。通過uVision3的各種選項,配置Cx51

  

【正文】 _Chip,unsigned char channel) { unsigned char flag= 0。 unsigned char value= 1。 unsigned xdata ale。 switch (ADC_Chip) { case ADC_0808: P3= P3|0x08。 27 XBYTE[ADC0808_START_PORT]= channel。 P3= P3amp。0xdf。 P3= P3|0x20。 P3= P3amp。0xdf。 flag= P3。 while(1) { ale= 1。 flag=flag amp。 0x08。 if(flag==0) break。 flag= P3。 } value= XBYTE[ADC0808_DATA_PORT]。 return value。 break。 } } void main() {unsigned char value。 unsigned long t。 unsigned char i,m,n。 Init8255()。 while(1) { value=getData2(ADC_0808,0)。 t=((200*(unsigned long)value*100)/255+5)/10。 LedsOff()。 for(i= 50。i!= 0。i) for(m= 50。m!= 0。m)。 for(i= 0。i3。i++) {m=t%10。 if(i== 1) turn_On_WithDot(i,m,CC)。 else turn_On(i,m,CC)。 for(n=n!=0。n)。 t=t/10。 LedsOff()。 } } } 實驗仿真圖 28 爐溫閉環(huán) PID控制系統(tǒng)仿真模型 到目前為止,整個 PID控制的硬件設(shè)計已經(jīng)完成,但對閉環(huán)控制而言,控制量 u作用與被控對象(電爐)的控制效果我們卻不得而知,因為還缺乏被控對象的仿真模型。按自動控制的知識,被控對象可以用一個傳遞函數(shù)表示,傳遞函數(shù)的確定既可用數(shù)學(xué)推導(dǎo)的方法,也可用實驗的方法確定。 一般而言,電爐的傳遞函數(shù)為 K/(1+Ts) * e〆 s,式中的 K為增益, T位時間常數(shù),〆為延時時間,在仿真模 型中, K取為 2, T取為 10,〆取為 2;傳遞函數(shù)的輸入量為電壓 U,輸出量為溫度。在 Proteus中,在元件選擇頁面中輸入 Laplace關(guān)鍵字在按照需要選擇所需的傳遞函數(shù)模型,在本設(shè)計中,選擇“ 1? ORD:LP”和“ OP:Delay”兩種傳遞函數(shù)模型來表示電爐對象,他們分別在 1st order和 Operators子類中,兩模塊如下圖所示。 用壓控電阻表示 PT100傳感器,在元件選擇頁面輸入 VCR,在元件列表區(qū)域選擇 VCR器件,其符號如上圖所示。 29 1? ORD:LP參數(shù)設(shè)置對話框 OP:Delay參數(shù) 設(shè)置對話框 30 VCR參數(shù)設(shè)置對話框 31 實驗硬件圖 實驗程序 YES NO YES NO 開始 初始化 8255A 通道 0讀入數(shù)據(jù) 啟動 AD 轉(zhuǎn)換 標度換算出溫度 t 關(guān)閉所有 LED 1ms延時 用 %和 /運算分別得到各位數(shù)據(jù) 是第二位嗎 數(shù)據(jù)或上 80H 送選通信號 查表送取字型碼 最后一位顯示嗎 結(jié)束 t200 關(guān)閉電爐電源 即 P3 與上 0xEF 打開電爐電源 即 P3 或上 0x10 32 include include include unsigned char code Select[]={0x01,0x02,0x04,0x08,0x10,0x20}。 unsigned char code LED_CODES[]={0XC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90, 0x88,0x83,0xC6,0xA1,0x86, 0x8E,0xFF,0x0C,0x89,0x7F,0xBF }。 void Init8255() { unsigned char i,j。 for(j=0。j10。j++) for(i=0。i255。i++)。 XBYTE[PORT_CONTROL]= 0x90。 LedsOff()。 } void turn_On (char led,char ChNumber,char mode) { if(mode== CA) XBYTE[PORT_C]= LED_CODES[ChNumber]。 else XBYTE[PORT_C]=~LED_CODES[ChNumber]。 XBYTE[PORT_B]= Select[led]。 } void LedsOff() { XBYTE[PORT_B]= 0x00。 } void turn_On_WithDot(char led,char ChNumber,char mode) { if(mode== CA) XBYTE[PORT_C]=LED_CODES[ChNumber]|~0x80。 else XBYTE[PORT_C]=~LED_CODES[ChNumber]|0x80。 XBYTE[PORT_B]=Select[led]。 } define BASE 0x0000 define PORT_A (BASE) define PORT_B (BASE+ 1) define PORT_C (BASE+ 2) define PORT_CONTROL (BASE+ 3) define LEDS 6 define CA 0 33 define CC 1 void turn_On (char led,char ChNumber,char mode)。 void LedsOff()。 void OneByOne (char datas[])。 void turn_On_WithDot(char led,char ChNumber,char mode)。 extern void Init8255()。 unsigned char code Select[]。 unsigned char code LED_CODES[]。 include include include define ADC_0808 1 define ADC0808_DATA_PORT 0x20xx define ADC0808_QUERY_PORT 0x4000 define ADC0808_START_PORT 0x20xx define T ((char)(50*255/200)) void delay(unsigned char t) { unsigned char i。 for (i= t。t!=0。t)。 } unsigned char getData2(unsigned char ADC_Chip,unsigned char channel) { unsigned char flag= 0。 unsigned char value= 1。 unsigned xdata ale。 switch (ADC_Chip) { case ADC_0808: P3= P3|0x08。 XBYTE[ADC0808_START_PORT]= channel。 P3= P3amp。0xdf。 P3= P3|0x20。 P3= P3amp。0xdf。 flag= P3。 while(1) { ale= 1。 flag=flag amp。 0x08。 if(flag==0) break。 flag= P3。 } value= XBYTE[ADC0808_DATA_PORT]。 return value。 34 break。 } } void main() {unsigned char value,k。 unsigned long t。 Init8255()。 LedsOff()。 while(1) { value=getData2(ADC_0808,0) 。 t=((200*(unsigned long)value*100)/255+5)/10。 if(t=T) P3=P3amp。0xef。 else P3=P3|0x10。 for(k= 0。k++) { if(k== 1) turn_On_WithDot(k,t% 10,CC)。 else turn_On(k,t% 10,CC)。 delay(250)。 LedsOff()。 delay(250)。 t=t/10。 if(t== 0) break。 } } } 試驗仿真圖 35 到目前為止,我們的設(shè)計已經(jīng)可以完全通過仿真了。但是能否得到一個線性的結(jié)果我們還要進一步分析,下表是對輸入與輸出的數(shù)據(jù)的列表: 輸入電壓值 單位( V) 輸出溫度值 單位( ℃ ) 125 133 141 149 158 從上圖可以看到輸入電壓值與輸出溫度值是線性關(guān)系,到此整個 PID溫 控器的設(shè)計的全部內(nèi)容已經(jīng)完成。 36 第四章 總結(jié)與展望 本次次畢業(yè) 設(shè)計對我們即將找工作的畢業(yè)生來說,是非常有意義的。在這個過程中,我們重新學(xué)習(xí)并深化了對單片機技術(shù)的理解,更加熟練地掌握了各種仿真軟件。比如說: Keil C5 Proteus等等。學(xué)會了怎樣去仿真和調(diào)試,懂得了發(fā)現(xiàn)錯誤后怎么去解決。 另外,單片機技術(shù)在現(xiàn)實生活中 應(yīng)用的越來越多,幾乎所有的電子產(chǎn)品都必不可少。如:智能洗衣機、電冰箱、各種類型的傳感器以及控制系統(tǒng)等。因此,學(xué)好這門課對我們來說是十分有用的。然而,由于本人的水平有限,并未完全掌握,在 今后的學(xué)習(xí)過程中仍然需要花費大量的時間去深化。 特別是,在實際使用時更重要的才是硬件連接,需要自己動手制作各種電路板,開發(fā)各種不同的系統(tǒng)。所以,今后的時間里將會更多的注重這一方面。 參考文獻 【 1 】 李朝青.單片機原理及接口技術(shù).北京:北京航空航天大學(xué)出版社 【2】胡漢才.單片機原理及其接口技術(shù).北京:清華大學(xué)出版社 【3】丁明亮、唐前輝.51單片機應(yīng)用設(shè)計與仿真 北京:北京航空航天大學(xué)出版社 【4】 王燕. 單片機原理與應(yīng)用 北京:北京航空航天大學(xué)出版社 【5】張靖武.單片機系統(tǒng)的Proteus設(shè)計與仿真 北京 :電子工業(yè)大學(xué)出版社 【6】 夏路易.電路原理圖與電路板設(shè)計教程 北京:北京希望電子出版社 【 7】 Atmel公司 .Atmel8051 Microsoftroller Hardware 【 8】周立功 .增強型 80C51單片機速成與實踐 .北京 : 北京航空航天大學(xué)出版社
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1