基于C51单片机的88LED点阵屏汉字显示.docx
- 文档编号:28634405
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:9
- 大小:83.56KB
基于C51单片机的88LED点阵屏汉字显示.docx
《基于C51单片机的88LED点阵屏汉字显示.docx》由会员分享,可在线阅读,更多相关《基于C51单片机的88LED点阵屏汉字显示.docx(9页珍藏版)》请在冰豆网上搜索。
基于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单片机内部的振荡电路是一个高增益反向放大器,引线*1和*2分别是放大器的输入端和输出端。
单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。
STC89C52的时钟产生方式有两种:
内部时钟电方式和外部时钟方式。
由于外部时钟方式用于多片单片机组成的系统中,所以此处选用内部时钟方式。
内部时钟方式:
利用其内部的振荡电路在*1和*2引线上外接定时元件,内部振荡电路产生自激振荡。
最常用的是在*1和*2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4所示电路所示为单片机最常用的时钟振荡电路的接法,其中晶振可选用振荡频率为12MHz的石英晶体,电容器一般选择30PF左右
3.3显示电路的设计
本次设计中采用8*8点阵LED显示器,简称LED点阵板或LED矩阵板。
它是以发光二极管为像素,按照行与列的顺序排列起来,用集成工艺制成的显示器件。
有单色和双色之分,这种显示器有共阳极接法和共阴极接法两种,设计中用到的是共阳极的显示器。
图中画出了8*8点阵的二极管。
每一行发光二极管的阳极接在一起,有一个引出端r,每一列发光二极管的阴极接在一起,有一个引出端c。
当给发光二极管阳极引出端r1加高电平,阴极引出端c1加低电平时,左上角的二极管被点亮因此,对于行和列的电平进行扫描控制时,可以达到显示不同字符的目的。
下图为8*8点阵LED外观及引脚图,只要其对应的*、Y轴顺向偏压,即可使LED发亮。
例如如果想使左上角LED点亮,则Y0=1,*0=0即可。
应用时限流电阻可以放在*轴或Y轴
关于ARKSZ411288K8*8点阵
ARKSZ411288K8*8点阵引脚图
a
b
点阵面对自己,有字的那一面朝ARK那一面。
然后按照图b那个坐标轴就可以看出引脚图是如何排列的。
1~8为负极,一~八为阳极。
3.4关于“大”字的取模
选用8*8点阵
得出”大”字的取模为0*44,0*24,0*14,0*0C,0*0F,0*14,0*24,0*44,
3.5关于LED显示器
当采用单片机进行控制时,连接点阵显示器的共阳极r端与单片机的P2口相连,而共阴极c端需经限流电阻与单片机的P0口相连。
在编程控制时,将8*8点阵LED显示分成行和列两部分,字符数据从P0口输出,扫描控制字从P2口输出,每一列由一个字节的数据组成,数据可一次送入,然后扫描一行,显示一个字需要扫描8次。
3.6整体电路图
四程序设计
4.1软件流图
P0口外接点阵来驱动行点亮,P2口外接点阵进行列选通,来显示大字
4.2大字的模
定义行unsignedcharcodetaba[]={0*fe,0*fd,0*fb,0*f7,0*ef,0*df,0*bf,0*7f}//P0口输出
定义列unsignedcharcodetaba[]={0*fe,0*fd,0*fb,0*f7,0*ef,0*df,0*bf,0*7f}//P2口输出
4.3主程序
voidmain(void)
{
TMOD=0*10;//设置定时器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定时中断函数
voide*t1()interrupt3
{
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。
如果要烧录到单片机中,还得创建he*,在上面方框target1的右边的第一个按钮,单击。
选择output,勾选creathe*file,编程完后编译,连接等步骤。
最好生成he*文件
Proteus基本使用方法
功能模块:
元件选择端口模块测量仪器点击P可以添加元器件
本次实验所用元器件
搭建电路
选中元器件然后放在电路图合适位置,连线。
本实验的vcc和地在端口原件,分别是power和ground
双击单片机
然后将编译好的he*导入,点确定。
最后运行仿真即可。
五仿真结果
六总结及体会
1
在这次课程设计的整个过程中,我们做了一次全面、较规*的设计练习,全面地温习了以前所学过的知识,用理论联系实际并结合单片机原理课程和解决实际问题,巩固、加深和扩展了有关单片机设计方面的知识。
尤其重要的是让我们养成了科学的习惯,在设计过程中一定要注意掌握设计进度,按预定计划完成阶段性的目标,在底图设计阶段,注意设计计算与结构设计画图交替进行,采用正确的设计方法。
在整个设计过程中注意对设计资料和计算数据的保存和积累,保持记录的完整性。
在课程设计的实践中进行了设计基本技能的训练,掌握了查阅和使用标准、规*、手册、图册、及相关技术资料的基本技能以及计算、数据处理等方面的能力。
2
通过对通用51系列单片机机处理器、常用元器件的设计,掌握了一般单片机设计的程序和方法,让我们对整个单片机程序的设计,C51语言有了一个比较深的理解。
3
还有就是增强了自身的动手能力。
在这次课程设计中,我主要负责的是程序设计和单片机部件焊接。
通过参考相关的程序设计,自己写出了主要的程序代码。
同时将元器件正确焊接到基板上。
这些都是将以前书本上讲的或是没有讲的,通过一次课程设计具体的实施,使自己的动手能力和独立设计能力真正得到锻炼,对于以后我们的发展与学习来说,都可以看作一笔不小的财富,前面还有很多需要我们去尝试。
同时不能忽略的是,这一次课程设计是以小组为单位的。
在这次课程设计中,我和自己的小组成员学会了密切分工配合。
而这样的合作能力和团队精神在今后的学习工作中是很重要的。
七参考文献
[1]《单片机原理及应用》薛峰.朱晓骏编著:
理工大学,2011,9
附录程序清单
*include
*include
unsignedcharcodetaba[]={0*fe,0*fd,0*fb,0*f7,0*ef,0*df,0*bf,0*7f};//行选
unsignedcharcodetabb[]={0*44,0*24,0*14,0*0F,0*14,0*24,0*44,0*04};//列选
unsignedchari;
voidmain(void)
{
TMOD=0*10;//设置定时器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];
}
}
}
//*****************定时中断函数****************//
voide*t1()interrupt3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
t++;
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 C51 单片机 88 LED 点阵 汉字 显示
![提示](https://static.bdocx.com/images/bang_tan.gif)