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

正文內(nèi)容

家庭智能防火防盜系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文(文件)

2024-12-17 16:32 上一頁面

下一頁面
 

【正文】 6 16 點(diǎn)陣的漢字 , 也可完成圖形顯示, 電壓低,功耗低,是它 的明顯特點(diǎn) 。本文介 17 紹的時鐘 芯片為 DS1302, DS1302 時鐘芯片是 達(dá)拉斯 公司 生產(chǎn) 的一種高性能、低功耗、帶 RAM 的 時鐘電路,它 能夠 對年、月、日、周日、時、分、秒進(jìn)行計(jì)時,并且還 具有閏年補(bǔ)償功能, 其有著寬泛的工作電壓 ~ 。 DS1302由 Vcc1 或 Vcc2 兩者中的較大者供電。 圖 DS1302 時鐘芯片 DS1302 內(nèi)部含 有 與日歷、時鐘相關(guān) 的 寄存器, 寄存器中 存放的數(shù)據(jù) 是以 BCD碼形式 存 儲的 。如圖 為 DS1302 與 主控芯片 的連接圖。 紅外遙控系統(tǒng) 由兩大部分組成: 發(fā)射 、 接收 , 通過 專用 編 /解碼 集成電路芯片進(jìn)行控制操作。它 采用 專用的數(shù)字模塊技術(shù)和溫濕度傳感技術(shù), 保證了 本產(chǎn)品 有極高的 準(zhǔn)確 與卓越的 穩(wěn)定性,傳感器包括一個電阻式感濕元件和一個NTC 測溫元件,并與一個高性能 8 位單片機(jī)相連接 。 本設(shè)計(jì)采用MQ2 模塊的模擬量輸出 ,通過處理器自帶的 A/D 轉(zhuǎn)換能比較容易的進(jìn)行煙霧的檢測 ,其與單片機(jī)的電氣接口如圖 所示: 圖 煙霧傳感器與單片機(jī)的連接圖 人體紅外傳感器: 人體紅外傳感器選用熱釋電紅外傳感器 HCSR501, HCSR501 是基于紅外線技術(shù)的自動控制模塊,采用原裝進(jìn)口 LHI778 探頭設(shè)計(jì), 有著 超低電壓工作 、靈敏度高,可靠性強(qiáng) 等一系列優(yōu)點(diǎn) , 在 各類自動感應(yīng) 設(shè)備 中有著 及其 廣泛 的 應(yīng)用 。 有了后臺程序這個概念那么前臺程序即為 系統(tǒng)對中斷的響應(yīng) 執(zhí)行 ,中斷的 響應(yīng) 表示 有 事件 發(fā)生 ,要 馬上 去處理該事件。 第二種模式 為在 主控制器 中嵌入 操作系統(tǒng) , 操作系統(tǒng)根據(jù)實(shí)時性 的要求 亦可以分為兩大部分: 硬實(shí)時的操作系統(tǒng),如 VxWORKS 等 ; 軟實(shí)時操作系統(tǒng),如WindowsCE 等。 用 Keil 來編源程序,該軟件具有友好的編輯界面和 C 語言關(guān)鍵字識別能力,同時具有良好的排版能力,有助于編寫規(guī)整的代碼,提高開發(fā)的效率和軟件管理。 系統(tǒng)初始化主要完成 定時器 0、 1 初始化 、 外部中斷 0 初始化、 LCD 顯示 初始化 、 時鐘芯片 DS1302 初始化、 人體紅外傳感器 初始化、 煙霧傳感器初始化、 23 串口初始化 等工作。 溫濕度 模塊操作流程圖見 圖 。此款TC35 GSM 模塊的控制遵循 AT 指令集,所以按照 AT 指令集所列的指令格式編寫軟件將會變得很便捷。 uVision3 IDE是一個基于 Window 的 開發(fā)平臺包含一個 強(qiáng)大 的 代碼 編輯器、一個 高效的 項(xiàng)目管理器和一個 MAKE 工具。 硬件調(diào)試 該課題的硬件電路部分占了整個過程很大的比例。首先先焊接單片機(jī)最小系統(tǒng),接著焊接 LCD 顯示模塊 ,這樣焊接的好處就是若是哪里焊接出現(xiàn)了錯誤,比較容易發(fā)現(xiàn),也比較容易發(fā)現(xiàn)單片機(jī)是否正常的工作。 系統(tǒng)調(diào)試 在 確保焊接電路完好后,首先對顯示 電路進(jìn)行軟硬連調(diào), 觀察液晶屏顯示 是否正常, 正常顯示后在此基礎(chǔ)上對系統(tǒng)的其他模塊進(jìn)行調(diào)試 , 若不能正常顯示 ,首先檢查硬件是否焊接的有問題,確保硬件無問題后再接著調(diào)試軟件 直到 LCD能正常顯示 , 最后把調(diào)試完好的各個模塊都添加到系統(tǒng) 中 。從確定畢業(yè)設(shè)計(jì)題目到查閱資料 確定總體方案設(shè)計(jì),總體方案論證,硬件電路的設(shè)計(jì),硬件電路的優(yōu)化,軟件的設(shè)計(jì),軟件的優(yōu)化,焊 制硬件電路板,檢驗(yàn)硬件電路,調(diào)試軟件程序,到最后的軟硬件聯(lián)調(diào),其中的每一個過程都是精心設(shè)計(jì)、仔細(xì)完成的。 在設(shè)計(jì)過程中,也進(jìn)一步熟悉了很多以前用過的東西, Altium Designer 軟件繪制電路原理圖和 KEIL 的一些仿真軟件的應(yīng)用,最典型的就是硬件電路與 KEIL軟件的聯(lián)合使用功能。 感謝電子系的領(lǐng)導(dǎo)和老師,感謝我的同寢室的室友,這學(xué)期以來,他們在學(xué)習(xí)和生活上給予了我很多的關(guān)心和幫助。函數(shù)中 當(dāng)按鍵處理時要停止 LCD 刷新顯示 extern unsigned char Time1LCDDisplayFlage。 unsigned char YWEngFlage = 0。//定時器 1 中斷標(biāo)志位 初始值為 0 extern unsigned char GSMEng。//定時器 0 初始化 方式二 Exter0Init()。//顯示字符串 LCDDisplayCheFang()。 //人體紅外初始化 ADInit()。(Time1LCDDisplayFlage == 0XFF)) // 500MS 刷新一次 { LCDLockDisplay()。 } if(StringFlage == 450) //3 分鐘刷新一次字符串 { LCDDisplayString()。 //清零 } RIFenLi()。 //人體紅外報警函數(shù) } if(GSMFlage == 1) //GSM 發(fā)短信標(biāo)志位 { // GSMTextMessage(0)。 } if(GSMEng == 1) //發(fā)送一個英文短信 { GSMTextMessage(0)。 //打電話 YWFlage = 0。 //UART 初始化 波特率 9600 void GSMTextMessage(unsigned char dat)。 unsigned int GSMTimeCount = 0。 //定義要撥打的電話號碼,撥打其它電話在這時修改 //發(fā)送一個英文短信 char code str1[]=AT\n。 //定義字符串 4 設(shè) 置 短 消 息 文本模式參數(shù) char code str5[]=AT+CMGS=\18956024963\\n。 //發(fā)送 16 進(jìn)制 1A void UARTInit() { SCON = 0X40。 // 設(shè)置獨(dú)立波特率發(fā)生器 工作在 1T 模式下 BRT = 0XB8。 switch(GSMStep) { case 1: TI = 1。 case 2: GSMTimeCount++。 } break。 break。 GSMStep++。 GSMStep++。 //LCD 中顯示時鐘數(shù)據(jù) if(GSMTimeCount == 500) { GSMTimeCount = 0。 printf(%s,str4)。 LCDLockDisplay()。 case 9: TI = 1。 case 10: GSMTimeCount++。 } break。//發(fā)送 “fire!!” delay(300)。 case 12: GSMStep = 1。 default: break。 46 printf(ATD)。 } 文件 ifndef _LCD12864_H_ define _LCD12864_H_ include sbit LCD_RS = P2^7。 //LCD 寫數(shù)據(jù) void LCDWriteCommand(unsigned char cmd)。 //LCD 中顯示時鐘數(shù)據(jù) void LCDTempDisplay()。 //顯示 “撤防 ” void LCDDisplaySheYanGan()。 unsigned char code LCDString3[] = {濕度 %}。 unsigned char code LCDString7[] = {撤煙感 }。//定義一個存儲溫濕度數(shù)據(jù)的變量 中的變量存儲溫濕度數(shù)據(jù) void LCDWriteData(unsigned char dat) //LCD 寫數(shù)據(jù) { unsigned char temp。 //讀狀態(tài)使能 _nop_()。 //讀取 P0 口的數(shù)據(jù) delay(100)。 _nop_()。 //寫數(shù)據(jù) _nop_()。 //向 LCD 中寫 _nop_()。 //把要寫的數(shù)據(jù)送到 P0 口 delay(100)。 //下降沿保存數(shù)據(jù)到 LCD 中 } void LCDWriteCommand(unsigned char cmd) //LCD 寫命令 { 49 unsigned char temp。 //讀狀態(tài)使能 temp = P0。 //延遲 。 //延遲 40us LCD_EN = 0。 //讀狀態(tài)時 LCD_RS 應(yīng)為 0 LCD_RW = 1。 //寫數(shù)據(jù)使能 delay(100)。 _nop_()。 _nop_()。 0x80)。 //鎖存讀到的數(shù)據(jù) _nop_()。 48 _nop_()。 //讀狀態(tài)時 LCD_RS 應(yīng)為 0 LCD_RW = 1。 extern struct time Time。 unsigned char code LCDString5[] = {撤防 }。//顯示 “撤煙感 ” endif 文件 include 47 include include include include unsigned char code LCDString1[] = {時間 : : }。 //LCD 顯示字符串 void LCDDisplaySheFang()。 //LCD 顯示初始化 void LCDCoordinate(unsigned char X,unsigned char Y)。 //并行模式的讀寫 sbit LCD_EN = P2^5。\n,num)。 } void GSM_Call() { TI = 1。 YWEng = 0。 GSMStep++。 if(dat == 0) { printf(%s,str6)。 //LCD 中顯示時鐘數(shù)據(jù) if(GSMTimeCount == 500) { GSMTimeCount = 0。 GSMStep++。 GSMStep++。 44 break。 } break。 case 6: GSMTimeCount++。 case 5: TI = 1。 43 LCDLockDisplay()。 printf(%s,str2)。 //LCD 中顯示時鐘數(shù)據(jù) if(GSMTimeCount == 500) { GSMTimeCount = 0。 GSMStep++。 //打開總中斷 ES = 0。 串口工作在方式 1 不允許接受 PCON |= 0X00。 //定義字符串 6 要發(fā)送的信息 char code str7[]=fire!!。 //定義字符串 2 設(shè)置 GSM 字符集 char code str3[]=AT+CMGF=1\n。 extern unsigned char YWEng。 //打電話 endif 文件 include include include include include //unsigned char xdata UartBuffer[10]。 } if(YWEng == 1) { GSMTextMessage(1)。 //煙霧報警 YWFlage = 1。 //打電話 GSMFlage = 0。//紅外服務(wù)函數(shù) 處理相應(yīng)的按鍵指令 DHTGetData()。 LCDTempDisplay()。 //LCD 中顯示溫濕度數(shù)據(jù) Time1LCDDisplayFlage = 0。 //UART 初始化 波特率為 9600 while(1) { if((RIServiceFlage == 1)amp。 //顯示 “撤煙感 ” 38 Time1Init()。 //LCD 顯示初始化 DS1302SetTime()。 void main() { SP = 0X80。 //煙感主函數(shù)掃描標(biāo)志位 unsigned int StringFlage = 0。//人體紅外掃描標(biāo)志位 unsigned char GSMFlage = 0。 謝聰 2020524 36 附 錄 附錄 1: 系統(tǒng)原理圖 附錄 1 系統(tǒng) 原理圖 附錄 2: 程序清單 文件 include include
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1