hi ,你好,我是04级电子信息毕业,我的毕业论文写的是《LED显示屏设计》,可能我们选到一个题目了,包括硬件电路、信号处理、汇编语言的代码,呵呵以下为目录,可供参考,禁止抄袭,如果觉得好,给分,我发论文给你。目录已经发到你邮箱了摘要: 本设计以89c51单片机为核心,采用点阵图形显示器显示汉字,通过时序控制电路,控制信号电路,显示驱动电路等完成显示。Abstract: This design take the 89c51 monolithic integrated circuit asa core, uses the lattice graph monitor demonstration Chinesecharacter, through the sequential control electric circuit, controlsthe signal circuit, demonstrated the actuation electric circuit and soon completes the demonstration.关键字:列显示驱动、时序控制电路、串行异步通信方式、显示驱动电路、控制信号电路目 录绪 论……………………………………………………1 第1章 设计思想………………………………………2 第2章 设计方案………………………………………4 第3章 基本结构………………………………………5 第4章 硬件部分……………………………………… 微机硬件电路………………………………… 显示控制电路…………………………… 显示驱动电路…………………………… 控制信号……………………………………… 与列显示数据有关的信号…………… 行号锁存器打入信号………………… 区分上写部分的控制信号…………… 清屏信号………………………………14 第5章 软件部分………………………………………15 理论分析………………………………………15 程序设计……………………………………… 流程图…………………………………………22 . 1主程序流程图…………………………22 . 2 中断服务程序流程图…………………23第6章 结论……………………………………………24参考文献…………………………………………………25致谢………………………………………………………程序设计 ORG 0000H SJMP MAIN :跳转到主程序MAIN ORG 0023HSIENTRY: AJMP1 SIS :串行通信中断入口,跳转到 :串行通信中断服务程序SISMAIN: MOV SP,60 :设栈 MOV R0,80H :指向RAM区 MOV R1,00 :R0,R1:RAM指针 MOV DPTR,1000H :EPROM的数据首地址 :DPTR:EPROM指针REPROM: MOV A,00 MOVC A,@A+DPTR :从EPROM1000H读数据 INV DPTR :从EPRON读200H个字节 :数据到RAM PUSH DPL :DPTR进栈 PUSH DPH MOV DPH,R0 :DPTR换成RAM指针 MOV DPL,R1 MOVX @DPTR,A :数据送RAM INC DPRT MOV R0,DPH :存DPTR MOV R1,DPL POP DPH :弹出DPTR(EPROM地址) POP DPL MOV R2,DPH :R2:判是否到1200H CJNE R2,12H,REPROM :未传送完200H个字节转回SINIT: MOV TMOD,21H :设T1方式2,T0方式1 MOV TH1,FAH :设T1定时μs SETB 8EH :置TCONBIT6,打开T1 MOV TH0,00 :置T0定时 MOV TL0,00 MOV R6,7EH MOV R7,00H MOV SCON,50H :设SCON为50H,方式1,REN=1 MOV PCON,00 :设PCIN为0 MOV 50H,82H MOV 51H,00 SETB AFH :开中断 SETB ACH :允许串行通信中断 SETB 9CH :SCONBIT4,REN=1NEXT CLRC MOV A,R7 :R7初值为0 ADD A,00 MOV R7,A MOV A,R6 :R6初值为7E ADC A,02H MOV A,51H :51初值为0 XRL A,R7 :A=R7? JNZ DISP1 :不等,转到DISP1 MOV A,50H :等,50初值为82H XRL A,R6 :A=R6? JNZ 04H :不等,转到DISP1 MOV R6,#80H :等,R6=80H MOV R7,00DSP1: MOV R0,00TM256 MOV R3,00TM512 MOV R2,00 MOV DPH,R6 :80H MOV DPL,R7 :00HCONT2: MOV R1,00 CLR B4H :P3BIT4=T0,上下控制=0DISPH: MOVX A@DPTR :读入RAM INC DPTR INC R1 :R1:字节计数 MOV P1,A :向P1输出一个RAM字节数据 CLR B3H :P3BRT3=INT1 SETB B3H :INT1是移位寄存器的打入脉冲 CLR B5H :P3BRT5=T1 SETB B5H CLR B5H :T1一共输出8个脉冲 SETB B5H :即移位8次 CLR B5H :T1是移位寄存器的移位脉冲 SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CJNE R1,10H,DISPH :R1<>10H,转到DISPH :10H=16D,16*8=128 PUSH DPH :若R1=10H,则DPTR进栈 PUSH SPL SETB B4H :P3BIT4=T0,上下控制=1 CLRC MOV A,DPL ADD A,P0H :跳过F0H个字节 MOV DPL,A :原DPTR已为10H,10H+F0H指向 MOV A,DPH :256字节之后 ADC A,00 : 即指向下一半 MOV DPH,A DISPL: MOVX A,@DPTE INC DPTR INC R1 MOV P1,A CLR B3H SETB B3H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CLR B5H SETB B5H CJNE R1,20H,D4H :R1<>20H,转到DISPL CLR B2H :P3BIT2=INT0 SETB B2H MOV P1,R2 :R2输出到P1 MOV DPTR,0000 MOVX @DPTR,A :只是让地址动作 INC R2 POP DPL POP DPH CINE R2,10H,CONT1 :R2<>10H转到CONT1 INC R3 :R2=10H CINE R3,FFH,TIM256 :R3<>FFH,转到TIM256 INC R0 :R3=FFH CINE R0,02H,TIM512 :R0<>02H,TIM512 LJMP NEXT TIM512: LJMP TM512 :$21CONT1: LJMP CONT2TIM256: AJMP0 TM256 ORG 0800H :串行通信服务程序SIS: CLR AFH :IE BIT7关中断 CLR 98H :SCONBIT0RI清接收中断 MOV A,SBUF XRL A,3FH :3FH传输起始标 JZ DTSTART :SBUF=3FH,开始 SJMP CLOSE :否则结束DTSTART: MOV DPTR,#0001H :只是让地址动作MOVX @DPTR,A :关00译码,开01译码 :向74LS595送清除信号SRCLR* CLR B2H :把清零的结果打入列输出锁存器 :完成关显示操作 MOV DPTR,#8000H MOV SBUF,AWAITT: JNB 99H,WAITT :SCONB1TI=0,等待发射完成 CLR 99H :SCONB1TI=1WAITR: JNB 98H,WAITR :SCONB0RI=0,等待接受完成 CLR 98H :SCONB0RI=1 MOV A,SBUF :传输字节计数L MOV 50H,ACONTINUE: MOV SBUF,AWARTT1: JBC 99H,WARTT1 :SCONB1TI=1,发射完成 SJMP WAITT1 :SCONB1TI=0,等待发射完成WAITTR1: JBC 98H,RDATA :SCONB0RI=1,接收完成 SJMP WarrR1 :SCONB0RI=0,等待接收完成RDATA: MOV A,SBUF :读入显示数据 MOV @DPTR,A INC DPTR MOV A,DPH XRL A,50H JNZ CONTINUE :(A)<>(50H),继续接收 MOV A,DPL :(A)=(50H) XRL A,51H JNZ CONTINUE :(A)<>(51H),继续接收 MOV ASBUF,A :(A)=(51H)WAITTE: JNB 99H,WAITTE :SCONB1TI=0,等待发射完成 CLR 99H :SCONB1TI=1 MOV DPTR,8000H MOV R0,20H MOV R1,10H MOV R6,80H MOV R7,00CLOSE: SETB AFH :IE RETI ORG 0800H DISPLAYDATA:DB 00,00,00,00,00,00,00,00,00,00