




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1616LED点阵屏原理图及驱动程序这是我玩LED点阵屏的第一块电路板,也是学习单片机入门的第一个实验器材。它由4片30mm30mm的88红色高亮点阵模块与两片74HC595、两片74HC138、16只8550晶体管、一片74HC244集装在一块宽高65mm210mm的双面PCB板上,它应该是一组级联安装的LED屏的一个单元模块,拿到它时,我正在学习无线电杂志2007/11期刊上杜洋的一组文章,刚刚做好了ISP下载线,只做了“一个发光二极管的控制实验”,面对这个既好玩又陌生的玩意,真是无从下手,通过上网学习,解析研究,前后弄了两个多月,最后在无线电杂志2005/12期的配文程序的帮助下,终于踏进了点阵控制的门槛,两年过去了,我又玩了许多单片机控制器件,但这块屏却一直摆在我的桌案上,每当遇到难题时,看看它那稳定清晰的显示,我都能找到许多灵感;最近、在摆弄一块并行驱动的1664点阵屏时(前几篇文章介绍了)时,因为用的还是这段程序,就又想起了它,虽然程序已经详解过了,但是,为了留记一段经历、一段回忆,决定还是“貂续狗尾”写在这里,留着自己欣赏吧。一.原理图:二.汉字左右移动驱动程序/*1616LED点阵屏原理图及C源汉字左右移动显示驱动程序wannenggong单片机:AT89S52引脚说明:P0.0/P0.1/P0.2/P0.3控制由两片74HC138组成的行驱动控制4-16译码器的A/B/C/D端P1.0/P1.1控制列驱动控制74HC595的OE/ST端,595的14脚(DS)经244连接RXD,595的12脚(SH)经244连接TXD。*/#include#defineucharunsignedchar#defineuintunsignedint#defineK5/移动速度控制变量。ucharcol,disrow;/列移动计数变量。行扫描计数变量。uintword,zishu;/字形码计数变量。ucharcodeHZ;ucharBUFF5;/64列时应将数值设为11voidtwo_out();/显示数据输出函数voidloadoneline_L(void);/取字码数据函数/voidloadoneline_R(void);voidsendoneline_L(void);/生成显示数据函数/voidsendoneline_R(void);/*关于595第13脚的问题:原附图中13脚是接GND的,是电路板的原始设计,调试过程中将IC引脚与电路板隔离后经244引出做为OE引脚,其作用仅为配合延时适度的调整屏显亮度,若13脚接GND,则为全亮度显示,与其他控制并无干涉。*/sbitOE=P10;/显示开关(595第13脚)。sbitST=P11;/锁存控制(595第11脚)。此处原错标为12脚,特此更正!/*/voiddelay(uintp)uinti,j;for(i=0;ip;i+)for(j=0;j5;j+);/*左移显示数据生成模块:(功能相当于有返回值的函数)*/uchartwo_onebyteL(ucharh1,ucharh2)uchartemp,tempcol;/输出变量;列移动位数变量。if(col8)tempcol=col;elsetempcol=col-8;temp=(h1(8-tempcol);/左移显示temp=255-temp;returntemp;/将显示数据返回显示输出函数。/*右移显示数据生成模块:*/*uchartwo_onebyteR(ucharh1,ucharh2)uchartemp,tempcol;if(coltempcol)|(h2(8-tempcol);/右移显示temp=255-temp;returntemp;*/*左移待显示数据调取函数*/voidloadoneline_L(void)chars;/此处不要用uchar定义sfor(s=0;s2;s+)/s值为屏数加1(16*16为一屏)BUFF2*s=HZword+32*s+2*disrow;BUFF2*s+1=HZword+1+32*s+2*disrow;/左移显示/*右移待显示数据调取函数*/*voidloadoneline_R(void)chars;/此处不要用uchar定义sfor(s=0;s2;s+)BUFF2*s+1=HZword+32*s+2*disrow;BUFF2*s=HZword+1+32*s+2*disrow;/右移显示*/*左移显示数据输出函数:为显示数据生成模块的h1、h2赋值并且输出合成后的新的h1、h2数据*/voidsendoneline_L(void)chars;ucharinc;if(col=0+inc;s-)/左移显示:单屏s=1+,4屏s=7+,8屏s=15+;SBUF=two_onebyteL(BUFFs,BUFFs+1);while(!TI);TI=0;/*右移显示数据输出函数:*/*voidsendoneline_R(void)chars;ucharinc;if(col8)inc=0;elseinc=1;for(s=0+inc;s2+inc;s+)/右移显示:单屏s=1+,4屏s=7+,8屏s=15+;SBUF=two_onebyteR(BUFFs,BUFFs+1);while(!TI);TI=0;*/*主函数:*/voidmain(void)col=0;word=0,zishu=0;/列移动计数变量、汉字码位数变量每字32个码while(1)while(col16)uchari;for(i=0;iK;i+)for(disrow=0;disrow16;disrow+)/if(zishu=512)zishu=0;/改变移动方向word=word+32;if(word=128)word=0;/重新从第一个字开始显示/无限重复/主函数结束/*数组的字模取码方式为阳码、顺向、逐行。*/ucharcodeHZ=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x04,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x08,0x7F,0xFC,0x00,0x00,0x00,0x00,0x1F,0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,0x00,0x00,/*吉,0*/0x21,0x04,0x10,0x88,0x10,0x50,0xFD,0xFE,0x04,0x20,0x08,0x20,0x11,0xFC,0x38,0x20,0x54,0x20,0x94,0x20,0x13,0xFE,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,/*祥,1*/0x10,0x00,0x10,0x00,0x18,0x00,0x10,0x7E,0xFE,0x42,0x22,0x42,0x22,0x42,0x22,0x42,0x22,0x42,0x24,0x42,0x14,0x42,0x08,0x42,0x14,0x7E,0x23,0x42,0x42,0x42,0x80,0x00,/*如,2*/0x01,0x00,0x3F,0xFC,0x08,0x20,0x04,0x40,0xFF,0xFE,0x00,0x00,0x1F,0xF0,0x12,0x10,0x11,0x10,0x1F,0xF0,0x00,0x00,0x29,0x08,0x28,0x84,0x68,0x14,0x07,0xF0,0x00,0x00,/*意,3*/;此程序是实际演示应用程序,是在我的UV2窗口中粘贴过来的,如有应用,反向操作即可。其实程序前的接口设置已经叙述的很详细了,即使没有图纸也能应用。由于本程序只是用来演示左右移动的效果,一般应用时应该只是一个方向,(如欲左移显示时需将相关右移的部分变绿,或加以控制,否则,就乱套了)所以,只要对程序进行删减,可以很方便的用于实际控制,本程序只用于16*16点阵的控制,当扩展为屏组控制时,程序的修改应非难事,参照上篇文章,应能知道该加入的语句。弄了许久,总算把这段视频放在这里了,又是注册56.com,又是上传视频的,还莫名其妙的被屏蔽了好几次,又由于没有设置为“公开”还一度找不到文件地址,最终还是借助了“一键i贴吧”才找到了地
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育中的性别平等与女性教育发展
- 探索女性在文学中的多重身份与角色
- 天津仁爱学院《学前融合教育》2023-2024学年第一学期期末试卷
- 桂林山水职业学院《外国建筑史》2023-2024学年第一学期期末试卷
- 大连装备制造职业技术学院《卖场空间设计》2023-2024学年第一学期期末试卷
- 医美光电培训课件
- 浙江建设职业技术学院《微积分Ⅰ》2023-2024学年第一学期期末试卷
- 新疆工程学院《CPA审计》2023-2024学年第一学期期末试卷
- 烟台汽车工程职业学院《中医经典临床能力跟师实训(一)》2023-2024学年第一学期期末试卷
- 广东建设职业技术学院《工程结构1》2023-2024学年第一学期期末试卷
- 3停止间转法教案
- 2022-2023学年重庆市合川市三下数学期末学业质量监测模拟试题含解析
- 文创园物业管理方案
- 全过程造价咨询服务实施方案
- 初二生地会考复习资料全
- 里氏硬度法检测钢材强度范围记录表、钢材里氏硬度与抗拉强度范围换算表
- 《屹立在世界的东方》示范课教学课件【人教部编版小学道德与法治五年级下册】
- 四川省宜宾市翠屏区中学2022-2023学年数学八年级第二学期期末检测试题含解析
- 2020-2021成都石室联合中学蜀华分校小学数学小升初模拟试卷附答案
- 某冶金机械厂供配电系统设计
- 《在中亚细亚草原上》赏析 课件
评论
0/150
提交评论