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

正文內(nèi)容

基于單片機(jī)的防盜報(bào)警器的所有專業(yè)-預(yù)覽頁

2025-06-21 12:48 上一頁面

下一頁面
 

【正文】 ................................ 26 致 謝 .............................................................................................................................. 28 附錄 A ............................................................................................................................... 29 1 引言 本文詳細(xì)介紹了 一種 基于單片機(jī)和 EEPROM 的防盜報(bào)警 控制 器 的設(shè)計(jì)。 防盜報(bào)警系統(tǒng)是預(yù)防搶劫、盜竊等意外事件的重要設(shè)施。報(bào)警探測器是由傳感器和信號處理組成的,用來探測入侵 者入侵行為的,由電子和機(jī)械部件組成的裝置 。 隨著科學(xué)技術(shù)的進(jìn)步,為對付不斷升級的 偷盜手 段,人們研制開發(fā)了不同方式結(jié)構(gòu)的防盜器。 單片機(jī) 技術(shù)簡介 單片機(jī) 簡 稱單片微型計(jì)算機(jī) , 是典型的嵌入式 微控制器 ( Microcontroller Unit),常用英文字母的縮寫 MCU表示單片機(jī),它最早是被用在工業(yè)控制領(lǐng)域。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、 工程師。 單片機(jī)開發(fā)中除必要的硬 件外,同樣離不開 軟件 ,我們寫的匯編語言源程序要變?yōu)?CPU 可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。掌握這一軟件的使用對于使用 51 系列單片機(jī)的愛好者來說是十分必要的,如果你使用 C 語言編程,那么 Keil 幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用 C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng) 大的軟件仿真調(diào)試工具也會令你事半功倍。下面詳細(xì)介紹 Keil C51 開發(fā)系統(tǒng)各部分功能和使用。目標(biāo)文件可由 LIB51 創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng) L51 連接定位生成絕對目標(biāo)文件 (.ABS)。它是目前最好的仿真單片機(jī)及外圍器件的工具。在編譯方面,它也支持 IAR、Keil 和 MPLAB 等多種 編譯器 。 ( 3)除了現(xiàn)實(shí)存在的儀器外, Proteus 還提供了一個(gè)圖形顯示功能,可以將線路上變化的信號,以圖形的方式實(shí)時(shí)地顯示出來,其作用與示波器相似,但功能更多。這些測試信號包括模擬信號和數(shù)字信號。 共分為 五 章,內(nèi)容安排如下: 第一章:介紹了研究背景 及利用到的主要技術(shù)。 第 五 章: 總結(jié)了本次畢業(yè)設(shè)計(jì)取得的成果和心得 2 系統(tǒng)結(jié)構(gòu) 及硬件電路設(shè)計(jì) 系統(tǒng)的結(jié)構(gòu)框圖 及工作原理 圖 21 系統(tǒng)結(jié)構(gòu)框圖 本系統(tǒng)采用單片機(jī) AT89S52 為 控制核心,系統(tǒng) 主要 由 四個(gè)模塊 : 電源模塊 、AT89S52 最小系統(tǒng)、 EEPROM 存儲 模塊、 LED 和 數(shù)碼管 顯示 模塊 構(gòu)成 : 電源模塊作為整個(gè)系統(tǒng)的各個(gè)模塊提供穩(wěn)定的電源 。 電源 模塊 本系統(tǒng)中芯片的工作電壓有 5V。帶散熱片時(shí),輸出電流可達(dá) 1A。 C2 為去耦電容,防止干擾信號返回電源影響其正常。片上 Flash 允許程序存儲器在系統(tǒng)可編程,亦適于 常規(guī)編程器??臻e模式下, CPU停止工作,允許 RAM、定時(shí)器 /計(jì)數(shù)器、串口、中斷繼續(xù)工 作。 圖 24為 AT89S52 的 最小系統(tǒng)原理圖。本節(jié)結(jié)束鍵盤的接口技術(shù)。非編碼方式只簡單地提供輸入按鍵連接電路,其他的工作靠軟件來完成,具有經(jīng)濟(jì)實(shí)用的特點(diǎn)。當(dāng)機(jī)械觸點(diǎn)斷開、閉合時(shí),會有抖動(dòng),如下 圖25 所示。 常用的有 硬件方法 、 軟件方法 兩種 。 顯示模塊 在單片機(jī)應(yīng)用系統(tǒng)中,為了觀察單片機(jī)的運(yùn)行情況,進(jìn)行人機(jī)之間的交流,通常采用顯示器作為其輸出設(shè)備,用于顯示輸入鍵值中間信息及運(yùn)算結(jié)果等。所謂的八段就是指數(shù)碼管里有八個(gè)小 LED 發(fā)光二極管,通過控制不同的 LED 的亮滅來顯示出不同的字形。 圖 27 數(shù)碼管顯示器外形結(jié)構(gòu)及兩種連接方式 在本設(shè)計(jì)中采 用共陰極連接方式,原理圖如圖 28 所示??梢钥闯觯绻@示“ 7”字形, a、 b、 c、三個(gè)字段應(yīng)點(diǎn)亮,所以對應(yīng)的字型碼為 00000111B,依此類推可寫出所要顯示的各字形碼存放 在程序存儲器的固定區(qū)域中,構(gòu)成顯示代碼表。 在本設(shè)計(jì)中采用 500 歐姆。 在本設(shè)計(jì)中使用 24C04。 圖 210 24C04管腳配置 表 22 24C04管腳描述 圖 211 EEPROM 電路原理圖 如圖 211 所示為本設(shè)計(jì)的 EEPROM 電路原理圖。然后進(jìn)入程序的主流程,判斷系統(tǒng)的當(dāng)前狀態(tài) , 掃描 鍵盤輸入 確定狀態(tài)后,執(zhí)行相應(yīng)的處理。 sbit key_input =P1^0。 //警報(bào)信號 然后在一個(gè)子程序中實(shí)現(xiàn)鍵盤的識別及消抖 。 圖 32 主程序流程圖 數(shù)碼管顯示模塊的程序設(shè)計(jì) 由上章所述,本設(shè)計(jì)利用 table 數(shù)組保存字形碼,作為 顯示代碼表 , 如下所示: uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, //0123456789 0x3e, 0x73, 0x7c, 0x40 //“ U” 10,“ P” 11,“ b” 12,“ ” 13 }。 //查表顯示 } 開始 Keycount=0 按鍵? Yes Keycount自加 返回按鍵 值 長按? 返回按鍵值 No 保存按鍵值 抖動(dòng)? No No 退出子程序 Yes Yes 對于 LED 指示燈,本設(shè)計(jì)中采用高電平點(diǎn)亮的方 式,利用 端口控制。I2C 總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的 器件作為發(fā)送器 , 任何從總線接收數(shù)據(jù)的器件為接收器 , 數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信 號的主器件控制的 。 由上一章所述的電路設(shè)計(jì),本設(shè)計(jì) 中 只用一個(gè) 24C04, 其地址為 [AA0]為 [0、 0],寫保護(hù)無效。 I2C 總線協(xié)議 定義如下 : 總線空閑 時(shí), SDA、 SCL 為高電平,只有 在總線空閑時(shí)才允許啟動(dòng)數(shù)據(jù)傳送 。在總線上讀數(shù)據(jù)時(shí)也是只有在 SCL 為高時(shí), SDA 為有效數(shù)據(jù)。 圖 33 I2C 基本信號 I2C 總線在每接收完一個(gè)字節(jié)( 8 個(gè)二進(jìn)制位)后,在第九個(gè)時(shí)鐘信號時(shí),會在 SDA 上回應(yīng)一個(gè)低電平的 ACK 應(yīng)答信號,以此表明當(dāng)前 受控的器件已接收完一個(gè)字節(jié),可以開始下一個(gè)字節(jié)的傳送了。圖 35 是 24C04 的器件尋址命令中每個(gè)位所代表的意思。 圖 35 24C04的器件尋址命令 24C04 的 I2C 總線基本操作 24C04 的 I2C 總線基本操作包括寫入單個(gè)字節(jié)、頁寫入、讀當(dāng)前地址數(shù)據(jù)、讀任意地址數(shù)據(jù)、連續(xù)讀取數(shù)據(jù)等。圖 36 是寫入單個(gè)字節(jié)的時(shí)序圖。圖 37 是讀當(dāng)前地址時(shí)序圖。圖 38是讀任意地址的時(shí)序圖 。 然后利用 sbit 定義數(shù)據(jù)和時(shí)鐘引腳。 本章介紹利用 Proteus 進(jìn)行系統(tǒng)仿真的主要流程及操作,其余部分可參考 Proteus 的幫助文檔。注意,這個(gè)窗口是沒有滾動(dòng)條的,你可用預(yù)覽窗口來改變原理圖的可視范圍。 圖 42 Proteus 的“ P”按鈕 圖 43 Proteus 的器件選取 然后單擊 OK,關(guān)閉對話框,這時(shí)元件列表中列出 AT89S52, 以同樣方式即可添加所需要的器件。 然后 添加“地” :左鍵選擇模型選擇工具欄中的 圖標(biāo),出現(xiàn) 如圖 45 所示的終端,左鍵選擇 GROUND,并在原理 圖編輯窗口中左擊,這樣 “地 ”就被放置到原理 圖編輯窗口中了。如圖 46 即為連接完后的電路圖。 運(yùn)行時(shí),在 Debug 菜單中可以查看 AT89S52 的相關(guān)資源。接著分別從硬件和軟件兩個(gè)方 面對系統(tǒng)的設(shè)計(jì)做出了詳細(xì)的說明 ,最后對仿真操作的流程作了詳細(xì)介紹。這一段時(shí)間的實(shí)踐,必將 給我今后的工作和人生帶來積極的經(jīng)驗(yàn)和影響。2020 年 14 期 [12] 彭利軍 ,郝海峰 . 基于 Proteus的單片機(jī)系統(tǒng)的虛擬仿真 [J]. 電子與封裝 ,2020年07 期 [13] 寧成軍 ,張江霞 . 基于 Proteus 和 Keil 接口的單片機(jī)外圍硬件電路仿真 [J]. 現(xiàn)代電子技術(shù) ,2020 年 18 期 [14] 代啟化 . Proteus 在單片機(jī)電路系統(tǒng)設(shè)計(jì)中的應(yīng)用 [J]. 自動(dòng)化與儀器儀表 ,2020年 06 期 [15] 宋國富 ,王玉葉 。NOP。 void I2C_Stop()。 bit ISendStr(uchar sla,uchar sub,uchar *s,uchar n)。 /* == == == == == == == == == == == == == == == == == == 全局變量定義 amp。 uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66, //01234 0x6d,0x7d,0x07,0x7f,0x6f, //56789 0x3e,//U 10 0x73,//P 11 0x7c,//b 12 0x40 // }。 //定時(shí)中斷次數(shù) sbit gewei=P2^0。 //查號 sbit key_reset =P1^2。 uchar data_tel。 j=100。 NOP。 NNOP。 } /* == == == == == == == == == == == == == == == == == == 函數(shù)功能 :I2C STOP 入口參數(shù) : 說 明 : == == == == == == == == == == == == == == == == == == =*/ void I2C_Stop(void) { SDA=0。 SDA=1。i8。 NOP。 } NOP。 NOP。 NOP。 //ack SCL=0。 == == == == == == == == == == == == == == == == == == =*/ uchar RcvB(void) { uchar rete。 //置數(shù)據(jù)線為接收狀態(tài) for(i=0。 NNOP。 rete=rete1。 } SCL=0。 } /* == == == == == == == == == == == == == == == == == == 函數(shù)功能 :主控器件應(yīng)答功能 入口參數(shù) : 說 明 :送0發(fā)0,送1發(fā)1,發(fā)1表示 NO ACK == == == == == == == == == == == == == == == == == == =*/ void Ack_I2C(bit a) { if(a == 0)SDA=0。NOP。 NOP。 if(ack == 0) return (0)。 return (1)。 if(ack == 0) return (0)。in。 } I2C_Stop()。 if(ack == 0) return (0)。 return(1)。 if(ack == 0) return (0)。 SendB(sla+1)。 Ack_I2C(0)。 I2C_Stop()。 } ///////////////////////////////////////////////////////T0 中斷子程序 void t0_init() { TMOD=0x01。 //對 TH0 TL0 賦值 TL0=(6553650000)%256。 } //定時(shí)0中斷服務(wù)程序 void t0(void) interrupt 1 using 0 { TH0=(6553650000)/256。 //重新再計(jì) sec++。 if (!key_input) state_temp=state_input。 else break。 else return 0。 // while(num8) // { count=10。 //撥號 Display(12)。 //定時(shí) 3s Display(10)。i7。 addr_tel=0。 L
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1