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

正文內(nèi)容

基于stc89c52單片機(jī)的家用紅外遙控系統(tǒng)畢業(yè)論文設(shè)計(jì)-文庫(kù)吧資料

2025-07-03 18:49本頁面
  

【正文】 3P12VCCED5D6D7VCCRS R/WE D0 D1 D2 D3 D4 D5 D6 D7 PSBRESTVCCP10P11D2D3D4RSR/W1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20J?CON20P12P13P14P15附錄 2 PCB 版圖基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)28附錄 3 Protel99SE 生成的 3D 效果圖基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)29附錄 3 全部代碼include includeincludeinclude基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)30includeinclude define uint unsigned intdefine uchar unsigned charuchar TempBuffer[5],week_value[2]。宗棟老師帶人寬厚做事認(rèn)真,在這段時(shí)間里老師的教導(dǎo)使我明白了,做事要嚴(yán)謹(jǐn)細(xì)致,要有克服困難的耐心和勇氣,當(dāng)遇到技術(shù)瓶頸時(shí)沒有這點(diǎn)素質(zhì)是萬萬不行的,同時(shí),還要寬厚帶人,成功很大程度上來自他人直接或間接的幫助,只有與他人相處融洽我們才能得到別人更多的幫助才能更好地與他人合作?;?STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)25參考文獻(xiàn)[1]桑勝舉,[M].北京:中國(guó)鐵道出版社,:1120.[2] 單片機(jī)原理與接口技術(shù)[M].北京:高等教育出版社,2022:821.[3]郭循釗,鄺帆,邵平,[J].公路交通技術(shù), 2022:529.[4]林凌,李剛,丁茹,[M].西安:西安電子科技大學(xué)出版社,2022:3034.[5]邊春遠(yuǎn), 單片機(jī)應(yīng)用開發(fā)實(shí)用子程序[M].人民郵電出版社,2022:4347.[6]張友德,趙志英,[M].復(fù)旦大學(xué)出版社,2022:3234.[7](簡(jiǎn)明修訂版)[M].北京航空航天大學(xué)出版社,1998:2343.[8]黃河,李曉,劉學(xué)瑞, DS18B20 單總線數(shù)字溫度計(jì)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)礦業(yè):35.[9] Dxp 電路原理圖與 PCB 設(shè)計(jì)[M].:2325.[10]袁旭軍,[J].:1921.基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)26致 謝本篇論文能夠得以順利完成,首先要感謝**老師對(duì)我的悉心指導(dǎo)。(2) 由于液晶耗電量比較大,可以增加光敏電阻以及相應(yīng)電路達(dá)到根據(jù)外接基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)24光線變化自動(dòng)調(diào)節(jié)背光亮度的效果,以節(jié)省電能。(4) 通過設(shè)定溫度值利用繼電器開關(guān)空調(diào)。(2) 年月日時(shí)分秒時(shí)間信息的實(shí)時(shí)顯示以及調(diào)整。軟件部分共有,(主函數(shù)模塊文件) ,(溫度模塊文件) ,(時(shí)鐘模塊文件) ,(紅外模塊文件) ,(液晶模塊文件) ,(設(shè)置功能文件)以及相應(yīng)的頭文件組成。圖 51 即為調(diào)試用電路實(shí)物及顯示效果,各項(xiàng)功能均已正常。 由此得出了一個(gè)結(jié)論 DS1302 的驅(qū)動(dòng)能力很是有限的在和單片機(jī)的通信中,要考慮到加上拉電阻的可能。在實(shí)際調(diào)試時(shí)鐘模塊時(shí),時(shí)間數(shù)據(jù)經(jīng)常發(fā)生抖動(dòng)和隨機(jī)跳變,但在下一次刷新時(shí)又變正常,這說明時(shí)鐘芯片與單片機(jī)的通信是正常的。接著焊接溫度傳感器和時(shí)鐘芯片,并通過各自的程序在液晶上顯示出數(shù)據(jù)。 其他各模塊調(diào)試過程由于本設(shè)計(jì)的所有數(shù)據(jù)都以可見方式顯示在液晶上,所以在焊接其他模塊前需要使液晶屏能夠正常顯示。這時(shí)再在 引腳連接發(fā)光二極管,上電復(fù)位后,發(fā)現(xiàn)二級(jí)管能夠一秒間隔出現(xiàn)亮滅循環(huán)。最小系統(tǒng)的正常運(yùn)行是整個(gè)系統(tǒng)得以正常運(yùn)行的前提。圖 38 時(shí)間溫度設(shè)置流程基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)22以上工作完成后,設(shè)置功能已經(jīng)能夠?qū)崿F(xiàn),只需要在主函數(shù)中調(diào)用Compare_temp_time()函數(shù)就可以通過比較設(shè)定值與實(shí)際值,來執(zhí)行繼電器開關(guān)燈和開關(guān)空調(diào)動(dòng)作了。 定時(shí)定溫功能的程序?qū)崿F(xiàn)本系統(tǒng)具有隨時(shí)設(shè)定時(shí)間值和溫度值的功能,要達(dá)到這樣的目的需要滿足這樣幾個(gè)條件,第一、能進(jìn)入設(shè)置模式,第二、能通過按鍵選擇要修改的項(xiàng)并能對(duì)其數(shù)值增大和減小,第三、能順利返回。if (ircode[3]==0xf6) ircode[3]=0x00。按鍵按下后把得到的數(shù)據(jù)分別與操作碼和操作反碼比較,每次比較通過后要立即清零。 //第一次進(jìn)來時(shí)被標(biāo)記為 1,timer 清 0timer=0。Ir_end=1。irnum++。}ir_time_data[ir_num]=timer。 }/**********************************************************startflag 初始值位 0,第一次進(jìn)入中斷標(biāo)記為 1,同時(shí)時(shí)間清零,如果經(jīng)判斷有引導(dǎo)碼出現(xiàn),就開始記錄了。下面是中斷函數(shù)。中斷觸發(fā)方式采用下降沿觸發(fā),中斷程序只需要記錄兩個(gè)中斷之間時(shí)間值并保存,然后對(duì)相應(yīng)脈沖的時(shí)間值與標(biāo)準(zhǔn)的脈沖時(shí)間進(jìn)行比較,這樣得出了是 0 還是 1。 圖 36 遙控器發(fā)送一組完整數(shù)據(jù)基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)20圖 37 遙控器編碼的 0 和 1 紅外解碼程序流程及重要代碼分析本設(shè)計(jì)中紅外遙控器作為控制單片機(jī)運(yùn)行的按鍵,為了更好的實(shí)現(xiàn)按鍵功能紅外接收端接在了單片機(jī)的外部中斷 0 引腳,另外遙控器編碼采用脈寬調(diào)制方式,為了更精確的記錄脈寬時(shí)間需要啟用定時(shí)器功能,所以程序開始要進(jìn)行中斷和定時(shí)器的初始化。遙控器發(fā)送一組完整數(shù)據(jù)(如圖 36 所示) ,首先是 9ms 高電平和 低電平組成的前導(dǎo)碼,緊接著是 8 位地址碼及其反碼,最后便是 8 位操作碼及其反碼。Write12864_Cmd_Dat(dat,1)。){Write12864_Cmd_Dat(str[i++],1)。while(str[i] != 39。下基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)19面是相應(yīng)的實(shí)現(xiàn)代碼。圖 35 12864 液晶初始化LCD12864 液晶屏使用前先要進(jìn)行初始化,已設(shè)定不同的功能和模式,本設(shè)計(jì)中液晶初始化為基本指令集,開顯示關(guān)閉游標(biāo),光標(biāo)從左向右加 1 移動(dòng),初始化通過 Init_12864()函數(shù)完成。//個(gè)位基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)18至此,所得數(shù)據(jù)便可以方便的顯示在液晶屏上了。//十位TimeStr_Time[1] = TimeSecond%10 + 39。接著就可以把數(shù)值轉(zhuǎn)換成字符串了,仍以秒值為例轉(zhuǎn)換語句如下:TimeStr_Time[0] = TimeSecond/10 + 39。0x70)4)*10 + (temp amp。然后,通過 Read1302()函數(shù)讀取各個(gè)地址處的時(shí)間數(shù)據(jù)分別保存于Second、Minute 等變量中并轉(zhuǎn)換成十進(jìn)制,如讀取并轉(zhuǎn)換秒值可以用以下兩個(gè)語句:temp = Read1302(0x80)。unsigned char Str_Day[3]。unsigned char Str_Year[5]。unsigned char Year。unsigned char Month。unsigned char Minute。unsigned char Second。} 讀取時(shí)間數(shù)據(jù)并轉(zhuǎn)化成字符串由于時(shí)間數(shù)據(jù)包含年、月、日、時(shí)、分、秒、周,為了方便可以定義一個(gè)時(shí)間類型結(jié)構(gòu)體,把轉(zhuǎn)換前后的數(shù)據(jù)都作為這個(gè)結(jié)構(gòu)體的成員。DS1302_RST = 0。 // 以寫數(shù)據(jù)時(shí)的地址為參考,讀時(shí)應(yīng)加 1Dat = DS1302_ReadByte()。DS1302_RST = 1。DS1302_RST = 0。DS1302_RST = 0。 // 地址,命令 DS1302_WriteByte(Dat)。DS1302_RST = 1。/**********************************************************/向 DS1302 寫地址和數(shù)據(jù), Addr 地址,Dat 數(shù)據(jù)**********************************************************/void Write1302_Cmd_Dat(unsigned char Addr, unsigned char Dat){ DS1302_RST = 0。圖 34 DS1302 讀寫操作流程在對(duì) DS1302 操作時(shí),只要調(diào)用 Write1302_Cmd_Dat(),和 Read1302()就可以實(shí)現(xiàn)其與單片機(jī)之間的數(shù)據(jù)交流。 DS1302 時(shí)間程序模塊 DS1302 總體操作及基本讀寫功能函數(shù)本設(shè)計(jì)中 DS1302 操作主要包括讀取內(nèi)部時(shí)間值和修改時(shí)間值兩部分,DS1302 模塊總體操作如圖 33 所示。 //返回?cái)?shù)據(jù)}通過上面的讀函數(shù),溫度值被保存到 Tmep 變量?jī)?nèi),接下來便可以按照一定的規(guī)則對(duì) Tmep 的值進(jìn)行轉(zhuǎn)化,最后顯示在液晶屏上。 //延時(shí)DS1820_bit=1。j0。 //延時(shí)if(DS1820_bit==1){Tmep|=0x80。j0。 //延時(shí) 4usDS1820_bit=1。j0。DS1820_bit=0。i0。圖 32 DS18B20 操作流程基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)15 DS18B20 重點(diǎn)代碼 及其分析DS18B20 程序的核心部分是利用單片機(jī)讀取芯片內(nèi)部的溫度值,其讀函數(shù)如下,/***********************************************************從 DS1820 中讀出數(shù)據(jù)**********************************************************/uchar DS1820_RData(){uchar i,j,Tmep。 DS18B20 溫度程序模塊 DS18B20 操作流程使用 DS18B20 時(shí)首先應(yīng)遵循圖 28 所示的時(shí)序圖,然后按照流程進(jìn)行具體操作。整個(gè)設(shè)計(jì)的程序結(jié)構(gòu)如圖 31 所示。在本設(shè)計(jì)中,所有的程序采用 C 語言編寫,最后把調(diào)試通過的程序編譯成二進(jìn)制文件并通過串口下載到目標(biāo)板。圖 219 L7805cv 穩(wěn)壓電路圖3 軟件開發(fā)平臺(tái)及軟件基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)14 開發(fā)環(huán)境介紹及程序總體結(jié)構(gòu) 開發(fā)環(huán)境介紹本設(shè)計(jì)采用 KEIL C51 集成開發(fā)環(huán)境,它具良好用戶的界面,使用極為方便。輸出電流可達(dá) (需做好散熱) ,同時(shí) L7805cv 內(nèi)部含有限流保護(hù)電路和過熱保護(hù)電路,防止負(fù)載過大溫度過高燒壞器件。 系統(tǒng)電源電路的設(shè)計(jì) 由于所選用單片機(jī)為 5V 單片機(jī),為得到較穩(wěn)定的 5V 電壓,本設(shè)計(jì)采用了L7805cv 三端集成穩(wěn)壓管。由于本電路上電即可以使單片機(jī)復(fù)位,又具有電源開關(guān),故省去了按鍵復(fù)位開關(guān)。圖 218 上電復(fù)位電路單片機(jī)復(fù)位電路的設(shè)計(jì)必須能滿足上電震蕩穩(wěn)定后,保持至少兩個(gè)周期的高電平。圖 217 晶振電路基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)13晶振兩個(gè)引腳分別接于單片機(jī)的 XTAL0 和 XTAL1 引腳,電容值的選擇范圍為 5~30PF,電容對(duì)晶振頻率具有微調(diào)作用。 其他硬件電路 STC89C52RC 最小系統(tǒng)的設(shè)計(jì)本設(shè)計(jì)的單片機(jī)最小系統(tǒng)主要包括,STC89C52 單片機(jī),12M 外接晶振,上電復(fù)位電路三個(gè)部分。LCD12864 有兩種指令集,基本指令集(RE=0)和擴(kuò)充指令集(RE=1 ) ,寫指令時(shí) RS=0,RW=0。圖 215 單片機(jī)寫數(shù)據(jù)到液晶模塊單片機(jī)讀取液晶模塊數(shù)據(jù)的時(shí)序圖如圖 216 所示。另外,18 腳和 19 腳為背光燈,可以根據(jù)需要接上可調(diào)電阻來實(shí)現(xiàn)對(duì)背光亮度的調(diào)節(jié)。圖 214 LCD12864 與單片機(jī)連接圖由于本設(shè)計(jì)采用 8 位并行數(shù)據(jù)傳輸方式,故其第 15 引腳 PSB 直接接高電平即可。該液晶 20 個(gè)引腳與單片機(jī)的連接如圖 214 所示。液晶正常工作的電壓寬度為 ~5V,顯示分辨率為 12864。基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)10HS0038 在單片機(jī)系統(tǒng)中常用的電路如圖 213 所示。 HS0038 電路及應(yīng)用HS0038 引腳及封裝如圖 212 所示。便可以得到遙控器鍵值。HS0038 能夠接受紅外信號(hào),并能對(duì)信號(hào)放大,檢波,整形輸出單片機(jī)可以識(shí)別的 TTL 電平。CE 高電平開啟數(shù)據(jù)傳送功能,數(shù)據(jù)傳輸時(shí),數(shù)據(jù)在時(shí)鐘上升沿輸入,時(shí)鐘下降沿輸出。在下一個(gè)時(shí)鐘上升沿,寫入數(shù)據(jù),而在指令后的下一個(gè)時(shí)鐘下降沿,讀出數(shù)據(jù)。圖 210 DS1302RTC 寄存器DS1302 控制字,如表 22 所示。圖 29 DS1302 引腳圖基于 STC89C52 單片機(jī)的家用紅外遙控系統(tǒng)8其中 XX2 外接 晶振;GND 接地;CE 為信號(hào)使能端,數(shù)據(jù)傳輸時(shí)必須保持高電平,I/O 為數(shù)據(jù)輸入/輸出引腳; SCLK 為串行時(shí)鐘,Vcc1,Vcc2為電源供電管腳。具有備用電源引腳,也可以通過寄存器設(shè)置備用電源充電方式。 DS1302 時(shí)鐘芯片介紹 DS1302 引腳及內(nèi)部寄存器簡(jiǎn)介DS1302 是美國(guó)達(dá)拉斯公司推出的一款功耗低功能全的實(shí)時(shí)時(shí)鐘芯片,RTC寄存器可提供年、月、日、時(shí)、分、秒、及周的時(shí)間值,
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1