基于C51单片机的88LED点阵屏汉字显示.docx

上传人:b****1 文档编号:14299528 上传时间:2023-06-22 格式:DOCX 页数:17 大小:494.07KB
下载 相关 举报
基于C51单片机的88LED点阵屏汉字显示.docx_第1页
第1页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第2页
第2页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第3页
第3页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第4页
第4页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第5页
第5页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第6页
第6页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第7页
第7页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第8页
第8页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第9页
第9页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第10页
第10页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第11页
第11页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第12页
第12页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第13页
第13页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第14页
第14页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第15页
第15页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第16页
第16页 / 共17页
基于C51单片机的88LED点阵屏汉字显示.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于C51单片机的88LED点阵屏汉字显示.docx

《基于C51单片机的88LED点阵屏汉字显示.docx》由会员分享,可在线阅读,更多相关《基于C51单片机的88LED点阵屏汉字显示.docx(17页珍藏版)》请在冰点文库上搜索。

基于C51单片机的88LED点阵屏汉字显示.docx

基于C51单片机的88LED点阵屏汉字显示

单片机课程设计报告

—8×8LED点阵屏显示“大〞字

第一章  设计内容及要求…………………………………… 3       

第二章  总体设计……………………………………………3       

2.1  系统框图 …………………………………………………3、4

2.2  设计步骤 ……………………………………………………4

第三章  各局部电路设计  …………………………………4          

3. 1 复位电路  ………………………………………………4 、5    

3.2时钟电路 ……………………………………………5、 6

3.3显示电路   …………………………………………………6、7

3. 4大字取模  …………………………………………………7

3.5LED 引脚连接方式  ……………………………………8、9

3.6总体电路   …………………………………………………9 

第四章程序设计   ………………………………………………9

4.1软件流图………………………………………………9、10

4.2大字的模……………………………………………………10

4.2主程序………………………………………………10、11

4.3C51单片机开发工具:

keil4Proteus使用方法…11、16

第五章 仿真结果……………………………………………16

第六章总结与体会…………………………………………17、18

第七章参考文献………………………………………………18

附录程序清单……………………………………………19、20

基于C51单片机的8×8LED点阵屏汉字显示

一设计要求 

1、设计一个8*8点阵LED电子显示屏 

2、要求在目测条件下LED显示屏各点亮度均匀、充足,可静态显示一个大字。

二总体方案设计

2.1系统框图 

根据设计要求与设计方案,硬件电路的设计框图如图1所示。

硬件电路构造由8个局部组成:

时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。

 

  

2.2设计步骤

根据设计要求,初步确定设计方案如下:

 1. 选择STC89C52单片机〔晶振频率为f=12MHZ〕作为整个系统的核心器件,对整个系统进展总体控制,发送并时时处理系统信息。

 

2.由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P2口控制列 。

 

3.通过软件编程,即可实现汉字“大〞的显示。

4.点阵的点亮过程有程序控制,点阵采用单色显示。

 

三各局部电路设计

3.1 复位电路 

单片机在启动运行时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开场工作,另外,在单片机工作过程中,如果出现死机时,也必须对单片机进展复位,使其重新开场工作。

本设计中采用按键复位电路

3.2时钟电路 

STC89C52单片机内部的振荡电路是一个高增益反向放大器,引线X1和X2分别是放大器的输入端和输出端。

单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。

STC89C52的时钟产生方式有两种:

内部时钟电方式和外部时钟方式。

由于外部时钟方式用于多片单片机组成的系统中,所以此处选用内部时钟方式。

 

内部时钟方式:

利用其内部的振荡电路在X1和X2引线上外接定时元件,内部振荡电路产生自激振荡。

最常用的是在 X1和X2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4所示电路所示为单片机最常用的时钟振荡电路的接法,其中晶振可选用振荡频率为12MHz的石英晶体,电容器一般选择30PF左右

3.3显示电路的设计 

  本次设计中采用8*8点阵LED显示器,简称LED点阵板或LED矩阵板。

它是以发光二极管为像素,按照行与列的顺序排列起来,用集成工艺制成的显示器件。

有单色和双色之分,这种显示器有共阳极接法和共阴极接法两种,设计中用到的是共阳极的显示器。

图中画出了8*8点阵的二极管。

每一行发光二极管的阳极接在一起,有一个引出端r,每一列发光二极管的阴极接在一起,有一个引出端c。

当给发光二极管阳极引出端r1加高电平,阴极引出端c1加低电平时,左上角的二极管被点亮因此,对于行和列的电平进展扫描控制时,可以到达显示不同字符的目的。

下列图为8*8点阵LED外观及引脚图,只要其对应的X、Y轴顺向偏压,即可使LED发亮。

例如如果想使左上角LED点亮,那么Y0=1,X0=0即可。

应用时限流电阻可以放在X轴或Y轴

关于ARKSZ411288K8*8点阵

ARKSZ411288K8*8点阵引脚图

a

b

点阵面对自己,有字的那一面朝ARK那一面。

然后按照图b那个坐标轴就可以看出引脚图是如何排列的。

1~8为负极,一~八为阳极。

3.4关于“大〞字的取模

选用8*8点阵

得出〞大〞字的取模为0x44,0x24,0x14,0x0C,0x0F,0x14,0x24,0x44,

3.5关于LED显示器

 当采用单片机进展控制时,连接点阵显示器的共阳极r端与单片机的P2口相连,而共阴极c端需经限流电阻与单片机的P0口相连。

在编程控制时,将8*8点阵LED显示分成行和列两局部,字符数据从P0口输出,扫描控制字从P2口输出,每一列由一个字节的数据组成,数据可一次送入,然后扫描一行,显示一个字需要扫描8次。

3.6整体电路图

 

四程序设计

4.1软件流图

P0口外接点阵来驱动行点亮,P2口外接点阵进展列选通,来显示大字

4.2大字的模

定义行unsignedcharcodetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}//P0口输出

定义列unsignedcharcodetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}//P2口输出

4.3主程序

voidmain(void)

{

TMOD=0X10;                //设置定时器1为工作方式1  

TH1=(65536-50000)/256;  

TL1=(65536-50000)%256; //定时50000us 

 EA=1;                     //开总中断 

 ET1=1;                   //开定时器1中断  

TR1=1;                    //启动定时器1 

4.4显示函数

while

(1)

{

for(i=0;i<8;i++)

{

P0=taba[i];

P2=tabb[i];

}

}

}

4.5定时中断函数 

void ext1() interrupt 3

 {  

TH1=(65536-50000)/256;  

TL1=(65536-50000)%256; 

 t++;  

程序清单在最后的附录中

4.3

翻开keil,先建立一个工程

建议先新建一个文件夹用来存放,不然待会儿找不着。

输入工程名后点保存,出现单片机型号选择框,一般用stc的51单片机,由于上面没有stc的,选择atmel的就可以,因为它们是兼容的。

选好后点击OK

新建c程序

点击file/new后点左上角的保存按钮,输入文件名,记住扩展名.c,接着点击target1,右键sourcegroup1,出现可以选择。

点击addfilestogroup'ssource,选择刚刚的c文件,点击add,后close。

如果要烧录到单片机中,还得创立hex,在上面方框target1的右边的第一个按钮,单击。

选择output,勾选creathexfile,编程完后编译,连接等步骤。

最好生成hex文件

Proteus根本使用方法

功能模块:

元件选择端口模块测量仪器点击P可以添加元器件

本次实验所用元器件

搭建电路

选中元器件然后放在电路图适宜位置,连线。

本实验的vcc和地在端口原件,分别是power和ground

双击单片机

 

然后将编译好的hex导入,点确定。

最后运行仿真即可。

五仿真结果

六总结及体会  

1

在这次课程设计的整个过程中,我们做了一次全面、较规X的设计练习,全面地温习了以前所学过的知识,用理论联系实际并结合单片机原理课程和解决实际问题,稳固、加深和扩展了有关单片机设计方面的知识。

尤其重要的是让我们养成了科学的习惯,在设计过程中一定要注意掌握设计进度,按预定方案完成阶段性的目标,在底图设计阶段,注意设计计算与构造设计画图交替进展,采用正确的设计方法。

在整个设计过程中注意对设计资料和计算数据的保存和积累,保持记录的完整性。

在课程设计的实践中进展了设计根本技能的训练,掌握了查阅和使用标准、规X、手册、图册、及相关技术资料的根本技能以及计算、数据处理等方面的能力。

 

2

通过对通用51系列单片机机处理器、常用元器件的设计,掌握了一般单片机设计的程序和方法,让我们对整个单片机程序的设计,C51语言有了一个比拟深的理解。

 

3

还有就是增强了自身的动手能力。

在这次课程设计中,我主要负责的是程序设计和单片机部件焊接。

通过参考相关的程序设计,自己写出了主要的程序代码。

同时将元器件正确焊接到基板上。

这些都是将以前书本上讲的或是没有讲的,通过一次课程设计具体的实施,使自己的动手能力和独立设计能力真正得到锻炼,对于以后我们的开展与学习来说,都可以看作一笔不小的财富,前面还有很多需要我们去尝试。

 

同时不能忽略的是,这一次课程设计是以小组为单位的。

在这次课程设计中,我和自己的小组成员学会了密切分工配合。

而这样的合作能力和团队精神在今后的学习工作中是很重要的。

 

七参考文献

[1]?

单片机原理及应用?

 薛峰.朱晓骏 编著 :

理工大学,2011,9 

 

附录程序清单

#include

#include

unsignedcharcodetaba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//行选

unsignedcharcodetabb[]={0x44,0x24,0x14,0x0F,0x14,0x24,0x44,0x04};//列选

unsignedchari;

voidmain(void)

{

TMOD=0X10;                //设置定时器1为工作方式1  

TH1=(65536-50000)/256;  

TL1=(65536-50000)%256; //定时50000us 

 EA=1;                     //开总中断 

 ET1=1;                   //开定时器1中断  

TR1=1;                    //启动定时器1 

while

(1)

{

//*****************显示函数****************//  

for(i=0;i<8;i++)

{

P0=taba[i];

P2=tabb[i];

}

}

}

//*****************定时中断函数****************//    

void ext1() interrupt 3

 {  

TH1=(65536-50000)/256;  

TL1=(65536-50000)%256; 

 t++;  

 

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2