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

正文內(nèi)容

單片機電子密碼鎖設(shè)計方案-在線瀏覽

2025-06-12 13:37本頁面
  

【正文】 圖41主程序流程圖 按鍵軟件設(shè)計如圖42按鍵功能流程圖,在按鍵當(dāng)中,有與輸入、開鎖、清除、設(shè)置、確認的程序相對應(yīng)的按鍵,并按順序與輸入的數(shù)相比較,當(dāng)輸入正確時,進入密碼程序,錯誤時進行清除,輸入兩次新密碼正確時,可進行重新設(shè)置密碼,最后確認程序。如果輸入正確,可以修改密碼,確認后再次輸入新密碼,如果兩次輸入一樣,則輸入成功。輸入舊密碼N按下設(shè)置鍵開始所輸入舊密碼正確?輸入次數(shù)加1報警程序N返回次數(shù)3?輸新密碼Y再次輸新密碼Y設(shè)置成功NY兩次新密碼輸入相同?圖43 密碼設(shè)置流程圖 開鎖軟件設(shè)計如圖44開鎖流程圖,開始時按開鎖鍵,輸入密碼,如果輸入正確,則開鎖成功。初始化按開鎖鍵輸入密碼按確認鍵所輸入密碼正確?Y開鎖開始輸入次數(shù)加1次數(shù)3?報警程序返回NYN 圖44 開鎖流程圖 系統(tǒng)調(diào)試仿真電路圖如圖51所示:圖51 系統(tǒng)仿真電路圖 系統(tǒng)實現(xiàn)功能及指標參數(shù)本電子密碼鎖的密碼可以進行修改,修改方式為先輸入原密碼,再輸入新密碼并確認后即可。在開鎖過程中,用戶在輸入正確密碼后即可開鎖,若輸入3次錯誤密碼,系統(tǒng)將報警。 設(shè)計總結(jié) 通過這次課程設(shè)計,使我學(xué)到了很多東西,它不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。 在此次課程設(shè)計中,首先是Proteus和Keil軟件使用的不熟練造成了一定的阻礙,經(jīng)過一段時間的使用和練習(xí)克服了該困難。調(diào)試時,一定要符合入口條件和出口條件,調(diào)試可用單步運行和斷點運行方式,通過檢查用者系統(tǒng)的CPU現(xiàn)場情況、RAM的內(nèi)容和I/O口的狀態(tài),檢測程序執(zhí)行結(jié)果是否符合設(shè)計要求,有無循環(huán)錯誤、有無機器碼錯誤以及轉(zhuǎn)移地址的錯誤,該問題的解決消耗了相當(dāng)長的時間。各程序模塊通過后,則可以把相關(guān)功能塊連在一起進行總調(diào)。 單步和斷點調(diào)試后,還應(yīng)進行連續(xù)調(diào)試,用以確定定時精度、CPU的實時響應(yīng)等問題。進行整機調(diào)試。參考文獻[1] :高等教育出版社,2010[2] :高等教育出版社,[3] :高等教育出版社,[4] (第四版).北京:清華大學(xué)出版社,附錄附錄2 C語言程序includeincludeincludedefine uchar unsigned chardefine uint unsigned intdefine LCDIO P0define delay4us() _nop_()。_nop_()。uchar buffer[6]={0}。sbit scl=P3^3。sbit relay=P2^3。bit flag=0,aa。uchar DSY_BUFFER1[16]= 。uchar Mem[6]={0}。 sbit rd=P2^1。sbit led=P2^4。uchar code table2[]=123456。void delayms(uint z){ uint x,y。x0。y0。}void delay() //短延時,兩個機器周期,做總線的延時用{。 rd=0。 P0=。 lcden=1。 lcden=0。 rd=0。 P0=date。 lcden=1。 lcden=0。 write_()。i16。 }}void init_lcd(){ lcden=0。 write_(0x0c)。 write_(0x01)。 Display_String(table,0x80)。}void start(){ sda=1。 delay4us()。 delay4us()。}void stop(){ sda=0。 delay4us()。 delay4us()。}void init() //初始化{sda=1。scl=1。}void ack(){ sda=0。 delay4us()。 sda=1。 scl=1。 scl=0。}uchar recbyte(){ uchar i,rd。 sda=1。i8。 rd=1。 delay4us()。 delay4us()。 delay4us()。}uchar sendbyte(uchar wd){ uchar i。 for(i=0。i++) { sda=(bit)(wdamp。 _nop_()。 scl=1。 scl=0。 } delay4us()。 scl=1。 ack0=!sda。 delay4us()。}uchar Recstring(uchar slave,uchar subaddr,uchar *buffer,uchar n){ uchar i。 if(!sendbyte(slave)) return 0。 start()。 for(i=0。i++) { buffer[i]=recbyte()。 } buffer[n1]=recbyte()。 stop()。}uchar Sendstring(uchar slave,uchar subaddr,uchar *buffer,uchar n){ uchar i。 if(!sendbyte(slave)) return 0。 for(i=0。i++) { if(!sendbyte(buffer[i])) return 0。 return 1。 for(i=0。i++) { Userpassword[i]=39。 } for(i=0。i++) { DSY_BUFFER[i]=39。 }}uchar Keys_Scan(){ uchar temp,keynum。 delayms(5)。 //掃描行線值 switch(temp) { case 1:keynum=1。 case 2:keynum=4。 case 4:keynum=7。 case 8:keynum=10。 break。 delayms(5)。 switch(temp) { case 8:keynum+=0。 case 4:keynum+=1。 case 2:keynum+=2。 case 1:keynum+=12。 break。 return keynum。 uchar IS_valid_user。 init()。 delayms(5)。 while(1) { if(!huifu==1) {aa=Sendstring(0xa0,1,table2,6)。 aa=Recstring(0xa0,1,buffer,6)。 if(P1!=0x0f) {delayms(10)。 switch(temp) { case 11:temp=0。 DSY_BUFFER[i]=39。 Display_String(DSY_BU
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1