當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在眾多的數(shù)控、數(shù)顯智能化器件中,很大一部分是沒日沒液、長年累月地工作著的(如電力部門的智能路燈鐘控器、干式變壓器中的智能溫控儀等),這樣對數(shù)字顯示部件尤其刺能耗較大手工藝LED數(shù)碼管的使用壽命就有很大影響

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

1 “消屏”的實(shí)現(xiàn)

一般來講用單片機(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é)單元,將輸入輸出端口的信息一一對應(yīng)地記錄下來。換個(gè)角度來講,就是要想對某端口進(jìn)行有關(guān)“位”的邏輯操作,首先要對跟其對應(yīng)的內(nèi)存單元進(jìn)行相關(guān)“位”的邏輯操作,然后再賦值給對應(yīng)的端口。這樣確保了即時(shí)信息不會因?yàn)?ldquo;消屏”或偶爾由某種強(qiáng)烈干擾導(dǎo)致程序“跑飛”引起“看門狗”復(fù)位,使所有端口都被置“1”而丟失。只有這樣,設(shè)定的時(shí)間一到,MCU才能“無憂無慮”地跳出主循環(huán)而進(jìn)入輔助循環(huán)程序運(yùn)行,達(dá)到“消屏”的目的。一旦恢復(fù)顯示,應(yīng)有的即時(shí)信息也隨之顯示,而監(jiān)控端口能一直處于輸入輸出的即時(shí)狀態(tài)。

2 “消屏”運(yùn)行的程序

實(shí)現(xiàn)“消屏”運(yùn)行要牽涉的程序主要有:用以正常顯示的主循環(huán)程序、用以“消屏”的輔助循環(huán)程序和用以定時(shí)設(shè)置的時(shí)鐘程序。下面以干式變壓器智能溫控儀為例,給出如圖1所示的電原理方框圖以及實(shí)現(xiàn)“消屏”功能的三個(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ù)寄存器
INIT_0: ORG 0000H ;程序初始化
AJMP INIT_0
ORG 000BH
AJMP T0ZD
ORG 001BH
AJMP T1ZD
ORG 0050H
DB0 C0H,0F9H,0A4H,0B0H ;字符的段碼
DB 99H,92H,82H,0D8H
DB 80H,90H,0C6H,89H
DB 88H,80H,0FFH

ORG 0070H
INIT_1:MOV 45H,#00H
MOV 46H,#00H
MOV 47H,#00H
MOV 48H,#00H
MOV TCON,#00H
MOV TMOD,#11H
MOV 0C8H, #04H
MOV 0CAN,#0B4H
MOV 0CBH,#3CH
MOV 0CCH,#0B4H
MOV 0CDH,#3CH
MOV SCON,#00H
MOV IE,#0BAH


CLR SIGN ;初始化清零“消屏”標(biāo)志位
LOOP0:MOV R1,#51H ;顯示字段的緩沖區(qū)由內(nèi)存51H單元開始
MOV R2,#04H
MOV R3,#05H ;顯示數(shù)碼為5位
LOOP1:MOV DPH,#00H
MOV DPL,#50H
MOV A,@R1
MOVC A,@A+DPTR
JNB DECIMAL,LOOP2
ADD A,#02H ;小數(shù)點(diǎn)顯示處理
LOOP2:MOV P0,A
MOV A,#03H
ADD A,R2
MOV P3,A
JNB FUNCT,KSM0 ;跳至鍵解釋子程序
JNB FANNER,KSM0 ;跳至鍵解釋子程序
JNB EYRE,KSM0 ;跳至鍵解釋子程序
JNB 72H,LOOP3
ANL 2EH,#0BH
CLR 72H
LOOP3:JB SIGH,LOOP20;若標(biāo)志位為“1”則跳之“消屏”循環(huán)
LOOP4:LCALL YSCX ;調(diào)用循環(huán)顯示延時(shí)子程序
CLR DECIMAL
LOOP5:MOV A,R2
RL A
MOV R2,A
JB 55H ,LOOP7
LOOP6:CJNE A,#10H,LOOP7
SETB DECIMAL
LOOP7:INC R1
MOV P1,2AH ;內(nèi)存2A記錄值賦予P1口
MOV P2,2BH ;內(nèi)存2BH記錄值賦予P2口
DJNZ R3,LOOP1
LJMP LOOP0

主循環(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是可位尋址操作的——分別對應(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)系都沒有具體闡述,因?yàn)?,它們不影響關(guān)于“消屏”的討論。

3.2 “消屏”輔助循環(huán)程序
LOOP20:INB SIGN,LOOP23
MOV P1,#0FBH
MOV P3,#03H
ORL 0D0H,#18H
MOV R5,#25H
LOOP21:MOV R6,#2AH
LOOP22:DJNZ R6,LOOP22
DJNZ R5,LOOP21
ANL 0D0H,#0E7H
MOV P0,#00H ;保證顯示輸出為“0” ——“消屏”
ANL P1,#0E7H ;而監(jiān)控通信端口仍正常工作
MOV P3,#03H
JNB FUNCT,LOOP23
JNB FANNER,LOOP23
JNB EYRE,LOOP23
LJMP LOOP20
LOOP23:MOV P1,2AH ;記錄內(nèi)容賦值給相應(yīng)端口
MOV P2,2BH
CLR SIGN
LJMP 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í)程序做主體來運(yùn)行“等待”的——等待時(shí)機(jī)(如有鍵按入或某種因素引起復(fù)位)跳出“消屏”運(yùn)行程序,并“清零”標(biāo)示位 “SIGN”,回到掃描顯示主循環(huán)中去。“消屏”輔助循環(huán)程序只是為了“消屏” ——數(shù)碼管及LED指示燈中的幾個(gè)或全部不亮,而不影響系統(tǒng)的其它功能。

3.3 時(shí)鐘程序
T0ZD: PUSH ACC ;時(shí)鐘程序
MOV TL0,#0B4H
MOV TH0,#3CH
INC 45H
MOV A,45H
CJNE A,#0AH,F(xiàn)W0
INC 46H ;秒計(jì)數(shù)
INC 40H ;40H為2s間隔輔助內(nèi)存單元
MOV 45H,#00H
MOV A,40H
CJNE A,#02H,T0ZD1
MOV 40H,#00H
LCALL VISIT ;調(diào)用采用溫度信息子程序
T0ZD1:MOV A,46H
CJNE A,#3CH,F(xiàn)W0
INC 47H ;分計(jì)數(shù)
MOV 46H,#00H
MOV A,47H
CJNE A,#3CH,F(xiàn)W0
INC 48H ;時(shí)計(jì)數(shù)
MOV 47H,#00H
MOV A,48H
CJNE A,#02H,F(xiàn)W0
MOV 48H,#00H
SETB SIGN ;“消屏”標(biāo)志位置“1”
FW0:POP ACC
RETI

時(shí)鐘程序其實(shí)是片內(nèi)定時(shí)/計(jì)數(shù)器0的中斷服務(wù)程序。這段程序給出的是開機(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í)對系統(tǒng)作出相應(yīng)的控制。

結(jié)束語

單片機(jī)控制數(shù)顯的“消屏”處理,類似于微電腦PC機(jī)的“靜屏”功能。從某種意義上講是延長了系統(tǒng)中部分元器件的使用壽命,而不影響單片機(jī)控制系統(tǒng)其它功能。這種貓頭鷹頭“睜一只眼,閉一只眼”的工作方式對那些“沒日沒夜、長年累月”運(yùn)行著的儀器設(shè)備來說是不無裨益的。再者,由多個(gè)單片機(jī)組合的控制系統(tǒng)運(yùn)用類似工作方式,在不影響系統(tǒng)監(jiān)控功能的前提下,此“休眠”彼“工作”互為調(diào)協(xié),互相應(yīng)和,或許是一著延長元器件使用壽命的好舉措。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉