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

正文內(nèi)容

基于單片機(jī)的空調(diào)溫度控制系統(tǒng)設(shè)計(jì)(文件)

2025-07-08 03:03 上一頁面

下一頁面
 

【正文】 write_byte(read_EEROM)。 TMPL=(255TMPL+1)。 display[0]=distab[display[4]]。 display[3]=(display[4]/100)。}//1602液晶顯示/************************************************名稱:enable_1602()*功能:1602的命令輸入*輸入:命令值*輸出:無***********************************************/void enable_1602(uchar a){ P0=a。 delay_1ms(20)。 RS=1。 E=1。 //清屏 enable_1602(0x38)。 for(num=0。 } enable_1602(0xc0)。 delay_1ms(5)。 delay_1ms(5)。 delay_1ms(5)。 delay_1ms(5)。 if(hang==1) a=0x80。 write_1602(sign)。 ge=date%10。 enable_1602(a)。 write_1602(0x30+display[3])。 write_1602(0x30+display[0])。flash()。flash()。flash()。flash()。 k=j。scl=0。 scl=1。sda=1。flash()。i++) { flash()。 else j=0。return(k)。 while((sda==1)amp。flash()。I2C_clock()。 write_24c02(0xa1)。 delay_16us(10)。 write_24c02(0xa0)。write_24c02(info)。delay_16us(50)。j++) { for(i=0。 } beep=1。 }//鍵掃描/************************************************名稱:keyscan()*功能:給空調(diào)工作定溫(按鍵)*輸入:無*輸出:無***********************************************/void keyscan(void){ uchar hang,lie。while(!s1)。 } switch(s1num) { case 1:enable_1602(0x80+10)。break。lie=4。break。if(s2==0) while(!s2)。 L1602_string(hang,lie,T)。(s3==0)) { delay_1ms(5)。 if(T==17) T=18。amp。 while(!s2)。L39。 case 2:enable_1602(0x0f)。)。speed=1000。enable_1602(0xc0+3)。(s3==0)) { delay_1ms(5)。 switch(s2num) { case 0:enable_1602(0x0f)。)。speed=1500。enable_1602(0xc0+3)。L1602_char(2,4,39。break。a++) //4相 { P1=F_Rotation[a]。 shiceL=shice1。 } else warm=0。}void main(){ uchar i。i4。 Time1_Init()。 cool=1。 if((display[4]==0x2d)|(shiceLsheding)) { dianji(speed)。 //改變這個(gè)參數(shù)可以調(diào)整電機(jī)轉(zhuǎn)速 }}//控制執(zhí)行程序/************************************************名稱:p_dec()*功能:比較設(shè)定溫度與實(shí)際溫度差,決定制冷還是制熱*輸入:設(shè)定的溫度*輸出:無***********************************************/void p_dec(uchar sheding){ int shice,shiceL,shiceH。 for(a=0。)。 case 2:enable_1602(0x0f)。M39。break。L1602_char(2,4,39。 else s2num。 } } if((s1num==2)amp。H39。break。L1602_char(2,4,39。enable_1602(0xc0+3)。speed=2000。 if(s2==0) if(s2num==3)。 enable_1602(0x80+10)。 T。 } if((s1num==1)amp。 alert(T)。amp。 case 3:enable_1602(0x0c)。enable_1602(0x0f)。hang=1。if(s1==0)s1num++。 if(s1==0) { delay_1ms(5)。 } if(sign==27) sign=26。i++)//喇叭發(fā)聲的時(shí)間循環(huán) { delay_16us(80)。 while((sign==27)|(sign==17)) { for(j=0。stop_24c02()。write_24c02(address)。}/************************************************ 名稱 : x24c02_write()* 功能 : 想24c02中寫入數(shù)據(jù)* 輸入 : address(地址) , info(值)* 輸出 : 無***********************************************/void x24c02_write(uchar address,uchar info){ EA=0。 i=read_24c02()。I2C_clock()。start_24c02()。(i255)) { i++。scl=1。scl=0。flash()。 for(i=0。}/************************************************ 名稱 : read_24c02()* 功能 : 讀一個(gè)字節(jié)* 輸入 : 無* 輸出 : 讀出的值***********************************************/uchar read_24c02(void){ uchar i,j,k=0。 } scl=0。sda=CY。i8。flash()。flash()。flash()。flash()。flash()。 write_1602(0x30+display[1])。 write_1602(0x30+ge)。 if(hang==2) a=0xc0。 uchar shi,ge。 a=a+lie1。b39。num14。 delay_1ms(5)。i0。num7。num++) { write_1602(table1[num])。 //開或關(guān)光標(biāo)設(shè)置 enable_1602(0x06)。}/************************************************名稱:L1602_init()*功能:初始化1602*輸入:無*輸出:無***********************************************/void L1602_init(void){ uchar num,i。 E=0。 delay_1ms(20)。 RW=0。 display[1]=(display[4]%100)%10。0xf0)4)|((TMPHamp。 } display[4]=TMPLamp。 TMPH = read_byte()。 Reset()。 n=0。0x01。 for(i=0。i++) { if(read_bit()) { receive_data8=receive_data8+(ji)。 j=1。 //拉低DQ開始寫時(shí)隙 if(bitval==1) //若寫1就拉高DQ,否則反之 DQ=1。i3。//返回時(shí)隙信號}/************************************************名稱:read_bit 讀一位*功能:從DS18B20讀一個(gè)位值*輸入:無*輸出:一位的位值***********************************************/uchar read_bit(void){ uchar i。 //使DQ回高 delay_16us(3)。 //20ms寫一次 } }//DS18B20測溫顯示/************************************************名稱:Reset()*功能:復(fù)位DS18B20*輸入:無*輸出:無***********************************************/uchar Reset(void){ uchar receive_data。 TL0 = 0x00。 IE = 0x88。i) for(j=110。i++)。 _nop_()。//正轉(zhuǎn)表格uchar x24c02_read(uchar address)。C}。uint temp,speed。 //溫度加sbit s3=P3^4。 //1602讀寫引腳sbit RS=P2^5。 //24c02 SCLsbit sda=P3^6。至此論文完成之際,謹(jǐn)向老師表示由衷的感謝。在我即將結(jié)束對課題的研究時(shí),整個(gè)系統(tǒng)的硬件和軟件系統(tǒng)已初步成型,并通過了實(shí)驗(yàn),這與支持我的老師和同學(xué)的關(guān)心是分不開的。在單片機(jī)應(yīng)用的基礎(chǔ)上,實(shí)現(xiàn)了一種用帶有EEPROM的AT89C52單片機(jī)控制傳感器的自動(dòng)化溫度監(jiān)控系統(tǒng)。本設(shè)計(jì)使用AT80C52作為主控芯片進(jìn)行控制,單片機(jī)具有集成度高,通用性好,功能強(qiáng),特別是體積小,重量輕,耗能低可靠性高,抗干擾能力強(qiáng)和使用方便等獨(dú)特優(yōu)點(diǎn),在數(shù)字、智能化方面有廣泛的用途。,否則,在程序過長時(shí)容易變得很亂,不便于查找或更改。 數(shù)據(jù)傳送時(shí)序 軟件程序設(shè)計(jì)模塊流程圖 () DS18B20通訊模塊流程圖() 鍵掃描模塊流程圖() 主程序流程圖 DS18B20通訊模塊流程圖 鍵掃描模塊流程圖6 仿真及實(shí)驗(yàn)結(jié)果 程序調(diào)試過程中遇到的問題及解決辦法,由于DS18B20與微處理器采用串行數(shù)據(jù)傳送,因此,在對DS18B20進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。 數(shù)據(jù)傳送 I2C總線上數(shù)據(jù)傳送的每一幀數(shù)據(jù)均為一字節(jié)。 I2C總線時(shí)序圖在數(shù)據(jù)傳送過程中,當(dāng)時(shí)鐘線為高電平時(shí),數(shù)據(jù)線必須保持穩(wěn)定狀態(tài),不允許有跳變。 I2C總線上所有外圍器件都有規(guī)范的器件地址,器件地址由7位組成。S=0 當(dāng)寫一個(gè)字符,整屏顯示不移動(dòng)數(shù)據(jù)控制控制器內(nèi)部設(shè)有一個(gè)數(shù)據(jù)地址指針,用戶可通過他們來訪問內(nèi)部的全部80字節(jié)RAM。(5)寫RAM存儲(chǔ)器[44h] 寫數(shù)據(jù)到RAM存儲(chǔ)器,地址為第第第4字節(jié)(TH、TL、CONF)。如果不是所有位置均可讀,那么主機(jī)可以再任何時(shí)候發(fā)出一復(fù)位命令以中止讀操作。這些命令允許主機(jī)寫入或讀出DS18B20的存儲(chǔ)器,啟動(dòng)溫度轉(zhuǎn)換以及判斷從機(jī)的供電方式。注意:如果跳越ROM命令跟隨的是讀操作命令,則該命令只能應(yīng)用于單節(jié)點(diǎn)系統(tǒng),否則將由于多個(gè)節(jié)點(diǎn)都響應(yīng)該命令而引起數(shù)據(jù)沖突。(3)匹配ROM[55h]匹配ROM命令跟隨64位ROM代碼,從而允許主機(jī)訪問多節(jié)點(diǎn)系統(tǒng)中某個(gè)指定的從機(jī)設(shè)備。如果總線只有一個(gè)從機(jī)設(shè)備,則可以采用讀ROM命令來替代搜索ROM命令。ROM命令與各個(gè)從機(jī)設(shè)備的唯一64位ROM代碼相關(guān),允許主機(jī)在單總線上連接多個(gè)從機(jī)設(shè)備時(shí),指定操作某個(gè)從機(jī)設(shè)備。每次訪問DS18B20,必須嚴(yán)格遵守這個(gè)命令時(shí)序,如果出現(xiàn)序列混亂,則單總線則單總線器件不會(huì)響應(yīng)主機(jī)。 在Proteus中,從原理圖設(shè)計(jì)、單片機(jī)編程、系統(tǒng)仿真到PCB設(shè)計(jì)可以一氣呵成,具有從概念到產(chǎn)品的完整設(shè)計(jì)能力。l Proteus是目前唯一能對各種處理器進(jìn)行實(shí)時(shí)仿真、調(diào)試與測試的EDA工具,真正實(shí)現(xiàn)了在沒有目標(biāo)原形時(shí)就可對系統(tǒng)進(jìn)行調(diào)試、測試和驗(yàn)證。uVision2 界面提供一個(gè)菜單,一個(gè)工具條以便你快速選擇命令按鈕,另外還有源代碼的顯示窗口,對話框和信息顯示。l 所有開發(fā)工具的設(shè)置都是對話框形式的。uVision2通過以下特性加速你的嵌入式系統(tǒng)的開發(fā)過程:l 全功能的源代碼編輯器。所以可用控制脈沖數(shù)量、頻率及電動(dòng)機(jī)各相繞組的通電順序來控制步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)。轉(zhuǎn)子也隨著該磁場轉(zhuǎn)一個(gè)角度??梢酝ㄟ^控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1