八位移位輸出芯片在LED大屏幕顯示中的應(yīng)用
關(guān)鍵詞:單片機(jī) ; 大屏幕顯示 ; 脈沖
大屏幕顯示以其顯示清晰、更新方便等特點(diǎn),在信息提示中廣泛應(yīng)用,如車(chē)站/機(jī)場(chǎng)、證券交易系統(tǒng)及生產(chǎn)車(chē)間的信息顯示等。大屏幕顯示方式分兩種:點(diǎn)陣式和八段碼方式,前者顯示信息靈活,功能強(qiáng)大,但控制較為復(fù)雜,硬件成本較高;后者則應(yīng)用八段碼方式顯示一些數(shù)值信息,方便簡(jiǎn)單,價(jià)格低,在數(shù)字顯示中被廣泛應(yīng)用。 目前,一般的數(shù)字式LED顯示屏普遍采用單片機(jī)的串行口或其它I/O口通過(guò)諸如串行輸入并行輸出芯片74LS164驅(qū)動(dòng)。但是,這樣有二點(diǎn)不足:一是單片機(jī)的串行口被顯示電路占用,便不能實(shí)現(xiàn)多機(jī)通訊,只能實(shí)現(xiàn)單屏的顯示;二是一般的串行輸入并行輸出芯片不帶輸出鎖存功能,且移位脈沖頻率低,輸出驅(qū)動(dòng)電流小,這使得顯示屏有時(shí)會(huì)出現(xiàn)字符閃爍,顯示不清,刷新速度較慢,所以有時(shí)需要另加大功率驅(qū)動(dòng)電路。
本文通過(guò) 89C51單片機(jī)I/O口控制74HC595(以下簡(jiǎn)稱(chēng)595 )芯片直接驅(qū)動(dòng)八段碼,不占用其串行口,可以很方便地構(gòu)成大屏幕顯示電路,并在紡織廠的信息顯示中得到了應(yīng)用。
單片機(jī)控制595組成的LED顯示屏
本文設(shè)計(jì)的數(shù)字式LED顯示屏是用在對(duì)鄭州國(guó)棉三廠紡紗車(chē)間的技術(shù)改造過(guò)程中,對(duì)該車(chē)間的240臺(tái)紡紗機(jī)的產(chǎn)量、效率、車(chē)速等參數(shù)進(jìn)行實(shí)時(shí)顯示。根據(jù)該車(chē)間的240臺(tái)紡紗機(jī)的分布位置不同,我們?cè)O(shè)計(jì)了五塊顯示屏, 每塊顯示屏由4行*12列, 每個(gè)顯示模塊有5位LED數(shù)碼管組成, 可以分時(shí)顯示48臺(tái)紡紗機(jī)的產(chǎn)量、效率、車(chē)速等信息。 產(chǎn)量、效率、車(chē)速等參數(shù)由上位機(jī)進(jìn)行檢測(cè)后,經(jīng)RS-485總線,將數(shù)據(jù)傳送給下位機(jī),下位機(jī)進(jìn)行數(shù)據(jù)處理、變換后,把相應(yīng)的參數(shù)顯示出來(lái)。
對(duì)每個(gè)顯示模塊中的數(shù)據(jù)輸入及每位LED數(shù)碼管的輸出驅(qū)動(dòng),我們采用具有串行移位輸入、8位并行帶鎖存輸出的595芯片。該芯片內(nèi)部由數(shù)據(jù)移位觸發(fā)器和三態(tài)輸出鎖存器組成,有16個(gè)引腳。SI:串行輸入數(shù)據(jù);SCK:移位時(shí)鐘脈沖(輸入); RCK:鎖存時(shí)鐘脈沖(輸入); SCLK :復(fù)位清零信號(hào)(輸入);QA -QH:數(shù)據(jù)輸出;QH*:向下一片(位)的串行數(shù)據(jù)輸出。595輸出電流大(35mA),可以直接驅(qū)動(dòng)八段碼。其輸出鎖存功能,可以有效防止移位輸出時(shí)LED八段碼的閃爍,其移位及鎖存信號(hào)頻率高,最大值為55MHz。這兩個(gè)脈沖信號(hào)都采用上升沿觸發(fā)。
每塊顯示屏由一片89C51下位機(jī)控制,其硬件電路如圖1所示。
圖1 顯示屏硬件電路
圖中,每個(gè)顯示模塊由5個(gè)595分別驅(qū)動(dòng)5位八段碼,制成一塊PCB電路板,通過(guò)程序控制可以分時(shí)顯示48臺(tái)紡紗機(jī)的產(chǎn)量、效率、車(chē)速等信息。6264為接收參數(shù)及輸出顯示參數(shù)LED段碼的緩沖區(qū),3082為RS-485通訊接口芯片。
每塊顯示屏中,第一行顯示模塊中的第一個(gè)595的移位數(shù)據(jù)輸入引腳SI分別由89C51的P1.0 、P1.1 、P1.2 、P1.3經(jīng)244驅(qū)動(dòng)后控制,其數(shù)據(jù)輸出引腳QH*依次接至下一個(gè)595移位數(shù)據(jù)輸入引腳SI,該顯示模塊中的第五個(gè)(最后一個(gè))595的數(shù)據(jù)輸出引腳QH*接至該列下一行顯示模塊的第一個(gè)595數(shù)據(jù)輸入引腳SI。以此類(lèi)推,直至最后一行。而所有595芯片的移位脈沖 、鎖存脈沖由P3.4 、P3.5經(jīng)244驅(qū)動(dòng)后提供。例如,顯示產(chǎn)量時(shí),把存儲(chǔ)在外部RAM中的產(chǎn)量信息,分四組,對(duì)應(yīng)于顯示屏上的4列,在移位脈沖(P3.5)的作用下,依次經(jīng)P1.0 、 P1.1 、P1.2 、P1.3并行輸出,當(dāng)所有的產(chǎn)量信息都移位輸出后,再發(fā)出鎖存脈沖P3.4 。這樣在該顯示屏相應(yīng)位置(顯示模塊)便顯示出48臺(tái)紡紗機(jī)的產(chǎn)量值,效率 、車(chē)速的顯示方法相同。
圖2 下位機(jī)顯示軟件主程序流程圖
顯示屏的軟件設(shè)計(jì)
每塊顯示屏的軟件包含兩部分:通訊接收、數(shù)據(jù)處理及輸出顯示。
通訊接收
通訊部分用來(lái)接收數(shù)據(jù),在通訊中斷服務(wù)子程序中,首先接收上位機(jī)傳過(guò)來(lái)的每塊顯示屏的屏號(hào)(地址),若地址與該屏設(shè)定的地址不一樣, 則退出中斷; 若地址與該屏設(shè)定的地址相同, 則接收上位機(jī)傳過(guò)來(lái)的每臺(tái)車(chē)的參數(shù),同時(shí)進(jìn)行校驗(yàn),并存入外部數(shù)據(jù)緩沖區(qū)RAM中。即每塊顯示屏的下位機(jī)通過(guò)RS-485接收上位機(jī)傳來(lái)的數(shù)據(jù)。共48臺(tái)車(chē)*8字節(jié),其中,8個(gè)字節(jié)包含每臺(tái)車(chē)的車(chē)號(hào)(一個(gè)字節(jié)),產(chǎn)量、 效率 、車(chē)速(各二個(gè)字節(jié))及累加校驗(yàn)和(一個(gè)字節(jié))。所有48臺(tái)車(chē)的參數(shù)接收完畢后,設(shè)置一標(biāo)志位(如某臺(tái)車(chē)接收的數(shù)據(jù)有錯(cuò)誤則生成另一標(biāo)志位。該臺(tái)車(chē)的數(shù)據(jù)不作處理),退出中斷,由主程序?qū)邮盏降臄?shù)據(jù)進(jìn)行變換處理。
數(shù)據(jù)處理及輸出顯示
數(shù)據(jù)處理及輸出顯示部分主要進(jìn)行處理 、變換,并使相應(yīng)的參數(shù)在顯示屏上相應(yīng)的位置顯示出來(lái)。89C51根據(jù)設(shè)置的接收完畢標(biāo)志位,對(duì)接收的參數(shù)經(jīng)過(guò)數(shù)據(jù)處理、變換后,把待顯示參數(shù)段碼存儲(chǔ)在6264中,該存儲(chǔ)區(qū)分為三部分, 每部分分別按車(chē)號(hào)順序存儲(chǔ)產(chǎn)量 、效率 、車(chē)速的參數(shù)段碼。 需要輸出顯示某種參數(shù)時(shí),在存儲(chǔ)該參數(shù)段碼區(qū)設(shè)置四個(gè)等長(zhǎng)度的地址指針,分別從四個(gè)地址指針?biāo)傅拇鎯?chǔ)單元中取數(shù),經(jīng)P1口(P1.0、P1.1、P1.2、P1.3)并行輸出驅(qū)動(dòng)595并修改地址指針直到輸出48臺(tái)車(chē)的該參數(shù)段碼。最后,向595發(fā)出輸出鎖存脈沖, 48臺(tái)車(chē)的該參數(shù)值便可以在顯示屏相應(yīng)位置上顯示出來(lái)。 產(chǎn)量 、效率 、車(chē)速可以分時(shí)顯示,各參數(shù)分時(shí)輸出顯示的時(shí)間長(zhǎng)短由通訊接收數(shù)據(jù)的時(shí)間決定。其程序流程圖如圖2所示。
結(jié)語(yǔ)
利用89C51控制595實(shí)現(xiàn)的顯示屏,實(shí)用簡(jiǎn)單,運(yùn)行可靠,價(jià)格低廉,顯示清晰。對(duì)于不同應(yīng)用場(chǎng)合的顯示,只要在軟件/硬件上稍加改動(dòng),如增減顯示的行/列數(shù)及每個(gè)顯示模塊驅(qū)動(dòng)LED的位數(shù),便可以使用,因此具有很大的實(shí)用性和推廣價(jià)值。
在改用時(shí),應(yīng)注意以下幾個(gè)問(wèn)題:
(1) 對(duì)顯示屏行數(shù)的擴(kuò)展,若超過(guò)15行,因信號(hào)線過(guò)長(zhǎng)必須對(duì)控制信號(hào)及數(shù)據(jù)信號(hào)增加電流驅(qū)動(dòng),否則易造成信號(hào)干擾,使顯示數(shù)據(jù)混亂。
(2) 對(duì)顯示屏行數(shù)的擴(kuò)展,應(yīng)增加相應(yīng)I/O端口(數(shù)據(jù)輸出)的數(shù)量。
(3) 對(duì)于大電流的LED數(shù)碼管,應(yīng)在595的輸出端增加驅(qū)動(dòng)電路。■
參考文獻(xiàn)
1 劉文洲,張立臣.利用8031單片機(jī)串行口實(shí)現(xiàn)多個(gè)LED顯示的一種方法[J].國(guó)外電子元器件.2001,1
2 劉養(yǎng)銳.LED顯示技術(shù)在民用機(jī)場(chǎng)中的應(yīng)用[J].現(xiàn)代電子技術(shù),2001.9.
3 張毅剛.8031單片機(jī)原理及應(yīng)用[M]. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1994.45-60.
作者簡(jiǎn)介:楊學(xué)昭,1992年哈爾濱理工大學(xué)(原哈爾濱電工學(xué)院)電機(jī)與控制專(zhuān)業(yè)碩士學(xué)位。主要研究領(lǐng)域?yàn)樽詣?dòng)控制與檢測(cè),智能化儀器與儀表,微機(jī)及應(yīng)用。張五一,副教授,主要研究領(lǐng)域?yàn)樽詣?dòng)控制與檢測(cè),智能化儀器與儀表,微機(jī)及應(yīng)用。陳旭,男,工程師,主要研究領(lǐng)域?yàn)樽詣?dòng)控制與檢測(cè),智能化儀器與儀表,微機(jī)及應(yīng)用。
51單片機(jī)相關(guān)文章:51單片機(jī)教程
led顯示器相關(guān)文章:led顯示器原理
脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理
評(píng)論