求助毕业论文 关于8*8点矩阵LED的设计 需要用AT89C51

最好有工作电路图和单片机程序十分感谢... 最好有工作电路图和单片机 程序 十分感谢 展开
 我来答
ellab
2010-12-14 · TA获得超过1346个赞
知道小有建树答主
回答量:1251
采纳率:93%
帮助的人:339万
展开全部

RS_CNT EQU  31H

DSP_CNT EQU  34H    ;显示模式

  ORG  00H

START: MOV  RS_CNT,#00H

  MOV  DSP_CNT,#00H ;显示模式初始值

  MOV  DPTR,#SWITCH ;设置程序跳转表首地址

A0:  MOV  A,DSP_CNT

  ADD  A,DSP_CNT  ;双字节指令,偏移量乘2

  JMP  @A+DPTR   ;根据显示模式值跳转

SWITCH: SJMP DSP_0   ;程序跳转表

  SJMP DSP_1

  SJMP DSP_2

  SJMP DSP_3

DSP_0: MOV  P0,#00H   ;显示模式0,行线全部置0

  MOV  A,#01H   ;列扫描码初值

 L0: MOV  P3,A   ;输出显示

  LCALL DELAY

  RL  A    ;列扫描码移位

  INC  RS_CNT

  MOV  R0,RS_CNT

  CJNE R0,#24,L0  ;模式0显示完毕?

  INC  DSP_CNT   ;显示下一模式

  MOV  RS_CNT,#00H

  LJMP A0

DSP_1: MOV  P0,#00H   ;显示模式1,行线全部置0

   MOV  A,#80H   ;列扫描码初值

 L1: MOV  P3,A   ;输出显示

  LCALL DELAY

  RR  A    ;列扫描码移位

  INC  RS_CNT

  MOV  R0,RS_CNT

  CJNE R0,#24,L1  ;模式1显示完毕?

  INC  DSP_CNT   ;显示下一模式

  MOV  RS_CNT,#00H

  LJMP A0

DSP_2: MOV  P3,#0FFH  ;显示模式2,列线全部置1

   MOV  A,#7FH   ;行扫描码初值

 L2: MOV  P0,A   ;输出显示

  LCALL DELAY

  RR  A    ;行扫描码移位

  INC  RS_CNT

  MOV  R0,RS_CNT

  CJNE R0,#24,L2  ;模式2显示完毕?

  INC  DSP_CNT   ;显示下一模式

  MOV  RS_CNT,#00H

  LJMP A0

DSP_3: MOV  P3,#0FFH  ;显示模式3,列线全部置1

   MOV  A,#0FEH   ;行扫描码初值

 L3: MOV  P0,A   ;输出显示

  LCALL DELAY

  RL  A    ;行扫描码移位

  INC  RS_CNT

  MOV  R0,RS_CNT

  CJNE R0,#24,L3  ;模式3显示完毕?

  MOV  DSP_CNT,#00H ;显示下一模式

  MOV  RS_CNT,#00H

  LJMP A0

DELAY: MOV  R5,#10   ;延时子程序

D1:  MOV  R6,#20

D2:  MOV  R7,#248

  DJNZ R7,$

  DJNZ R6,D2

  DJNZ R5,D1

  RET

  END

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式