系统设计采用Windows操作系统下,开启文本编辑窗口,客户区内像素点采用与实际LED点阵显示屏像素点相同,功能类似Word文档编辑工具,包括编辑模块、绘图模块、文字编辑模块、颜色控制模块、显示效果加载模块、预览模块、信息下载模块。1、编辑模块
1.1 方案论证 从理论上讲,不论显示图形还是文字,只要控制与组成这些图形的或文字的各个点所在位置相对的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光电亮灭的方法称为静态驱动显示方式。16×16LED的点阵共
摘要:由于普通LED点阵显示屏动态显示通常采用硬件扫描驱动,这在一些需要特殊显示的场合显得不够灵活。文中提出了一种利用PC机和单片机的通讯来实现显示屏灵活的动态显示和远程监控的设计方法,同时该方法还可以将显示内容在PC机上进行预览。
系统软件是由用C++ Builder 编写的上位PC控制及通信软件和C语言编写的显示屏控制软件两部分组成。硬件处理器选用AT89S51。显示屏可以显示1个16×16点阵汉字,显示方式有上移、下移、左移、右移、替换。关键字:单片机;LED点阵;RS-232;The
74LS164再接ULN2803以对电流放大后再接16×16点阵。74LS164的移位触发端A、B可以接上一片的相邻输出端,Q1或Q7这样实现能实现多个芯片连续移位,以实现显示屏汉字从右到左或从左到右的移动显示功能。由于百度知道不能插入图片
基于51单片机的LED点阵显示屏系统的设计与实现的论文
MAIN:MOV A,R0 MOV R2,#00H MOV SP,#60H MOV R3,A MOV R4,#16 MOV DPTR,#WORDTAB START:JNB P1.0,SLOW JNB P1.1,SOON MOV R1,#00H SCAN8:MOV A,R1 SWAP A MOV P3,A SWAP A INC A MOV R1,A
include
你的程序没有问题的,估计是,你的程序与你的开发板上74HC595的引脚不符吧。下图是根据你的程序画的仿真图,程序没有变,只是把显示的图形数据变了一下,显示出菱形。u8 code duanled[]= { /*-- 调入了一幅图像:这
一.基于51的点阵屏显示:(1)点亮第一个8*8点阵:1.首先在Proteus下选择我们需要的元件,AT89C51、74LS138、MATRIX-8*8-GREEN(在这里使用绿色的点阵)。在Proteus 6.9中8*8的点阵总共有四种颜色,分别为MATRIX-8*8-GRE
51单片机开发板led点阵程序
显示控制的过程是先从数据存储器读得字模数据,再通过单片机的串行口或并行口将数据写给LED点阵片,然后再行扫描。动态扫描方案和静态显示方案相比节省驱动元件,但要求刷新频率高于50 Hz,以避免显示的图像或文字出现闪烁。由于
void lcd1602_Init(){lcd1602_WriteCmd(0x38); //显示模式为8位2行5*7点阵lcd1602_WriteCmd(0x0c); //display enable,flag enable,flash enable,lcd1602_WriteCmd(0x06); //flag move to right,screen don't move
//void Jump_Word(uchar a) 立即跳显示一个字或一张图案//void M_Word(uchar a) 卷帘出显示一个字或一张图案//void M_Words(number) 显示几个交换的字//void UP_Run(number) 向上滚屏n个字//void L_Removeout(number)
第一步:先制作字库,少量汉字可以利用画笔工具,在画笔上写上16*16的汉字(最好是宋体),在放大功能下查看每个像素,黑色为1,白色为0,按照列或行依次读取。一个汉字的点阵用32个字节表示。第二步:将上述汉字点阵制成
51单片机如何储存LED点阵屏显示的图案并且可以实现调用出来,求程序?
你好:在void set(void)里少了P2的设置.在下面的循环中,n=0和n=7时,显示相同,所以 点阵第一行总是不对,可能同第8行相同.可在n=7后加延时,以错开循环到n=0时,P2,P1的值.for(n = 0; n < 8; n++){ P2=
从程序上看是一个定时器1定时累加移动变量,没有硬件看不出什么问题,可能时操作太快了,试试把显示循环延迟调大点或修改定时器1中断值。
{ for(i=0;i<8;i++){ Ser_IN(a[i]);//8X8点阵列扫描 Ser_IN(b[i]);//8X8点阵行扫描 Par_OUT();//74HC595输出显示 } i=0;} } 程序里面还要包含"74HC595.H"把它放在工程文件夹里面就可以了。"74HC595.
1.首先在Proteus下选择我们需要的元件,AT89C51、74LS138、MATRIX-8*8-GREEN(在这里使用绿色的点阵)。在Proteus 6.9中8*8的点阵总共有四种颜色,分别为MATRIX-8*8-GREEN,MATRIX-8*8-BLUE,MATRIX-8*8-ORANGE ,MATRIX-
单片机 8*8点阵C51程序
这里给出一种基于Arduino平台的单片机数字0到9显示的程序代码,可供参考:c++ Copy code int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; //定义LED引脚 int numPins[][7] = { //定义数字
,显示9,1s后再重新屏示0.如此循环。(2)当按下停止孩钮后,数码管烟灭。7数码营实际上是由7只发光二极管组成,要显示0-9数字,首先确定数字与7只发光管(即PC的输出控制点)的关系。如要易示数字0,则需要a、b、c、d
static unsigned char index = 9; //图片刷新索引 TH0 = 0xFC; //重新加载初值 TL0 = 0x67;//以下代码完成LED点阵动态扫描刷新 P0 = 0xFF; //显示消隐 switch (i){ case 0: ADDR2=0; ADDR1=0; ADDR
这个程序可以循环显示0~9.#include
P1口为行,P2口为列;numb[10][8];//0~9的点阵数据 由下向上显示,即从 P1.7开始驱动行,然后是P1.6,,,P1.0;for(i=0;i<10;i++){ a=0x80;for(j=7;j>0;j--){ P1=a;P2=numb[i][j];de
源代码稍修改,然后把这个加进去就行了。。。int sec_cnt = 0;unsigned char timer0_cnt = 0;unsigned char sec1 = 0;void DelaySec(unsigned char sec){ sec_cnt = 0;while(sec_cnt < sec);} void Timer0In
51单片机88点阵显示0到9
avr的静态点阵 #include unsigned char a[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //控制低电平 unsigned char b[]={0xff,0x18,0x18,0xff,0x18,0x18,0x18,0xff}; //控制高电平 void delay(unsigned int cnt) { while(--cnt); } void main(void) { int i=0,n=0; DDRA=0xFF; DDRB=0xFF; while(1) { for (i=0;i<8;i++) { PORTA=a[i]; PORTB=b[i]; delay(300); } } } AVR的动态点阵 #include unsigned char a[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01}; //列高电平控制端 unsigned char b[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, //行低电平控制端 0x7e,0x76,0x76,0x00,0x00,0x76,0x76,0x7e, 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}; void delay(unsigned int cnt) { while(--cnt); } void main(void) { int i=0,n=0,k=0; DDRA=0xFF; DDRB=0xFF; while(1) { for(k=0;k<16;k++) { for(n=0;n<50;n++) { for (i=0;i<8;i++) //i循环8次进去下个语句 { PORTA=a[i]; PORTB=b[i+k]; delay(50); } } }8X8点阵LED工作原理说明 :8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮。 不知道你要实现什么样的显示,不过基本方法是一样的。我这有一个现成的8*8的程序,你可以根据这个去修改: 在8X8点阵LED上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。(要实现一根柱形的亮法:一根竖柱,对应的列置1,而行则采用扫描的方法来实现。 一根横柱,对应的行置0,而列则采用扫描的方法来实现。) 汇编源程序: ORG 00H START: NOP MOV R3,#3 LOP2: MOV R4,#8 MOV R2,#0 LOP1: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2 MOVC A,@A+DPTR MOV P3,AINC R2 LCALL DELAY DJNZ R4,LOP1 DJNZ R3,LOP2 MOV R3,#3 LOP4: MOV R4,#8 MOV R2,#7 LOP3: MOV P1,#0FFH MOV DPTR,#TABA MOV A,R2 MOVC A,@A+DPTR MOV P3,A DEC R2 LCALL DELAY DJNZ R4,LOP3 DJNZ R3,LOP4 MOV R3,#3 LOP6: MOV R4,#8 MOV R2,#0 LOP5: MOV P3,#00H MOV DPTR,#TABB MOV A,R2 MOVC A,@A+DPTR MOV P1,A INC R2 LCALL DELAY DJNZ R4,LOP5 DJNZ R3,LOP6 MOV R3,#3 LOP8: MOV R4,#8 MOV R2,#7 LOP7: MOV P3,#00H MOV DPTR,#TABB MOV A,R2 MOVC A,@A+DPTR MOV P1,A DEC R2 LCALL DELAY DJNZ R4,LOP7 DJNZ R3,LOP8 LJMP START DELAY: MOV R5,#10 D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 DJNZ R5,D2 RET TABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH TABB: DB 01H,02H,04H,08H,10H,20H,40H,80H END C51语言源程序 #include unsigned CHAR code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned CHAR code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; void DELAY(void) { unsigned CHAR i,j; for(i=10;i>0;i--) for(j=248;j>0;j--); } void DELAY1(void) { unsigned CHAR i,j,k; for(k=10;k>0;k--) for(i=20;i>0;i--) for(j=248;j>0;j--); } void main(void) { unsigned CHAR i,j; while(1) { for(j=0;j<3;j++) //FROM left to right 3 time { for(i=0;i<8;i++){ P3=taba[i]; P1=0xff; DELAY1();} } for(j=0;j<3;j++) //FROM right to left 3 time { for(i=0;i<8;i++) { P3=taba[7-i]; P1=0xff; DELAY1();}} for(j=0;j<3;j++) //FROM top to bottom 3 time { for(i=0;i<8;i++) { P3=0x00; P1=tabb[7-i]; DELAY1();}} for(j=0;j<3;j++) //FROM bottom to top 3 time { for(i=0;i<8;i++) { P3=0x00; P1=tabb[i]; DELAY1();}} } }
介绍了一款以单片机AT89S51为控制器的LED点阵显示屏系统的设计。该系统可实现中英文字符的显示和动态特效显示。并且可以通过级连的方式来扩大显示屏幕的尺寸以达到增加显示内容的目的。系统采用PC机作为上位机,上位机向单片机发送控制命令和上位机所存储的显示代码,AT89S51单片机接收并处理PC 机的控制命令以及显示代码,由显示驱动模块驱动一个16×16分辨率的LED点阵显示屏的扫描显示。PC机与单片机之间的通信采用RS—232C通信标准来实现。所选用的AT89S51单片机具有价格低廉程序写入方便的特点使得整个系统方便维护和检修。除此之外,该系统只占用了单片机少量的I /O口和内存,为系统留下了功能扩展的空间。
51和led点阵一般要用到动态扫描的方式,也就是显示的画面不是一下子就把整个画面的内容全部显示出来,而是逐行显示的,只不过显示的频率超过了50HZ 甚至更高,所以我们看起来是“不晃眼”的。也就是说,屏幕显示是由行显示组成的(即子程序)。行显示再细分就是有位显示组成,不过行显示就不用逐位显示了。其实行显示就是串入并出,即行显示是一下子就显示出来的。 我给你传一份资料你参考一下。。。。。。
你得提供电路,LED点阵是如何与单片机相连的?
好难啊,真的好难啊
我做过点阵显示,基于protues仿真的,有图有程序,仿真效果还不错,但没写成论文,要不?
给你一个源代码吧,自己分析,用汇编写的。本人编写后亲试过,只要一片C8052S的最少系统就能工作 驱动市售$5.0单元板(32*64)。 ;============================================ ; 32*64点阵屏左滚动显示n个汉字程序 ;============================================ D_FR0 EQU 40H ;第一个显示数据缓冲器 D_FR1 EQU 70H D_MB EQU 30H ;数据位移动次数寄存器 D_AM EQU 31H ;显示半角字个数寄存器 DAMT EQU 32H ;显示半角字个数倍数寄存器 OFFSET EQU 33H ;数据指针偏移量 RED0 BIT P1.4 RED1 BIT P3.1 RCK BIT P1.5 ;锁存信号线 SCK BIT P1.6 ;移位时钟信号线 EN BIT P1.7 ;消隐信号线 ;--------程序入口地址---------------- ORG 0000H JMP START ORG 0030H ;==================================== ; 初始化 ;==================================== START: CLR A MOV 60H,A MOV 61H,A MOV 62H,A MOV 63H,A MOV SP, #0AH ;修改堆栈指针 MOV R7, #5 MOV R0,#D_FR0 MOV R1,#D_FR1 ST1:MOV @R0,A MOV @R1,A INC R0 INC R1 DJNZ R7, ST1 ;40H-44H MOV R7, #20H MOV R0, #D_MB ST2:MOV @R0, A INC R0 DJNZ R7, ST2 ;寄存器清0 , MOV P1, #0ffH MOV DPTR,#TABLE1 MOV 62H,DPL MOV 63H,DPH MOV DPTR,#TABLE2 MOV 64H,DPL MOV 65H,DPH MOV DAMT,#1;显示的半角字的个数的倍数 MOV R4, #2 ;==================================== ; 主程序 ;==================================== MAIN: MOV R5, #16 ;扫描16行 MOV OFFSET, #00H ;数据指针偏移量清0 MA1:CALL QUSHU ;调用取数子程序 CALL DSEND ;调用发送子程序 clr EN ;关显示 inc P1 ;修改行值 CLR RCK SETB RCK ;锁存显示数据 setb EN ;开显示 DJNZ R5, MA1 ;16行未完继续 DJNZ R4, MAIN MOV R4,#5 ;移动速度 INC D_MB MOV A,D_MB CJNE A, #8,M_OUT MOV D_MB, #0 ;1个半角字符要移动8次 MOV A,#16 MOV DPL,62H MOV DPH,63H ADD A,DPL MOV DPL,A MOV 62H,DPL MOV A,DPH ADDC A,#00H MOV DPH,A MOV 63H,DPH MOV A,#16 MOV DPL,64H MOV DPH,65H ADD A,DPL MOV DPL,A MOV 64H,DPL MOV A,DPH ADDC A,#00H MOV DPH,A MOV 65H,DPH INC D_AM MOV A,D_AM CJNE A, #30,M_OUT ;显示的半角字符的个数 MOV D_AM, #00H DJNZ DAMT, M_OUT MOV DAMT, #1 ;显示的半角字的个数的倍数 MOV DPTR,#TABLE1 MOV 62H,DPL MOV 63H,DPH MOV DPTR,#TABLE2 MOV 64H,DPL MOV 65H,DPH MOV P1,#0ffH M_OUT: JMP MAIN ;=================================== ; 取一行数子程序 ;=================================== QUSHU: MOV R7,#9 MOV R0,#D_FR0 MOV DPL,62H MOV DPH,63H PUSH DPL PUSH DPH MOV A,OFFSET QUSHU1: ADD A,DPL MOV DPL,A MOV A,DPH ADDC A,#00H MOV DPH,A CLR A MOVC A,@A+DPTR MOV @R0,A INC R0 MOV A,#16 DJNZ R7,QUSHU1 POP DPH POP DPL MOV 62H,DPL MOV 63H,DPH QUSHU2: MOV R7,#9 MOV R0,#D_FR1 MOV DPL,64H MOV DPH,65H PUSH DPL PUSH DPH MOV A,OFFSET QUSHU3: ADD A,DPL MOV DPL,A MOV A,DPH ADDC A,#00H MOV DPH,A CLR A MOVC A,@A+DPTR MOV @R0,A INC R0 MOV A,#16 DJNZ R7,QUSHU3 POP DPH POP DPL MOV 65H,DPH MOV 64H,DPL INC OFFSET RET ;=================================== ; 数据发送子程序 ;=================================== DSEND: MOV R0,#D_FR0 ;第一个显示数据缓冲区地址放人R0 MOV R1,#D_FR1 MOV R6,#8 ;发送n字节(1行) DSE1:MOV R7,#8 ;每次发送8位 MOV 60H,@R0 MOV 61H,@R1 ;显示数据放入A CPL 60H cpl 61H;取反A DSE2: MOV A,60H RLC A ;将A的内容按位移入C MOV RED0,C ;将C的内容送数据总线 MOV 60H,A MOV A,61H RLC A MOV RED1,C MOV 61H,A CLR SCK SETB SCK ;输出移位脉冲 DJNZ R7, DSE2 INC R0 INC R1 ;修改地址指针 DJNZ R6, DSE1 ;--------屏幕左移一位--------------- MOV A,D_MB ;移动位次数放入A JZ TAMEND ;为0转移 MOV R7,D_MB ;移动位次数放入R7 MOV 60H,@R0 MOV 61H,@R1 cpl 60H ;移入的数据存入A CPL 61H DSE3:MOV A,60H RLC A ;将A的内容按位移入C MOV RED0,C ;将C的内容送数据总线 MOV 60H,A MOV A,61H RLC A MOV RED1,C MOV 61H,A CLR SCK SETB SCK ;输出移位脉冲 DJNZ R7, DSE3 ;移位次数未完继续 ;--------移位时间修正--------------- TAMEND: CLR C ;清C MOV A, #100 SUBB A,D_MB ;需要再延时的次数 JZ D_OUT MOV R7, A TA1: NOP NOP NOP NOP DJNZ R7, TA1 ;空操作(延时) D_OUT: RET ;==================================== ; 文字编码表 ;==================================== TABLE1: DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H,00H,0FCH,04H,45H,46H,28H,28H,10H,28H,24H,44H,81H,01H,02H,0CH DB 80H,80H,80H,0FCH,04H,48H,40H,40H,40H,40H,0A0H,0A0H,10H,08H,0EH,04H DB 00H,41H,26H,14H,04H,04H,0F4H,14H,15H,16H,14H,10H,10H,28H,47H,00H DB 00H,84H,7EH,44H,44H,44H,44H,0C4H,44H,54H,48H,40H,40H,46H,0FCH,00H DB 01H,21H,11H,09H,09H,01H,0FFH,04H,04H,04H,04H,08H,08H,10H,20H,40H DB 00H,08H,0CH,10H,20H,04H,0FEH,40H,40H,40H,40H,40H,42H,42H,3EH,00H DB 10H,10H,51H,51H,52H,54H,58H,50H,57H,54H,54H,54H,54H,14H,17H,14H DB 80H,80H,04H,0FEH,00H,80H,60H,24H,0FEH,44H,44H,44H,44H,44H,0FCH,04H DB 00H,01H,03H,03H,03H,03H,03H,01H,01H,01H,00H,01H,03H,01H,00H,00H DB 00H,80H,0C0H,0C0H,0C0H,0C0H,0C0H,80H,80H,80H,00H,80H,0C0H,80H,00H,00H DB 00H,40H,30H,17H,00H,02H,0F1H,10H,10H,10H,10H,11H,12H,28H,47H,00H DB 80H,40H,48H,0FCH,10H,10H,20H,0A0H,40H,40H,0A0H,10H,10H,06H,0FCH,00H DB 00H,3FH,21H,21H,3FH,21H,21H,21H,3FH,01H,01H,7FH,01H,01H,0FFH,00H DB 08H,0FCH,08H,08H,0F8H,08H,08H,08H,0F8H,00H,08H,0FCH,00H,04H,0FEH,00H DB 0FH,08H,08H,0FH,08H,08H,0FH,00H,0FFH,01H,09H,09H,09H,15H,23H,40H DB 0E0H,20H,20H,0E0H,20H,20H,0E0H,04H,0FEH,00H,20H,0F0H,00H,00H,06H,0FCH DB 42H,32H,12H,02H,9FH,62H,22H,0FH,18H,28H,0C8H,48H,48H,4FH,48H,40H DB 04H,3EH,24H,24H,0E4H,3CH,0A4H,0E4H,0A4H,0BCH,0A4H,0A4H,0A4H,0A4H,54H,88H DB 04H,04H,04H,04H,04H,7CH,04H,04H,04H,04H,04H,04H,1CH,0E4H,44H,00H DB 80H,80H,88H,98H,0A0H,0C0H,80H,80H,80H,80H,80H,80H,82H,82H,7EH,00H DB 01H,09H,09H,11H,11H,20H,03H,0CH,3FH,0C8H,0FH,08H,0FH,08H,0FH,08H DB 00H,20H,10H,0CH,24H,0C0H,00H,08H,0FCH,08H,0F8H,08H,0F8H,08H,0F8H,08H DB 01H,01H,7FH,41H,81H,02H,02H,05H,09H,18H,28H,48H,88H,0AH,0CH,08H DB 00H,00H,0FEH,02H,04H,00H,08H,18H,20H,0C0H,80H,40H,30H,0EH,04H,00H DB 04H,04H,04H,04H,44H,24H,24H,14H,14H,14H,14H,04H,04H,04H,0FFH,00H DB 40H,40H,40H,40H,44H,44H,48H,48H,50H,50H,60H,40H,40H,44H,0FEH,00H DB 04H,0EH,0F8H,08H,08H,0FEH,08H,1CH,1AH,29H,28H,48H,88H,08H,08H,08H DB 10H,10H,90H,50H,10H,90H,50H,14H,1EH,0F0H,10H,10H,10H,10H,10H,10H DB 22H,11H,11H,00H,7FH,40H,80H,1FH,00H,01H,0FFH,01H,01H,01H,05H,02H DB 08H,08H,10H,20H,0FEH,02H,04H,0E0H,40H,84H,0FEH,00H,00H,00H,00H,00H DB 00H,78H,4FH,54H,58H,63H,50H,48H,4FH,48H,68H,50H,41H,41H,42H,4CH DB 80H,40H,0FEH,02H,14H,0F8H,00H,08H,0FCH,0A0H,0A0H,0A0H,22H,22H,1EH,00H DB 06H,0F8H,11H,11H,0FFH,39H,55H,91H,11H,0FEH,24H,44H,28H,11H,2AH,44H DB 40H,84H,0FEH,24H,24H,0FCH,24H,44H,0FCH,40H,60H,0A0H,0A8H,22H,22H,1EH DB 01H,01H,01H,0FFH,01H,01H,01H,3FH,00H,02H,11H,50H,50H,90H,0FH,00H DB 00H,00H,04H,0FEH,00H,00H,10H,0F8H,00H,00H,80H,84H,12H,12H,0F0H,00H DB 82H,44H,29H,0FEH,10H,11H,7CH,10H,10H,0FEH,11H,12H,10H,20H,21H,40H DB 00H,04H,0DEH,44H,44H,54H,0CCH,44H,44H,0CCH,54H,64H,44H,44H,54H,88H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,30H,1EH,0FH,07H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 01H,01H,7FH,01H,05H,09H,31H,0C1H,0FH,00H,01H,7FH,01H,01H,05H,02H DB 00H,08H,0FCH,00H,40H,30H,0EH,04H,0E0H,40H,88H,0FCH,00H,00H,00H,00H DB 08H,08H,08H,08H,0FEH,08H,18H,1CH,2AH,28H,49H,8AH,08H,08H,08H,08H DB 20H,20H,20H,24H,0FEH,20H,60H,70H,0A8H,0AEH,24H,20H,20H,20H,20H,20H DB 00H,7FH,40H,40H,5FH,40H,40H,4FH,48H,48H,48H,48H,4FH,48H,40H,40H DB 04H,0FEH,04H,24H,0F4H,04H,24H,0F4H,24H,24H,24H,24H,0E4H,24H,14H,08H DB 22H,11H,11H,00H,7FH,40H,80H,1FH,00H,01H,0FFH,01H,01H,01H,05H,02H DB 08H,08H,10H,20H,0FEH,02H,04H,0E0H,40H,84H,0FEH,00H,00H,00H,00H,00H DB 10H,10H,22H,7FH,42H,43H,42H,42H,7EH,42H,42H,42H,42H,7EH,42H,00H DB 40H,40H,44H,7EH,84H,04H,04H,84H,64H,24H,04H,04H,04H,04H,28H,10H DB 08H,08H,08H,17H,10H,30H,50H,90H,17H,10H,10H,10H,10H,10H,1FH,10H DB 80H,40H,44H,0FEH,40H,40H,40H,48H,0FCH,40H,40H,40H,40H,44H,0FEH,00H DB 02H,07H,38H,20H,20H,3EH,22H,22H,22H,3EH,22H,20H,21H,42H,84H,00H DB 08H,1CH,0E0H,80H,80H,84H,0FEH,88H,88H,88H,88H,88H,08H,08H,08H,08H DB 00H,01H,03H,03H,03H,03H,03H,01H,01H,01H,00H,01H,03H,01H,00H,00H DB 00H,80H,0C0H,0C0H,0C0H,0C0H,0C0H,80H,80H,80H,00H,80H,0C0H,80H,00H,00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H TABLE2: DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 01H,01H,02H,04H,08H,12H,21H,0C0H,00H,1FH,00H,00H,00H,00H,00H,01H db 00H,00H,80H,40H,20H,10H,8EH,84H,00H,0F0H,10H,20H,20H,40H,80H,00H DB 00H,7FH,01H,01H,01H,01H,0FFH,01H,02H,02H,04H,04H,08H,10H,20H,0C0H db 08H,0FCH,00H,00H,00H,04H,0FEH,00H,80H,80H,40H,40H,20H,10H,0EH,04H DB 00H,08H,7DH,4AH,4CH,4BH,4AH,7AH,4AH,4BH,4AH,48H,78H,49H,02H,04H db 80H,80H,0F8H,10H,24H,0FEH,44H,44H,44H,0FCH,64H,0A0H,0A2H,22H,1EH,00H DB 01H,01H,01H,01H,01H,01H,01H,01H,01H,01H,01H,01H,01H,01H,0FFH,00H db 00H,00H,00H,00H,10H,0F8H,00H,00H,00H,00H,00H,00H,00H,04H,0FEH,00H DB 02H,02H,0FFH,04H,04H,0FH,08H,18H,2FH,48H,88H,0FH,08H,08H,08H,08H db 00H,04H,0FEH,00H,10H,0F8H,10H,10H,0F0H,10H,10H,0F0H,10H,10H,50H,20H DB 01H,01H,01H,01H,01H,7DH,05H,05H,09H,09H,11H,21H,41H,81H,05H,02H db 00H,00H,00H,08H,18H,20H,0C0H,80H,40H,20H,10H,0EH,04H,00H,00H,00H DB 00H,7CH,44H,49H,48H,50H,48H,4BH,44H,45H,45H,69H,51H,41H,41H,41H db 20H,20H,28H,0FCH,20H,20H,24H,0FEH,20H,24H,24H,24H,24H,24H,0FCH,04H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,60H,20H,20H,40H DB 08H,0BH,12H,12H,23H,4AH,8AH,13H,32H,52H,92H,12H,12H,12H,13H,12H db 08H,0FCH,08H,08H,0F8H,08H,08H,0F8H,84H,8CH,50H,20H,10H,88H,0EH,04H DB 00H,1FH,10H,10H,1FH,10H,10H,1FH,14H,44H,34H,14H,04H,04H,0FFH,00H db 10H,0F8H,10H,10H,0F0H,10H,10H,0F0H,50H,44H,4CH,50H,40H,44H,0FEH,00H DB 10H,10H,10H,1EH,22H,33H,4AH,0A4H,14H,08H,11H,22H,40H,24H,24H,40H db 20H,20H,28H,24H,20H,0FEH,20H,50H,50H,88H,0EH,04H,00H,48H,46H,02H DB 04H,0EH,78H,08H,08H,0FFH,08H,08H,0AH,0CH,18H,68H,09H,0AH,28H,10H db 80H,0A0H,90H,90H,84H,0FEH,80H,90H,90H,60H,40H,0A0H,20H,14H,14H,0CH DB 10H,12H,11H,24H,24H,64H,0A4H,24H,24H,24H,24H,24H,24H,24H,24H,24H db 00H,04H,7EH,84H,04H,04H,04H,04H,04H,04H,04H,04H,04H,04H,14H,08H DB 00H,7FH,10H,10H,10H,08H,08H,04H,04H,02H,01H,02H,04H,08H,30H,0C0H db 00H,0F0H,10H,10H,20H,20H,40H,40H,80H,80H,00H,80H,40H,30H,0EH,04H DB 10H,10H,10H,13H,0FCH,10H,14H,18H,30H,0D0H,10H,10H,10H,10H,50H,20H db 00H,00H,04H,0FEH,20H,20H,20H,20H,20H,20H,20H,20H,20H,20H,0A0H,40H DB 00H,0FFH,00H,00H,01H,01H,03H,05H,09H,11H,21H,41H,01H,01H,01H,01H db 04H,0FEH,80H,80H,00H,00H,40H,20H,18H,0CH,04H,00H,00H,00H,00H,00H DB 00H,40H,20H,17H,00H,00H,0F1H,10H,10H,10H,10H,10H,10H,28H,47H,00H db 10H,10H,10H,0FCH,10H,10H,10H,90H,90H,10H,10H,50H,20H,06H,0FCH,00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 00H END