




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
畢業設計說明書智能家居安保系統設計摘要第3章設計方案3.1、系統框圖設計按照設計思路可分為:STM32F103RB核心部分(主芯片STM32F103RB、電源電路等)、LCD驅動部分、GSM模塊、傳感器模塊等部分。系統框圖如圖3.1LCD、觸摸屏STM32F103RBLCD顯示手機接收端GSM模塊LCD、觸摸屏STM32F103RBLCD顯示手機接收端GSM模塊觸摸屏感知觸摸屏感知電源電源信號源信號源電源傳感器電源傳感器圖3.1本設計系統框圖 由傳感器檢測煤氣含量超標信號和紅外信號,然后將檢測到的信號發給STM32F103RB,芯片檢測得到的是什么信號,根據信號的不同選擇發送不同的短信給指定手機。手機號碼可以通過觸摸屏來進行修改。[15]STM32F103RB:在系統中處于核心地位,它將LCD、觸摸屏、傳感器、GSM模塊等連接起來,實現要實現的功能。傳感器:我在本設計里使用了兩個傳感器,如果需要還可以添加別的傳感器。這兩個傳感器是,紅外對管、煙霧傳感器。紅外對管在平時輸出高電平,當有東西擋著紅外線的傳輸,接收器接收不到信號時,輸出低電平??梢杂脕頇z測是否有小偷。煙霧傳感器,平時輸出高電平,當空氣中煙霧、可燃氣體達到一定濃度時,輸出低電平,可以檢測是否發生火災和煤氣泄漏。GSM模塊:GSM模塊在本設計中起的作用是發短信。當單片機收到傳感器傳進來的低電平后,判斷是哪個傳感器傳進來的,然后通過串口發出不同的內容給GSM模塊,GSM根據發來的信息,將短信發往特定的手機。LCD、觸摸屏:LCD、觸摸屏在系統中處于輔助地位,但是它不可或缺。一個產品發報警短信不可能都發給同一個人,如果主人換了手機卡怎么辦?這時候LCD、觸摸屏就要發揮他的作用了。我們可以通過觸摸屏來修改發送目標的手機號碼,這樣當主人換手機卡后,就可以自己修改要發送的短信到自己手機。當修改完手機號后,新手機號會被存儲在EEPROM里以便下次發短信時讀取。電源:開發板上的電源是由芯片AMS1117-3.3V產生的,它將USB的5V電壓轉化為3.3V電壓供開發板使用。GSM模塊的12V電源和傳感器的5V電源是由獨立電源提供。3.2、傳感器的選擇目前,用于家庭防盜的傳感器主要是兩種方案,紅外線與聲音傳感器。于是便分別對這兩種方案進行對比。方案一、聲音傳感器聲音傳感器是用來接收聲波,聲振動圖像顯示設備,其作用就像一個麥克風(話筒)的方法,但你不能測量噪聲的強度。傳感器包含一個聲音敏感的駐極體電容式麥克風。使得內膜駐極體麥克風的聲振動,從而導致電容的變化,其產生在電壓相應小一點的變化。方案二、紅外對管紅外對管由紅外發射管和光敏接收管,或紅外線接收管組成,或者用一般一起使用的紅外接收器。由紅外線發光二極管的光發射器的時刻組成紅外線發射,在PN結形成的具有高效率的紅外輻射材料(常用的GaAs),PN結的正向偏置注入電流激發紅外光,光譜功率分布中心波長830?950nm。LED發光二極管的英文縮寫,性能的正溫度系數,更大的電流溫度越高,溫度越高的電流就越大,LED紅外光的功率的電流的大小,但是當正向電流超過最大額定值,紅外光發射功率下降。紅外線接收管是具有感光屬于光電二極管,一個單向導電性PN結的特性,因此,需要與反向電壓一起工作。當沒有紅外輻射,有一個小的反向漏飽和電流(暗電流)。此時,光電二極管不導通。當光飽和立即反向漏電流增加時,光電流的形成,在一定范圍內隨入射光強度的增加內。綜合兩種方案,方案一使用聲音傳感器,方案二使用紅外對管。聲音傳感器接受范圍廣,但是它容易出現錯誤判斷,比如當外面汽車鳴笛,窗戶沒有關,聲音會很響,就有可能觸發聲音傳感器,造成錯誤。紅外對管,測定一條直線上是否有遮擋物,簡單易懂方便操作,不易產生誤操作。所以選擇方案二,紅外對管。3.3、本章小結本章介紹了設計總體框圖,用框圖的形式將設計劃分了STM32F103RB核心部分、GSM部分、LCD部分等模塊。接著,著重介紹傳感器的方案選擇,并且描述了紅外對管、聲音傳感器的對比和應用原理,辯證得出選用紅外對管更加適用于本設計。廣東石油化工學院本科畢業(設計)論文:智能家居安保系統設計第4章系統軟硬件設計第4章系統的軟硬件設計4.1、系統程序設計流程圖及主要程序采用STM32F103RB單片機為核心和使用任意手機作為短信接收端,實現有異常情況時的短信報警功能。首先單片機進行初始化,包括單片機每個端口,每個變量的初始化以及LCD模塊的初始化。由傳感器檢測煤氣含量超標信號和紅外信號,然后將檢測到的信號發給STM32F103RB,芯片檢測得到的是什么信號,根據信號的不同啟用不同的子程序選擇發送不同的短信給指定手機號。手機號碼可以通過觸摸屏來進行修改。下面圖4.1是主程序設計流程圖[16]。圖4.1系統主程序流程圖系統主循環函數見附錄:根據系統主程序流程圖,軟件部分可以分為三部分,分別是初始化、LCD顯示及手機號碼修改函數、短信報警函數。各部分的程序分別是:4.1.1、系統初始化函數systick_init();//系統嘀嗒定時器初始化 usart1_init(72000000,115200);//串口初始化時鐘72M模特率115200 SPI_Flash_Init();//W25X40初始化 LCD_Init();//LCD初始化 LCD_LED=0;//lcd背光1亮0滅 key_init();//按鍵初始化 led_init();//LED初始化 IIC_Init();//24C02初始化 Init_Touch();//觸摸屏初始化 gpio_Init();//傳感器使用引腳初始化由初始化函數我們可以看出在本系統中我使用了系統嘀嗒定時器,串口1,flashW25X40,LCD屏,觸摸屏,按鍵,LED燈,EEPROM24C02,傳感器。系統嘀嗒定時器是用來做延時函數用的,delay_s();delay_ms();delay_us();都是使用系統嘀嗒定時器。flashW25X40是用來存儲字庫的,在LCD上顯示的字母、漢字都存在W25X40里。LCD屏用來顯示。觸摸屏用來輸入手機號碼和密碼。按鍵用來選擇模式。LED燈用來指示狀態。EEPROM24C02用來儲存觸摸屏校準數據、密碼、手機號碼。傳感器用來檢測有無異常。4.1.2、LCD顯示及手機號碼修改函數由于本函數太長在這里只顯示修改手機號碼的函數,具體函數見附錄。按下KEY0按鍵LCD屏會亮起來,按下LCD屏上的“修改號碼”可以進入本函數,由函數可知道,首先要輸入密碼,輸入密碼后,當按下“確認”按鈕,比較輸入密碼和EEPROM里存的密碼,如果一樣就可以修改手機號碼,否則要重新輸入。輸入手機號碼后,當按下“確認”按鈕,如果號碼長度是11位就把他保存到EEPROM里,否則重新輸入。當手機號碼保存成功,LCD顯示屏會自動暗下來[17]。4.1.3、短信報警函數函數內容見附錄,首先處理要發送的信息(從EEPROM里讀取手機號碼,替換短信內容中的手機號碼),然后發送"AT+CMGF=0\r\n",設置GSM發短信模式為PDU模式;然后發送"AT+CMGS=39\r\n"設置要發短信的長度(其中39是短信的長度,根據自己需要改變);然后發送要發送的短信內容;最后發送Ctrl+Z\r\n(ASCII中的26)結束發送。4.2、STM32F103RB開發板系統本設計中的設計的核心芯片是STM32F103RB單片機,接線方法如圖4.2所示。圖4.2STM32F103RB芯片接線圖由圖中可以看出芯片的接線方法PA:0重啟按鍵;1、2LED燈;4-7flash的SPI接口;9、10串口;13-15JLINK接口PB:0-15LCD數據接口;8、9EEPROM的IIC接口PC:2、3按鍵;5LCD背光;6觸摸屏筆中斷;7觸摸屏片選;9LCD讀數據;10LCD寫數據;11LCD數據/命令;PD2:LCD片選端口4.2.1、電源AMS1117-3.3是一個正向低壓降穩壓管,在輸出電流為1A時壓降為1.2V。它的固定電壓3.3V輸出電流為 1A線路調整率:0.2%(最大)負載調整率:0.4%(最大),內含靜態電流限制、過熱保護芯片的接線方法如圖4.3所示。 圖4.3電源芯片接線圖輸入端輸入USB電壓(5V),輸出電壓為3.3V。為單片機、LCD等芯片模塊供電。圖中電容C201、C202為輸入穩定電容,作用是減小紋波、消振、抑制高頻和脈沖干擾。電容C203、C204為輸出穩定電容,作用是改善負載的瞬態響應。4.2.2、觸摸屏模塊圖4.4XPT2046原理圖XPT2046是四線電阻式觸摸屏控制芯片,深圳市矽普特科技有限公司研發的阻觸摸屏控制芯片,它被廣泛應用于觸摸屏驅動。在XPT204611引腳對引腳單片機的中斷引腳,觸摸屏不是觸摸時,11引腳高舉,當觸摸屏被觸摸時,11引腳變為低電平。因此11針單片機檢測到高有低,你可以知道有沒有觸摸屏的觸摸事件發生。如果觸摸屏被按壓事件發生時,通過SPI端口的微控制器,它首先發送一個讀命令X坐標0×90,則讀出的兩字節的數據,然后發送命令讀取Y坐標0XD0,然后讀出2字節的數據。此時,XY坐標值就知道了,因為XPT2046是12位精度的ADC,所以讀取兩個字節,只有高12有效數據。[18]XPT2046的接線原理圖如圖4.4所示,其中的2,3,4,5腳名稱為XP,YP,XN,YN。P是Positive的縮寫,“正”的意思;n為Negative的縮寫,“負”的意思。所以有時候,你會看到被寫為X+,Y+,X-,Y-的引腳名稱。這四個引腳被連接到觸摸屏四個引腳。XPT2046與單片機的SPI連接。分別為引腳16:SPI_CLK(SPI時鐘引腳);引腳15:SPI_CS(使能引腳或稱為片選);引腳14:SPI_MOSI(數據輸入引腳);引腳12:SPI_MISO(數據輸出引腳)。接好后就可以了。4.2.3、EEPROMAT24C02模塊 圖4.5AT24C02原理圖AT24C02
是
2k數字串行CMOS
EEPROM
,內部包含
256*8
個字節,因為使用了先進
CMOS技術大大降低了功耗。AT24C02
有一個
8個字節的頁寫入緩沖區。操作通過
IIC
總線接口設備,還有一種特殊寫保護狀態。IIC總線是一種串行總線由費利浦推出,可以使用在有多個主機的系統中,而且包含有高低速同步功能和總線仲裁設備兩種功能的高性能串行總線。如圖4.5所示只有兩個雙向的
IIC
總線信號線。一根是數據線SDA,即是引腳5,另一根是時鐘線SCL,即是引腳6。IIC總線必須連接到正電源使用上拉電阻。當總線空閑時,兩條線都是高電平。接到BUS上的任何設備輸出低電平總線上,BUS的信號都會變低,即每個器件的SDA和SCL的關系是“與”。實驗取RP=100K,比電阻根據所需信號的陡度,通常是在電阻較小的時候,上升沿的崛起越陡IIC總線的數據傳送[19]數據位的有效性規定:IIC總線進行數據傳送的時候,在時鐘信號為高電平的期間,數據線上的數據必須保持穩定,只有在時鐘線上的電平為低電平期間,數據線上的高電平或低電平狀態才允許變化,如圖4.6所示。 圖4.6I2C有效數據位起始和終止信號:在SCL線為高電平的期間,SDA線由高電平到低電平的變化(即下降沿)表示起始信號;在SCL線為高電平期間,SDA線由低電平到高電平的變化(即上升沿)表示終止信號,如圖4.7所示。圖4.7I2C起始與終止信號數據傳送格式:字節傳送與應答:每一個字節必須保證是8位長度。數據傳送時,先傳送最高位(MSB),每一個被傳送的字節后面都必須跟隨一位應答位(即一幀共有9位),如圖4.8所示。圖4.8I2C字節傳送與應答在總線的一次數據傳送過程中,可以有以下幾種組合方式:a、主機向從機發送數據,數據傳送方向在整個傳送過程中不變,如圖4.9所示。圖4.9主機寫方式注:有陰影部分表示數據由主機向從機傳送,無陰影部分則表示數據由從機向主機傳送。A表示應答,A非表示非應答(高電平)。S表示起始信號,P表示終止信號。b、主機在第一個字節后,立即從從機讀數據,如圖4.10所示。圖4.10主機讀方式c、在傳送過程中,當需要改變傳送方向時,起始信號和從機地址都被重復產生一次,但兩次讀/寫方向位正好反相,如圖4.11所示。圖4.11主機讀寫混合方式4.2.4、FLASHW25X40模塊 圖4.12W25X40原理圖引腳FLASH_CS是使能和禁用芯片W25X40的操作位。當FLASH_CS位輸入高電平時,芯片被禁用,SPI1_MISO引腳為高阻抗,此時,如果器件內沒有正在擦除、編程或處于狀態周期進程,在此期間芯片將處于待機狀態。當FLASH_CS位為低電平時,使能芯片,此時功耗增加到激活水平,這時就可以進行芯片的讀寫了。上電后,執行一條新指令之前必須使FLASH_CS引腳先產生一個下降沿。W25X40連接方法如圖4.12所示,SPI1_CLK是時鐘引腳,為輸入輸出提供時序。SPI1_MISO是數據輸出引腳,在SPI1_CLK下降沿時輸出數據。SPI1_MOSI是數據輸入引腳,SPI1_CLK上升沿時采集數據,數據、地址和命令通過本引腳進入芯片內部[20]。W25X40訪問通過SPI兼容總線組成的四路信號:串行時鐘,芯片選擇(FLASH_CS),串行數據輸入(SPI1_MOSI)和串行數據輸出(SPI1_MISO)。支持兩個SPI總線操作模式0(0,0)和3(1,1)。模式0和模式3的主要區別是當SPI主機SPI接口處于空閑狀態時,SPI1_CLK是高電平還是低電平,當SPI總線主控處于待機狀態和數據不會被傳輸到串行閃存。SPI1_CLK信號為低在模式0,模式3的時鐘信號是高。兩種模式都是在下降沿時輸出數據,上升沿時輸入數據。下面對芯片的幾個常用命令的使用進行說明講解。寫使能的指令是向狀態寄存器WEL位寫1。WEL位必須在每個頁面程序、扇區擦除塊擦除,芯片擦除、寫狀態寄存器之前設置。寫啟用由駕駛/CS低,輸入指令轉移指令碼"06h"到數據輸入(DI)引腳上的時鐘,然后駕駛/CS
高的上升沿,如圖4.13所示。圖4.13SPI寫使能寫禁止指令復位寫使能在狀態鎖存器(WEL)位為0。寫入禁止指令前/CS被拉低,轉移指令代碼“04H”到DIO腳,然后進入駕駛/CS高。請注意,WEL位后,上電和寫狀態寄存器,頁編程,扇區擦除,塊擦除和芯片擦除指令完成后自動復位,如圖4.14。圖4.14SPI寫禁止讀數據指令允許一個或多個數據字節被順序地從存儲器中讀出。該指令先寫/CS引腳為低電平,然后發送指令代碼“03H”接著是24位地址(A23-A0)到DIO引腳啟動。代碼和地址位被鎖止在CLK引腳的上升沿。在接收到地址后,尋址的存儲單元的數據字節將被移出DO引腳在CLK的下降沿,高位在前。當讀到這個數據的地址時自動遞增到下一個更高的地址數據的每個字節之后被移出允許連續的數據流。這意味著整個存儲器可以用一條指令,只要時鐘繼續進行訪問。/CS拉高讀數據完成。讀數據的指令序列示于下圖。如果讀數據指令被發出時的擦除,編程或寫周期是在過程(BUSY=1)的指令被忽略,不會對在當前周期中的任何影響,見圖4.15。該塊擦除指令集內的指定塊(64K字節)所有內存為全1(FFH)的擦除狀態。允許寫入指令必須執行之前的設備將接受塊擦除指令(狀態寄存器WEL位必須等于1)。該指令先把/CS引腳拉低,轉移指令代碼發起的“D8H”跟著一個24位塊地址(A23-A0)(見圖4.16)。該塊擦除指令序列如下圖所示的/CS引腳必須在最后一個字節的第八位之后拉高。如果不這樣做,塊擦除指令不被執行。塊擦除周期正在進行中,在讀狀態寄存器指令仍可以訪問的檢查忙位的狀態。塊擦除周期中1,當循環完成了BUSY位是0,設備已準備好再次接受其他指令。經過塊擦除周期已經完成了寫使能狀態寄存器清零。圖4.15SPI讀數據圖4.16SPI塊擦除4.3、本章小結本章是智能家居控制系統的設計部分。首先介紹了系統總體程序設計流程圖以及部分程序,接著介紹由STM32F103RB單片機和電源芯片AMS1117-3.3,LCD屏組成的系統核心板模塊以及系統設計原理圖的連線圖。然后,講解了AT24C02工作需要的IIC時序和W25X40工作需要的SPI時序。附錄第5章系統軟硬件實現5.1、硬件電路硬件電路主要由三大部分組成:STM32F103RB單片機開發板、GSM模塊、傳感器部分。STM32F103RB單片機開發板原理圖如圖4.2~4.5,4.12和5.1~5.3,GSM模塊設計原理圖如圖5.10,傳感器模塊電路原理圖如圖5.8~5.9。根據原理圖分別導出PCB如圖5.11、圖5.12圖5.1開發板LCD原理圖結合圖5.1和圖4.2可以看出LCD的數據接口DB是STM32F103RB的PB0~15。LCD_CS是PD2,LCD_RS是PC12,LCD_WR是PC11,LCD_RD是PC10,背光BL是PC5。圖5.2開發板調試接口、串口接口原理圖結合圖5.2和圖4.2可以看出JTAG連接在控制芯片的PA13~PA15和PB3,PB4。串口USART連接在PA9和PA10上。因為JTAG的JTDO和JTRST引腳和LCD共用,所以使用JTAG時不能使用LCD,使用LCD時不能使用JTAG。圖5.3開發板發光二極管、按鍵原理圖結合圖5.3和圖4.2可以看出D503是電源指示燈,S502是重啟按鍵,LED0接在PA1,LED1接在PA2,KEY0接在PC2,KEY1接在PC3。 圖5.4GSM模塊原理圖GSM模塊通過串口和STM32F103RB相連,當需要數據傳輸時,STM32F103RB使用串口控制GSM模塊。注意:STM32開發板和GSM模塊共地。圖5.11開發板PCB圖圖5.12GSM模塊PCB圖5.2、系統測試系統測試分為兩個步驟,元件單獨檢測和系統整體測試。元件單獨檢測,包括電路板制作完成后,通電調試前認真檢查電路連線是否有誤。檢查時邊對照原理圖邊按照電路板上模塊順序逐級對應檢查。特別注意電源是否接錯,電源與地是否有短接,元件焊接是否焊接錯,是不是有短路和斷路現象。用萬用表檢查各借口處、元件焊接處是否有虛焊的情況。給系統上電后,看下電源指示燈亮不亮。假如不亮,就要檢查電源指示燈發光二極管的好壞。還要檢查各路供電是否正常。用萬用表檢測各個電路間、器件的電壓是否輸出預期電壓。系統整體測試是在STM32D103RB開發板、GSM模塊、傳感器各個部分完成相應功能后進行的整合。以便考慮到各部分工作協調性和兼容性。首先給各個模塊供電,將紅外對管輸出端接到開發板的PC8引腳,將煙霧傳感器輸出端接到PC9引腳,GSM模塊接到串口上,需要注意的是:傳感器、開發板和GSM模塊一定要共地。檢查了單片機與各模塊之間的連接,以及電機驅動與電機的連接都沒有出錯的情況下,檢查供電是否正常,打開給各個模塊提供的電源以及打開給傳感器提供的另一個5V電源。檢查了各個模塊的電路板沒有問題以后,便可以開始進行安防系統的組裝。圖5.13ST32F103RB開發板正面圖5.14STM32F103RB開發板反面圖5.15GSM模塊正面圖5.16GSM模塊反面圖5.17紅外對管煙霧傳感器正面 煙霧傳感器反面圖5.18連接好后圖片圖5.13~圖5.17是各個模塊的展示,圖5.18是各個模塊連接好后的效果圖。在GSM模塊上裝上茂名移動的SIM卡,打開開發板、GSM模塊、傳感器電源,長按GSM開機鍵三秒鐘,當指示燈閃爍,說明開機成功,這時就可以發短信了。煙霧傳感器需要預熱二十秒,二十秒后就可以正常工作了,這時按下KEY1打開防盜報警開關,再按一下是關閉。打開防盜報警開關,這時如果有東西在紅外對管之間,擋住了紅外對管的傳輸,就會向設定好的手機,發送“主人,家里來小偷了!!!”的報警信息,向設定好的小區保安手機發送“888棟666號住戶,家里進小偷了?。?!”的報警信息。如果檢測到煙霧傳感器發來的煙霧超標信號,就會向設定好的手機,發送“主人,家里煤氣泄漏了?。?!”的報警信息,向設定好的小區保安手機發送“888棟666號住戶,家里煤氣泄漏了?。。 钡膱缶畔?。本系統可以修改要發報警短信的目標的手機號碼,只有在沒有報警信息或發送報警信息后一分鐘且沒有新的報警信息時,才可以修改手機號碼。修改手機號碼時,首先按下按鍵KEY0,進入修改密碼、手機號碼模式。按下KEY0,LCD屏會亮起來并顯示按鍵盤,可以選擇修改密碼還是修改手機號碼。修改密碼,需要先輸入舊密碼,再輸入新密碼,且密碼必須是六位的。修改手機號碼,需要先輸入密碼,再輸入手機號碼,手機號碼必須是11位才會保存。不管是修改密碼還是修改手機號碼,修改完成保存后,LCD屏都會在1秒后變暗。這時已經開始檢測是否有煤氣泄漏,如果防盜報警已打開,也會檢測是否有小偷出現。5.3、測試結果圖5.19用戶接收到的短信保安接收到的短信系統連接好后,通電預熱傳感器20秒,將打火機對著煙霧傳感器放氣,這時煙霧傳感器丁烷超標,信號輸出端會輸出低電平,開發板檢測到這個低電平,就會發送短信“主人,家里煤氣泄漏了?。。 保蛟O定好的小區保安手機發送“888棟666號住戶,家里煤氣泄漏了?。。 ?。然后按下按鍵KEY0,這時防盜報警被打開,LED0會亮起來,這時當紅外對管中間有東西擋住時,即接收管接收不到發射管發射的紅外線時,黃色數據輸出端會輸出低電平,當開發板檢測到這個低電平,會發送第二條短信“主人,家里來小偷了!!!”,向設定好的小區保安手機發送“888棟666號住戶,家里進小偷了?。?!”的報警信息,如圖5.19所示。5.4、本章小結本章主要介紹了由STM32F103RB單片機開發板、GSM模塊、傳感器模塊組成的系統完成后硬件電路板包括原理圖和PCB圖。接著闡述從硬件到軟件的測試,以確保硬件電路和焊接無誤以及硬件模塊之間相互兼容、軟件正常使用。并且介紹了硬件的連接方法。最后,闡述了短信報警的過程和修改密碼、手機號碼的過程。附錄系統主循環函數:while(1) { charflag=0; inti=0; if(key_00())//按鍵0,按鍵按下為1,松開即為0 { LCD_LED=1;//lcd背光1亮0滅 Drow_LCDKey(); change_password();//修改密碼和手機號碼 LCD_LED=0;//lcd背光1亮0滅 } if(key_1())//按鍵1,按一下為1,再按一下為0 { led0_on();//開啟防盜報警標志 if(!(GPIOC->IDR&(1<<8)))//PC8紅外對管觸發時為低電平 { delay_ms(5);//去抖動 if(!(GPIOC->IDR&(1<<8)))//PC8紅外對管觸發時為低電平 { led1_on(); //當有小偷時,LED1亮 flag=send_chinese_sms1(); for(i=0;i<60;i++) //延時60秒 { delay_s(1); } } else { led1_off(); //當沒有小偷時,LED1滅 } } } else { led0_off(); } if(!(GPIOC->IDR&(1<<9)))//PC9煙霧傳感器觸發時為低電平 { delay_ms(5);//去抖動 if(!(GPIOC->IDR&(1<<9)))//PC9煙霧傳感器觸發時為低電平 { send_chinese_sms2(); //發短信 for(i=0;i<60;i++) //延時60s {delay_s(1);} } } }LCD顯示及手機號碼修改函數charFlag=0;//是否已經輸入舊號碼1已輸入u8lcdkey=0xff;u16xpos=0,ypos=0;u8databuff[20]={'\0'};u8strresult;u8oldkeyword[20]={'\0'};AT24CXX_Read(190,oldkeyword,6);while(1){ if(!(GPIOC->IDR&(1<<6)))//確保你按下觸摸屏 { GetXPT2046_AdjustXorY(&xpos,&ypos); lcdkey=Touch_LCDKey(xpos,ypos); Get_LCDKeyVal(lcdkey,databuff); LCD_ShowKeyWord((240-8)/2,50,databuff,0,0xffff); if(keywordcnt>12) { keywordcnt=0; memset(databuff,'\0',20);//清空計數已填寫號碼 LCDShow_Font(0,27,"長度過長,請重新輸入:",0,0xffff); Clear_Rectangle(37,44,203,74,0xffff); } if(lcdkey=='*') { if(Flag==1) { if(keywordcnt==11) { LCDShow_Font(0,25,"保存號碼成功??!",
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專門代寫管理制度
- 專項考核管理制度
- 丙類倉庫管理制度
- 業主動態管理制度
- 業務球隊管理制度
- 兩外安全管理制度
- 兩金專項管理制度
- 個人簽章管理制度
- 中醫藥設備管理制度
- 中國利率管理制度
- GB/T 8923.2-2008涂覆涂料前鋼材表面處理表面清潔度的目視評定第2部分:已涂覆過的鋼材表面局部清除原有涂層后的處理等級
- 思想道德與法律修養案例
- 核輻射物理學基礎知識課件
- 陶瓷裝飾基礎模擬題參考答案 中國地質大學
- 分詞作定語的用法課件
- 中小企業管理成長診斷課件
- 《學術英語(綜合)》課后答案
- 計算材料學:第一性原理計算及其應用課件
- 部編一年級《咕咚》課本劇
- 天津市新版就業、勞動合同登記名冊
- 水電工程投標文件(技術標書)
評論
0/150
提交評論