点阵显示屏成功点亮 原理图 程序.doc

上传人:苏美尔 文档编号:9020800 上传时间:2021-01-30 格式:DOC 页数:9 大小:703.51KB
返回 下载 相关 举报
点阵显示屏成功点亮 原理图 程序.doc_第1页
第1页 / 共9页
点阵显示屏成功点亮 原理图 程序.doc_第2页
第2页 / 共9页
点阵显示屏成功点亮 原理图 程序.doc_第3页
第3页 / 共9页
点阵显示屏成功点亮 原理图 程序.doc_第4页
第4页 / 共9页
点阵显示屏成功点亮 原理图 程序.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《点阵显示屏成功点亮 原理图 程序.doc》由会员分享,可在线阅读,更多相关《点阵显示屏成功点亮 原理图 程序.doc(9页珍藏版)》请在三一文库上搜索。

1、1616点阵显示屏成功点亮! 看到江同学的3216屏(),对于我来说,稍显复杂,所以决定做个1616的屏看看效果,原理图就是以下了,注意做1616时,要去掉一个74LS154(当然这里也能换用74HC154,虽然功耗大,但价格较低),经过两天的奋斗,终于完工了。简单的调试后,点亮了!编个流动显示的程序,哈哈,很炫啊。心动不如赶快行动啊! 我是把点阵块焊到一块板子上,可方便检查有无虚焊,控制部分放到了另一张板上,做成的实物图就是下面的了,视频在这里:http:/ (注:以下原理图均来自)/*程序名称:LED1616点阵流动显示汉字简要说明:最大可显示16*16汉字 P0口接上行线,P2口接下行线

2、,P3口接扫描线编 写: JiangX.net改 编: springvirus*/#include #define hang1 P0 /上行线#define hang2 P2 /下行线#define lie P1 /列线#define sum sizeof(hanzi)/32 /自动计算汉字字数/*参数设置*/#define ziti 16 /字体大小(宽度)#define light 50 /显示亮度#define move_speed 50 /移动速度unsigned char code hanzi=/*- 文字: 自 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*

3、/0x00,0x00,0x00,0xF8,0x48,0x48,0x4C,0x4B,0x4A,0x48,0x48,0x48,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00,/*- 文字: 制 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x50,0x4F,0x4A,0x48,0xFF,0x48,0x48,0x48,0x00,0xFC,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x3

4、F,0x01,0x01,0xFF,0x21,0x61,0x3F,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00,/*- 文字: 小 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x00,0x00,0xC0,0x70,0x20,0x00,0xFF,0x00,0x10,0x20,0xC0,0x80,0x00,0x00,0x00,0x04,0x02,0x01,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x01,0x07,0x02,0x00,/*- 文字: 型 -*/*- 宋体12; 此字体下对

5、应的点阵为:宽x高=16x16 -*/0x10,0x12,0x92,0x7E,0x12,0x12,0xFE,0x12,0x12,0x10,0xFC,0x00,0x00,0xFF,0x00,0x00,0x40,0x42,0x49,0x48,0x48,0x48,0x49,0x7E,0x48,0x48,0x48,0x4A,0x4C,0x4B,0x40,0x00,/*- 文字: 点 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x00,0x00,0xE0,0x20,0x20,0x20,0x3F,0x24,0x24,0x24,0xF4,0x24,0x00,0x00,

6、0x00,0x00,0x40,0x30,0x07,0x12,0x62,0x02,0x0A,0x12,0x62,0x02,0x0F,0x10,0x60,0x00,0x00,/*- 文字: 阵 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0xFE,0x02,0x12,0x2A,0xC6,0x88,0xC8,0xB8,0x8F,0xE8,0x88,0x88,0x88,0x88,0x00,0x00,0xFF,0x00,0x02,0x04,0x03,0x04,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x00,/*- 文字: 显

7、 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x00,0x00,0x3E,0x2A,0xEA,0x2A,0x2A,0x2A,0xEA,0x2A,0x3E,0x00,0x00,0x00,0x00,0x20,0x21,0x22,0x2C,0x20,0x3F,0x20,0x20,0x20,0x3F,0x28,0x24,0x23,0x20,0x20,0x00,/*- 文字: 示 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x20,0x20,0x22,0x22,0x22,0x22,0xE2,0x22,0x22,0x22,0x

8、22,0x22,0x20,0x20,0x00,0x10,0x08,0x04,0x03,0x00,0x40,0x80,0x7F,0x00,0x00,0x01,0x02,0x0C,0x18,0x00,0x00,/*- 文字: 系 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x00,0x00,0x02,0x22,0xB2,0xAA,0x66,0x62,0x22,0x11,0x4D,0x81,0x01,0x01,0x00,0x00,0x00,0x40,0x21,0x13,0x09,0x05,0x41,0x81,0x7F,0x01,0x05,0x09,0x13,0x62,0

9、x00,0x00,/*- 文字: 统 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=16x16 -*/0x20,0x30,0x2C,0xA3,0x60,0x10,0x84,0xC4,0xA4,0x9D,0x86,0x84,0xA4,0xC4,0x84,0x00,0x20,0x22,0x23,0x12,0x12,0x92,0x40,0x30,0x0F,0x00,0x00,0x3F,0x40,0x41,0x70,0x00,/*空白,用于区分显示内容的头和尾*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0

10、x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00;uint k=0,j; /移位变量,k:移位个数uint a=0; /用于软件延时 ulong s=(sum+1)*ziti; /s为全部列数uchar disbuf162; /定义显示缓冲区(16行两列的二维数组以开辟1个16*16汉字的空间)bit move_st; /移动标志/*可变延时*/void delay(void) uchar i;for(i=0;i=move_speed) /move_spee

11、d控制移动速度 if(ks-ziti-1)k=0; /整屏移动列数 k1=k/ziti; k2=k%ziti; j=ziti*2*k1+k2; /显示指针 k+; move_st=1; a=0;/*装载显示数据至缓冲区*/void load_hanzi(void) uchar i;run_move();if(move_st) for(i=0;i15;i+) disbufi0=disbufi+10;/移位处理 disbufi1=disbufi+11;/移位处理 disbuf150=hanzij; disbuf151=(hanziziti+j); move_st=0; /*扫描显示数据缓冲区的内容*/void display(void) uchar i;for (i=0;i16;i+) lie=i; hang1=disbufi0; hang2=disbufi1; delay(); hang1=0; hang2=0; /*主程序*/void main (void) init(); EA=1; /开中断 TR0=1; ET0=1; while(1) load_hanzi(); display();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1