1、 课题LED 16*16点阵的汉字显示专业: 班级: 姓名: 学号: 一、 设计任务显示静止的汉字或者是滚动显示的汉字。二、 设计原理 原理:点阵内部结构及外形如下,8X8点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮; 所用到的单片机为8255和273,对单片机的简单介绍:8255单片机有A,B,C三个端口,都是8位的输入/输出锁存器,默认状态下为输出状态,还有控制口其地址为8003H。8255有读写使能端口WR和RD接受由CPU发来的控制信号,来判断是读还是写。还有复位信号RESET。本次实验基本上用到
2、这些引脚。对于273单片机主要用到它的端口地址0A000H。连线方式为:l 8255CS 接 Y0, 273CS 接 Y2,l WR 接 XWR,RD 接 XRD, l A0 接 XA0, A1接 XA1,l RESET接 RST, D0.D7接XD0.XD7 三、 设计所用软件与硬件 16*16点阵的设计用到的硬件是电脑一台,8255单片机一个,273单片机一个。所用到的软件是字模提取软件和单片机。字模提取软件主要的功能就是将所要显示的汉字代码提取出来。四、 设计程序和代码程序为:#include#include#define PA XBYTE0X8000H#define PB XBYTE0
3、X8001H#define PC XBYTE0X8002H /对单片机8255和273的#define PD XBYTE0X8003H/定义#define PE XBYTE0XA000H unsigned char code taa=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff;unsigned char code tab=0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;
4、 /定义0的时候亮1的时候灭tbb=0xF0,0x00,0x1F,0x10,0x88,0x30,0x92,0x09,0x54,0x04,0x24,0x22,0x10,0x60,0xFF,0x11,0x10,0x28,0x38,0x64,0x58,0x20,0x94,0x11,0x92,0x08,0x11,0x06,0x90,0x01,0x10,0x00 /好字的代码int x,i,j,k;void delayms(x)for(i=x;i0;i-)for(j=10;j0;j-);/ 表示延时系统void main() PD=0x80; /对端口的初始化 while(1) for(k=0;k16;
5、k+) PA=tbb2*k; PB=tabk; PC=tbb2*k+1; PE=taak; delayms(3); /主程序 五、 设计的优缺点设计的优点:本次设计是制作的静态的汉字,所编写的程序与代码简单易懂,适合于初级学员的理解与学习,在提取汉字的代码时直接用到的字模提取软件,很方便的就能获得其代码。所以设计的主要优点就是简单易懂。设计的主要缺点:由于显示的是静态的汉字虽然很简单很容易理解,但是对于他的实用效果还是很差的,从 日常生活中我们可以看到,动态的LED显示还是应用比较广泛的,所以本次设计的主要缺点就是不能被广泛的利用,实用价值不高。六、 设计总结 本次课程设计历经一天半的时间,从
6、对8255和273单片机的一无所懂到能初步的应用他们显示静态的汉字。还是很有成就感的,虽然有些困难,但是在经过去图书馆查找和老师的讲解之后有了大致的掌握。在做实验中学会了很多的东西,例如,遇到问题知道如何解决问题,学会了一种学习的能力。团队之间的协作能力,三人行必有我师,验证了团结就是力量这句话。当然在实验中也会犯错误,在困难面前想过放弃,想过妥协,想过用一些不正当的办法蒙混过关,当然,最后都没有“如愿”,在我们的坚持与老师的帮助下还是成功的做出来设计的结果,还是很欣慰的。这就说明了,任何事情只要你坚持了,就一定能够做好,只要你不放弃自己的坚持,最终都能获得好的结果。像这样的经验不止是可以应用
7、到设计中,更应该应用到生活中去。这意味着在面对困难的时候,不论怎么样都要坚持,都要有不放弃的精神。只要你认定是对的,那就可以放手去作,最终都能如愿以偿。七、 设计分析从实验题目16*16点阵汉字的显示上看,设计并不算很难。开始时很有思路,了解所用单片机的功能作用,连接电路,编写程序,利用软件模拟仿真。其实实验也是这样进行的只是在编写程序是出现了错误,对于单片机的端口知道很少,所以真正的设计时才感觉但困难。在老师的指导与自己多方面的了解下还是设计出静态汉字的显示,还是有很多的收获的,虽然没有做出来动态汉字的显示,但是如果在能给我们一点时间我对于我们能做出动态显示的汉字还是很有信心的。因为,对于8
8、255和273已经有了初步的了解,再加以学习与深入的实践研究一定会有更大的收获。设计中也存在很多的问题,例如,在编写程序出现错误是不知道怎样修改,错在哪里,这就是对于学习的实践性还是不够强,我们平时学习的理论知识,很少的应用到实践中去,一旦应用到实践中时,很多同学都茫然不知所措,这就是注重理论的反面效果。当然,老师也希望我们能够学好,用好,但是现有的条件跟设施都很难满足我们的愿望,只能在以后的工作中慢慢实践,慢慢掌握。对于实验的收获还是很多的,对于自己的学习能力有了一定的认识,自学能力也有了很大的提高,在解决问题上也有了自己的思路。总之,还是很希望有这样的课程,来锻炼我们的实践能力,来培养我们动手操作能力。八、 设计的要求与意见我们的这个实验是16*16点阵汉字的显示,在课堂上对于8255和273的讲解并不多,所以在做设计时基本上就是边学习,边应用,这样不仅不利于同学们的学习,也不利于同学们的动手操作。我想,如果能在学期开始时就专门开设这样一门关于课程设计的课,应该会有不一样的结果吧。在设计中老师比我们还忙,不仅要帮同学们分析程序的对错,还要帮助我们调试结果,忙的晕头转向,比我们幸苦多了。如果课程设计不这么集中,结果应该会有很大的不同。这仅是我个人的见解,仅供参考。