① 求助32*32LED點陣C程序代碼及其電路圖 非常感謝!!!
哦、我可以幫助你的
哈
② 誰能給我一張單片機控制32x32點陣的電路圖,及顯示漢子的程序給個例子就行!
pudn里找找,資源很多,總有你要的
③ 單片機點陣電子顯示屏製作電路圖和匯編編程
ORG0000H
AJMPMAIN
ORG000BH
LJMPINTT0
ORG0030H
MAIN:MOVTMOD,#01H
MOVTL0,#88
MOVTH0,#158
SETBEA
SETBET0
SETBTR0
CLR20H.0
MOVR4,#0
A1:MOVDPTR,#(TAB+32*0)
LCALLDISPLAY
JNB20H.0,A1
CLR20H.0
A2:MOVDPTR,#(TAB+32*1)
LCALLDISPLAY
JNB20H.0,A2
CLR20H.0
A3:MOVDPTR,#(TAB+32*2)
LCALLDISPLAY
JNB20H.0,A3
CLR20H.0
A4:MOVDPTR,#(TAB+32*3)
LCALLDISPLAY
JNB20H.0,A4
CLR20H.0
A5:MOVDPTR,#(TAB+32*4)
LCALLDISPLAY
JNB20H.0,A5
CLR20H.0
A6:MOVDPTR,#(TAB+32*5)
LCALLDISPLAY
JNB20H.0,A6
CLR20H.0
A7:MOVDPTR,#(TAB+32*6)
LCALLDISPLAY
JNB20H.0,A7
CLR20H.0
A8:MOVDPTR,#(TAB+32*7)
LCALLDISPLAY
JNB20H.0,A8
CLR20H.0
LJMPMAIN
DISPLAY:
LOOP2:MOVR0,#0
MOVR1,#0
MOVR2,#16
LOOP:
MOVP1,R1
INCR1
MOVA,R0
MOVCA,@A+DPTR
MOVP2,A
INCR0
MOVA,R0
MOVCA,@A+DPTR
MOVP3,A
INCR0
ACALLDELAY1MS
MOVP2,#0
MOVP3,#0
DJNZR2,LOOP
RET
DELAY1MS:
NOP
MOVR6,#0F8H
LOP1:NOP
NOP
DJNZR6,LOP1
RET
INTT0:
CLRTR0
MOVTL0,#88
MOVTH0,#158
INCR4
CJNER4,#20,LLL
MOVR4,#0
SETB20H.0
LLL:SETBTR0
RETI
TAB:
DB14H,20H,24H,10H,44H,4CH,84H,43H;
DB64H,43H,1CH,2CH,20H,20H,18H,10H;
DB0FH,0CH,0E8H,03H,08H,06H,08H,18H;
DB28H,30H,18H,60H,08H,20H,00H,00H;"歡",0
DB40H,40H,41H,20H,0CEH,1FH,04H,20H;
DB00H,40H,0FCH,47H,04H,42H,02H,41H;
DB02H,40H,0FCH,5FH,04H,40H,04H,42H;
DB04H,44H,0FCH,43H,00H,40H,00H,00H;"迎",1
DB00H,02H,04H,01H,84H,00H,0F4H,0FFH;
DB24H,40H,4FH,40H,44H,42H,4CH,5CH;
DB74H,48H,54H,40H,4FH,58H,44H,47H;
DB44H,42H,44H,40H,04H,40H,00H,00H;"蒞",2
DB00H,00H,0F8H,1FH,00H,00H,00H,00H;
DB0FEH,7FH,40H,00H,30H,00H,8FH,7FH;
DB0AH,21H,08H,21H,18H,3FH,68H,21H;
DB08H,21H,88H,7FH,08H,01H,00H,00H;"臨",3
DB10H,04H,62H,04H,0CH,0FFH,0E0H,00H;
DB00H,02H,10H,02H,0CH,0FFH,17H,45H;
DB0A4H,44H,44H,44H,0A4H,44H,94H,44H;
DB0CH,0FDH,00H,03H,00H,01H,00H,00H;"洛",4
DB00H,00H,0FEH,0FFH,02H,04H,22H,08H;
DB5AH,04H,86H,03H,00H,00H,0FEH,3FH;
DB42H,10H,42H,10H,42H,10H,42H,10H;
DB42H,10H,0FEH,3FH,00H,00H,00H,00H;"陽",5
DB44H,10H,44H,10H,0FCH,0FH,44H,08H;
DB44H,48H,00H,40H,0FEH,45H,92H,44H;
DB92H,44H,0FEH,7FH,92H,44H,92H,44H;
DB92H,44H,0FEH,45H,00H,40H,00H,00H;"理",6
DB00H,20H,00H,20H,02H,20H,02H,20H;
DB02H,20H,02H,20H,02H,20H,0FEH,3FH;
DB02H,20H,02H,20H,02H,20H,02H,20H;
DB02H,20H,02H,20H,00H,20H,00H,00H;"工",7
④ 求單片機點陣匯編語言編程
1.將片外RAM1000H內容送到片外RAM2000H。
MOV DPTR, #1000H
MOVX A, @DPTR
MOV DPTR, #2000H
MOVX @DPTR, A
2.如果將累加器A的低5位送到P1口的低5位,保持內P1口的高3位不變,累加器A的內容容不變。
PUSH ACC ;保護A
ANL A, #00011111B ;保留A的低5位
ANL P1, #11100000B ;保留P1口的高3位
ORL P1, A ;合成並輸出到P1
POP ACC ;恢復A
END
請參考
⑤ 51單片機控制16*16 LED點陣電路圖和C程序
驅動電路是個問題。電路完了就是程序了,我這有流動顯示的。
⑥ 能不能幫我寫一個8*8點陣的代碼。隨便一個字就行。電路圖如下
參考一下其它網友的:
#include <reg51.h>
unsigned char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char code digittab[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
};
unsigned int timecount;
unsigned char cnta;
unsigned char cntb;
void main(void)
{
TMOD=0x01;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{;
}
}
void t0(void) interrupt 1 using 0
{
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;
}
}
}
⑦ 單片機中,用點陣怎麼實現數字的輸出,其程序怎麼編寫
點陣不管是顯示漢字還是數字,一般都是將要顯示的漢字或數字用字模提取軟體轉換出一個數組的內容,然後將這個數組復制到單片機的程序中,以下給你一些C語言程序參考,這個是16*16的點陣,還有就是提醒一下你,你用字模提取軟體時要看清楚取碼是從哪個方向開始的,然後寫程序時也要對應:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint i,k;
void delay(uint i)
{
while(i--);
}
//深
uchar code shen[]=
{0xFF,0xFF,0x9F,0x6F,0xAE,0x67,0xBB,0x6F,
0xB7,0x5F,0xAF,0x3F,0xB8,0x00,0xAF,0x3F,
0xB7,0x5F,0xBB,0x6F,0x9F,0x77,0xEE,0xF7,
0xCF,0x7F,0xD9,0x80,0xBB,0xDF,0xF7,0xDF};
//圳
uchar code zhen[]=
{0xFF,0xFF,0xFF,0xFF,0x00,0x00,0xFF,0xFF,
0xFF,0xFF,0xC0,0x07,0xFF,0xFF,0xFF,0xFF,
0x80,0x0F,0xFB,0xF3,0xF3,0xDD,0xFB,0xDF,
0x00,0x0F,0xFB,0xEF,0xFB,0xE7,0xFB,0xEF};
//從左到右顯示
void display1(uchar *P)
{
uint time=1000;//750
for(k=32;k>0;k=k-2)
{
P2=P[k-2];
P1=P[k-1];
delay(time);
}
P2=0xff;P1=0xff;
}
//從右到左顯示
void display2(uchar *P)
{
uint time=1000;//750
for(k=0;k<32;k=k+2)
{
P2=P[k];
P1=P[k+1];
delay(time);
}
P2=0xff;P1=0xff;
}
void main()
{
while(1)
{
display1(shen); //深
delay(2000);
display1(zhen); //圳
delay(2000);
}
}
希望能幫助到你,那個字模提取軟體很多,好像只有幾百K,很容易下載的,如果下載不了,我發給你也可以。
⑧ 如何用VHDL語言編寫一個點陣顯示電路
如果是較簡單的電路,那麼我建議你用電路圖方式寫。
如果是復雜電路,那麼你要參考書來寫。
是用BCD碼表示十進制嗎?可以每四位分開看。
比如BCD碼q(11 downto 0)可以表示0到999,前四位是個位,中四位是十位,後四位是百位。不知道對於溢出的有什麼要求,我設成溢出後不做任何運算。
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity add_sub is
port(
clk : in std_logic;
clr : in std_logic;
sl : in std_logic;
q : out std_logic_vector(11 downto 0));
end add_sub;
architecture add_sub_arc of add_sub is
signal cnt : std_logic_vector(11 downto 0);
begin
process(clk,clr,cnt)
begin
if clr = '0' then
cnt <= (others => '0');
elsif clk = '1' and clk'event then
if sl = '0' then -- adder
if cnt /= "100110011001" then
if cnt(3 downto 0) = "1001" then
cnt(3 downto 0) <= (others => '0'); -- units
cnt(7 downto 4) <= cnt(7 downto 4) + '1'; -- tens
else
cnt(3 downto 0) <= cnt(3 downto 0) + '1'; -- units
end if;
if cnt(7 downto 4) = "1001" then -- tens
cnt(7 downto 4) <= (others => '0'); -- tens
cnt(11 downto 8) <= cnt(11 downto 8) + '1'; -- hundreds
end if;
else
cnt <= cnt;
end if;
else -- substractor
if cnt /= "000000000000" then
if cnt(3 downto 0) = "0000" then
cnt(3 downto 0) <= "1001";
cnt(7 downto 4) <= cnt (7 downto 4) - '1';
else
cnt(3 downto 0) <= cnt (3 downto 0) - '1';
end if;
if cnt(7 downto 4) = "0000" then
cnt(7 downto 4) <= "1001";
cnt(11 downto 8) <= cnt (11 downto 8) - '1';
end if;
end if;
end if;
q <= cnt;
end if;
end process;
end add_sub_arc;
⑨ 16*16點陣電路圖和程序
是課程設計不? 我剛做完 點陣顯示滾動漢字的設計