新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 講述單片機如何解決高速控制LED顯示屏

講述單片機如何解決高速控制LED顯示屏

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


本文引用地址:http://butianyuan.cn/article/201611/320914.htm

  圖1 高速控制方案LED顯示屏電原理
  本方案的特點有兩個:第一,雖然CPU還是通過并行總線給列驅(qū)動電路的鎖存器寫字模數(shù)據(jù),但是鎖存器的鎖存信號改用了CPU的控制信號RD,而不是常規(guī)用法的WR;第二,地址譯碼電路保證了LED點陣片列驅(qū)動電路的片選地址和數(shù)據(jù)存儲器的某一段的邏輯地址是重疊的,而不是常規(guī)用法,這兩組地址必須分開。
  由于上述電路的一些簡單更改,單片機對LED顯示屏的顯示控制效率將發(fā)生明顯的變化。具體工作過程如下:假定數(shù)據(jù)指針DPTR中已經(jīng)裝入了數(shù)據(jù)存儲器的地址,執(zhí)行指令“MOVXA,@DPTR”。這條指令的功能是CPU按DPTR的指向從外部數(shù)據(jù)存儲器中讀字模數(shù)據(jù),讀到累加器A中;但是在本電路中,由于LED點陣片列驅(qū)動電路的片選地址和數(shù)據(jù)存儲器的某一段的邏輯地址是重疊的,也就是說,在執(zhí)行指令 “MOVXA,@DPTR”時,DPTR除了指向外部數(shù)據(jù)存儲器的某個地址外,還選中了某一個LED點陣片列驅(qū)動電路的鎖存器。如果此時被選中的這個鎖存器的鎖存引腳正好有打入脈沖來到,那么鎖存器也就將從外部數(shù)據(jù)存儲器送出的字模數(shù)據(jù)鎖住了。這個打入脈沖用的就是RD。RD是CPU在執(zhí)行指令 “MOVXA,@DPTR”時向外部數(shù)據(jù)存儲器發(fā)出的讀控制信號。由于MCS51系列單片機的讀控制信號RD和寫控制信號WR的時序完全相同[2],RD 代替WR實現(xiàn)鎖存功能,當然也就沒有什么懸念了。這條指令在執(zhí)行時,在完成對數(shù)據(jù)存儲器讀的同時,又完成了對LED點陣片的寫,因此加快了顯示控制的過程。
  前面講過,并行總線時CPU完成1次向LED點陣片的列驅(qū)動電路的鎖存器寫字模數(shù)據(jù)的程序過程,大約需要十幾μs;而現(xiàn)在只要4 μs,快多了,因為現(xiàn)在完成1次向LED點陣片的列驅(qū)動電路的鎖存器寫字模數(shù)據(jù)的程序過程只要兩步,首先給數(shù)據(jù)指針DPTR賦有效地址,接著CPU按 DPTR的指向從外部數(shù)據(jù)存儲器中讀字模數(shù)據(jù),與此同時也將字模數(shù)據(jù)傳給了LED點陣片列驅(qū)動電路的鎖存器。2條指令,4個機器周期,4 μs。這里要補充說明一點,在編制全部LED點陣片列驅(qū)動電路的鎖存器寫字模數(shù)據(jù)的程序時,不要用循環(huán)指令,因為那樣每次過程又得增加2 μs;要采用對LED點陣片逐片編程的方法,這樣編出來的程序雖然占空間,但節(jié)省了時間。用空間換時間的設(shè)計方法,有時也是設(shè)計人員值得嘗試的一種方法。
  本電路的行驅(qū)動鎖存器的鎖存控制,還是用CPU的寫控制信號WR,不作更改。行驅(qū)動鎖存器的片選信號也來自地址譯碼電路。為了避免數(shù)據(jù)存儲器和LED點陣片之間的相互干擾,與這組地址對應(yīng)的數(shù)據(jù)存儲器的這部分存儲空間就不用它了。
  地址譯碼電路的設(shè)計,應(yīng)保證LED點陣片列驅(qū)動電路的片選地址和數(shù)據(jù)存儲器的某一段的邏輯地址是重疊的。具體設(shè)計舉例如下:
  假定某一塊LED電子顯示屏用了240片LED點陣片,可顯示16×16的漢字60個,用1片MCS51系列單片機進行高速控制。這240片LED 點陣片列驅(qū)動電路的片選地址就應(yīng)有240個,地址譯碼電路必須保證譯碼后的有效地址大于這個數(shù)量。圖1中的地址譯碼電路,輸入的地址信號是A0~A7和 A11~A15,沒有接入A8、A9、A10。用74LS138譯碼器,三級譯碼后可得到256根有效地址線,第1根有效地址線對應(yīng)外部數(shù)據(jù)存儲器的8個地址:0000H、0100H、0200H、0300H、0400H、0500H、0600H、0700H。第2根有效地址線對應(yīng)外部數(shù)據(jù)存儲器的8個地址:0001H、0101H、0201H、0301H、0401H、0501H、0601H、0701H。……第256根有效地址線對應(yīng)外部數(shù)據(jù)存儲器的 8個地址:00FFH、01FFH、02FFH、03FFH、04FFH、05FFH、06FFH、07FFH。這256根有效地址線,240根給列驅(qū)動電路的片選地址,余下的給行驅(qū)動電路的片選地址;如果不夠用,行驅(qū)動電路可考慮改為串行總線的方式進行控制。上述分析結(jié)果表明,1片LED點陣片的I/O 接口地址和數(shù)據(jù)存儲器的8個字節(jié)的地址建立了重疊關(guān)系。這是因為每片LED點陣片都有8行,每行都對應(yīng)1個字節(jié)的字模數(shù)據(jù)。
  上述分析結(jié)果還表明,全部LED點陣片的I/O接口地址和數(shù)據(jù)存儲器的0000H~07FFH地址段建立了映射關(guān)系。數(shù)據(jù)存儲器0000H~07FFH中存放的正好是一幀圖像的全部字模數(shù)據(jù)。



關(guān)鍵詞: 單片機高速控制LED顯示

評論


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

關(guān)閉