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

正文內(nèi)容

單片機(jī)電子密碼鎖設(shè)計(jì)方案(留存版)

  

【正文】 N修改密碼?次數(shù)3?報(bào)警程序修改程序YNNY圖41主程序流程圖 按鍵軟件設(shè)計(jì)如圖42按鍵功能流程圖,在按鍵當(dāng)中,有與輸入、開(kāi)鎖、清除、設(shè)置、確認(rèn)的程序相對(duì)應(yīng)的按鍵,并按順序與輸入的數(shù)相比較,當(dāng)輸入正確時(shí),進(jìn)入密碼程序,錯(cuò)誤時(shí)進(jìn)行清除,輸入兩次新密碼正確時(shí),可進(jìn)行重新設(shè)置密碼,最后確認(rèn)程序。各程序模塊通過(guò)后,則可以把相關(guān)功能塊連在一起進(jìn)行總調(diào)。bit flag=0,aa。y0。 lcden=1。}void start(){ sda=1。}void ack(){ sda=0。 rd=1。 scl=1。 start()。i++) { if(!sendbyte(buffer[i])) return 0。 //掃描行線值 switch(temp) { case 1:keynum=1。 case 2:keynum+=2。 aa=Recstring(0xa0,1,buffer,6)。 } } Display_String(DSY_BUFFER1,0xc0)。 error++。 break。 init()。(Userpassword[k+1]==Mem[k])。 aa=Recstring(0xa0,1,buffer,6)。 break。 } if(error5) //如果錯(cuò)誤次數(shù)達(dá)到三次長(zhǎng)鳴報(bào)警,并清除顯示 while(1) {Display_String( ,0x80)。i200。 aa=Sendstring(0xa0,1,Mem,6)。 m++。k6。 delayms(1000)。 Display_String(table,0x80)。 IS_valid_user = 1。 for(n=0。 delayms(5)。 switch(temp) { case 8:keynum+=0。 }}uchar Keys_Scan(){ uchar temp,keynum。 if(!sendbyte(slave)) return 0。}uchar Recstring(uchar slave,uchar subaddr,uchar *buffer,uchar n){ uchar i。i++) { sda=(bit)(wdamp。 sda=1。}void init() //初始化{sda=1。 write_(0x01)。 rd=0。void delayms(uint z){ uint x,y。sbit scl=P3^3。 在此次課程設(shè)計(jì)中,首先是Proteus和Keil軟件使用的不熟練造成了一定的阻礙,經(jīng)過(guò)一段時(shí)間的使用和練習(xí)克服了該困難。電磁鎖的選用要視情況而定,但是吸合力要足夠且有一定的余量。只有按下鍵盤上的開(kāi)啟按鍵后,顯示器才處于開(kāi)啟狀態(tài)。在復(fù)位期間(即RST為高電平期間),P0口為高組態(tài),P1-P3口輸出高電平;外部程序存儲(chǔ)器讀選通信號(hào)PSEN無(wú)效。同時(shí)單片機(jī)方案有較大的活動(dòng)空間,不但能實(shí)現(xiàn)所要求的功能而且能在很大的程度上擴(kuò)展功能,而且還可以方便的對(duì)系統(tǒng)進(jìn)行升級(jí)。下面我將對(duì)這兩種方案的組成框圖和實(shí)現(xiàn)原理分進(jìn)行說(shuō)明。2)密碼可變。 設(shè)計(jì)目標(biāo) 設(shè)計(jì)并實(shí)現(xiàn)一個(gè)電子密碼鎖,滿足以下功能指標(biāo):1)密碼為8位;2)密碼可更改;3)連續(xù)3次密碼輸入錯(cuò)誤可報(bào)警;4)開(kāi)鎖由繼電器完成;5)繼電器需驅(qū)動(dòng)電路;6)使用鍵盤控制。密碼鎖電路包含:鍵盤輸入、密碼修改、密碼檢測(cè)、開(kāi)鎖電路、執(zhí)行電路、報(bào)警電路、鍵盤輸入次數(shù)鎖定電路。圖31 電源輸入電路原理圖 鍵盤輸入電路 由于本設(shè)計(jì)所用到的按鍵數(shù)量較多而不適合用獨(dú)立按鍵式鍵盤。當(dāng)復(fù)位按鍵按下后電容C1通過(guò)R5放電。其顯示部分引腳接口見(jiàn)圖36。開(kāi)始鍵值=‘輸入’?鍵值=‘開(kāi)鎖’?鍵值=‘清除’?鍵值=‘設(shè)置’?鍵值=‘確認(rèn)’?密碼輸入程序設(shè)置程序清除程序開(kāi)鎖程序確認(rèn)程序YYYYYNNNN返回N圖42 按鍵功能流程圖 密碼設(shè)置軟件設(shè)計(jì)如圖43為密碼設(shè)置流程圖,開(kāi)始按下設(shè)置鍵,輸入舊密碼,如果錯(cuò)誤累計(jì)三次,進(jìn)行報(bào)警程序。這個(gè)階段若有故障,可以考慮各子程序運(yùn)行時(shí)是否破壞了現(xiàn)場(chǎng),緩沖單元、工作寄存器是否發(fā)生沖突,標(biāo)志位的建立和清除是否有誤,堆棧區(qū)是否有溢出,輸入設(shè)備的狀態(tài)是否正常等等,若用者系統(tǒng)是在開(kāi)發(fā)機(jī)的監(jiān)控程序下運(yùn)行時(shí),還要考慮用者緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。 //用戶zi定時(shí)溢出標(biāo)志位uchar DSY_BUFFER[16]= 。y)。 delayms(3)。 scl=1。 scl=1。 rd|=sda。 delay4us()。 if(!sendbyte(slave+1)) return 0。 } stop()。break。break。 } else aa=Recstring(0xa0,1,buffer,6)。 break。 led=1。 case 13: //按C鍵設(shè)置新密碼 //如果是合法用戶則提示輸入新密碼 if ( !IS_valid_user) { i=0。 flay=1。 } if(ne) {Display_String(Code is same num,0x80)。 delayms(5)。 } } break。 Display_String( ,0xc0)。 for(i=0。 m=0。 delayms(1000)。 } for(k=0。 Display_String(==No rights !== ,0xc0)。 //關(guān)閉鎖 clear_password()。 Display_String(OPEN OK! ,0xc0)。 case 19: //按F鍵清除一位 if(i!=0) {i。 init_lcd()。 temp=P14^0x0f。 3
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1