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

正文內容

基于單片機的家庭防盜報警系統(tǒng)畢業(yè)設計說明書-資料下載頁

2025-08-19 17:53本頁面

【導讀】摘要:以STC89C52單片機為控制核心的家庭防盜報警系統(tǒng)進行了設計。庭戶主發(fā)送警情通知。當家里沒有人的時候,有盜賊入侵時,聲光報警電路就會。證,選擇了最優(yōu)方案進行系統(tǒng)的設計。硬件部分包括單片機最小系統(tǒng)、GSM短信發(fā)送模塊、熱釋電人體感應模塊、聲光報警模塊、按鍵輸入模塊、LED指示燈模塊、電源模塊七個部分。消息;并且采用LED指示燈和蜂鳴器對盜竊情況報警。對系統(tǒng)進行軟硬件聯調,設計可滿足用戶對家庭防盜的基本要求。STC89C52單片機的引腳說明...............錯誤!

  

【正文】 20212223242526272829303132333435363738394087654321654123321212121212121213213 21321122134213421342134AKAKAKAK12121 21 2 附錄 3 程序清單 include include include //頭文件 define uint unsigned int define uchar unsigned char //宏定義 //元器件定義 sbit key1=P3^2。 //布防 sbit key2=P3^3。 //撤防 sbit key3=P3^4。 //緊急報警 sbit BUZZ=P0^4。 //蜂鳴器 sbit rsd=P2^4。 //熱釋電輸入 sbit LED_B=P2^3。 //布防指示燈 sbit LED_S=P2^0。 //發(fā)送消息指示燈 //初始化定義 uchar code PhoneNO[ ] =18262382110。 //接受號碼 uchar code somebody[ ] =8BF76CE8610FFF0167094EBA8FDB516562A58B66830356F4FF01。 //請注意!有人進入報警范圍! uint TIME_50ms=0。 //計時的最小分辨率 50ms uint time_continue。 //蜂鳴器鳴響時計時數據暫存 bit flag=0,flag_BF=0。 //flag:值為 0 時,是布防計時模式,值為 1 時,是一分鐘等待模式。 bit flag_time_start=0。 //開始計時標志位 bit again=0。 //一分鐘等待標志位(當發(fā)送一條短信后,不能馬上發(fā)送第二 條 ,所以等待一分鐘后再檢測是 否有人,有人再發(fā)送短信) bit flag_alam。 //報警標志位 bit SOS。 //發(fā)送短信時是否是按下緊急按鍵 bit flag_continue。 //繼續(xù)計時 bit into_BF=0。 //延時函數 void delay(uint z) { uint x,y。 for(x=z。x0。x) for(y=110。y0。y)。 } void Uart_init( ) { TMOD= 0x20。 //T1 方式 2 , 8 位 自動重裝 TH1=0xfd。 TL1=0xfd。 //波特率 為 9600 TR1=1。 //定時器 T1 啟動 SM0=0。 //設置串口的工作模式 SM1=1。 //方式 1 REN=1。 //允許串口接收數據 ES=1。 //串口中斷應許 EA=1。 //開啟中斷 } void SendASC(uchar d) //串口發(fā)送字符 { SBUF=d。 //數據賦值到緩沖區(qū) while(!TI)。 //發(fā)送完 TI=0。 //清零 } void SendString(uchar *str) //串口發(fā)送字符串 { while(*str) //判斷是否發(fā)送完 { SendASC(*str) 。 //發(fā)送字符 str++。 //字符位置加 //delay_uart(1)。 } } //計時函數 void TIME( ) { if(flag==0) //布防計時模式 { delay(50)。 //50ms TIME_50ms++。 //50ms 變量加 1 if(TIME_50ms%10==0) //每 500ms( 50ms*10) LED_B=!LED_B。 //布防指示燈取反一次 if(TIME_50ms=400) //加到 400 次,也就是50ms*400=20200ms=20s { TIME_50ms=0。 //計時變量清零 flag_BF=1。 //進入布防狀態(tài) LED_B=0。 //布防指示燈長亮 flag_time_start=0。 //停止計時 again=1。 //關閉一分鐘等待 } } else //一分鐘等待模式 { delay(50)。 //50ms TIME_50ms++。 //變量加 if(TIME_50ms%10==0) //每加 500ms { LED_B=!LED_B。 //布防指示燈閃爍 if(flag_alam==1) //報警 { if(flag_continue==0) //進入報警時 { flag_continue=1。 //此標志位置一,防止報警時進入 time_continue=TIME_50ms。 //將進入報警時的計時數據暫存 } BUZZ=!BUZZ。 //蜂鳴器取反 , 也就是閃爍響 if(TIME_50ms=time_continue+100) //當報警時間達到 5s 時 { BUZZ=1。 //關閉蜂鳴器 flag_continue=0。 //標志位清零,等待下次報警 flag_alam=0。 //報警變量清零,停止報警 time_continue=0。 //暫存計時數據清零 } } } if(TIME_50ms=1200) //計時達到 60 秒 { LED_B=0。 //布防指示燈長亮,準備檢測熱釋電信號 TIME_50ms=0。 //計時變量清零 flag_time_start=0。 //停止計時 again=1。 //關閉一分鐘等待 } } } //按鍵掃描函數 void keyscan( ) { if(key1==0amp。amp。flag_BF==0) //在非布防狀態(tài)時布防按鍵按下 { delay(5)。 //延時去抖 if(key1==0) //再次判斷按鍵是否按下 { LED_B=0。 //點亮布防 LED 燈 flag=0。 //變量清零 flag_time_start=1。 //開始計時變量置一 } while(key1==0)。 //按鍵釋放 } if(flag_time_start==1) //開始計時 { TIME( )。 //調用計時函數 } if(key2==0) //撤防按鍵按下 { delay(5)。 //延時去抖 if(key2==0) //再次判斷按鍵是否按下 { BUZZ=1。 //關閉蜂鳴器 flag_alam=0。 //報警變量清零 flag_BF=0。 //布防變量清零 flag=0。 //變量清零 flag_time_start=0。 //開始計時變量清零 LED_S=1。 //關閉發(fā)送短信指示燈 LED_B=1。 //關閉布防指示燈 } while(key2==0)。 //按鍵釋放 } if(key3==0) //緊急按鍵按下 { delay(5)。 //延時去抖 if(key3==0) //再次判斷按鍵是否按下 { SOS=1。 //手動發(fā)送短信變量置一,準備發(fā)送短信 flag_alam=1。 //報警變量置一 } while(key3==0)。 //按鍵釋放 } } //發(fā)送 GSM 短信 void GSM_work( ) { unsigned char send_number。 //定義發(fā)送手機號的變量 if(rsd==0amp。amp。flag_BF==1) //布防狀態(tài)且熱釋電有信號時 flag_alam=1。 //報警變量置一 if((rsd==0amp。amp。flag_BF==1amp。amp。again==1)||SOS==1) //布防狀態(tài)且熱釋電有信號時且不在一分鐘等待時間內或者手動按下緊急按鍵 { LED_S=0。 //打開發(fā)送短信指示燈 BUZZ=1。 //關閉蜂鳴器 SendString(AT+CMGF=1\r\n)。 //設置文本模式 delay(1000)。 //延時,讓 GSM 模塊有一個反應時間 SendString(AT+CSCS=\UCS2\\r\n)。 //設置短信格式,發(fā)送漢字模式 delay(1000)。 //延時 SendString(AT+CSMP=17,0,2,25\r\n)。 //設置短信 文本模式參數 delay(1000)。 //延時 SendString(AT+CMGS=)。 //信息發(fā)送指令 AT+CMGS=// SendASC(39。
點擊復制文檔內容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1