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

正文內(nèi)容

基于gsm的家庭安全系統(tǒng)設計-資料下載頁

2025-07-17 10:20本頁面

【導讀】時顯示、遙控信息輸入、通過GSM短信功能實現(xiàn)家庭安全狀況的遠距離傳輸?shù)裙δ堋?過程中,主要工作內(nèi)容如下:. (核心是不是傳感器,是不是通過單片機進行數(shù)據(jù)采集,………

  

【正文】 時鐘場合中。其主要功能如下: 1. 內(nèi)含一個鋰電池,斷電情況運行十年以上不丟失數(shù)據(jù)。 2. 計秒、分、時、天、星期、日、月、年,并有閏年補償功能。 3.二 進制數(shù)碼或 BCD 碼表示時間、日歷和定鬧。 4. 12 小時或 24 小時制, 12 小時時鐘模式帶有 PWM 和 AM 指導,有夏令時功能。 5. MOTOROLA5 和 INATAEL 總線時序選擇。 6.有 128 個 RAM 單元與軟件音響器,其中 14 個作為字節(jié)時鐘和控制寄存器, 114 字節(jié)為通用 RAM,所有 ARAM 單元數(shù)據(jù)都具有掉電保護功能。 7.可編程方波信號輸出。 8.中斷信號輸出 (IRQ)和總線兼容,定鬧中斷、周期性中斷、時鐘更新周期結束中斷可分別由軟件屏蔽,也可分別進行測試。 時間和日歷信息通過讀相應的內(nèi)存字節(jié)來獲取, 時間、日歷和定時鬧鐘通過寫相應的內(nèi)存字節(jié)設置或初始化,其字節(jié)內(nèi)容可以是十進制或 BCD 形式。時間可選擇 12 小時制或 24 小時制,當選擇 12 小時制時,小時字節(jié)高位為邏輯 “1”代表 PM。時間、日歷和定鬧字節(jié)是雙緩沖的,總是可訪問的。每秒鐘這 10 個字節(jié)走時 1 秒,檢查一次定鬧條件,如在更新時,讀時間和日歷可能引起錯誤。三個字節(jié)的定鬧字節(jié)有兩種使用方法。第一種,當定鬧時間寫入相應時、分、秒定鬧單元,在定時允許、鬧鐘位置高電平的條件下,定鬧中斷每天準時起動一次。第二種,在三個定鬧字節(jié)中插入一個或多個不關心碼。不關心碼是任意 從 C 到 FF 的 16 進制數(shù)。當小時字節(jié)的不關心碼位置位時,定鬧為小時發(fā)生一次由于相線小時和分鐘定鬧字節(jié)置不關心位時,每分鐘定鬧一次;當三個字節(jié)都置不關心位時,每秒中斷一次。 本設計操作 DS12C887 使用的是 Intel 總線操作時序,下面具體介紹 Intel 時序操作河南理工大學畢業(yè)設計(論文)說明書 31 方法: 圖 43Intel 模式寫時序圖 圖 44 Intel 模式讀時序 圖 DS12C887 與單片機的接線方式為 CS 與 相連、 AS 與 相連、 R/W 與 相連、 DS 與 相連。根據(jù) Intel 模式可分別寫出向 DS21C887 寫數(shù)據(jù)和讀數(shù)據(jù)的程序如下。 向 DS21C887 寫數(shù)據(jù)程序: void write_ds(unsigned char add,unsigned char date) { T_AS=1。 河南理工大學畢業(yè)設計(論文)說明書 32 T_DS=1。 T_RW=1。 T_CS=0。 P0=add。 T_AS=0。 T_RW=0。 P0=date。 T_RW=1。 T_AS=1。 T_CS=1。 } 向 DS12C887 讀數(shù)據(jù)的程序如下: unsigned char read_ds(unsigned char add) { unsigned char ds_date。 T_CS=0。 T_AS=1。 T_DS=1。 T_RW=1。 P0=add。 T_AS=0。 T_DS=0。 P0=0XFF。 ds_date=P0。 T_DS=1。 T_AS=1。 T_CS=1。 return ds_date。 } 當首次使用 DS12C887 時需對 DS12C887 進行初始化設置和激勵,以下是激勵程序: void time_init() 河南理工大學畢業(yè)設計(論文)說明書 33 { write_ds(0x0A,0x20)。 write_ds(0x0b,0x06)。 set_timein()。 } 紅外遙控解碼軟件設計 遙控發(fā)射專用集成芯片很多,根據(jù)編碼格式可以分為兩大類,本系統(tǒng)采用了應用最為廣泛,解碼比較容易的一類,現(xiàn)以日本 NEC 的 uPD6121G 組成發(fā)射電路為例說明編碼原理(一般家庭用的 DVD、 VCD、音響都使用這種編碼方式)。當發(fā)射器按鍵按下后,即有遙控碼發(fā)出,所按的鍵不同遙控編碼也不同。這種遙控 碼具有以下特征: 采用脈寬調(diào)制的串行碼,以脈寬為 、間隔 、周期為 的組合表示二進制的 “0”;以脈寬為 、間隔 、周期為 的組合表示二進制的 “1”,其波形如圖 62 所示。 圖 45 遙控碼的“ 0”和“ 1” 上述 “0”和 “1”組成的 32 位二進制碼經(jīng) 38kHz 的載頻進行二次調(diào)制以提高發(fā)射效率,達到降低電源功耗的目的。然后再通過紅外發(fā)射二極管產(chǎn)生紅外線 向空間發(fā)射,如圖 63 所示 圖 46 遙控信號編碼波形圖 UPD6121G 產(chǎn)生的遙控編碼是連續(xù)的 32 位二進制碼組,其中前 16 位為用戶識別碼,河南理工大學畢業(yè)設計(論文)說明書 34 能區(qū)別不同的電器設備,防止不同機種遙控碼互相干擾。該芯片的用戶識別碼固定為十六進制 01H;后 16 位為 8位操作碼(功能碼)及其反碼。 UPD6121G 最多額 128 種不同組合的編碼。 遙控器在按鍵按下后,周期性地發(fā)出同一種 32 位二進制碼,周期約為 108ms。一組碼本身的持續(xù)時間隨它包含的二 進制 “0”和 “1”的個數(shù)不同而不同,大約在 45~ 63 之間, 圖 47 遙控連發(fā)信號波形 當一個鍵按下超過 36ms,振蕩器使芯片激活,將發(fā)射一組 108ms 的編碼脈沖 ,這108ms 發(fā)射代碼由一個引導碼( 9ms) ,一個結果碼( ) ,低 8 位地址碼( 9ms~18ms) ,高 8 位地址碼( 9ms~18ms) 8 位數(shù)據(jù)碼( 9ms~18ms)和這 8 位數(shù)據(jù)的反碼( 9ms~18ms)組成。如果鍵按下超過 108ms 仍未松開,接下來發(fā)射的代碼 (連發(fā)碼)將僅由起始碼( 9ms)和結束碼( )組成。 圖 48 引導碼與連發(fā)碼 紅外遙控信號的解碼主要有起始碼的判別, 0、 1 信號的判別等步驟,有以上分析可知的“起始碼”的脈沖周期為 毫秒、“ 1”的脈沖周期為 毫秒、“ 0”的脈沖周期為 毫秒,很顯然可以通過判斷脈沖的周期來區(qū)別不同的信號。以 51 單片機的外部中斷 口作為紅外接收管的輸入腳,將外部中斷零設置為下降沿觸發(fā),通過計算兩個下降沿的時 間來取別不同的碼值,時間通過 51 單片機的定時器 0 計算,并將其設置為 8 位自動重裝模式,以實現(xiàn)準確的計時。 外部中斷以及定時中斷初始化程序 : void Ir_init() { TMOD |= 0x22 。 //定時器 1 為模式 2,8 位自動重裝 河南理工大學畢業(yè)設計(論文)說明書 35 TH0=0X00。 TL0=0X00。 IE |= 0x93 。 //Enable Serial Interrupt TR0=1。 IT0 = 1。 ES=1。 } 碼值處理程序: void Ircordpro(void)//紅外碼值處理函數(shù) { unsigned char i, j, k。 unsigned char cord,value。 k=1。 for(i=0。i4。i++) //處理 4 個字節(jié) { for(j=1。j=8。j++) //處理 1 個字節(jié) 8 位 { cord=irdata[k]。 if(cord6)//大于某值為 1,此值可以有一定誤差 value|=0x80。 if(j8) { value=1。} k++。 } IRcord[i]=value。 value=0。 } irpro_ok=1。//處理完畢標志位置 1 } 鍵值判斷程序: 河南理工大學畢業(yè)設計(論文)說明書 36 unsigned char Ir_information() { unsigned char Ir_num。 if(irok==1) {Ircordpro()。irok=0; } if(irpro_ok) //如果處理好后進行工作處理,如按對應的按鍵后顯示對應的數(shù)字等 { if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x0camp。amp。IRcord[3]==0xf3) {Ir_num= 0。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x10amp。amp。IRcord[3]==0xef) { Ir_num= 1。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x11amp。amp。IRcord[3]==0xee) {Ir_num= 2。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x12amp。amp。IRcord[3]==0xed) {Ir_num= 3。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x14amp。amp。IRcord[3]==0xeb) {Ir_num= 4。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x15amp。amp。IRcord[3]==0xea) {Ir_num= 5。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x16amp。amp。IRcord[3]==0xe9) { Ir_num= 6。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x18amp。amp。IRcord[3]==0xe7) {Ir_num= 7。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x19amp。amp。IRcord[3]==0xe6) {Ir_num= 8。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x1aamp。amp。IRcord[3]==0xe5) {Ir_num= 9。} else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x01amp。amp。IRcord[3]==0xfe) {Ir_num= 10。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x06amp。amp。IRcord[3]==0xf9) { Ir_num= 11。} 河南理工大學畢業(yè)設計(論文)說明書 37 else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x0eamp。amp。IRcord[3]==0xf1) {Ir_num= 12。 } else if(IRcord[0]==0x00amp。amp。IRcord[1]==0xBFamp。amp。IRcord[2]==0x09amp。amp。IRcord[3]==0xf6) {Ir_num= 13。}else; { Ir_num=14。} irpro_ok=0。 }//處理完標志 else {Ir_num=14。 } return Ir_num。} 數(shù)據(jù)存儲器軟件設計 戶主的手機號碼是會時 常更改,為了實現(xiàn)戶主的手機號碼更改后仍能使用該系統(tǒng),本系統(tǒng)需具備更改戶主手機號碼和對戶主手機號碼的存儲,另外還需對報警信息的記錄。單片機運行時的數(shù)據(jù)都存在于 RAM(隨機存儲器)中,在掉電后 RAM 中的數(shù)據(jù)是無法保留的,那么怎樣使數(shù)據(jù)在掉電后不丟失呢?這就需要使用 EEPROM 或FLASHROM 等存儲器來實現(xiàn)。在傳統(tǒng)的單片機系統(tǒng)中,一般是在片外擴展存儲器,單片機與存儲器之間通過 IIC 或 SPI 等接口來進行數(shù)據(jù)通信。 STC 各型號單片機內(nèi)置的EEPROM 的容量最小有 2K,最大有 16K,基本上很好地滿足項目 的需要,更方便之處就是節(jié)省了周邊的 EEPROM 器件,達到節(jié)省成本的目的,而且內(nèi)部 EEPROM 的速度比外部的 EEPROM 的速度快很多。 STC 各型號單片機內(nèi)置的 EEPROM 是以 512 字節(jié)為一個扇區(qū), EEPROM 的起始地址等于
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1