我們最常用的是七段式和八段式LED數(shù)碼管,八段比七段多了一個(gè)小數(shù)點(diǎn),其他的基本相同。所謂的八段就是指數(shù)碼管里有八個(gè)小LED發(fā)光二極管,通過控制不同的LED的亮滅來顯示出不同的字形。數(shù)碼管又分為共陰極和共陽(yáng)極兩種類型,其實(shí)共陰極就是將八個(gè)LED的陰極連在一起,讓其接地,這樣給任何一個(gè)LED的另一端高電平,它便能點(diǎn)亮。而共陽(yáng)極就是將八個(gè)LED的陽(yáng)極連在一起。其原理圖如下。
其中引腳圖的兩個(gè)COM端連在一起,是公共端,共陰數(shù)碼管要將其接地,共陽(yáng)數(shù)碼管將其接正5伏電源。一個(gè)八段數(shù)碼管稱為一位,多個(gè)數(shù)碼管并列在一起可構(gòu)成多位數(shù)碼管,它們的段選線(即a.b.c.d.e.fg.dp)連在一起,而各自的公共端稱為位選線。顯示時(shí),都從段選線送入字符編碼,而選中哪個(gè)位選線,那個(gè)數(shù)碼管便會(huì)被點(diǎn)亮。數(shù)碼管的8段,對(duì)應(yīng)一個(gè)字節(jié)的8位, a對(duì)應(yīng)最低位, dp對(duì)應(yīng)最高位。所以如果想讓數(shù)碼管顯示數(shù)字0,那么共陰數(shù)碼管的字符編碼為00111111 , 即Ox3f;共陽(yáng)數(shù)碼管的字符編碼為11000000,即Oxco??梢钥闯鰞蓚€(gè)編碼的各位正好相反。如下圖。
由上面的圖可以得到共陽(yáng)極和共陰極的數(shù)碼管的編碼
共陽(yáng)極:位選為高電平(即1)選中數(shù)碼管,各段選為低電平(即0接地時(shí))選中各數(shù)碼段,由0到f的編碼為:
uchar code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e};
共陰極:
位選為低電平(即0)選中數(shù)碼管,各段選為高電平(即1接+5V時(shí))選中各數(shù)碼段,
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
數(shù)碼管靜態(tài)顯示
當(dāng)多位數(shù)碼管應(yīng)用于某一系統(tǒng)時(shí),它們的“位選”是可獨(dú)立控制的,而“段選”是連接在一起的,我們可以通過位選信號(hào)控制哪幾個(gè)數(shù)碼管亮,而在同一時(shí)刻,位選選通的所有數(shù)碼管上顯示的數(shù)字始終都是一樣的,因?yàn)樗鼈兊亩芜x是連接在一起的,所以送入所有數(shù)碼管的段選信號(hào)都是相同的,那么它們顯示的數(shù)字必定一樣,數(shù)碼管的這種顯示方法叫做靜態(tài)顯示。
讓一個(gè)數(shù)碼管循環(huán)顯示0-9
下面是程序,從DSY_CODE數(shù)組中依次的將編碼數(shù)據(jù)送到P0口就可以了,是不是很簡(jiǎn)單。
今天的分享就到這里了,歡迎大家評(píng)論轉(zhuǎn)發(fā),有問題歡迎關(guān)注私信我哦。
聯(lián)系客服