<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 采用MCS51單片機(jī)的大屏幕LED顯示屏高速控制方案

          采用MCS51單片機(jī)的大屏幕LED顯示屏高速控制方案

          作者: 時(shí)間:2012-04-15 來源:網(wǎng)絡(luò) 收藏

          摘要:以系列為例,介紹對(duì)的一種。對(duì)的顯示,一般是先從數(shù)據(jù)存儲(chǔ)器讀取數(shù)據(jù),然后將數(shù)據(jù)寫給點(diǎn)陣片。本的創(chuàng)新點(diǎn)是:用一條對(duì)外部數(shù)據(jù)存儲(chǔ)器的讀指令,同時(shí)完成對(duì)外部數(shù)據(jù)存儲(chǔ)器讀和對(duì)LED點(diǎn)陣片的寫操作。本文詳細(xì)介紹的電路設(shè)計(jì),并簡要提示軟件編制的要點(diǎn);最后介紹控制方案在LED中的應(yīng)用。

          本文引用地址:http://www.ex-cimer.com/article/171611.htm

          引言

            LED顯示屏的基本工作原理是動(dòng)態(tài)掃描。顯示控制的過程是先從數(shù)據(jù)存儲(chǔ)器讀得字模數(shù)據(jù),再通過單片機(jī)的串行口或并行口將數(shù)據(jù)寫給LED點(diǎn)陣片,然后再行掃描。

            動(dòng)態(tài)掃描方案和靜態(tài)顯示方案相比節(jié)省驅(qū)動(dòng)元件,但要求刷新頻率高于50 Hz,以避免顯示的圖像或文字出現(xiàn)閃爍。由于刷新頻率的限制,一片單片機(jī)能控制顯示元件的片數(shù)是較少的。

            現(xiàn)在LED顯示屏的應(yīng)用已越來越廣泛。為了對(duì)成百、上千片的LED點(diǎn)陣片實(shí)現(xiàn)有序的、快速的顯示控制,人們動(dòng)了許多腦筋,雙CPU、雙RAM的方案,F(xiàn)PGA的方案等都獲得了成功的應(yīng)用;但是這些方案的顯示控制過程還是先讀后寫。

            本方案另開思路:用一條讀指令,將讀和寫合在一步完成,可大大地提高顯示控制的效率,且電路簡單。

          1 LED顯示屏的工作原理

            LED顯示屏的基本工作原理是動(dòng)態(tài)掃描。動(dòng)態(tài)掃描又分為行掃描和列掃描兩種方式,常用的方式是行掃描。行掃描方式又分為8行掃描和16行掃描兩種。

            在行掃描工作方式下,每一片LED點(diǎn)陣片都有一組列驅(qū)動(dòng)電路,列驅(qū)動(dòng)電路中一定有一片鎖存器或移位寄存器,用來鎖存待顯示內(nèi)容的字模數(shù)據(jù)。在行掃描工作方式下,同一排LED點(diǎn)陣片的同名行控制引腳是并接在一條線上的,共8條線,最后連接在一個(gè)行驅(qū)動(dòng)電路上;行驅(qū)動(dòng)電路中也一定有一片鎖存器或移位寄存器,用來鎖存行掃描信號(hào)。

            LED顯示屏的列驅(qū)動(dòng)電路和行驅(qū)動(dòng)電路一般都單片機(jī)進(jìn)行控制,常用的單片機(jī)是系列。LED顯示屏顯示的內(nèi)容一般按字模的形式存放在單片機(jī)的外部數(shù)據(jù)存儲(chǔ)器中,字模是8位二進(jìn)制數(shù)。

            單片機(jī)對(duì)LED顯示屏的控制過程是先讀后寫。按LED點(diǎn)陣片在屏幕上的排列順序,單片機(jī)先對(duì)第1排的第1片LED點(diǎn)陣片的列驅(qū)動(dòng)鎖存器,寫入從外部數(shù)據(jù)存儲(chǔ)器讀得的字模數(shù)據(jù),接著對(duì)第2片、第3片……直到這一排的最后一片都寫完字模數(shù)據(jù)后,單片機(jī)再對(duì)這一排的行驅(qū)動(dòng)鎖存器寫行掃描信號(hào),于是第1排第1行與字模數(shù)據(jù)相關(guān)的發(fā)光二極管點(diǎn)亮。接著第2排第1行、第3排第1行……直到最后一排第1行的點(diǎn)亮。各排第1行都點(diǎn)亮后,延時(shí)一段時(shí)間,然后黑屏,這樣就算完成了單片機(jī)對(duì)LED顯示屏的一行掃描控制。

            單片機(jī)對(duì)LED顯示屏第2行的掃描控制、第3行的掃描控制……直到第8行的掃描控制,其過程與第1行的掃描控制過程相同。對(duì)全部8行的控制過程都完成后,LED顯示屏也就完成了1幀圖像的完整顯示。

            雖然按這種工作方式,LED顯示屏是一行一行點(diǎn)亮的,每次都只有一行亮,但只要保證每行每秒鐘能點(diǎn)亮50次以上,即刷新頻率高于50 Hz,那么由于人的視覺惰性,所看到的LED顯示屏顯示的圖像還是全屏穩(wěn)定的圖像。

          2 LED顯示屏的傳統(tǒng)控制方法

            參考文獻(xiàn)[1]對(duì)LED顯示屏的控制電路作了歸納和比較。其中,顯示控制電路是按行掃描方式工作的,列控制電路分為兩大類。列控制電路中,一類是用74LS377之類的芯片作為列驅(qū)動(dòng)電路的鎖存器,CPU通過并行總線給列驅(qū)動(dòng)電路的鎖存器寫字模數(shù)據(jù);另一類是用移位寄存器74LS595之類的芯片作為列驅(qū)動(dòng)電路的鎖存器,CPU通過串行總線給列驅(qū)動(dòng)電路的鎖存器寫字模數(shù)據(jù)。

            無論是并行總線的控制方式還是串行總線的控制方式,其工作過程都是先給數(shù)據(jù)指針DPTR賦值,接著累加器A按數(shù)據(jù)指針DPTR的指向,從外部數(shù)據(jù)存儲(chǔ)器RAM中讀得字模數(shù)據(jù)。然后,并行總線時(shí),再給數(shù)據(jù)指針DPTR賦值,接著CPU將累加器A中的字模數(shù)據(jù),按數(shù)據(jù)指針DPTR的指向,寫給LED點(diǎn)陣片列驅(qū)動(dòng)電路的鎖存器;串行總線時(shí),CPU將累加器A中的字模數(shù)據(jù),通過串行口寫給LED點(diǎn)陣片列驅(qū)動(dòng)電路的鎖存器。

            一般顯示控制中,使用較多的單片機(jī)是系列。假設(shè)單片機(jī)系統(tǒng)的晶振頻率是12 MHz,機(jī)器周期是1 μs,上述兩種控制方式完成1片LED點(diǎn)陣片的顯示控制都得十幾μs。

            本文提出的高速控制方案,完成1片LED點(diǎn)陣片的顯示控制大約只要4 μs。按此推算,1片MCS51系列的單片機(jī),差不多可以對(duì)600多片LED點(diǎn)陣片進(jìn)行顯示控制。與傳統(tǒng)的控制方法相比,顯示控制的效率成倍提高。

          3 LED顯示屏的高速控制方案

          圖1是高速控制方案LED顯示屏電路原理。MCS51系列單片機(jī)對(duì)LED顯示屏進(jìn)行控制;隨機(jī)存儲(chǔ)器62512用作LED顯示屏的數(shù)據(jù)存儲(chǔ)器,存儲(chǔ)待顯示內(nèi)容的字模數(shù)據(jù);8行掃描方式,多片LED點(diǎn)陣片共用1組行驅(qū)動(dòng)電路;每片LED點(diǎn)陣片都有一組列驅(qū)動(dòng)電路,用74LS377作為列驅(qū)動(dòng)的鎖存器,CPU通過并行總線給列驅(qū)動(dòng)電路的鎖存器寫字模數(shù)據(jù);地址譯碼電路,用于產(chǎn)生LED點(diǎn)陣片行驅(qū)動(dòng)電路和列驅(qū)動(dòng)電路的片選地址。

          圖1 高速控制方案LED顯示屏電原理


          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();