單片機(jī)控制數(shù)顯“消屏”算是的探討_第1頁(yè)
單片機(jī)控制數(shù)顯“消屏”算是的探討_第2頁(yè)
單片機(jī)控制數(shù)顯“消屏”算是的探討_第3頁(yè)
單片機(jī)控制數(shù)顯“消屏”算是的探討_第4頁(yè)
單片機(jī)控制數(shù)顯“消屏”算是的探討_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)控制數(shù)顯“消屏”算是的探討        在眾多的數(shù)控、數(shù)顯智能化器件中,很大一部分是沒(méi)日沒(méi)液、長(zhǎng)年累月地工作著的(如電力部門(mén)的智能路燈鐘控器、干式變壓器中的智能溫控儀等),這樣對(duì)數(shù)字顯示部件尤其刺能耗較大手工藝LED數(shù)碼管的使用壽命就有很大影響。本文運(yùn)用單片機(jī)的軟件處理,實(shí)現(xiàn)類(lèi)似于微電腦PC機(jī)的“靜屏”功能經(jīng)一設(shè)定時(shí)間后自動(dòng)“消屏”,從而延長(zhǎng)了數(shù)據(jù)管等的使用壽命。在“消屏”期間,數(shù)碼管(包括指示燈中的幾個(gè)或全部)雖然不亮了,但系統(tǒng)監(jiān)察信號(hào)的輸入和控制開(kāi)關(guān)量的輸出等依然照常進(jìn)行所有功能保護(hù)不變,只要按動(dòng)一個(gè)任

2、一個(gè)輸入鍵,數(shù)碼管及指示燈就會(huì)恢復(fù)顯示(顯示當(dāng)前應(yīng)有的即時(shí)信息)。1 “消屏”的實(shí)現(xiàn)一般來(lái)講用單片機(jī)處理的顯示器件大多數(shù)是以循環(huán)掃描的方式進(jìn)行顯示的,而監(jiān)控的輸入輸出及其相應(yīng)的指示,又往往與單片機(jī)的輸入輸出端口直接聯(lián)系。因此,既要“消屏”,又要保住輸入輸出端口隨著監(jiān)控的具體情況及時(shí)更新,以便一旦由“消屏”恢復(fù)顯示時(shí)就能顯示當(dāng)前應(yīng)有的即時(shí)信息。至少要有兩點(diǎn):需有兩個(gè)循環(huán)程序,一個(gè)是正常顯示時(shí)用的主循環(huán)程序,另一個(gè)則是“消屏”時(shí)用的輔助循環(huán)程序保證單片機(jī)能正常運(yùn)行工作;運(yùn)用可進(jìn)行“位”操作的內(nèi)存字節(jié)單元,將輸入輸出端口的信息一一對(duì)應(yīng)地記錄下來(lái)。換個(gè)角度來(lái)講,就是要想對(duì)某端口進(jìn)行有關(guān)“位”的邏輯操作

3、,首先要對(duì)跟其對(duì)應(yīng)的內(nèi)存單元進(jìn)行相關(guān)“位”的邏輯操作,然后再賦值給對(duì)應(yīng)的端口。這樣確保了即時(shí)信息不會(huì)因?yàn)椤跋痢被蚺紶栍赡撤N強(qiáng)烈干擾導(dǎo)致程序“跑飛”引起“看門(mén)狗”復(fù)位,使所有端口都被置“1”而丟失。只有這樣,設(shè)定的時(shí)間一到,MCU才能“無(wú)憂(yōu)無(wú)慮”地跳出主循環(huán)而進(jìn)入輔助循環(huán)程序運(yùn)行,達(dá)到“消屏”的目的。一旦恢復(fù)顯示,應(yīng)有的即時(shí)信息也隨之顯示,而監(jiān)控端口能一直處于輸入輸出的即時(shí)狀態(tài)。2 “消屏”運(yùn)行的程序?qū)崿F(xiàn)“消屏”運(yùn)行要牽涉的程序主要有:用以正常顯示的主循環(huán)程序、用以“消屏”的輔助循環(huán)程序和用以定時(shí)設(shè)置的時(shí)鐘程序。下面以干式變壓器智能溫控儀為例,給出如圖1所示的電原理方框圖以及實(shí)現(xiàn)“消屏”功能的

4、三個(gè)主要部分的程序,其主流程如圖2所示。該溫控儀是一個(gè)以MCS-51系列的單片機(jī)AT89C52為核心,具有溫度監(jiān)察、控制、故障報(bào)警、有5位數(shù)碼顯示及與PC機(jī)通信等功能的智能化儀器。3 運(yùn)行程序3.1 顯示主循環(huán)程序部分位及寄存器的定義FUNCT EQU 95H ;P1.5為功能鍵輸入端口FANNER EQU 96H ;P1.6為風(fēng)機(jī)鍵輸入端口EYRE EQU 97H ;P1.7為巡回鍵輸入端口SIGN EQU 2FH ;定時(shí)到點(diǎn)“消屏”標(biāo)志位DECIMAL EQU 6FH ;小數(shù)點(diǎn)標(biāo)志位SEC EQU 46H ;秒計(jì)數(shù)寄存器MIN EQU 47H ;分計(jì)數(shù)寄存器HR EQU 48H ;時(shí)計(jì)數(shù)寄

5、存器INIT_0: ORG 0000H ;程序初始化AJMP INIT_0ORG 000BHAJMP T0ZDORG 001BHAJMP T1ZDORG 0050HDB0 C0H,0F9H,0A4H,0B0H ;字符的段碼DB 99H,92H,82H,0D8HDB 80H,90H,0C6H,89HDB 88H,80H,0FFHORG 0070HINIT_1:MOV 45H,#00HMOV 46H,#00HMOV 47H,#00HMOV 48H,#00HMOV TCON,#00HMOV TMOD,#11HMOV 0C8H, #04HMOV 0CAN,#0B4HMOV 0CBH,#3CHMOV 0

6、CCH,#0B4HMOV 0CDH,#3CHMOV SCON,#00HMOV IE,#0BAHCLR SIGN ;初始化清零“消屏”標(biāo)志位LOOP0:MOV R1,#51H ;顯示字段的緩沖區(qū)由內(nèi)存51H單元開(kāi)始MOV R2,#04HMOV R3,#05H ;顯示數(shù)碼為5位LOOP1:MOV DPH,#00HMOV DPL,#50HMOV A,R1MOVC A,A+DPTRJNB DECIMAL,LOOP2ADD A,#02H ;小數(shù)點(diǎn)顯示處理LOOP2:MOV P0,AMOV A,#03HADD A,R2MOV P3,AJNB FUNCT,KSM0 ;跳至鍵解釋子程序JNB FANNER,K

7、SM0 ;跳至鍵解釋子程序JNB EYRE,KSM0 ;跳至鍵解釋子程序JNB 72H,LOOP3ANL 2EH,#0BHCLR 72HLOOP3:JB SIGH,LOOP20;若標(biāo)志位為“1”則跳之“消屏”循環(huán)LOOP4:LCALL YSCX ;調(diào)用循環(huán)顯示延時(shí)子程序CLR DECIMALLOOP5:MOV A,R2RL AMOV R2,AJB 55H ,LOOP7LOOP6:CJNE A,#10H,LOOP7SETB DECIMALLOOP7:INC R1MOV P1,2AH ;內(nèi)存2A記錄值賦予P1口MOV P2,2BH ;內(nèi)存2BH記錄值賦予P2口DJNZ R3,LOOP1LJMP L

8、OOP0主循環(huán)顯示程序是一個(gè)掃描式顯示的主循環(huán)。假若程序運(yùn)行到倒數(shù)第十四條“JB SIGN,LOOP20”指令、且標(biāo)志位“SIGN”(即“2FH”)已被置為邏輯“1”時(shí),程序?qū)⑻鰭呙栾@示主循環(huán),而進(jìn)入“消屏”循環(huán)運(yùn)行。其中,內(nèi)存寄存器2AH、2BH是可位尋址操作的分別對(duì)應(yīng)于端口P1、P2的內(nèi)存字節(jié)單元,它們的數(shù)據(jù)由具體運(yùn)算監(jiān)控程序賦予。另外,掃描顯示主循環(huán)程序中所牽涉到的諸如“跳至鍵解釋子程序”中的“鍵解釋子程序”、“調(diào)用循環(huán)顯示延時(shí)子程序”中的“循環(huán)顯示延時(shí)子程序”,以及下文中的溫度信息采訪監(jiān)控程序等,由于篇幅的關(guān)系都沒(méi)有具體闡述,因?yàn)椋鼈儾挥绊戧P(guān)于“消屏”的討論。3.2 “消屏”輔助循

9、環(huán)程序LOOP20:INB SIGN,LOOP23MOV P1,#0FBHMOV P3,#03HORL 0D0H,#18HMOV R5,#25HLOOP21:MOV R6,#2AHLOOP22:DJNZ R6,LOOP22DJNZ R5,LOOP21ANL 0D0H,#0E7HMOV P0,#00H ;保證顯示輸出為“0” “消屏”ANL P1,#0E7H ;而監(jiān)控通信端口仍正常工作MOV P3,#03HJNB FUNCT,LOOP23JNB FANNER,LOOP23JNB EYRE,LOOP23LJMP LOOP20LOOP23:MOV P1,2AH ;記錄內(nèi)容賦值給相應(yīng)端口MOV P2,

10、2BHCLR SIGNLJMP LOOP1在“消屏”循環(huán)程序運(yùn)行中,當(dāng)其倒數(shù)第6、第7、第8條指令中任一條指令的條件轉(zhuǎn)換成立,即有任一按鍵按下時(shí),程序便退出“消屏”循環(huán),回到主循環(huán)運(yùn)行,進(jìn)而由鍵解釋子程序?qū)υ摪存I作出解釋響應(yīng)。“消屏”輔助循環(huán)程序中包含子延時(shí)程序。其實(shí),整個(gè)“消屏”循環(huán)便是以延時(shí)程序做主體來(lái)運(yùn)行“等待”的等待時(shí)機(jī)(如有鍵按入或某種因素引起復(fù)位)跳出“消屏”運(yùn)行程序,并“清零”標(biāo)示位“SIGN”,回到掃描顯示主循環(huán)中去?!跋痢陛o助循環(huán)程序只是為了“消屏” 數(shù)碼管及LED指示燈中的幾個(gè)或全部不亮,而不影響系統(tǒng)的其它功能。3.3 時(shí)鐘程序T0ZD: PUSH ACC ;時(shí)鐘程序MO

11、V TL0,#0B4HMOV TH0,#3CHINC 45HMOV A,45HCJNE A,#0AH,F(xiàn)W0INC 46H ;秒計(jì)數(shù)INC 40H ;40H為2s間隔輔助內(nèi)存單元MOV 45H,#00HMOV A,40HCJNE A,#02H,T0ZD1MOV 40H,#00HLCALL VISIT ;調(diào)用采用溫度信息子程序T0ZD1:MOV A,46HCJNE A,#3CH,F(xiàn)W0INC 47H ;分計(jì)數(shù)MOV 46H,#00HMOV A,47HCJNE A,#3CH,F(xiàn)W0INC 48H ;時(shí)計(jì)數(shù)MOV 47H,#00HMOV A,48HCJNE A,#02H,F(xiàn)W0MOV 48H,#00

12、HSETB SIGN ;“消屏”標(biāo)志位置“1”FW0:POP ACCRETI時(shí)鐘程序其實(shí)是片內(nèi)定時(shí)/計(jì)數(shù)器0的中斷服務(wù)程序。這段程序給出的是開(kāi)機(jī)或最后一次按鍵后2個(gè)小時(shí)“消屏”標(biāo)志位“SIGN”置“1”,即系統(tǒng)將進(jìn)入“消屏”運(yùn)行狀態(tài),直到有鍵按下或某種因素引起復(fù)位時(shí)才“喚醒”回到掃描顯示主循環(huán)。當(dāng)然,可根據(jù)具體的需要將時(shí)間設(shè)置成幾秒鐘、幾分鐘、幾十小時(shí)甚至幾天后才把“消屏”標(biāo)志位“SIGN”置為邏輯“1”,使系統(tǒng)進(jìn)入“消屏”運(yùn)行狀態(tài)。中斷服務(wù)程序的另一個(gè)重要功能就是定期汲取并處理信息。以上中斷服務(wù)程序是每間隔2s采訪一次溫度信息和端口監(jiān)控狀況用以運(yùn)算分析,以便及時(shí)對(duì)系統(tǒng)作出相應(yīng)的控制。結(jié)束語(yǔ)單片機(jī)控制數(shù)顯的“消屏”處理,類(lèi)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論