下面是一個8x8的點陣LED結構
從圖上看,8X8點陣共需要64個發(fā)光二極管組成,且每個發(fā)光二極管是放置在行線和列線的交叉點上,當對應的某一行置高電平,某一列置低電平時,則相應的二極管就亮。
將許多這樣的模塊組合在一起,就是我們通常說的單元板/模組,而驅動其顯示需要顯示驅動電路和諸如單片機之類的智能控制芯片。通常我們的單元板/模組是帶有顯示驅動電路的,我們還需要帶有單片機的控制卡才能將我們所需要顯示的文字/圖形顯示在屏幕上。
電路原理圖示如下:
無論文字還是圖形都是由點陣組成的,比如我們常用的漢字,完整的點陣由16x16、32x32等等,每個點就是一個像素點。
將黑點處(點亮的像素點)定義為1,白點處(不亮的像素點)定義為0,就可以編寫成能在單片機中保存的字型格式:
{0xDF,0xFD,0xDF,0xFD,0x03,0xC0,0xDF,0xFD,0xDF,0xFD,0x01,0x80,0xDF,0xFD,0xEF,0xFB,
0xFF,0xFF,0x7B,0xEF,0x7C,0x9F,0x77,0xF5,0x77,0xEB,0x7B,0xEB,0x5F,0xFF,0xBF,0xFF},
{0x7F,0xFF,0x01,0xC0,0x7F,0xFF,0x03,0xE0,0xFF,0xFF,0x07,0xF0,0xF7,0xF7,0x07,0xF0,
0xFF,0xFF,0x00,0x80,0xFF,0xFF,0x07,0xF0,0xF7,0xF7,0xF7,0xF7,0x07,0xF0,0xFF,0xFF},
{0xBF,0xFF,0xBB,0xFD,0xBB,0xF3,0xBB,0xF7,0x01,0x80,0xDB,0xFF,0xDF,0xFF,0x1F,0xF8,
0xFF,0xFF,0xAF,0xFB,0xAF,0xFB,0x77,0xFD,0xFB,0xFE,0x7D,0xF9,0x9E,0xC7,0xE7,0xEF},
{0xFF,0xEF,0x81,0xEF,0xBD,0xEF,0xAD,0xEF,0xAD,0x80,0xAD,0xE7,0xAD,0xE7,0xAD,0xEB,
0xFF,0xFF,0xAD,0xED,0xEF,0xED,0xD7,0xEE,0xB7,0xEF,0x3B,0xEF,0xBD,0xEB,0xFE,0xF7}
這是16x16的點陣漢字,每個漢字32個字節(jié)。
比如我們要顯示"恭喜發(fā)財"這4個字,首先:送出"恭喜發(fā)財"的各頭2個字節(jié)0xDF0xFD0x7F0xFF0xBF0xFF0xFF0xEF每個字節(jié)都是8位,這樣一共送出了8x8=64位(列),送出這些位信號是通過DI信號端送出的(串行送出),在每送出1位時CLK信號端都要高低變換一次,稱為串行移位,使得64位(列)的每一位都被移送到了74HC595的輸入端口上。送出鎖存信號STB,即STB信號高低變換一次,這樣74HC595的輸入端口上64位(列)數(shù)據(jù)就被送到74HC595的輸出上,一行顯示就出來了。鎖存信號也使得下一行數(shù)據(jù)串行移位送出不會影響到上一行的顯示。
由單片機再通過74LS138變換ABCD的組合,選出下一個顯示行。重復的過程,但送出的數(shù)據(jù)相應的向后移動,即"恭喜發(fā)財"的3-4字節(jié)、5-6字節(jié)。。。。。。。行選擇也是從第1行到第16行,16行顯示一遍稱為一個顯示刷新周期,無論LED顯示屏的大小如何,一個顯示刷新周期必須在20毫秒以內完成,否則會出現(xiàn)閃動,單片機速度很快,32行200列以內的顯示通常是沒有問題的。但當LED顯示屏更大時就要選擇速度更快的單片機或DSP來完成了。
完成LED顯示的功能是由控制卡來實現(xiàn)的,無論簡單的單色屏還是復雜的全彩屏,顯示原理都是一樣的,很簡單。但如要實現(xiàn)諸如左右移動、飛入飛出、嵌色變換等特殊效果,還需要在單片機或DSP上編寫非常復雜的算法程序,卻不是一般人能做到的。好在現(xiàn)在有上百家控制卡生產研發(fā)的廠家公司,他們推出有性能各異的控制卡可以供我們選擇,我們一是要看他們的功能,還要看他們能支持的LED屏像素點,功能越多、支持的像素點越多,價格越貴。