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

正文內(nèi)容

飲水機(jī)循環(huán)定時器的設(shè)計(編輯修改稿)

2025-08-19 08:18 本頁面
 

【文章內(nèi)容簡介】 脈沖。 大學(xué)本科生畢業(yè)設(shè)計(論文) 13 在對 Flash 存儲器編程期間,該引腳還用于輸入編程脈沖( PROG )。 如果需要的話,通過對專用寄存器( SFR)區(qū)中 8EH 單元的 D0 位置數(shù),可禁止 ALE操作。該位置數(shù)后,只有在執(zhí)行一條 MOVX 或 MOVC 指令期間, ALE 才會被激活。另外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,該設(shè)定禁止 ALE 位無效。 PSEN (Pin29) 外部存儲器讀選通信號 當(dāng) AT89C51 由外部程序存儲器取指令(或常數(shù))時,每個機(jī)器周期兩次 PSEN 有效(即輸出兩個脈沖)。但在此期間內(nèi),每當(dāng)訪問外 部數(shù)據(jù)存儲器時,這兩次有效的 PSEN 信號將不出現(xiàn)。 EA /Vpp(Pin31) 外部訪問允許端。要使 CPU 只訪問外部程序存儲器(地址為0000HFFFFH),則 EA 端必須保持低電平(接到 GND 端)。然而要注意的是,如果保密位 LB1 被編程,復(fù)位時在內(nèi)部會鎖存 EA 端的狀態(tài)。 當(dāng) Flash 存儲器編程期間,該引腳也用 于施加 12V 的編程允許電源 Vpp(如果選 用 12V 編程)。 /輸出引腳 ~ 、 ~ 、 ~ 、 ~ PO 口( Pin39~ Pin32): 8 位雙向 I/O 口線,名稱為 ~ P1 口( Pin1~ Pin8): 8位準(zhǔn)雙向 I/O 口線,名稱為 ~ P2 口( Pin21~ Pin28): 8位準(zhǔn)雙向 I/O 口線,名稱為 ~ P3 口( Pin10~ Pin17): 8位準(zhǔn)雙向 I/O 口線,名 稱為 ~ P0 端口( ~ ) P0 是一個 8 位漏極開路型雙向 I/O 端口。作為輸出口用時,每位能以吸收電流的方式驅(qū)動 8 個 TTL 輸入,對端口寫 1 時,又可作高阻抗輸入端用。 在訪問外部程序和數(shù)據(jù)存儲器時,它是分時多路轉(zhuǎn)換的地址(低 8 位) /數(shù)據(jù)總線,在訪問期間激活了內(nèi)部的上拉電阻。 在 Flash 編程時, P0 端口接收指令字節(jié);而早驗(yàn)證程序時,則輸出指令字節(jié)。驗(yàn)證時,要求外接上拉電阻。 P1 端口( ~ ) P1 是一個帶有內(nèi)部上拉電阻的 8 位雙向 I/O 端口。P1 的輸出緩沖器可驅(qū)動( 吸收或輸出電流方式) 4 個 TTL 輸入。對端口寫 1 時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。作輸入口使用時,因?yàn)橛袃?nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流( I)。 大學(xué)本科生畢業(yè)設(shè)計(論文) 14 在對 Flash 編程和程序驗(yàn)證時, P1 接收低 8 位地址。 P2 端口( ~ ) P2是一個帶有內(nèi)部上拉電阻的 8位雙向 I/O 端口。P2 的輸出緩沖器可驅(qū)動(吸收或輸出電流方式) 4 個 TTL 輸入。對端口寫 1 時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。 P2 作輸入口使用時,因?yàn)橛袃?nèi)部的上拉電阻,那些被外部信號 拉低的引腳會輸出 一個電流( I)。 在訪問外部程序存儲器和 16 位地址的外部數(shù)據(jù)存儲器(如執(zhí)行 MOVX @DPTR 指令)時, P2 送出高 8 位地址。在訪問 8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行 MOVX @R1指令)時, P2 口引腳上的內(nèi)容(就是專用寄存器( SFR)區(qū)中 P2寄存器的內(nèi)容),在整個訪問期間不會改變。 在對 Flash 編程和程序驗(yàn)證期間, P2也接收高位地址和一些控制信號。 P3 端口( ~ ) P3口是一組帶有內(nèi)部上拉電阻的 8 位雙向 I/O 口。P3 口輸出緩沖級可驅(qū)動 (吸收或輸出電流 )4 個 TTL 邏輯門 電路。對 P3 口寫入“ 1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時,被外部拉低的 P3口將用上拉電阻輸出電流 (I)。 P3口一除了作為一般的 I/0 口線外,更重要的用途是它的第二功能,如下表 2 所示 : 端口引腳 第二功能 RXD TXD INT0 INT1 T0 T1 WR RD (表 1) P3 口還可用于接收一些 Flash 閃速存儲器編程和程序校驗(yàn)的控制信號。 大學(xué)本科生畢業(yè)設(shè)計(論文) 15 第四章 飲水機(jī)定時器的軟件設(shè)計 一 系統(tǒng)軟件設(shè)計要求 該定時器主要是由 4 部分組成:按鍵電路、時鐘電路、顯示電路和繼電器電路組成。對于定時器的軟件設(shè)計要求能夠準(zhǔn)確,不能因?yàn)橥饨绲臈l件變化或是自身的某些原因而出現(xiàn)偏差:還要能夠具有較高的靈活性,在編寫程序的時候,采用自頂向下的分析方法,將整個軟件系統(tǒng)劃分城若干個子系統(tǒng),可以針對每一個子程序編寫程序。如果需要修改現(xiàn)有功能或添加功能,只需要修改或添加相應(yīng)的程序即可。另外還要盡量做到設(shè) 置最少的控制端,能夠?qū)崿F(xiàn)最多的功能,做到既實(shí)用又方便。 二 軟件設(shè)計所需實(shí)現(xiàn)的功能 ( 1)正常模式下數(shù)碼管正確顯示時間,顯示時間的時和分。 ( 2)定時模式下能利用按鍵進(jìn)行正常模式與定時模式能相互切換,能夠利用按鍵組合設(shè)置 2個定時時間。 ( 3)定時設(shè)置還可設(shè)置成單次定時和循環(huán)定時 2個設(shè)置。 ( 4)正常顯示時間時,若連續(xù)十分鐘沒有進(jìn)行任何按鍵操作,則數(shù)碼管會自動熄滅,而當(dāng)按下任意按鍵時,數(shù)碼管則會再次點(diǎn)亮并顯示當(dāng)前的時間。 三 定時器軟件設(shè)計的流程圖 大學(xué)本科生畢業(yè)設(shè)計(論文) 16 (圖 10)軟件設(shè)計流程圖 程序如下: void ScanKey() { P1_0=1。 //端口賦 1,以保證正確掃描按鍵 if(P1_0==0 ) //有鍵按下 { delay(80)。 P1_0=1。 //端口賦 1,以保證正確掃描按鍵 判斷按鍵是否響應(yīng) 初始化時間設(shè)置 DS1302 初始化 讀出 DS1302 中的時分秒 數(shù)碼管顯示 是否已設(shè)定時間 定時 2 是否顯示 定時 1 是否顯示 按鍵處理 負(fù)載電路斷開 負(fù)載電 路導(dǎo)通 YES YES YES No No No No YES YES 開始 大學(xué)本科生畢業(yè)設(shè)計(論文) 17 if(P1_0==0) //去抖動 { wait()。 if(mark==1) {mark=0。 minute=min。second=sec。} else if(P1_0==1) {flag[0]=1。 minute=min。second=sec。 } //按鍵值 else {flag[0]=2。minute=min。second=sec。} } } P1_3=1。 //端口賦 1,以保證正確掃描按鍵 if(P1_3==0) //有鍵按下 { delay(80)。 P1_3=1。 if(P1_3==0) { P1_3=1。 while(P1_3==0)。 if(mark==1) {mark=0。 minute=min。second=sec。} else { flag[3]=!flag[3]。 LED=!LED。 minute=min。second=sec。 } } } } 大學(xué)本科生畢業(yè)設(shè)計(論文) 18 void ScanKey1(void) { P1_1=1。 if(P1_1==0) { delay(80)。 P1_1=1。 if(P1_1==0) { wait()。 if(P1_1==1) {flag[1]=1。minute=min。second=sec。} else{flag[1]=2。minute=min。second=sec。} } } else flag[1]=0。 P1_2=1。 if(P1_2==0) { delay(80)。 P1_2=1。 if(P1_2==0) { wait()。 if(P1_2==1) {flag[2]=1。minute=min。second=sec。} else {flag[2]=2。minute=min。second=sec。} } 大學(xué)本科生畢業(yè)設(shè)計(論文) 19 } else flag[2]=0。 } ( 1)如圖 10 其中初始化時間設(shè)置是對 DS1302 時鐘芯片的初始化的前提,其設(shè)置辦法是用兩個按鍵分別調(diào)節(jié)時和分,將時和分調(diào)節(jié)到需要調(diào)節(jié)的當(dāng)前時間后,將該數(shù)據(jù)寫入 DS1302 中,此時, DS1302 中的內(nèi)部時鐘則以剛剛設(shè)定的數(shù)據(jù)為起點(diǎn),然后再通過讀操作把時間讀出來并顯示即可。 ( 2)按鍵處理包括了定時時間的設(shè)置和已經(jīng)設(shè)置好了定時時間,按模式切換按鍵可以用來查看剛才設(shè)置好的時間。 ( 3)整個軟件程序的編寫時本課題的一個大工程,占畢業(yè)設(shè)計比例最大,花費(fèi)時間最多的。其結(jié)構(gòu)比較復(fù)雜,需要仔細(xì)編寫,思路要清晰,程序要編寫 準(zhǔn)確可行。 大學(xué)本科生畢業(yè)設(shè)計(論文) 20 四 上電后設(shè)置流程圖 如下圖 11 是對定時器接通 +5V 電源后通電時按鍵處理操作流程的說明。 (圖 11) 程序如下: void DealWith() 結(jié)束 初始化時間 按鍵 2 控制時,按鍵 3控制分,調(diào)整完后按住按鍵 2 進(jìn)行意識確認(rèn) 啟動時鐘芯片顯示正常的時間 按下按鍵 1 按鍵 2 控制數(shù)碼管位移,按鍵 3 控制加 1 按住按鍵 3 一會,定時 1 設(shè)置完成 顯示正常時間 按下按鍵 1不馬上松開 按鍵 2 控制數(shù)碼管位移,按鍵 3 控制加 1 定時時間 2 設(shè)置 按住按鍵 3 一會,定時 1 設(shè)置完成 顯示正常時間 開始 大學(xué)本科生畢業(yè)設(shè)計(論文) 21 { uchar i=0。 while(flag[0]==1) //設(shè)置定時時間 1 { ScanKey()。 ScanKey1()。 if(flag[0]==2) {flag[0]=0。 wait()。 //等待 } P0=sel[i]。 P2=table[timer1[i]]。 if(flag[1]==1) { P0=sel[++i]。 } if(i==4) i=0。 if(flag[2]==1) { timer1[i]=timer1[i]+1。 //閃爍位加 1 if(timer1[i]==10) timer1[i]=0。 P2=table[timer1[i]]。 } if(timer1[0]2) { timer1[0]=0。 } if(timer1[2]5) { timer1[2]=0。 } if(timer1[0]==2 amp。amp。 timer1[1]4) { timer1[1]=0。 } if(flag[2]==2) { FF1=1。 while(moment) { display(timer1)。 } flag[0]=0。 } } while(flag[0]
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1