关键词不能为空

当前您在: 主页 > 英语 >

双色点阵

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-02 12:16
tags:

-

2021年2月2日发(作者:声称)



查看文章



【转】< /p>


LED


点阵显示与编程(中级篇)



2011-03-15 17:08


转载自



欠一个吻



最终编辑



huaxinbl





点阵的显示原理是行扫描列发送字码,或者是列扫描行发送字 码。当点阵屏大于


16×16


时,普通


法直接连接了,必须通过串行输入


/


输出寄存器或者锁存器等< /p>


I/O


口扩展,例如锁存器:


74HC3 73



输出寄存器:


74HC595< /p>



74HC164


等;

< br>I/O


口扩展芯片:


8255



8155


等。



一、


74HC273


连接的


16×1 6


点阵示例



74HC2 73



8


位数据


/


地址锁存器,


D0



D7


为数据出入端;


Q0~Q7

为数据输出端;


WR


为主清


数据清 零;


CLK


是触发端,上升沿触发,即当


CLK


从低到高电平时,


D0~D7


的数据通过芯片输出到


74HC273


的测试程序如下:



#include


sbit CLK=P3^0


sbit MR=P3^1;



#define uchar unsigned char


#define uint unsigned int



//


数码管字型表,对应


0



1



2


3



4



5



6


,< /p>


7



8



9//


uchar Table[10]={0x3F,0x06, 0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};


void Delay(uint i )


{



uchar j;


for(;i!=0;i--)


{for(j=200;j!=0;j--) }


}




void main(void)


{


uchar N;


MR=1;


while(1)


{


for(N=0;N<10;N++)


{


CLK=0;


Delay(300); //


延时为了方便看到管脚电平变化



P2=Table[N];


CLK=1;


Delay(300);


}


MR=!MR;


}


}



测试效果如下:






利用


74 HC237


连接的点阵如下图所示:



显示扫描方式也可以分为行扫描和列扫描,行扫描时,


U1


先输 出行码依次扫描第


1


至第


8

< p>
行,同


列码,


U4


再输出 第


1


行右半部分列码;扫描完


1



8


行后


U2


扫描


8



16


行,同时


U3



U4


输出对


了。这仅仅是为了说明


74HC 273


的连接图,不是最好的点阵连接方式,大家可以自己优化电路图。


二、


74HC164



825 5


连接的点阵示例




图中


8255



PA< /p>



PB


输出端应加上拉电阻(

< p>
300


Ω



1K


Ω


)。


ULN2803


为增加驱动列能力。




< p>
5288


的地址:


PA


口 为


0000H



PB

< br>口为


0100H



PK


(控制)口为


0300H


。使用逐列扫描方式。



以显示四个静态的“欠一个吻”为例,参考程序如下:



#include


#include


#define PA8255 XBYTE[0X0000]


#define PB8255 XBYTE[0X0100]


#define PK8255 XBYTE[0X0300]


#define uhar unsigned char


uchar code hzdot[]={


0x 80,0x40,0x40,0x40,0x20,0x20,0x18,0x20,0x0F,0x10,0x 0A,0x0C,0x08,0x03,0xE8,0x00,


0x08,0x03, 0x08,0x0C,0x48,0x10,0x28,0x30,0x18,0x60,0x08,0x20, 0x00,0x20,0x00,0x00,/*



0x00, 0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80, 0x00,0x80,0x00,0x80,0x00,


0x80,0x00,0x8 0,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0x8 0,0x00,0x00,0x00,/*



0x00,0x0 0,0x80,0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x0 0,0x0C,0x00,0xE3,0x7F,


0x04,0x00,0x08,0 x00,0x10,0x00,0x20,0x00,0x60,0x00,0xC0,0x00,0x40,0 x00,0x00,0x00,/*



0x00,0x00,0 xFC,0x07,0x04,0x02,0x04,0x02,0xFC,0x03,0x40,0x48,0 x30,0x44,0x0F,0x23,


0xCA,0x10,0x38,0x0C ,0x08,0x03,0xF8,0x40,0x08,0x80,0x08,0x60,0xF8,0x1F ,0x00,0x00/*




};



uchar a,i,t,x[8]={0x7f,0xff,0 xff,0xff,0xff,0xff,0xff,0xff};


char b;


void main(void)


{


PK8255=0X80;


while(1)


{


for(a=0;a<64;a++)


{




PA8255=0x00;


PB8255=0x00;


for(b=7;b>=0;b--)


{


SBUF=~x[b];


while(!TI) TI=0;


}


PA8255=hzdot[2*a];


PB8255=hzdot[2*a+1];


for(i=0;i<8;i++)


{


if((x[7]&0x01)==0) goto LP;


if((~x[i]!=0)&&((x[i]&0x01)!=0))


x[i]=x[i]<<7|x[i]>>1;


else if((~x[i]!=0)&&((x[i]&0x01)==0))


{


x[i]=0xff;


x[i+1]=0x7f;


break;


}


}


}


LP:x[0]=0x7f;x[7]=0xff;


}


}



三、


74 HC595


连接的点阵示例




很多点阵都是使用


74HC595


连接 的,


74HC595



8


位串行输入


/


输出或者并行输出移位寄存器,具有高 阻关




74HC595


的功能表如下:




为了形象的演示


74HC595


的功能,编写如下测试程序:



#include




#define uint unsigned int


#define uchar unsigned char



sbit DS=P3^4; //74HC595


的数据串行输入端口



sbit ST=P3^7; //74HC595


并行输出使能



sbit SH=P3^6; //74HC595


移位寄存器移位使能



//


测试串行传输数据:



uchar code Test[]={0xFF,0x00,0xAA,0xCC,0xEE,};



//******


延时子程序


******/ /


void delay(uint a)


{


uint i,j;


for(i=0;i


for(j=0;j<4;j++);


}



void SendByte(uchar date)


{


uchar i;


for(i=0;i<8;i++)


{


SH=0;


ST=0;


if(date&0x80) //


date


最高位移到


74HC595


的移位寄存器



DS=1;


else


DS=0;


SH=1; //SH


上升沿时移位



ST=1; //ST


上升沿时输出数据



date=date<<1; //


左移一位,将送出第二位数据



delay(5000);


}


}



//****


主函数


****//


void main()


{


uchar i;


while(1)


{


for(i=0;i<5;i++)


SendByte(Test[i]);


}


}



测试是依次输出


0xFF,0x00,0xAA,0xCC,0xEE


几个数据,在点阵显示 程序中,是将数据全部送到


7


时显示出来,并不是像下图所示一 个一个流动显示,这个仅仅是测试数据的传输路径。






74HC595

< br>仅仅使用


3



I/O

< p>
口就能点亮点阵屏,因此大大减少了


I/O


口的使 用。



例如


24×24


点阵的连接如下所示(行扫描使用


3


线


-8


线译码器


74HC138


),此图为原理示意图,




根据此上图用汇编编写的静态显示程序如下:



ORG 0000H


LJMP STAR


ORG 0BH


LJMP INTT0


STAR: MOV 20H,#00H


MOV A,#0FFH


MOV R7,#0


MOV P1,A


MOV P2,A


MOV P3,A


MOV P0,A


CLR P1.6


MOV TMOD,#01H


MOV TH0,#0FEH


MOV TL0,#18H


MOV SCON,#0




MOV IE,#82H


MOV SP,#70H


MOV R0,#0


MAIN: LCALL DIS1


MOV DPTR ,#TAB


LCALL MOVDISP


LJMP MAIN


MOVDISP:MOV B,#00H


DISLOOP:MOV R3,#07H


DISMOV: JNB 02H,AAA


DEC DPH


CLR 02


AAA: MOV R2,#0


MOV R1,B


SETB TR0


WAITMOV:JBC 00H,DISMOV1


AJMP WAITMOV


DISMOV1:DJNZ R3,DISMOV


JNB 02H,BBB


DEC DPH


CLR 02


BBB: INC B


MOV A,B


CJNE A,#0,CC1


INC DPH


INC R7


CC0: INC B


MOV A,B


CJNE A,#0,CCC


INC DPH


INC R7


CC1: INC B


MOV A,B


CJNE A,#0,CCC


INC DPH


INC R7


CCC: MOV A,R1


MOVOUT:CJNE R7,#3,DISLOOP


MOV A,B


CJNE A,#24,DISLOOP


MOV R7,#0


RET


DIS1: MOV R3,#0AH


CLR P1.3




CLR P1.4


CLR P1.5


DIS11: MOV R2,#0


MOV DPTR,#TAB


MOV R1,#0H


SETB TR0


WAIT11:JBC 01H,DIS11


AJMP WAIT11


DIS111:DJNZ R3,DIS11


RET


INTT0: INC R0


PUSH ACC


MOV TH0,#0FEH


MOV TL0,#18H


JBC 00H,GOEND


MOV A,R1


MOVC A,@A+DPTR


MOV SBUF,A



WAIT: JBC TI,GO


AJMP WAIT


GO: INC R1


CJNE R1,#0,AA


INC DPH


SETB 02H


AA: MOV A,R1


MOVC A,@A+DPTR


MOV SBUF,A


WAIT1: JBC TI,GO1


AJMP WAIT1


GO1: INC R1


CJNE R1,#0,BB


INC DPH


SETB 02H


BB: MOV A,R1


MOVC A,@A+DPTR


MOV SBUF,A


WAIT2: JBC TI,GO2


AJMP WAIT2


GO2: CLR P1.3


CLR P1.4


CLR P1.5


NOP


SETB P1.6


NOP


-


-


-


-


-


-


-


-



本文更新与2021-02-02 12:16,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/599611.html

双色点阵的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文