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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于tc35的無線網(wǎng)絡(luò)短信報(bào)警器設(shè)計(jì)-資料下載頁

2024-12-03 19:15本頁面

【導(dǎo)讀】基于該報(bào)警方式的硬件模。塊,具有功能擴(kuò)展性好,硬件配置先進(jìn),靈敏度高,功能穩(wěn)定等優(yōu)點(diǎn)。本文主要介紹了一種基于TC35的無線網(wǎng)絡(luò)短信報(bào)警器的設(shè)計(jì)過程。結(jié)構(gòu)及相關(guān)知識作了相應(yīng)的介紹。塊,通過其串口通信功能控制GSM無線通信模塊。

  

【正文】 /報(bào)警掃描,確定防區(qū) if(Alarm_Flag==1) //如果有報(bào)警信號 { Alarm_Flag=0。 //清報(bào)警標(biāo)志 Send_Sms(n)。 //根據(jù)防區(qū)發(fā)送相應(yīng)短信 25 } if(key_Flag==1) //如果有鍵按下 { if(C_Lcd=1) //如果 LCD 處于關(guān)閉狀態(tài) { C_Lcd=0。 //點(diǎn)亮 LCD 顯示 Init_Lcd()。 Draw_PM(wele)。 //顯示設(shè)置開始界面 } menu()。 //進(jìn)入系統(tǒng)設(shè)置菜單 key_Flag=0。 } } } /************************************文件 : **********************************/ /************************************文件 **********************************/ ifndef _TIMER_H_ define _TIMER_H_ extern unsigned char key_val。 //鍵值 extern unsigned char key_Flag。 //按鍵標(biāo)志 extern unsigned int con_Flag。 //定時(shí)器計(jì)數(shù)標(biāo)志 sbit C_Lcd=P3^0。 timer0()interrupt 1 using 1 //定時(shí)器中斷函數(shù) { con_Flag++。 TH0=(655368333)/256。 TL0=(655368333)%256。 if(key_Flag==1)con_Flag=0。 if(con_Flag==1000) //定時(shí) 10s 無鍵按下后,關(guān)閉顯示 { C_Lcd=1。//關(guān)閉 LCD 顯示 First=1。 } 26 } endif /************************************文件 **********************************/ /************************************文件 **********************************/ ifndef _MENU_H_ define _MENU_H_ extern unsigned int Wele。 //設(shè)置開始界面圖形代碼 extern unsigned int key_val。 //鍵值 extern unsigned char key_Flag。 //按鍵標(biāo)志 struct student //定義狀態(tài)索引結(jié)構(gòu)體 { unsigned char KeyStateIndex。 //當(dāng)前狀態(tài)索引號 unsigned char KeyStateEnter。 //確定 unsigned char KeyStateReset。 //重置 unsigned char KeyStateBack。 //返回 unsigned char KeyStateQuit。 //退出 unsigned char KeyStateUp。 //向上 unsigned char KeyStateDown。 //向下 void (*CurrentOperate)()。 //當(dāng)前功能函數(shù) }。 struct student Key_Tab[7]= //定義狀態(tài) { {0,1,0,0,0,0,0,*Wele}, //開始界面 {1,2,1,0,0,0,0,*CNum_Set}, //短信中心號碼設(shè)置 {2,6,2,1,0,5,3,*SmsSet_A}, //內(nèi)容設(shè)置 {3,6,2,1,0,2,4,*SmsSet_B}, {4,6,2,1,0,3,5,*SmsSet_C}, {5,6,2,1,0,4,2,*SmsSet_D}, {6,7,6,2,0,0,0,*TNum_Set}, //發(fā)送號碼設(shè)置 {7,0,0,6,0,0,0*Disp_OK}, //設(shè)置保存 }。 void Wele() //顯示設(shè)置界面 { 27 Draw_PM(wele)。 } void CNum_Set() //短信中心號碼設(shè)置 { unsigned char i=j=0。 unsigned char CNum[14]=+86。 unsigned char Set_C[]=設(shè)置短信中心號碼 。 unsigned char Input_C[]=輸入: 。 Disp_HZ(0x80,Set_C,8)。 Disp_HZ(0x90,Input_C,3)。 while(1) { Key_Event()。 //鍵盤掃描 if(key_val==1||key_val==2||key_val==3||key_val==4)break。 //功能鍵退出 CNum[i+3]=Key_Data(); //獲取輸入字符 Write_Cmd(j+0x89)。 Write_Data(CNum[i+3]); //顯示輸入字符 i++。 } Set_Center(CNum)。 //將輸入的號碼送入 TC35 } void SmsSet_AF() { unsigned char Set_S[]=設(shè)置短信內(nèi)容 。 unsigned char Sms_A[]=◆ A防區(qū)報(bào)警 。 unsigned char Sms_B[]=B 防區(qū)報(bào)警 。 unsigned char Sms_C[]=C 防區(qū)報(bào)警 。 Disp_HZ(0x81,Set_S,6)。 //顯示待確定短信內(nèi)容 Disp_HZ(0x90,Sms_A,6)。 Disp_HZ(0x89,Sms_B,5)。 Disp_HZ(0x81,Sms_C,5)。 Sms_n=1。 //確定短信內(nèi)容序號 } void SmsSet_AD() { 28 unsigned char Sms_A[]=A防區(qū)報(bào)警 。 unsigned char Sms_B[]=◆ B 防區(qū)報(bào)警 。 unsigned char Sms_C[]=C 防區(qū)報(bào)警 。 Disp_HZ(0x91,Sms_A,5)。 Disp_HZ(0x88,Sms_B,6)。 Disp_HZ(0x81,Sms_C,5)。 Sms_n=2。 } void SmsSet_BF() { unsigned char Sms_A[]=A防區(qū)報(bào)警 。 unsigned char Sms_B[]=B 防區(qū)報(bào)警 。 unsigned char Sms_C[]=◆ C 防區(qū)報(bào)警 。 Disp_HZ(0x91,Sms_A,5)。 Disp_HZ(0x89,Sms_B,5)。 Disp_HZ(0x80,Sms_C,6)。 Sms_n=3。 } void SmsSet_BD() { unsigned char Sms_B[]=B 防區(qū)報(bào)警 。 unsigned char Sms_V[]=C 防區(qū)報(bào)警 。 unsigned char Sms_D[]=◆ D 防區(qū)報(bào)警 。 Disp_HZ(0x91,Sms_B,5)。 Disp_HZ(0x89,Sms_V,5)。 Disp_HZ(0x80,Sms_D,6)。 Sms_n=4。 } void TNum_Set() //發(fā)送號碼設(shè)置 { unsigned char i=0。 unsigned char TNum[14]=86。 unsigned char Set_C[]=設(shè)置短信發(fā)送號碼 。 unsigned char Input_C[]=發(fā)送至: 。 Disp_HZ(0x80,Set_C,8)。 29 Disp_HZ(0x90,Input_C,4)。 while(1) { Key_Event()。 //鍵盤掃描 if(key_val==1||key_val==2||key_val==3||key_val==4)break。 //功能鍵退出 TNum[i+2]=Key_Data() //獲取輸入字符 Write_Cmd(j+0x89)。 Write_Data(TNum[i+2]) //顯示輸入字符 i++。 } TNum[13]=39。F39。 //號碼末位補(bǔ) “F” for(i=0。i14。i++)ToNum[i]=TNum[i]。 } void Disp_OK() //設(shè)置保存至 SIM 卡 { unsigned char Sms_Code[]。 switch(Sms_n) { case 1:Sms_Code[]=00419632533A62A58B66。//Unicode 碼 “A防區(qū)報(bào)警 ” case 2:Sms_Code[]=00429632533A62A58B66。//Unicode 碼 “B防區(qū)報(bào)警 ” case 3:Sms_Code[]=00439632533A62A58B66。//Unicode 碼 “C防區(qū)報(bào)警 ” case 4:Sms_Code[]=00449632533A62A58B66。//Unicode 碼 “D防區(qū)報(bào)警 ” } Save_SMS(Sms_Code)。 //保存設(shè)置 } void menu() //菜單實(shí)現(xiàn)函數(shù) { switch(key_val) { case 1://Enter State_val=Key_Tab[State_val].KeyStateEnter。 break。 case 2://Back State_val=Key_Tab[State_val].KeyStateReset 30 break。 case 3://Next State_val=Key_Tab[State_val].KeyStateBack。 break。 case 4://Quit State_val=Key_Tab[State_val].KeyStateQuit。 break。 case 8://Next State_val=Key_Tab[State_val].KeyStateUp。 break。 case 4://Quit State_val=Key_Tab[State_val].KeyStateDown。 default:break。 } Key_Tab[State_val].CurrentOperate()。 key_val=0。 } endif /***********************************文件: **********************************/ /***********************************文件: **********************************/ ifndef _TC35_H_ define _TC35_H_ include //調(diào)用 LCD12864 顯示 include //調(diào)用單片機(jī)串行通信口 unsigned char AT[]=AT。 //AT 指令定義 unsigned char PDU[]=AT+CMGF=0。 //模式設(shè)置 unsigned char SEND[]=AT+CMGS=。 //短信發(fā)送 unsigned char SAVE[]=AT+CMGW=。 //短信編輯保存至 SIM unsigned char SDFSAVE[]=AT+CMGW=。 //從 SIM 卡發(fā)送消息 unsigned char Set_Cen[]=AT+CSCA=。 //設(shè)置中心號碼 unsigned char Center_Code[]=0011000D91。 //PDU 模式短信編碼 unsigned char To_Code[]=31000D91。 unsigned char Other_Code[]=000800。 31 unsig
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1