16X16点阵翻页程序
16_16点阵程序

DB 0FDH,0FFH,0FEH,0FBH,0C0H,01H,0DFH,0FBH,0BFH,0F7H,0FFH,0FFH,0FFH,0FFH,80H,03H;
DB 60H,03H,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FFH,7FH,0FFH,7BH,80H,01H,0FFH,0FFH;"生",2
DB 0FEH,0FFH,0FEH,0FFH,0FEH,0FFH,0C0H,07H,0DEH,0F7H,0DEH,0F7H,0C0H,07H,0DEH,0F7H;
AJMP WAIT
GO: DEC R1 ;取左边字节偏址
MOV A,R1
MOVC A,@A+DPTR
CLR TI
MOV SBUF,A
WAIT1: JBC TI,GO1
AJMP WAIT1
GO1: SETB P1.7 ;关行显示,准备刷新
NOP ;串口寄存器数据稳定
SETB P1.6 ;产生上升沿,行数据达入输出端
;每次8个字,入口时定义好DPTR
;
MOVDISP: MOV B,#00H ;向上移动显示,查表偏址暂存(从00开始)
DISLOOP: MOV R3,#07H ;移动速度
DISMOV: MOV R2,#00H ;从第0行开始
MOV R1,B
SETB TR0 ;开扫描(每次一帧)
WAITMOV:JBC 01H,DISMOV1 ;标志为1扫描一帧结束(16ms为一帧,每行1ms)
16x16led点阵源程序

{
unsigned char x,y;
for(x=t;x>0;x--)
for(y=110;y>0;y--);
}
sendbyte(tab[2*i+1+offset]);
sendbyte(tab[2*i+offset]);
nss=1;
delayms(3);
}
}
}
/*************************定时器T0初始化*****************************************/
void delayms(unsigned char t);
void init();
/***********************主函数开始********************************************/
void main()
{
unsigned char i;
***************************************************************************/
/*****************************头文件声明**************************************/
writeadd(2,offset);
}
/***************************** 发送数据给595********************************/
void sendbyte(unsigned char dat)
16×16点阵显示汇编程序

ORG 0000HAJMP READYORG 000BHAJMP INT_0;只需更改点阵数据和要显示的总字数READY:MOV P0,#0FFHMOV P1,#0FFHMOV P2,#0FFHMOV P3,#0FFHMOV SP,#70HMOV 36H,#2DMOV 37H,#00H;************************************************ MOV 3AH,#17D ;设置要显示的总字数;************************************************ LCALL DATA_CHUSHISETB EASETB ET0MOV TMOD,#01HMOV TH0,#0A6HMOV TL0,#00HSETB TR0;主程序MAIN:ACALL DISP_READYACALL KEYAJMP MAIN;*********************************************** DA TA_CHUSHI:MOV 35H,#00HMOV 38H,#00HMOV 39H,#01H ;初始化时已显示第一个字MOV 3BH,#0A0H ;暂存r0指向地址MOV DPTR,#DATA1MOV R0,#0A0H ;点阵数据存放地址MOV 30H,#32D ;数据字节数SEND_DATA0:MOV A,#00HMOVC A,@A+DPTRMOV @R0,AINC R0INC DPTRDJNZ 30H,SEND_DA TA0;*********************************************** MOV R0,#0C0H ;点阵数据存放地址MOV 30H,#32D ;数据字节数SEND_DATA1:MOV A,#00HMOVC A,@A+DPTRMOV @R0,AINC R0INC DPTRDJNZ 30H,SEND_DA TA1;*********************************************** MOV DPTR,#DATA1+32MOV R0,#80H ;点阵数据存放地址MOV 30H,#32D ;数据字节数SEND_DATA2:MOV A,#00HMOVC A,@A+DPTRMOV @R0,AINC R0INC DPTRDJNZ 30H,SEND_DA TA2RET;*********************************************** KEY:MOV P3,#0FFHMOV A,P3ANL A,#00000011BCJNE A,#00000011B,KEY_PANDUANRETKEY_PANDUAN:MOV 34H,AACALL KEY_DELAYMOV A,P3ANL A,#00000011BCJNE A,34H,KEY_EXITACALL KEY_CHULIKEY_EXIT: RET;***************************KEY_CHULI:JB ACC.0,KEY_2MOV A,37HADD A,#40HMOV 37H,ALCALL DATA_CHUSHIRETKEY_2: JB ACC.1,KEY_CHULI_EXITINC 36HINC 36HMOV A,36HCJNE A,#14D,CHANGE_36HMOV A,#2DCHANGE_36H:MOV 36H,AMOV 35H,#00HRETKEY_CHULI_EXIT:RET;*************************** KEY_DELAY:DL Y_LP1: MOV R1,#20MOV R6,#50DL Y_LP2:NOPNOPNOPDJNZ R6,DL Y_LP2DJNZ R7,DL Y_LP1END_DL YMS:RET;***************************;显示程序DISP_READY:MOV R0,3BHMOV 30H,#16DMOV 31H,#00HDISP:MOV A,@R0MOV P0,AINC R0MOV A,@R0MOV P2,AMOV P1,31HACALL DISP_DELAYMOV P0,#00HMOV P1,#0FFHMOV P2,#00HINC 31HINC R0DJNZ 30H,DISPDISP_EXIT:RET;显示延时DISP_DELAY:MOV 32H,#2D1:MOV 33H,#150DJNZ 33H,$DJNZ 32H,D1RET;中断处理程序INT_0:PUSH ACCMOV TH0,#0A6HMOV TL0,#00HINC 35HMOV A,35HCJNE A,36H,INT0_EXITMOV 35H,#00HACALL WHICH_WAYINT0_EXIT:POP ACCRETI;********************************************* WHICH_W AY:MOV A,37HCJNE A,#00H,WAY2ACALL YIDONG1RETWAY2: CJNE A,#40H,WAY3ACALL YIDONG2RETWAY3: CJNE A,#80H,WAY4ACALL YIDONG3RETWAY4: ACALL YIDONG4RET;********************************************* YIDONG1: MOV 50H,#0A1HMOV 51H,#0C1HMOV 3CH,#16DINC 38HMOV A,38HCJNE A,#16D,YIDONG1_THEN1MOV 38H,#00HINC 39HMOV A,39HCJNE A,3AH,YIDONG1_THENMOV 39H,#00HMOV DPTR,#DATA1YIDONG1_THEN:MOV 3CH,#32DMOV R1,#0C0HYIDONG1_SEND_DA TA:MOV A,#00HMOVC A,@A+DPTRMOV @R1,AINC R1INC DPTRDJNZ 3CH,YIDONG1_SEND_DA TAMOV 3CH,#16DYIDONG1_THEN1:MOV R1,51HMOV A,@R1RLC AMOV @R1,ADEC R1MOV A,@R1RLC AMOV @R1,AMOV R1,50HMOV A,@R1RLC AMOV @R1,ADEC R1MOV A,@R1RLC AMOV @R1,AINC 50HINC 50HINC 51HINC 51HDJNZ 3CH,YIDONG1_THEN1RET;********************************************* YIDONG2:MOV 50H,#0A0HMOV 51H,#80HMOV 3CH,#16DINC 38HMOV A,38HCJNE A,#16D,YIDONG2_THEN1MOV 38H,#00HINC 39HMOV A,39HCJNE A,3AH,YIDONG2_THENMOV 39H,#00HMOV DPTR,#DA TA1YIDONG2_THEN:MOV 3CH,#32DMOV R1,#80HYIDONG2_SEND_DA TA:MOV A,#00HMOVC A,@A+DPTRMOV @R1,AINC R1INC DPTRDJNZ 3CH,YIDONG2_SEND_DATAMOV 3CH,#16DYIDONG2_THEN1:MOV R1,51HMOV A,@R1RRC AMOV @R1,AINC R1MOV A,@R1RRC AMOV @R1,AMOV R1,50HMOV A,@R1RRC AMOV @R1,AINC R1MOV A,@R1RRC AMOV @R1,AINC 50HINC 50HINC 51HINC 51HDJNZ 3CH,YIDONG2_THEN1RET;********************************************* YIDONG3:INC 3BHINC 3BHMOV 30H,#01HINC 38HMOV A,38HCJNE A,#16D,YIDONG3_EXITMOV 3BH,#0A0HMOV 38H,#00HMOV 3CH,#32DMOV 50H,#0A0HMOV 51H,#0C0HYIDONG3_LOOP:MOV R1,51HMOV A,@R1MOV R1,50HMOV @R1,AINC 50HINC 51HDJNZ 3CH,YIDONG3_LOOPINC 39HMOV A,39HCJNE A,3AH,YIDONG3_THENMOV 39H,#00HMOV DPTR,#DATA1YIDONG3_THEN:MOV R1,#0C0HMOV 3CH,#32DYIDONG3_THEN2:MOV A,#00HMOVC A,@A+DPTRMOV @R1,AINC R1INC DPTRDJNZ 3CH,YIDONG3_THEN2 YIDONG3_EXIT:RET;********************************************* YIDONG4:DEC 3BHDEC 3BHMOV 30H,#01HINC 38HMOV A,38HCJNE A,#16D,YIDONG4_EXITMOV 3BH,#0A0HMOV 38H,#00HMOV 3CH,#32DMOV 50H,#0A0HMOV 51H,#80HYIDONG4_LOOP:MOV R1,51HMOV A,@R1MOV R1,50HMOV @R1,AINC 50HINC 51HDJNZ 3CH,YIDONG4_LOOPINC 39HMOV A,39HCJNE A,3AH,YIDONG4_THENMOV 39H,#00HMOV DPTR,#DATA1YIDONG4_THEN:MOV R1,#80HMOV 3CH,#32DYIDONG4_THEN2:MOV A,#00HMOVC A,@A+DPTRMOV @R1,AINC R1INC DPTRDJNZ 3CH,YIDONG4_THEN2YIDONG4_EXIT:RET;*********************************************DA TA1:DB00H,00H,03H,00H,73H,7EH,13H,66H,0FH,0E6H,4FH,0E6H,73H,7EH,17H,66H,07H,0E6H,37H ,0FEH,3FH,66H,2BH,66H,23H,66H,63H,7EH,63H,66H,00H,00HDB00H,00H,0FH,0FEH,7FH,0FEH,30H,0B0H,07H,0FEH,44H,0B6H,67H,0FEH,33H,0FCH,07H,0F CH,17H,0FCH,16H,04H,37H,0FCH,36H,62H,6FH,0FFH,20H,60H,00H,60HDB00H,00H,7EH,00H,7FH,0FCH,24H,84H,3CH,84H,3CH,84H,24H,84H,24H,84H,3CH,0FCH,24H ,00H,27H,48H,7FH,6CH,74H,0C6H,05H,86H,05H,02H,00H,00HDB00H,00H,06H,60H,06H,60H,06H,60H,66H,64H,26H,6CH,36H,6CH,36H,6CH,16H,68H,1EH,78 H,16H,60H,06H,60H,06H,60H,7FH,0FEH,7FH,0FEH,00H,00HDB00H,00H,18H,60H,18H,60H,1BH,0FEH,7DH,0FEH,7CH,60H,19H,60H,1BH,0FCH,3CH,8CH,7 8H,0C8H,18H,0D8H,18H,70H,18H,70H,3BH,0DEH,33H,06H,00H,00HDB00H,00H,01H,90H,01H,98H,01H,88H,7FH,0FEH,7FH,0FEH,03H,0C0H,07H,0C0H,05H,0E0H,0 DH,0B0H,19H,98H,31H,9CH,61H,8EH,01H,80H,01H,80H,00H,00HDB00H,00H,19H,98H,19H,98H,08H,30H,7FH,0FEH,60H,06H,60H,06H,1FH,0F8H,00H,0F0H,00H, 80H,7FH,0FEH,40H,80H,00H,80H,00H,80H,03H,80H,00H,00HDB00H,00H,00H,60H,7CH,20H,6BH,0FEH,6BH,02H,79H,04H,79H,0FCH,68H,00H,6FH,0FEH,64 H,0D0H,7CH,0D0H,78H,0D0H,60H,92H,63H,13H,66H,1EH,00H,00HDB00H,00H,18H,60H,18H,60H,17H,0FEH,30H,00H,33H,0FEH,70H,00H,53H,0FEH,12H,00H,10H,00H,13H,0FCH,13H,04H,13H,04H,13H,0FCH,13H,04H,00H,00HDB02H,00H,03H,00H,1FH,0F8H,10H,08H,1FH,0F8H,10H,08H,1FH,0F8H,10H,08H,1FH,0F8H,00 H,00H,0DH,88H,2CH,0CCH,6CH,16H,64H,30H,07H,0E0H,00H,00HDB00H,00H,00H,00H,3FH,0FCH,21H,84H,01H,80H,01H,80H,01H,80H,01H,80H,01H,80H,01H,80 H,01H,80H,01H,80H,41H,82H,7FH,0FEH,00H,00H,00H,00HDB00H,00H,0CH,00H,7DH,0FCH,19H,84H,19H,84H,7FH,0FCH,7CH,00H,19H,0FCH,3DH,0FEH, 3EH,20H,79H,0FCH,59H,0FCH,18H,20H,19H,0FEH,1BH,0FEH,00H,00HDB00H,00H,00H,7CH,3FH,0F0H,03H,80H,06H,38H,1FH,0E0H,1FH,90H,07H,18H,3DH,0FCH,1F H,0FEH,00H,90H,1CH,98H,30H,8CH,63H,86H,03H,80H,00H,00HDB00H,00H,00H,0C0H,00H,0C0H,7EH,0FEH,06H,0FEH,25H,84H,35H,2CH,1CH,20H,18H,60H,1 CH,70H,16H,70H,36H,0D8H,60H,0CCH,63H,86H,03H,02H,00H,00HDB00H,00H,20H,80H,33H,0BEH,32H,26H,12H,26H,02H,26H,72H,26H,12H,26H,12H,26H,13H,0A 6H,17H,0ACH,12H,20H,10H,20H,3FH,0FEH,41H,0FEH,00H,00HDB00H,00H,08H,0C0H,19H,0FCH,3BH,0FCH,3EH,6CH,58H,60H,19H,68H,1BH,64H,1EH,0E2H,1 8H,0C0H,04H,88H,34H,0CCH,34H,16H,27H,0F0H,27H,0F0H,00H,00HDB00H,00H,00H,00H,04H,00H,0EH,00H,0EH,00H,0EH,00H,0EH,00H,0EH,00H,0EH,00H,04H,00 H,00H,00H,0EH,00H,0EH,00H,00H,00H,00H,00H,00H,00HEND。
16×16点阵汉字设计-左移-右移-翻页-上移-下移-多种方式

一、设计依据16x16点阵需要32个驱动,分别为16个列驱动及16个行驱动。
每个行与每个列可以选中一个发光管,共有256个发光管,采用动态驱动方式。
每次显示一行后再显示下一行。
本设计是利用实验仪上的16×16 LED点阵显示器,编写显示英文、汉字字符程序并进行显示,最好能移动显示。
要求在本设计过程中,通过设计合适的硬件电路及对应的软件,实现上述的控制过程,同时写出合格的课程设计说明书。
二、要求及主要内容1.硬件电路设计(1)完成89C51应用系统设计(晶振电路,上电复位电路等)(2)利用单片机I/O口或以扩展锁存器的方式控制点阵显示。
掌握单片机与16×16点阵块之间接口电路的设计方法。
2.程序设计掌握单片机与16×16点阵块之间接口电路的设计方法及编程要求完成主程序的设计及对应的子程序设计。
3.选芯片, 元件按设计连线4.完成子程序调试5.完成总调试三、途径和方法综合运用单片机和电子电路相关知识,实现本次设计。
进行程序设计时先画流程图再进行程序设计。
子程序调试按以下步骤进行:(1)实验板与PC机联机。
(2)利用实验系统16×16点阵实验单元,以两种方式控制点阵显示。
要求编制程序实现汉字点阵循环显示。
点阵时钟摘要LED点阵显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。
它具有发光效率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。
并广泛的应用于公交汽车,码头,商店,学校和银行等公共场合的信息发布和广告宣传。
LED显示屏经历了从单色,双色图文显示屏到现在的全彩色视频显示屏的发展过程,自20世纪八十年代开始,LED显示屏的应用领域已经遍布交通、电信、教育、证券、广告宣传等各方面。
LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等。
文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。
8 16X16LED点阵显示程序

16×16按字显示程序:;P0和P2口输出字型码,P1口输出列线扫描。
ORG 0000HSJMP LOOPORG 0080HLOOP:MOV A,#00H ;开机初始化,清除画面MOV P0,A ;清除P0口ANL P2,#00 ;清除P2口MOV R2,#200D100MS: MOV R3,#250 ;延时100毫秒DJNZ R3,$DJNZ R2,D100MSMOV 20H,#00H ;字型码指针赋初值L100: MOV R1,#10 ;每个字的停留时间L16: MOV R6,#16 ;每个字16个16位码MOV R4,#00H ;列线扫描指针清零,接4-16译码器,。
MOV R0,20H ;字型码指针存入R0L3: MOV A,R4 ;列线扫描指针存入AMOV P1,A ;列线扫描输出INC R4 ;扫描指针加1,指向下一列MOV A,R0 ; 取码指针存入AMOV DPTR,#TABLE ;取数据表的上半部分的代码MOVC A,@A+DPTRMOV P0,A ; 输出到P0INC R0 ;取字型码指针加1,取下一个码。
MOV A,R0MOV DPTR,#TABLE ;取数据表下半部份的代码MOVC A,@A+DPTRMOV P2,A ;输出到P2口INC R0 ;取字型码指针加1,取下一个码。
MOV R3,#02 ;扫描1毫秒DELAY2:MOV R5,#248DJNZ R5,$DJNZ R3,DELAY2MOV A,#00H ;清除屏幕MOV P0,AANL P2,#00HDJNZ R6,L3 ;一个字16个码是否完成?DJNZ R1,L16 ;每个字的停留时间是否到了?MOV 20H,R0 ;取码指针存入20H(静态显示)CJNE R0,#224,L100 ;7个字224个码是否完成?JMP LOOP ;反复循环16×16滚动显示程序:ORG 0000HSJMP LOOPORG 0080HLOOP:MOV A,#00H ;开机初始化,清除画面MOV P0,A ;清除P0口ANL P2,#00 ;清除P2口MOV R2,#200D100MS: MOV R3,#250 ;延时100毫秒DJNZ R3,$DJNZ R2,D100MSMOV 20H,#00H ;字型码指针赋初值L100: MOV R1,#10 ;每个字的停留时间L16: MOV R6,#16 ;每个字16个16位码MOV R4,#00H ;列线扫描指针清零,接4-16译码器,。
16X16_点阵方案

1.八位移位寄存器74HC595级联送数据(列):2.三八译码器74LS138级联选通行(即采用行扫描):3.与单片机的连接:4:LED点阵的焊接:5:74HC595资料:74HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。
具有8位移位寄存器和一个带锁存功能的存储器;三态输出功能。
移位寄存器和存储器是分别的时钟,两者独立工作。
数据在SHcp(移位寄存器时钟输入)的上升沿输入到移位寄存器中,在STcp(存储器时钟输入)的上升沿输入到存储寄存器中去。
如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。
移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE为低电平时,存储寄存器的数据输出到总线,但是OE高电平不影响串行输出(即Q7’)。
由于它自带锁存器,所以其数据在移位寄存器中的移位与锁存器的输出是独立的,当数据移位时,可以保持锁存器输出的数据不改变,等所有8位数据全部串入完成移位操作后,一次性的将数据打入锁存器中,从而实现了并行输出的同步改变。
每最新输入一个数据就放在Q0,Q0的数据被挤到Q1,Q1的数据被挤到Q2……以此类推,Q7的数据被挤出74HC595从Q7’输出。
Q7'也会串行输出移位寄存器中高位的值即Q7的值,也就是说Q7’输出的和Q7一样。
管脚说明:Q0—Q7(Q0为15脚,Q1-Q7分别为1-7): 八位并行输出端DS(14脚):串行输入端Q7'(9脚): 串行输出端(级联时接下一个的串行输入端DS)MR(10脚): 复位引脚,低电平时将移位寄存器的数据清零。
一般情况下接Vcc。
SHCP(11脚):移位寄存器时钟输入引脚,每一个上升沿时数据寄存器的数据移一位。
Q0-->Q1-->Q2-->...-->Q7;下降沿移位寄存器数据不变。
16 16点阵显示程序

16 16点阵显示程序以下是程序.#include "config.h"#define DOTLED_LINE_PORT PORTB#define DOTLED_LINE_DDR DDRB#define DOTLED_LINE_PIN PINB#define DOTLED_LINE_SCKT PB1#define DOTLED_LINE_SCKH PB5#define DOTLED_LINE_SDA PB3#define DOTLED_ROW_PORT PORTC#define DOTLED_ROW_DDR DDRC#define DOTLED_ROW_PIN PINC#define DOTLED_ROW_A0 PC0#define DOTLED_ROW_A1 PC1#define DOTLED_ROW_A2 PC2#define DOTLED_ROW_A3 PC3#define DOTLED_ROW_E PC4uint8 font[] = {/*-- 调入了一幅图像:这是您新建的图像 --*//*-- 宽度x高度=16x16 --*/0x00,0x00,0x00,0x00,0x08,0x38,0x18,0x44,0x08,0x44,0x08,0x04,0x08,0x08,0x08,0x10, 0x08,0x20,0x08,0x40,0x08,0x40,0x08,0x40,0x3E,0x7C,0x00,0x00,0x00,0x00,0x00,0x00 };static void TransmitByte(uint8 byte);static void SelectRow(uint8 row);static void FlipLatchLine(void);static void TransmitByte(uint8 byte){uint8 i;for(i = 0 ; i < 8 ; i ++)if(byte & (1 << i)){DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SDA);}else{DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SDA);}//__delay_cycles(100);DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SCKH);//__delay_cycles(100);DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SCKH);//__delay_cycles(100);}}static void SelectRow(uint8 row){//row -= 1;row |= DOTLED_ROW_PIN & 0xe0;DOTLED_ROW_PORT = row;}static void FlipLatchLine(void){DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SCKT);DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SCKT);}void InitDotLedPort(void){DOTLED_LINE_PORT &= ~(_BV(DOTLED_LINE_SCKT) | _BV(DOTLED_LINE_SCKH));DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SDA);DOTLED_LINE_DDR |= _BV(DOTLED_LINE_SCKT) | _BV(DOTLED_LINE_SCKH) | _BV(DOTLED_ LINE_SDA);DOTLED_ROW_PORT |= 0x1f;DOTLED_ROW_PORT &= 0xf0;DOTLED_ROW_DDR |= 0x1f;}void EnableRow(boolean IsEnable){if(IsEnable)DOTLED_ROW_PORT &= ~_BV(DOTLED_ROW_E); }else{DOTLED_ROW_PORT |= _BV(DOTLED_ROW_E); }}void PrintDotLed(uint8 * buffer){uint8 i , tmp;for(i = 0 ; i < 16 ; i ++){tmp = *buffer ++;TransmitByte(~tmp);tmp = *buffer ++;TransmitByte(~tmp);SelectRow(i);FlipLatchLine();}}void main(void){InitDotLedPort();EnableRow(TRUE);while(1){PrintDotLed(font);__delay_cycles(5000);}}//--------------------------------------------------------------------------- config.h文件#ifndef _CONFIG_H#define _CONFIG_H//#define GCCAVR#define CPU_CYCLES 7372800L#ifndef GCCAVR#define _BV(bit) (1 << (bit))#endif#define MSB 0x80#define LSB 0x01#define FALSE 0#define TRUE 1typedef unsigned char uint8;typedef unsigned int uint16;typedef unsigned long uint32;typedef unsigned char boolean;#include <ioavr.h>#include <inavr.h>#include "dotled.h"#endif//--------------------------------------------------------------------------- 16 16点阵显示电路。
计算机接口程序设计-16X16点阵LED显示

信息工程学院接口技术课程设计论文(2008~2009学年第 2 学期)论文题目:_点阵LED显示系统设计_姓名:学号:专业:计算机科学与技术年级班级:06 级 3 班指导教师:蒲攀完成日期:2009年7月10日成绩:摘要本论文主要介绍的是16×16点阵LED显示系统。
硬件部分主要使用星研ES598PCI 实验箱中的可编程并行接口芯片8155,可编程并行接口芯片8255,16×16点阵LED,8位开关等连接组成点阵LED显示控制系统的基本电路。
软件部分采用了汇编语言编写程序代码,通过判断、跳转、循环等基本技术实现LED显示点阵汉字,汉字的滚动显示;并用8位开关结合8155,实现汉字滚动显示速度和方向的控制等。
该系统显示直观,工作稳定,操作简单,与商用LED显示具有类似的显示和滚动原理,具备较强的实用价值。
关键词:点阵LED显示,16×16 LED,星研ES598PCI,8155,8255SummaryThis thesis mainly describe the LED system with 16×16. The hardwares rely on programmable parallel interface chip 8155 and 8255, LED system with 16×16, 8-bit switches of STAR ES598PCI to compose the basic electrocircuit of LED control system. The software is written in assemble language. The Chinese character rolling display is realized through determination, jumping and looping. The speed and direction of rolling is controlled with 8155 along with the 8-bit switch. This system is intuitionistic, works steadily, and is easy to manipulate. It shares the same theory of displaying and rolling with the commercial LED system, which means it have a strong use value.Keyword:LED display system, 16×16 LED, STAR ES598PCI, 8155, 8255目录1. 引言.............................................................................................................. - 5 -2. 设计环境....................................................................................................... - 5 -3. 设计要求....................................................................................................... - 6 -4. 总体设计....................................................................................................... - 6 -5. 硬件设计....................................................................................................... - 6 -5.1. 16×16点阵LED ...................................................................................... - 7 -5.2.可编程并行接口芯片8255........................................................................... - 8 -5.3.可编程并行接口芯片8155........................................................................... - 9 -5.4.总体电路构架......................................................................................... - 10 -6. 软件设计......................................................................................................- 11 -6.1.主程序流程.............................................................................................- 11 -6.2.显示子程序流程...................................................................................... - 12 -6.3.重复显示流程......................................................................................... - 12 -6.4.横/纵向显示流程 .................................................................................... - 13 -6.5.按键测试流程......................................................................................... - 15 -6.6.延时流程 ............................................................................................... - 15 -7. 系统测试..................................................................................................... - 16 -8. 总结............................................................................................................ - 17 -引言1. 引言LED(Light Emitting Diode),发光二极管,简称LED,,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。