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

正文內(nèi)容

基于at89c51單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計(已改無錯字)

2023-02-18 14:55:31 本頁面
  

【正文】 顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA 移動通信工具等眾多領(lǐng)域。LCD 顯示電路結(jié)構(gòu)如圖 3—3 所示。1602 的驅(qū)動程序包含讀顯示模塊狀態(tài)(DUZT ) 、讀數(shù)據(jù)(DUSJ)、寫狀態(tài)(XIEZT) 和寫數(shù)據(jù)(XIESJ),接口為 A?;趩纹瑱C(jī)的家庭防盜報警系統(tǒng)設(shè)計17 圖 3—3 LCD 顯示電路圖 報警執(zhí)行電路設(shè)計針對聲光報警實(shí)現(xiàn),設(shè)計了一種實(shí)用化的基于單片機(jī) AT89C51 的報警執(zhí)行電路。此電路接受單片機(jī)傳送來的電平信號,驅(qū)動聲光報警從而達(dá)到報警效果。采用紅色發(fā)光二極管和壓電式蜂鳴器完成聲光報警。壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。當(dāng)接通電源后,多諧振蕩器起振,輸出~ 的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。驅(qū)動電路通過 口將高電平信號送至放大電路然后傳給蜂鳴器,從而達(dá)到聲音報警的效果。驅(qū)動電路又通過 口將低電平信號送至紅色發(fā)光二極管的陰極,從而達(dá)到光報警的效果。聲光報警電路結(jié)構(gòu)如圖 3—4 所示。 傳KQA 圖 3—4 報警執(zhí)行電路圖基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計18 時鐘電路設(shè)計為實(shí)現(xiàn)精確的時鐘功能并節(jié)省單片機(jī) I/O 口資源,該設(shè)計使用專用的接口方式為串行的時鐘芯片 DS1302,該芯片線路簡單、體積小、易于操作,且價格低廉。DS1302 與單片機(jī)之間能簡單的采用同步串行方式進(jìn)行通信,僅需用到三個口線:RST,I/O ,SCLK。 X1 和 X2 是 振 蕩 源 , 外 接 晶 振 。 RST 是 復(fù) 位 /片選 線 , 通 過 把 RST 輸 入 驅(qū) 動 置 高 電 平 來 啟 動 所 有 的 數(shù) 據(jù) 傳 送 。 RST 輸 入 有 兩 種功 能 : 首 先 , RST 接 通 控 制 邏 輯 , 允 許 地 址 /命 令 序 列 送 入 移 位 寄 存 器 ; 其 次 ,RST 提 供 終 止 單 字 節(jié) 或 多 字 節(jié) 數(shù) 據(jù) 的 傳 送 手 段 。 當(dāng) RST 為 高 電 平 時 , 所 有 的 數(shù)據(jù) 傳 送 被 初 始 化 , 允 許 對 DS1302 進(jìn) 行 操 作 。 如 果 在 傳 送 過 程 中 RST 置 為 低 電平 , 則 會 終 止 此 次 數(shù) 據(jù) 傳 送 , I/O 引 腳 變 為 高 阻 態(tài) 。 上 電 運(yùn) 行 時 , 在 VCC之 前 , RST 必 須 保 持 低 電 平 。 只 有 在 SCLK 為 低 電 平 時 , 才 能 將 RST 置 為 高 電平 。 DS1302 存 在 時 鐘 精 度 不 高 , 易 受 環(huán) 境 影 響 , 出 現(xiàn) 時 鐘 混 亂 等 缺 點(diǎn) 。DS1302 可 以 用 于 數(shù) 據(jù) 記 錄 , 特 別 是 對 某 些 具 有 特 殊 意 義 的 數(shù) 據(jù) 點(diǎn) 的 記 錄 , 能 實(shí)現(xiàn) 數(shù) 據(jù) 與 出 現(xiàn) 該 數(shù) 據(jù) 的 時 間 同 時 記 錄 。 DS1302 工作時功耗很低,保持?jǐn)?shù)據(jù)和時鐘信息時功率小于 1mw。如圖 3—5 所示時鐘電路。DS1302 驅(qū)動程序分為讀時間(GET1302)和設(shè)置時間(SET1302),時間數(shù)據(jù)直接放入內(nèi)存 40H—47H 或者從內(nèi)存 40H—47H 讀取。 GNpFAPBvcext4圖 3—5 時鐘電路圖 晶振與復(fù)位電路設(shè)計通過振蕩得到一個穩(wěn)定的時鐘頻率。利用中斷方式可以實(shí)現(xiàn)報警持續(xù)時間未到基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計1910 秒時,用手工按鍵停止的聲光報警的作用。XTAL1 和 XTAL2 分別為反向放大器的輸入和輸出,該反向放大器可以配置為片內(nèi)蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2 應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。復(fù)位則是通過某種方式, 使單片機(jī)內(nèi)各寄存器的值變?yōu)槌跏紶顟B(tài)的操作稱為復(fù)位。復(fù)位方式是單片機(jī)的初始化操作。單片機(jī)除了正常的初始化外,當(dāng)程序運(yùn)行出錯或由于操作錯誤而使系統(tǒng)處于死循環(huán)時,也需要按復(fù)位鍵重啟機(jī)器。單片機(jī)在時鐘電路工作以后, 在 RST 端持續(xù)給出 2 個機(jī)器周期的高電平時就可以完成復(fù)位操作。例如使用晶振頻率為 12MHz 時,則復(fù)位信號持續(xù)時間應(yīng)不小于 2us。復(fù)位方法一般有上電自動復(fù)位和外部按鍵手動復(fù)位以及“看門狗” 復(fù)位三種類型。“看門狗”電路則是一種集成有單片機(jī)的電源監(jiān)測、按鍵復(fù)位以及對程序運(yùn)行進(jìn)行監(jiān)控,防止程序“ 跑飛” 而出現(xiàn)死機(jī)而設(shè)計的電路 [8]。晶振與復(fù)位電路如圖 3—6 所示。 Y1MHZC0p9GNDX RSB7V4KuTEA 圖 3—6 晶振與復(fù)位電路圖 電源電路設(shè)計本系統(tǒng)電源電路原理圖如圖 3—7 所示,系統(tǒng)的電源采用 220V 交流供電。電網(wǎng)的 220V 交流電經(jīng)橋路整流,電容濾波,送入 7807809 和 7812 的輸入端,最后基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計20輸出 5V、9V 和 12V 的直流電。在電源的兩端并聯(lián)的大電容和小電容起濾波作用。大電容是濾除低頻,小電容是濾除高頻。在其兩端再并入同系列的大小電容可獲得很寬頻率范圍的濾波特性。下面對三端集成穩(wěn)壓器的作簡單的介紹。輸出電壓固定的三端集成穩(wěn)壓器 7800系列組成的電源,CW7800/CW78M00/CW78L00 系列的最后兩位數(shù)字表示該集成穩(wěn)壓器的輸出電壓值。這類集成穩(wěn)壓器的輸出電壓有 5V、6V 、9V 和 24V 等幾種。其輸出電壓的偏差在177。2%以內(nèi)。若考慮輸出電流的要求,則在 以內(nèi)的,應(yīng)選用CW7800 系列的。在 以內(nèi)的,選用 CWM00 系列的 。小于 100MA 的,選用 CW78L00系列 [10]。 有正電壓輸出的 78LXX 系列的基本電路有:啟動電路、基準(zhǔn)電壓電路、取樣比較放大電路和調(diào)整電路、保護(hù)電路這些部分組成。 ~v9圖 3—7 電源的電路結(jié)構(gòu) 外擴(kuò)存儲電路設(shè)計 AT24C02 數(shù)據(jù)/地址的傳輸遵循 I2C 協(xié)議,I 2C 協(xié)議為雙總線方式,其對時序有嚴(yán)格的要求。如圖 3—9 為讀/寫周期的時序圖,當(dāng)對 AT24C02 進(jìn)行讀寫操作時,首先向總線發(fā)起始命令(拉低 SDA) ,然后向總線發(fā)送芯片地址,相應(yīng)芯片收到呼叫后將返回應(yīng)答信號,每次向芯片寫數(shù)據(jù)/地址后都應(yīng)檢查應(yīng)答信號,然后發(fā)送片內(nèi)地址,對芯片進(jìn)行讀寫操作,操作完成后發(fā)送結(jié)束信號(SCL 高電平時拉高 SDA) 。對 AT24C02 讀寫的程序工作在第 3 組寄存器狀態(tài),分為讀 7 字節(jié)(R_7DA) 、寫 7字節(jié)(W_7DA ) ,輸入輸出參數(shù)為: 10H 存放 I2C 操作數(shù)據(jù)首地址 11H 存放 MCU基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計21操作數(shù)據(jù)首地址,和讀 1 字節(jié)(R_BY,參數(shù):R0 存放 I2C 數(shù)據(jù)地址, A 存放結(jié)果) 、寫 1 字節(jié)(R_BY ,參數(shù): R0 存放 I2C 地址,R2 存放寫入的數(shù)據(jù)) 。 AT24C02 的電路結(jié)構(gòu)圖如 3—8 所示。 圖 3—8 AT24C02 的電路結(jié)構(gòu)圖 3—9 讀/寫周期時序圖 3—10 數(shù)據(jù)有效時序 圖 3—11 起始/停止定義圖 3—12 輸出應(yīng)答 鍵盤電路設(shè)計基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計224*4 矩陣鍵盤電路結(jié)構(gòu)如圖 3—13,相對應(yīng)的按鍵的鍵值如表 3—1,4*4 矩陣鍵盤按鍵的功能如圖 3—14。鍵盤采用掃描方式,當(dāng)需要輸入時調(diào)用鍵盤子程序掃描鍵盤,判斷是否有按鍵按下并判斷鍵值,并將鍵值放入寄存器 R4 。若沒有按鍵按下,則按鍵為空,相對應(yīng)鍵值為 16。SB24567890P.圖 3—13 鍵盤電路結(jié)構(gòu)7 8 9 調(diào)時4 5 6 設(shè)置/刪除1 2 3 返回0 確認(rèn)圖 3—14 鍵盤功能表 3—1 對應(yīng)的按鍵的鍵值S4/7 S3/8 S2/9 S1/15S8/4 S7/5 S6/6 S5/14S12/1 S11/2 S10/3 S9/13S16/10 S15/0 S14/11 S13/124 系統(tǒng)軟件設(shè)計基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計23 軟件設(shè)計分析軟件是系統(tǒng)的指揮中心,由它來配合控制完成各種預(yù)定功能。為了充分發(fā)揮AT89C51 優(yōu)越的性能價格比,在設(shè)計上盡量做到硬件“軟化” ,進(jìn)一步體現(xiàn)軟件編程的靈活性,使系統(tǒng)硬件設(shè)計得到簡化。系統(tǒng)軟件采用 MCS51 單片機(jī)匯編語言編寫,采用了模塊化結(jié)構(gòu)設(shè)計。為增強(qiáng)系統(tǒng)的實(shí)時性,對那些偶然事件采用中斷方式處理,主程序主要用于系統(tǒng)的控制和管理。軟件設(shè)計時,首先是做好準(zhǔn)備工作,即讀出每個按鍵的鍵值,并檢查數(shù)碼管是否可以正確顯示所有數(shù)字。電路設(shè)計時是按模塊設(shè)計的,軟件設(shè)計也一樣,采用中斷子程序方式,首先編寫大概的主程序,然后理出所需設(shè)計的子程序并逐個分析和設(shè)計子程序,編寫出子程序后應(yīng)給予編譯檢查錯誤,若有錯誤再更正,直到通過編譯即沒有語法錯誤,等每個子程序編寫完以后,再修改主程序完成整體的程序編寫,最后在將程序進(jìn)行調(diào)試。 系統(tǒng)軟件程序設(shè)計 LCD 顯示程序設(shè)計本系統(tǒng)顯示采用 1602 顯示模塊,1062 正常工作前對其進(jìn)行初始化,分為硬件初始化和軟件初始化。初始化過程為:上電 15ms 后對 1602 寫顯示模式指令38H(即設(shè)置為 16*2 顯示,5*7 點(diǎn)陣,8 位數(shù)據(jù)接口) ,然后對 1602 寫清屏指令。1602 模塊顯示時,刷新太快時會出現(xiàn)字跡模糊,因此,當(dāng)顯示子程序直接放在程序中循環(huán)時,會出現(xiàn)刷新太快而顯示不清晰。在本系統(tǒng)中采用查詢標(biāo)志位顯示的方法,當(dāng)需要刷新顯示時,置位顯示標(biāo)志位 00H,每次循環(huán)顯示子程序首先查詢顯示標(biāo)志位,當(dāng)需要刷新顯示時,則執(zhí)行刷新顯示程序。顯示模塊主要分為日期顯示、時間顯示、提示顯示和輸入顯示等。在此系統(tǒng)中,為了減少顯示的程序的大小,運(yùn)用了顯示模塊的嵌套,但由于時間關(guān)系,程序在優(yōu)化上還未達(dá)到滿意的效果,顯示程序比較零散,存在大量的冗余。顯示程序模塊較多,但都有其基本流程,如圖 4—1 為顯示過程的基本流程圖。從圖中可看出,程序每一次大循環(huán)都查詢顯示標(biāo)志位,當(dāng)標(biāo)志位為 0 時,則跳過刷新顯示;當(dāng)標(biāo)志位為 1 時,則執(zhí)行刷新顯示程序。每次刷新顯示前都執(zhí)行清屏指令,然后向顯示寄存器寫數(shù)據(jù),每寫一次數(shù)據(jù)或指令之前都要讀顯示模塊的狀態(tài)字,確定顯示模塊處于空閑狀態(tài)(狀態(tài)字第 7 位為 0) 。刷新顯示完成后寫控制字設(shè)置光標(biāo)基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計24顯示模式。最后清除標(biāo)志位 00H,通知顯示已經(jīng)刷新完成。 YESNO開始00H=0查詢標(biāo)志位:00H=1?結(jié)束清屏刷新顯示圖 4—1 顯示流程 系統(tǒng)初始化程序設(shè)計系統(tǒng)的初始化工作是整個系統(tǒng)能夠正常工作的前提,系統(tǒng)的初始化包括相關(guān)寄存器的初始化、LCD 的初始化、AT24C02 的檢測以及報警時長的設(shè)置等。如圖 4—2 為初始化的流程圖,初始化程序首先設(shè)置堆棧 SP 為 60H,設(shè)置 IE為 07H(外部中斷 0、外部中斷 1 和定時中斷 0)和中斷優(yōu)先級 IP 為 01H(外部中斷 0 優(yōu)先級最高) ;然后初始化 LCD 顯示屏;顯示屏初始化完畢則顯示設(shè)置報警時長,報警時長單位為秒,可設(shè)置范圍為:0—199(其中 199 為不自動退出報警) ;設(shè)置完成后系統(tǒng)檢查 I2C 的數(shù)據(jù)通信,若數(shù)據(jù)通信失敗或者出錯,則顯示器右上角會顯示“E” ;2EH、2FH 分別寫 FFH,是為了發(fā)生報警時,讀取的監(jiān)測信號異常的位為 0,將讀取的檢測信號與 2EH、2FH 分別相與,則存在異常的位為 0,通過檢測位顯示當(dāng)前報警發(fā)生異常的通道;最后是從 DS1302 獲取當(dāng)前時間,并且開中斷和啟動定時。至此,系統(tǒng)的初始化完成,進(jìn)入主程序的循環(huán)?;趩纹瑱C(jī)的家庭防盜報警系統(tǒng)設(shè)計25 開始設(shè)置堆棧 SP中斷、中斷優(yōu)先級初始化 LCD設(shè)置報警時長:28H檢查 I2C 數(shù)據(jù)通信設(shè)置 2EH,2FH 為:FFH開中斷,啟動定時結(jié)束圖 4—2 初始化流程 報警系統(tǒng)程序設(shè)計報警系統(tǒng)負(fù)責(zé)檢測 16 路信號,并及時對異常發(fā)出響應(yīng),對異常進(jìn)行記錄等。由外部中斷 0 和外部中斷 1 構(gòu)成,外部中斷 0 負(fù)責(zé)檢測掃描 16 路信號并對異常進(jìn)行處理,外部中斷 1 負(fù)責(zé)報警,外部中斷 0 的優(yōu)先級最高,這樣不會因?yàn)閳缶癄顟B(tài)而對其期間異常造成丟失。由硬件圖可知:當(dāng) 16 監(jiān)測信號發(fā)生異常時,則此路電平拉低,將對單片機(jī)申請中斷,同時低電平通知 74LS373 鎖存異常信號;單片機(jī)進(jìn)入中斷,分別從兩片 74LS373 取出信號,通過分析處理,將當(dāng)前報警的通道數(shù)存入2EH、 2FH,并記錄當(dāng)前異常時間到 AT24C02;處理完成后通知外部中斷 1 產(chǎn)生報警。外部中斷 1 進(jìn)入中斷后,首先讀取報警時長,然后點(diǎn)亮報警指示燈,并驅(qū)動蜂鳴器產(chǎn)生聲光報警,報警時 LCD 顯示當(dāng)前報警時間和通道。當(dāng)按下確定鍵或者報警時間到達(dá)則退出報警狀態(tài),置位 不再進(jìn)入報警中斷并返回主屏。 查詢記錄程序設(shè)計基于單片機(jī)的家庭防盜報警系統(tǒng)設(shè)計26記錄的查詢分為總體狀況的查詢和單通道的查詢,總體查詢能查詢出現(xiàn)異常的通道,并顯示該通道出現(xiàn)異常的次數(shù),當(dāng)某通道有異常記錄時,可以選擇此路進(jìn)行詳細(xì)查詢其出現(xiàn)異常的時間。記錄的總體查詢可以直觀的看出歷史記
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1