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

正文內(nèi)容

gsm家庭防盜系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文說明書-在線瀏覽

2024-08-08 08:06本頁面
  

【正文】 T+CMGF=1回車(采用文本格式發(fā)送,如用PDU格式,則AT+CMGF=0)AT+CMGS=“+8613xxxxxxxxx”回車輸入短消息。為了實(shí)現(xiàn)對密碼的存儲,防止不法分子切斷電源造成密碼丟失,本系統(tǒng)采用了AT24C02存儲器對密碼進(jìn)行存儲。內(nèi)部有一個16字節(jié)頁寫緩沖器,該器件通過I2C總線接口進(jìn)行操作,有一個專門的寫保護(hù)功能。I2C總線協(xié)議規(guī)定,任何將數(shù)據(jù)傳送到總線的器件為發(fā)送器。數(shù)據(jù)傳送是由產(chǎn)生串行時鐘和所有起始停止信號的主器件控制的。AT24C02通過8個引腳實(shí)現(xiàn)數(shù)據(jù)的存儲功能,其引腳圖如下圖3所示。4*4矩陣鍵盤主要提供用戶操作輸入功能,是實(shí)現(xiàn)人機(jī)通信的主要控制部分;LCD1602液晶顯示器主要負(fù)責(zé)顯示系統(tǒng)信息,協(xié)助用戶操作系統(tǒng)。LCD1602是一種字符型液晶顯示模塊,是一種專門用于顯示字母、數(shù)字、符號等點(diǎn)陣式的LCD。LCD1602包括4種工作狀態(tài),通過MCU設(shè)置RS、RW和E值,可使液晶工作在不同的狀態(tài)。這樣,一個端口(如P1口)就可以構(gòu)成4*4=16個按鍵,從而節(jié)省I/O資源,因此在本設(shè)計(jì)中采用4*4矩陣鍵盤。當(dāng)無鍵按下時,行線處于高電平狀態(tài);當(dāng)有鍵按下時,行、列線將導(dǎo)通,此時,行線電平將由與此行線相連的列線電平?jīng)Q定。編碼相互轉(zhuǎn)換可通過計(jì)算或查表的方法實(shí)現(xiàn)。系統(tǒng)硬件電路如圖4所示。接口P3為單片機(jī)P0引腳的上拉電阻,接口P2為矩陣鍵盤的接入口。由于傳感器的信號為弱電平信號,容易造成單片機(jī)的誤操作。接口P6為煙霧傳感器的接口;接口P7為人體感應(yīng)傳感器的接口。由于單片機(jī)的中斷方式為低電平中斷,所以經(jīng)放大器放大后的信號要先接入反相器,才能再連接到單片機(jī)的中斷引腳上如圖6。報(bào)警模塊電路圖如圖7所示,在該電路中,speaker連接在單片機(jī)引腳上,接口P4為蜂鳴器,晶體管工作在飽和狀態(tài),相當(dāng)于一個開關(guān)。串口電路主要由芯片MAX232進(jìn)行電平轉(zhuǎn)換,實(shí)現(xiàn)串口電壓與單片機(jī)電壓的轉(zhuǎn)換,確保雙方可以相互通信,電路如圖8所示。圖8GSM模塊接口電路圖存儲器模塊電路主要由芯片AT24C02構(gòu)成,存儲器模塊電路圖如圖9所示。串行時鐘SCL和串行數(shù)據(jù)/,通過單片機(jī)編程控制存儲器的讀寫??烧{(diào)電阻R1調(diào)節(jié)液晶偏壓,RS、通過單片機(jī)按相應(yīng)時序編程控制液晶顯示。圖10液晶模塊電路圖 該系統(tǒng)主要實(shí)現(xiàn)的功能是:輸入密碼,密碼正確則進(jìn)入系統(tǒng)。當(dāng)錯誤次數(shù)達(dá)到3次,系統(tǒng)便進(jìn)入自鎖狀態(tài)并通過GSM發(fā)送短信通知用戶。選擇開門功能。選擇修改系統(tǒng)密碼功能,則按照系統(tǒng)指引輸入舊密碼、新密碼和重復(fù)新密碼。若輸入的密碼錯誤,則需要重新輸入,當(dāng)錯誤次數(shù)達(dá)到3次時,系統(tǒng)也會進(jìn)入自鎖狀態(tài)和通過GSM發(fā)送短信通知用戶。若需要關(guān)閉報(bào)警功能,只要按關(guān)閉報(bào)警的按鍵,并正確輸入密碼后,報(bào)警功能就會關(guān)閉。在本系統(tǒng)中,LCD1602液晶顯示是通過調(diào)用voiddisplay(ucharpos,uchar*q)函數(shù)實(shí)現(xiàn)的,其流程圖如圖12所示。該函數(shù)主要調(diào)用lcd_wcmd(),lcd_pos()兩個函數(shù),先寫顯示地址,后寫顯示數(shù)據(jù)。P1口低4位作為鍵盤的行,高4位作為鍵盤的列。如果有鍵按下,P1口高4位不會全為1。圖13主程序流程圖在本系統(tǒng)中,GSM模塊軟件設(shè)計(jì)是通過串口發(fā)送AT指令給GSM模塊來實(shí)現(xiàn)發(fā)送短信的功能,其流程圖如圖14所示。程序見附錄。在本系統(tǒng)中,AT24C02的存儲功能主要是通過I2C總線來實(shí)現(xiàn)串行讀寫,其流程圖如圖15所示。在讀函數(shù)_24C02Read(unsignedcharl_address)中,先向I2C總線發(fā)出讀取24C02的寫地址,在完成I2C串口協(xié)議后,寫入24C02的讀地址,再讀取存儲器對應(yīng)位置的數(shù)據(jù)。程序見附錄。在voiddisplay(ucharpos,uchar*q)函數(shù)中,pos是寫入的位置,q指向要寫入的數(shù)據(jù)所在的數(shù)組。單片機(jī)P2口接LCD1602的數(shù)據(jù)引腳,P0^P0^P0^7分別接LCD1602的RS、RW、EP引腳,通過單片機(jī)控制液晶顯示。圖16LCD1602顯示流程圖在本系統(tǒng)中,鍵盤的軟件實(shí)現(xiàn)通過分時掃描、鍵盤編碼的形式來實(shí)現(xiàn),其流程圖如圖17所示。P1口低4位先循環(huán)輸出0,單片機(jī)掃描P1口高4位。讀取P1口的值,查表獲得相應(yīng)的16進(jìn)制值存放l_key變量中,退出循環(huán)。程序見附錄。如果密碼正確,則進(jìn)入下一步操作。每輸錯一次密碼,錯誤次數(shù)記錄變量times就會加1。程序見附錄。編寫好程序后,將文件加載到工程中,然后“build”,生成“*.hex”文件,將AT89S52芯片插到下載開發(fā)板中,然后打開下載軟件,通過它導(dǎo)入“*.hex”運(yùn)行編譯,載入到芯片即可。2秒后,系統(tǒng)進(jìn)入輸入狀態(tài),此時可通過鍵盤輸入6位密碼。當(dāng)輸入完成以后,按“Enter”鍵確認(rèn)輸入。若輸入的密碼錯誤,蜂鳴器長鳴同時液晶顯示“Error!”,如圖26所示。若錯誤次數(shù)達(dá)到三次,系統(tǒng)進(jìn)入死鎖狀態(tài),液晶顯示“Tryittomorrow!”,并通過GSM模塊發(fā)送短信通知用戶,在進(jìn)入操作系統(tǒng)后,按“Open”鍵進(jìn)入開門功能。在進(jìn)入操作系統(tǒng)后,按“Change”鍵進(jìn)入修改密碼功能。若輸入的密碼都正確,則修改密碼成功,顯示“Establishessuccessful!”,如圖28所示。在進(jìn)入操作系統(tǒng)后,按“Alarm”鍵進(jìn)入開啟報(bào)警功能,此時液晶顯示“Systemstartup.”。整個設(shè)計(jì)的難點(diǎn)在于調(diào)試方面,因此在調(diào)試中也遇到了很多問題,但經(jīng)過查看資料和細(xì)心分析后,最終都能順利解決。在制板過程中,難免會出現(xiàn)各種差錯而導(dǎo)致電路短路或斷路等現(xiàn)象。調(diào)試過程首先驗(yàn)證LCD1602能否正常運(yùn)行。上電后,液晶只亮但沒有顯示,初步懷疑是RS、RW和E控制位設(shè)置錯誤。最后經(jīng)過反復(fù)檢查,發(fā)現(xiàn)原來是因?yàn)閱纹瑱C(jī)P2引腳為倒序排列,在畫板圖時沒有留意,導(dǎo)致接錯數(shù)據(jù)引腳。在設(shè)計(jì)程序時,考慮到存儲器AT24C02全新時存儲內(nèi)容為0,此時才寫入初始化密碼。在設(shè)計(jì)功能選擇時,采用按鍵獲得鍵值,再根據(jù)鍵值選擇不同功能函數(shù)的方式來實(shí)現(xiàn)的。經(jīng)過仔細(xì)分析后得知,在每次按鍵后,程序跳入不同功能函數(shù)時要將鍵值重設(shè)初值0xFF,否則會進(jìn)入死循環(huán)。剛開始時,傳感器沒有檢測到信號,但單片機(jī)卻運(yùn)行中斷程序。試過更換單片機(jī)芯片和將中斷引腳接地,問題依然存在。故在程序中加入延時檢測中斷信號部分后,干擾信號被排除掉,中斷正常。編程過程中要注意加注釋或分割線,否則,在程序過長時容易變得很亂,不便于查找或更改。編程前要畫流程圖,這樣會使思路清晰。 該設(shè)計(jì)在一定程度上解決了傳統(tǒng)機(jī)械式防盜的弊端,利用高科技將防盜報(bào)警智能化、自動化,可以減少和避免戶主的損失。由于時間的關(guān)系和考慮到元器件的價格等因素,該設(shè)計(jì)還存在一些不足的地方。除此以外,還可以通過增加斷電保護(hù)電路增強(qiáng)系統(tǒng)的安全性。這一次的實(shí)訓(xùn)設(shè)計(jì),從查找資料、方案確定、電路設(shè)計(jì)到PCB制作和調(diào)試,整個過程都是我自己親自去完成。第25頁[1]祁偉,楊事.單片機(jī)C5l語言教程與實(shí)驗(yàn)[M].北京:北京航空航天大學(xué)出版社,2006.[2]林桂花.基于GSM模塊的數(shù)據(jù)傳輸及實(shí)時控制系統(tǒng)[J].計(jì)算機(jī)與現(xiàn)代化,2006(2):22~24.[3]李曉輝,等.基于GSM技術(shù)的汽車防盜系統(tǒng)的設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2008(3):l9l~193.[4]劉字靜.基于GSM的遠(yuǎn)程監(jiān)控系統(tǒng)數(shù)據(jù)傳輸[J].科學(xué)技術(shù)與工程,2007(5):1014.[5]師俊宏.智能家居中的安全防范系統(tǒng)[J].上海建設(shè)科技,2006,(05).[6]游燕,隨善坤.一種智能家居安防系統(tǒng)的設(shè)計(jì)[J].中國科技信息,2005,(12).[7]陳剛,李葉紫,胡輝.基于GSM的車輛防盜搶系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電氣自動化,2005,(06)[8]丁元杰.單片微機(jī)原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2001:5669 附錄:includeincludeincludeincludeincludeincludeincludesbitdoor=P0^0。//定義P0^1為喇叭控制標(biāo)志位sbitalarm=P0^3。sbitint0=P3^2。 //存儲輸入鍵值ucharpswd_flash[6]={0}。 //暫存新密碼ucharcorrect_old=0。 //檢測新密碼標(biāo)志位ucharcorrect_old_change=0。//每次輸入密碼錯誤次數(shù)uchartest。 //密碼位bitchange=0。 //設(shè)定控制標(biāo)志位bitdelect。 //確定控制標(biāo)志位bitcancle。 //輸入函數(shù)voidpswd_error(void)。 //火災(zāi)報(bào)警函數(shù)voidsteal(void)。 //功能選擇函數(shù)voidchange_f(void)。 //報(bào)警功能函數(shù)includeincludeincludeincludeincludeincludeincludedefineBuf1_Max500 //串口1緩存長度sbitYellow_LED=P1^5。 //LED2綠色指示燈sbitRed_LED=P1^7。 //啟動TC35I信號sbitK1=0xC1。unsignedcharrunxun_ser1=0,Flag_Buf1_Rec=0。unsignedintFirst_Int=0,Second_Int=0。unsignedintTimes=0,shijian=0,Count_time=0。 Send_Hex(0x0A)。for(k=0。k++)//將緩存內(nèi)容清零{ Buf_First_Serial[k]=0x30。//接收字符串的起始存儲位置}//判斷緩存中是否含有指定的字符串函數(shù)unsignedcharHand(unsignedchar*a){if(strstr(Buf_First_Serial,a)!=NULL) return1。}//定位字串+32符位置voidFind_dw_TEXT(void){ unsignedintk。kBuf1_Max。+39。amp。339。amp。239。 break。kBuf1_Max。O39。amp。K39。 break。 unsignedchar*c。 //保存字符串地址到c CLR_Buf1()。 while(i==0) { if(!Hand(OK)) { if(Timer0_Start==0) { b=c。*b!=39。b++) { Send_Hex(*b)。 Times=0。 Timer0_Start=1。 Timer0_Start=0。}//發(fā)送命令函數(shù)//允許出錯voidSecond_AT_ERROR(unsignedchar*b,unsignedintwait_time){ unsignedchari。 c=b。i=0。amp。 //將字符串地址給b for(b。\039。 } Send_LR()。 shijian=wait_time。 }} else { i=1。 } } CLR_Buf1()。 //取消回顯 Second_AT_Command(AT+CNMI=2,1,3)。 //PDU模式 Second_AT_Command(AT+CSDH=0,3)。 //使用GSM字符集 //Second_AT_Command(AT+CSMP=17,167,0,8,3)。 //所有操作都在MT(模塊終端)中進(jìn)行。 }voidCheck_Message_rec(void){ unsignedintk。 CLR_Buf1()。amp。 Send_ASCII(AT+CMGR=1)。 Delay_ms(10000)。 for(k=Start_weizi。k++) { Second_Serial_Port_Send(Buf_First_Serial[k])。 } e
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1