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

正文內(nèi)容

基于gsm的家庭安全系統(tǒng)設(shè)計(jì)畢業(yè)論文-資料下載頁

2025-06-24 17:14本頁面
  

【正文】 ,當(dāng)mon=0時(shí)向液晶屏寫入命令,當(dāng)mon=1時(shí)為向液晶屏寫入數(shù)據(jù)。Dat為向液晶屏寫入的數(shù)據(jù)。void LCD_write_byte(unsigned char dat, unsigned char mand) { unsigned char i。 LCD_CE = 0。//choose chip if (mand==0) LCD_DC=0。 //write mand Else LCD_DC=1。 //write data for(i=0。i8。i++) { if(datamp。0x80) LCD_DIN=1。 else LCD_DIN=0。 LCD_CLK = 0。 dat = dat 1。 LCD_CLK = 1。 } LCD_CE = 1。} LPH7366 液晶的初始化接通電源后,內(nèi)部寄存器和RAM的內(nèi)容是不確定的,這需要一個(gè)RES低電平脈沖復(fù)位一下。當(dāng)VDD變?yōu)楦唠娖?,達(dá)到VDDmin(或更高)之后,最多100ms,RST輸入低電平(電平幅度)。圖412復(fù)位時(shí)序根據(jù)復(fù)位時(shí)序要求編寫的復(fù)位程序如下:void LCD_init( ){ LCD_RST = 0。// 產(chǎn)生一個(gè)讓LCD復(fù)位的低電平脈沖 delay_1us()。 LCD_RST = 1。 LCD_CE = 1。 delay_1us()。// 關(guān)閉LCD LCD_CE = 0。// 使能LCD delay_1us()。 LCD_write_byte(0x21, 0)。 // 使用擴(kuò)展命令設(shè)置LCD模式 LCD_write_byte(0xb5, 0)。 // 設(shè)置偏置電壓 LCD_write_byte(0x06, 0)。 // 溫度校正 LCD_write_byte(0x13, 0)。 // 1:48 LCD_write_byte(0x20, 0)。 // 使用基本命令 LCD_clear()。 // 清屏 LCD_write_byte(0x0c, 0)。 // 設(shè)定顯示模式,正常顯示 LCD_CE = 1。// 關(guān)閉LCD } 設(shè)置LPH7366液晶的坐標(biāo)LPH7366 (PCD8544)的命令集:表格45 Nokia5110(PCD8544)的命令集指令D/C命令字描述DB7DB6DB5DB4DB3DB2DB1DB0(H=0or1)000000000空操作功能設(shè)置000100PDVH掉電控制寫數(shù)據(jù)1D7D6D5D4D3D2D1D0寫數(shù)據(jù)H=0保留0000001XX不可使用顯示控制000001D0E設(shè)置顯示配置保留00001XXXX不可使用設(shè)置Y地址001000Y2Y1Y00=Y=5設(shè)置X地址01X6X5X4X3X2X1X00=X=83H=1保留000000001不可使用00000001X不可使用溫度控制0000000TC1TC0設(shè)置溫度系數(shù)保留000001XXX不可使用偏置系統(tǒng)000010BS2BS1BS0設(shè)置偏置系統(tǒng)保留001XXXXXX不可使用設(shè)置Vop01Vo6Vo5Vo4Vo3Vo2Vo1Vo0寫Vop到寄存器格式和尋址:圖413格式和尋址48*84點(diǎn)陣的格式如上圖,數(shù)據(jù)以字節(jié)8bit為單位下載到PCD8544的48*84bit顯示數(shù)據(jù)AM矩陣。列通過地址指針尋址,地址范圍為X 0~83(1010011),Y 0~5(101)。地址不允許超過這個(gè)范圍。圖414垂直尋址方式在垂直尋址(V=1),Y地址在每個(gè)字節(jié)之后遞增,經(jīng)最后的Y地址(Y=5)之后,Y繞回0,X遞增到下一列的地址。圖415水平尋址方式 在水平尋址模式(V=0),X地址在每個(gè)字節(jié)之后遞增,經(jīng)最后的X地址(X=83)之后,X繞回0,Y遞增到下一行的地址。經(jīng)每一個(gè)最后地址之后(X=83,Y=5),地址指針繞回地址(X=0,Y=0)。要向5110寫入數(shù)據(jù)時(shí)必須先設(shè)置寫入數(shù)據(jù)的地址即X,Y坐標(biāo),以下是設(shè)置坐表的函數(shù),void LCD_set_XY(unsigned char X, unsigned char Y) { LCD_write_byte(0x40 | Y, 0)。 // column LCD_write_byte(0x80 | X, 0)。 // row } 顯示英文字符英文字符占用6*8個(gè)點(diǎn)陣,通過建立一個(gè)ASCII的數(shù)組font6x8[][6](見附件B)來尋址。以下分別是顯示一個(gè)英文與顯示英文字符串的程序。寫一個(gè)字符程序:void LCD_write_char(unsigned char c) { unsigned char line。 c = 32。 for (line=0。 line6。 line++) LCD_write_byte(font6x8[c][line], 1)。 }寫英文字符串程序:void LCD_write_english_string(unsigned char X,unsigned char Y,char *s) { LCD_set_XY(X,Y)。 while (*s) { LCD_write_char(*s)。s++。 } 密碼撤防軟件設(shè)計(jì) 在本系統(tǒng)中,密碼撤防軟件的實(shí)現(xiàn)是通過比較輸入密碼值和實(shí)際密碼值是否一樣來運(yùn)行的,其流程圖如圖412所示。當(dāng)系統(tǒng)收到撤防信號(hào)時(shí)要求用戶輸入密碼,如果密碼正確,則系統(tǒng)撤防并進(jìn)行下一步操作。如果密碼錯(cuò)誤則要從新輸入密碼,直到密碼輸入正確為止。每輸錯(cuò)一次密碼,錯(cuò)誤次數(shù)記錄變量tims就會(huì)加1,.一旦tims增加到3,則調(diào)用GSM程序發(fā)短信。圖416密碼撤防軟件流程圖 設(shè)置密碼及戶主電話號(hào)碼的軟件設(shè)計(jì)為提高本系統(tǒng)的安全可靠性,本系統(tǒng)具備有用戶可以更該撤防密碼的功能,其程序流程圖如圖413所示。當(dāng)系統(tǒng)收到密碼設(shè)置請(qǐng)求時(shí),要求用戶輸入其想要六位數(shù)的密碼,當(dāng)系統(tǒng)收到確認(rèn)信息時(shí),將用戶設(shè)置的六位密碼存入單片機(jī)的EEPROM中。圖417設(shè)置密碼程序流程圖程序代碼如下: void set_password() { static unsigned char idata password[]=000000。 unsigned char set_num。 unsigned char i=0。 while(1) { LCD_write_english_string(2,1,set password:)。 LCD_write_english_string(4,3,password)。 set_num=Ir_information()。 if(set_num=9) { switch (i) { case 0: password[0]=set_num+48。i++。 break。 case 1: password[1]=set_num+48。i++。 break。 case 2: password[2]=set_num+48。i++。 break。 case 3: password[3]=set_num+48。i++。 break。 case 4: password[4]=set_num+48。i++。 break。 case 5: password[5]=set_num+48。i=0。 break。 } } if(set_num==14) { SectorErase(0x2400)。 write_rom(0x2400,password,6)。 break。 } } } 由于戶主的手機(jī)號(hào)碼是會(huì)時(shí)常更改,為了實(shí)現(xiàn)戶主的手機(jī)號(hào)碼更改后仍能使用該系統(tǒng),本系統(tǒng)具備有更改戶主電話號(hào)碼的功能,其程序流程圖如圖413所示,當(dāng)系統(tǒng)收到設(shè)置電話號(hào)碼的請(qǐng)求請(qǐng)求時(shí),要求用戶輸入其想要11位數(shù)的手機(jī)電話號(hào)碼,當(dāng)系統(tǒng)收到確認(rèn)信息時(shí),將用戶設(shè)置的11位電話號(hào)碼存入單片機(jī)的EEPROM中。圖418設(shè)置電話號(hào)碼程序流程圖程序代碼如下:void set_tellnum() { static unsigned char tell_num[]=。 unsigned char set_num。 unsigned char i=0。 while(1) { LCD_write_english_string(4,1,set phone:)。 LCD_write_english_string(4,3,tell_num)。 set_num=Ir_information()。 if(set_num=9) { switch (i) { case 0: tell_num[0]=set_num+48。i++。 break。 case 1: tell_num[1]=set_num+48。i++。 break。 case 2: tell_num[2]=set_num+48。i++。 break。 case 3: tell_num[3]=set_num+48。i++。 break。 case 4: tell_num[4]=set_num+48。i++。 break。 case 5: tell_num[5]=set_num+48。i++。 break。 case 6: tell_num[6] =set_num+48。i++。 break。 case 7: tell_num[7] =set_num+48。i++。 break。 case 8: tell_num[8] =set_num+48。i++。 break。 case 9: tell_num[9] =set_num+48。i++。 break。 case 10: tell_num[10] =set_num+48。i=0。break。 } }if (set_num==14) { SectorErase(0x2000)。 write_rom(0x2000,tell_num,11)。 break。 } } } 主程序設(shè)計(jì)主程序流程圖如圖所示圖419主程序流程圖主程序include include include include include include include unsigned char off_flag=0。unsigned char off=0。sbit fire=P1^6。sbit gas=P1^5。sbit thief=P1^7。unsigned char key。 void main() { unsigned int add1,add2。 unsigned char i,k。 unsigned char mima0[]=。 unsigned char mima1[]=。 unsigned char mima3[]= 。 unsigned char phone_num[]=AT+CMGS=\15225849851\\r\n。 add1=0x2000。 add2=0x2400。 LCD_init()。 LCD_clear()。 Ir_init()。 Serial_port_init()。 AT()。 k=0。 while(1) { key=Ir_information()。 if(key==10) { if(off_flag==0) { off_flag=1。 }else{off_flag=0。off=0。LCD_clear()。} } if(off_flag==1amp。amp。off==0) { LCD_write_english_string(4,3,password:)。 if(key=9) { mima0[k]=key+48。 mima3[k]=39。*39。 。 k++。
點(diǎn)擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1