導航:首頁 > 操作系統 > 單片機點陣屏怎麼裝

單片機點陣屏怎麼裝

發布時間:2022-10-25 01:34:09

㈠ 51單片機控制16*16點陣顯示屏

板子上所配器件清單:

74HC5952個

74HC1642個

三極體855016個

電阻1K16個

電阻200歐姆16個

點陣底座圓排母2根

彎排針1根

點陣PCB空板1個

㈡ 單片機 led點陣屏

這個很簡單,但說起來有點麻煩,LED點陣它是行列共用的,有兩種方式掃描顯示,分別是行掃和列掃,假如是行掃,那麼列上輸出的就是數據要採用橫向取模,反之則縱向取模。也就是當行掃的時候在同一時間只有一行是亮的,此時數據輸出的是這一行的信息,等下一行亮時列中輸出的是下一行的數據,所以要橫向取模

不知道這么說夠不夠明白

㈢ 關於stc89c52點陣屏程序設計的問題

利用8X8點陣顯示數字0到9的數字。

2.電路原理圖

圖4.25.1

3.硬體系統連線

(1).把「單片機系統」區域中的P3埠用8芯排芯連接到「點陣模塊」區域中的「DR1-DR8」埠上;

(2).把「單片機系統」區域中的P1埠用8芯排芯連接到「點陣模塊」區域中的「DC1-DC8」埠上;

4.程序設計內容

(1).數字0-9點陣顯示代碼的形成

如下圖所示,假設顯示數字「0」

12345678

● ● ●

● ●

● ●

● ●

● ●

● ●

● ● ●

00003E4141413E00

因此,形成的列代碼為00H,00H,3EH,41H,41H,3EH,00H,00H;只要把這些代碼分別送到相應的列線上面,即可實現「0」的數字顯示。

送顯示代碼過程如下所示

送第一列線代碼到P3埠,同時置第一行線為「0」,其它行線為「1」,延時2ms左右,送第二列線代碼到P3埠,同時置第二行線為「0」,其它行線為「1」,延時2ms左右,如此下去,直到送完最後一列代碼,又從頭開始送。

數字「1」代碼建立如下圖所示12345678

● ●

● ● ●

其顯示代碼為00H,00H,00H,00H,21H,7FH,01H,00H由上到下7~0,21H=00100001B

數字「2」代碼建立如下圖所示

12345678

● ● ●

● ●

● ● ● ●

● ● ● ● ●

00H,00H,27H,45H,45H,45H,39H,00H

數字「3」代碼建立如下圖所示

12345678

● ● ●

● ●

● ● ●

● ●

● ● ●

00H,00H,22H,49H,49H,49H,36H,00H

數字「4」代碼建立如下圖所示

12345678

● ●

● ●

● ●

● ● ● ● ●

00H,00H,0CH,14H,24H,7FH,04H,00H

數字「5」代碼建立如下圖所示

12345678

● ● ● ● ●

● ● ● ●

● ●

● ● ●

00H,00H,72H,51H,51H,51H,4EH,00H

數字「6」代碼建立如下圖所示

12345678

● ● ●

● ●

● ● ● ●

● ●

● ●

● ● ●

00H,00H,3EH,49H,49H,49H,26H,00H

數字「7」代碼建立如下圖所示

12345678

● ● ● ● ●

00H,00H,40H,40H,40H,4FH,70H,00H

數字「8」代碼建立如下圖所示

12345678

● ● ●

● ●

● ●

● ● ●

● ●

● ●

● ● ●

00H,00H,36H,49H,49H,49H,36H,00H

數字「9」代碼建立如下圖所示

12345678

● ● ●

● ●

● ●

● ● ● ●

● ●

● ● ●

00H,00H,32H,49H,49H,49H,3EH,00H

5.匯編源程序

TIM EQU30H

CNTA EQU31H

CNTB EQU32H

ORG00H

LJMPSTART

ORG0BH

LJMPT0X

ORG30H

START: MOVTIM,#00H

MOVCNTA,#00H

MOVCNTB,#00H

MOVTMOD,#01H

MOVTH0,#(65536-1000)/256//原文設定的3000太「閃」了

MOVTL0,#(65536-1000)MOD256

SETBTR0

SETBET0

SETBEA

SJMP$

T0X:

MOVTH0,#(65536-1000)/256

MOVTL0,#(65536-1000)MOD256

MOVDPTR,#TAB

MOVA,CNTA

MOVCA,@A+DPTR

MOVP3,A

MOVDPTR,#DIGIT

MOVA,CNTB

MOVB,#8

MULAB

ADDA,CNTA

MOVCA,@A+DPTR

MOVP1,A

INCCNTA

MOVA,CNTA

CJNEA,#8,NEXT

MOVCNTA,#00H

NEXT: INCTIM

MOVA,TIM

CJNEA,#250,NEX

MOVTIM,#00H

INCCNTB

MOVA,CNTB

CJNEA,#10,NEX

MOVCNTB,#00H

NEX: RETI

TAB: DB0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH

DIGIT: DB00H,00H,3EH,41H,41H,41H,3EH,00H

DB00H,00H,00H,00H,21H,7FH,01H,00H

DB00H,00H,27H,45H,45H,45H,39H,00H

DB00H,00H,22H,49H,49H,49H,36H,00H

DB00H,00H,0CH,14H,24H,7FH,04H,00H

DB00H,00H,72H,51H,51H,51H,4EH,00H

DB00H,00H,3EH,49H,49H,49H,26H,00H

DB00H,00H,40H,40H,40H,4FH,70H,00H

DB00H,00H,36H,49H,49H,49H,36H,00H

DB00H,00H,32H,49H,49H,49H,3EH,00H

END

6.C語言源程序

#include<AT89X52.H>

unsignedcharcodetab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

unsignedcharcodedigittab[10][8]={ {0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00}, //0

{0x00,0x00,0x00,0x00,0x21,0x7f,0x01,0x00}, //1

{0x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00}, //2

{0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00}, //3

{0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00}, //4

{0x00,0x00,0x72,0x51,0x51,0x51,0x4e,0x00}, //5

{0x00,0x00,0x3e,0x49,0x49,0x49,0x26,0x00}, //6

{0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00}, //7

{0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00}, //8

{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00} //9

};

unsignedinttimecount;

unsignedcharcnta;

unsignedcharcntb;

voidmain(void)

{

TMOD=0x01;

TH0=(65536-1000)/256;

TL0=(65536-1000)%256;

TR0=1;

ET0=1;

EA=1;

while(1)

{;

}

}

voidt0(void)interrupt1using0

{

TH0=(65536-1000)/256;

TL0=(65536-1000)%256;

P3=tab[cnta];

P1=digittab[cntb][cnta];

cnta++;

if(cnta==8)

{

cnta=0;

}

timecount++;

if(timecount==333)

{

timecount=0;

cntb++;

if(cntb==10)

{

cntb=0;

}

}

}

㈣ 我想用 51單片機控制點陣屏,可是不知道程序怎麼寫,也不知道如何知道8*8點陣屏的引腳~~求指點

點陣的引腳圖。看懂了引腳圖估計會寫了吧?!

㈤ 已經購買了2塊32*64的點陣屏幕,放在一起可以級聯成32*128的,單片機是STC12C5A60S2

買了液晶屏,向廠家要測試程序,或向商家要,都會給的。就是C語言的。根據測試程序,改一下引腳定義就行了,編譯一下測試程序,看能不能顯示。如果能顯示了,就可以自己根據測試程序一點點修改。
如果找不到廠家,就只好在網上找了,但不容易與你的晶屏相符。
實在不會,讀一下測試程序,顯示漢字的方法都是:用漢字取模軟體,先取漢字點陣數據,用這些數據代替測試程序的點陣數據,看是不是能顯示自己的取模的漢字了。
因液晶屏顯示漢字,取模方式有多種,如果顯示亂碼,說明取模方式不對,再換一種,直到顯示出漢字為止。這樣就可以,對測試程序進行修改成自己看得懂,又實用的程序了。

㈥ 51單片機做點陣屏的問題

寫完顯示後,延時一下,給它一段時間表現自己,利用一下人眼的暫留效應。
這個不在於掃描的快慢,要知道你這么干,每次點亮的時間不足以夠成「視覺」。
你真是太有才了,竟然能發現降低晶振頻率來解決這個問題!花了不少工夫吧。
還不明白的話,給我留言。

㈦ 單片機怎樣才能驅動8個8*8點陣屏

由於人眼視覺暫留效應以及LED亮度與占空比的關系決定,顯示刷新一般為8線,對於8*8*8點陣,需要8條線驅動和8*8條位驅動,即72個IO口,8位機達不到,一般採用IO擴展形式,以51為例,可使用8塊273或164擴展出64個IO,線驅動可使用2003。

㈧ 51單片機如何儲存LED點陣屏顯示的圖案並且可以實現調用出來,求程序

首先你要確定點陣的大小,黑白(單色)點陣一個 點佔一位二進制數據,128*128點佔16*128個位元組,即2K。用專門的軟體將圖形轉化成十六進制數據,存儲於表格中,顯示時再一個一個讀出,進行顯示。
點陣顯示屏有的是一個點一個點寫入,有的是一行一行(或半行)寫入,程序當然是不一樣的。

㈨ 單片機 怎麼控制點陣屏和LCD屏

LED點陣屏和LCD屏的顯示原理是不同的,LCD屏是自帶的驅動晶元的,可以和單片機直接連接的。
而LED屏需要加驅動電路的,而且顯示時也要採用動態掃描的方式的。
LCD屏顯示漢字時,有的屏是自帶字型檔的,不帶字型檔的屏,就要用漢字取模軟體取出顯示的數據,即取出漢字的字模。
LED屏顯示漢字,就必須用取模軟體來取模了,不是自己像畫畫那樣,那可畫不起。取模軟體在網上可以下載的。
最後一個問題:LCD的集成電路去了當成點陣屏用嗎?這是不可能的,一則LCD的集成電路是封裝在PCB板上的,即軟封裝的,自己是用不了的,是不可能自己接線的。二則,假如能接線,可是,LCD和LED顯示原理不同,是根本不可能通用的。

舉個例子吧,你能把你家的私家車掛在高鐵的車頭拉著跑嗎?

㈩ 單片機 8*8點陣C51程序

一.基於51的點陣屏顯示:(1)點亮第一個8*8點陣:
1.首先在Proteus下選擇我們需要的元件,AT89C51、74LS138、MATRIX-8*8-GREEN(在這里使用綠色的點陣)。在Proteus
6.9中8*8的點陣總共有四種顏色,分別為MATRIX-8*8-GREEN,MATRIX-8*8-BLUE,MATRIX-8*8-ORANGE
,MATRIX-8*8-RED。
在這里請牢記:紅色的為上列選下行選;其它顏色的為上行選下列選!而所有的點陣都是高電平選中列,低電平選中行!也就是說如果某一個點所處的行信號為低,列信號為高,則該點被點亮!此結論是我們編程的基礎。
2.在選擇完以上三個元件後,我們開始布線,具體如下圖:
這里P2是列選,P3連接38解碼器後作為行選。
選擇38解碼器的原因:38解碼器每次可輸出相應一個I/O口的低電平,正好與點陣屏的低電平選中行相對,並且節省了I/O口,大大方便了我們的編程和以後的擴展。
3.下面讓我們把它點亮,先看一個簡單的程序:
(將奇數行偶數列的點點亮,效果如下圖)
下面是源代碼:
/************8*8LED點陣屏顯示*****************/
#include<reg51.h>
void
delay(int
z)
//延時函數
{
int
x,y;
for(x=0;x<z;x++)
for(y=0;y<110;y++);
}
void
main()
{
while(1)
{
P3=0;
//行選,選擇第一行
P2=0x55;
//列選,即該行顯示的數據
delay(5);
//延時
/*****下同*****/
P3=2;
//第三行
P2=0x55;
delay(5);
P3=4;
//第五行
P2=0x55;
delay(5);
P3=6;
//第七行
P2=0x55;
delay(5);
}
}
上面的程序實現了將此8*8點陣的奇數行偶數列的點點亮的功能。重點讓我們看while循環內,首先是行選P3=0,此時38解碼器的輸入端為000,則輸出端為01111111,即B0端為低電平,此時選中了點陣屏的第一行,接著列選我們給P2口賦0x55,即01010101,此時又選中了偶數列,緊接著延時。然後分別對第三、五、七行進行相同的列選。這樣就點亮了此點陣屏奇數行偶數列交叉的點。
完成這個程序,我們會發現其實點陣屏的原理是如此簡單,和數碼管的動態顯示非常相似,只不過換了一種方式而已。
對不起啦,我傳了三次圖片都沒傳上,郁悶哪!希望你能理解哈!
不過我有傳一份WORD文檔在我的空間裡面

閱讀全文

與單片機點陣屏怎麼裝相關的資料

熱點內容
linux多終端 瀏覽:811
法律寫作pdf 瀏覽:144
國貨哪個品牌最好app 瀏覽:951
看哪個app給錢最多 瀏覽:178
編程靠經驗嗎 瀏覽:759
c教程pdf下載地址 瀏覽:573
製作視頻哪個app有瘦臉功能 瀏覽:649
linux查看線程內存 瀏覽:509
命令行簽名apk 瀏覽:92
網頁照片旋轉源碼 瀏覽:842
QQ會員頭像源碼 瀏覽:263
內核命令行 瀏覽:324
腳本提取源碼器 瀏覽:930
smo源碼 瀏覽:877
為什麼要搭建單獨伺服器 瀏覽:480
編譯器有什麼控制 瀏覽:893
希爾伯特pdf 瀏覽:645
php數組全數字 瀏覽:647
解密塔羅牌小程序源碼 瀏覽:862
聚合跑分源碼 瀏覽:555