单片机课程设计8x8LED点阵显示的技术文档格式.docx
- 文档编号:18993134
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:12
- 大小:763.56KB
单片机课程设计8x8LED点阵显示的技术文档格式.docx
《单片机课程设计8x8LED点阵显示的技术文档格式.docx》由会员分享,可在线阅读,更多相关《单片机课程设计8x8LED点阵显示的技术文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
时钟电路
LED点阵显示
列驱动
复位电路
图3-1系统总体框图
根据设计要求,初步确定设计方案如下:
(1).选择STC89C52单片机(晶振频率为f=12MHZ作为整个系统的核心器件,对整个系统进行总体控制,发送并时时处理系统信息。
(2).由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P2口控制列。
(3).通过软件编程,即可实现汉字“课程设计”的显示,并可左移,右移,上移,下移动态流动显示。
(4).点阵的点亮过程有程序控制,点阵采用单色显示
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
所以掌握单片机技术无论是对自身的就业还是自身日后的发展都有一个深远的意义。
4设计原理及功能说明
在本设计中MCS-52单片机作为主控芯片,控制整个电路的运行。
其外围电路主要有两部分:
复位电路和晶体振荡器。
复位电路的功能是:
系统上电时提供复位信号,直至系统电源稳定后,撤消复位信号。
为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。
该设计采用含有二极管的复位电路,复位电路可以有效的解决电源毛刺和电源缓慢下降(电池电压不足)等引起的问题,在电源电压瞬间下降时可以使电容迅速放电,一定宽度的电源毛刺也可令系统可靠复位。
晶体振荡电路:
MCS-52单片机中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别为该反向放大器的输入端和输出端。
这个反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。
对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性。
如果使用石英晶体,电容应该使用22pF、10pF。
5元器件的介绍及选用
AT89C52单片机
图5-1AT89C52单片机引脚图
引脚功能说明:
Vcc:
电源电压·
GND:
接地
P0口:
P0口是一组8位漏极开路型双向I/0口,也即地址/数据总线复用口。
作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:
Pl是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
Flash编程和程序校验期间,Pl接收低8位地址。
端口引脚第二功能P1.5MOSI(用于ISP编程)P1.6MISO(用于ISP编程)P1.7SCK(用于ISP编程)
P2口:
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4条TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
Flash编程或校验时,P2亦接收高位地址和其它控制信号。
P3口:
P3口是一组带有内部上拉电阻的8位双向I/0口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“l”时,它们被内部上拉电阻拉高并可作为输入端口。
作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能,如下表所示:
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外中断0)P3.3INT1(外中断1)
P3.4T0(定时/计数器0外部输入)P3.5T1(定时/计数器1外部输入)P3.6WR(外部数据存储器)P3.7RD(外部数据存储器读选通)RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
WDT溢出将使该引脚输出高电平,设置SFRAUXR的DISRT0位(地址8EH)可打开或关闭该功能。
DISRT0位缺省为RESET输出高电平打开状态。
·
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对F1ash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位只有一条M0VX和M0VC指令ALE才会被激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
当访问外部数据存储器,没有两次有效的PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU只访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程电压Vpp。
XTALl:
振荡器反相放大器及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端。
单片机有多种复位方式,常用的复位操作有上电复位和手动复位方式。
复位电路工作原理:
上电瞬间RST引脚的电位与VCC等电位,RST引脚为高电平,随着电容C5充电电流的减少,RST引脚的电位不断下降,可以保持RST引脚在为高电平的时间内完成复位操作。
上电复位:
上电复位电路是—种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。
上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。
为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。
选用AT89C52单片机是因为其芯片内部设有一个由反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。
系统采用的定时元件为石英晶体和电容组成的并联谐振回路。
晶振频率采用12MHZ,C1、C2的电容值取30pF,电容的大小起频率微调的作用。
图5-2-18x8点阵
8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;
因此要实现一根柱形的亮法,如图所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:
一根竖柱:
对应的列置1,而行则采用扫描的方法来实现。
一根横柱:
对应的行置0,而列则采用扫描的方法来实现。
6单元电路设计说明
图6-1系统电路总图
此次设计采用STC89C52单片机,它是一个低功耗,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,兼容标准MCS-52指令系统及80C52引脚结构。
由于其具备在线可
编程功能,这是选择此款单片机的主要原因。
STC89C52的VCC接+5V,VSS接地。
复位引脚REST外接RC电路和复位开关,可以实现人工复位。
本系统采用按键电平复位,如电路图5-1所示。
第18,19引脚外接12MHz晶振和两个22pF电容。
P1口外接1K上拉电阻。
8×
8LED有16个引脚,其中8个行引脚,8个列引脚,用8×
8点阵显示图形:
如果灯亮用1表示、暗用0表示,共8×
8=64个LED。
考虑到布线的方便,在不增加译码器的情况下,选择单片机P0口和P2口与其连接。
一般情况下,每只LED需提供10mA左右的电流,其才能正常发光。
若选用共阴极型LED,当一行(或一列)的8个LED全部点亮时,若每只LED有10mA电流流过,则共阴极端将有80mA的电流流过。
理论上,单片机的P0口每个引脚能提供5mA的拉电流,20mA的灌电流,其余口的单个引脚仅能提供5mA的灌电流,这样,LED的每个行和竖列都需要增加驱动电路。
若选用共阳极型LED,当一行(或一列)的8个LED全部点亮时,若每只LED有10mA电流流过,则共阳端将有80mA的电流流过,这样,可设计成P2口的引脚加驱动电路后接共阳端,每只LED的10mA电流灌如P0口的引脚,减少了行(或列)驱动电路。
本次设计选用的8×
8LED是共阳型,通过P2口接8550三极管进行行驱动,为防止流过LED的电流过大,在P0口接限流电阻,保护LED,电路如图所示。
题目要求显示时间可调,显示画面可选,结合软件,考虑外接3个按键,又考虑到方便功能扩展,实际接了4个按键和1个蜂鸣器。
本次设计将其接到了P3口,电路如图所示。
对于取电方面,本次设计的系统直接使用外接+5V直流电源供电,省去电源设计的麻烦。
另外,还接了电源上电LED指示灯,可以说是实用的
7硬件的焊接与调试
7.1元器件焊接
焊接注意事项
(1).焊接时间不宜过久,但要完全熔着,以免造成冷焊。
(2).焊点的表面要平滑、有光泽。
(3).焊点完全冷却前,不可移动。
(4).电烙铁不用時要放置于电烙铁架上,并随時保持烙铁头的清洁。
(5).焊接完毕,要在烙铁头镀上薄层焊锡,避免氧化,并等冷卻后再收存。
先焊接完电源部分,进行测试,如果电源led灯亮,则可以进行
下一步焊接,烙铁不允许长时间接触焊盘,若长时间接触焊盘会导致焊盘脱落或器件的损坏。
焊接尽量按照模块的划分来焊接。
焊接完一个模块都要用万用表测量一下电源和地之间是否出现短路,如果有短路,需立即检测何处焊接导致的短路。
芯片的安放要注意1脚所在的位置,如果安放反了,芯片立即烧毁。
焊接器件时,应该先焊接小器件,再焊接大器件,先焊接低器件,再焊接高器件。
7.2电路调试
任何组装好的电子电路,在通电调试之前,必须认真检查电路连线是否有错误。
对照电路图,按一定的顺序逐级对应检查。
特别要注意检查电源是否接错,电源与地是否有短路,电解电容的极性是否接反,集成电路和开关的引脚是否接错,单片机是否完全插入底座,轻轻拔一拔元器件,观察焊点是否牢固等。
调试电路:
首先,在装上芯片之前,先用万用表测试各个芯片供电以及接地引脚的电压是否正常。
当全部正常时,才能装上芯片。
调节各个运算放大器的失调电压,以减小系统的误差。
调节失调电压的具体方法是:
使输入信号为零,调节调零电位计的电阻,尽可能使芯片的输出为零。
当调节到各个芯片的输出为零时,也就达到了调节失调电压的目的。
调试电路各级电路工作是否正常,是否达到预计要求的波形。
在调试前级电路时,后级电路的芯片暂时不安上,防止由于前级电路工作不正常,导致后级电路芯片的损坏。
整个电路工作,直接通过示波器观察输出信号波形,长时间运行,以检验系统的稳定性。
电路调试包括以下几个方面:
(1).通电观察:
通电后不要急于测量电气指标,而要观察电路有无异常现象,例如有无冒烟现象,有无异常气味,手摸集成电路外封装,是否发烫等。
如果出现异常现象,应立即关断电源,待排除故障后再通电。
(2).静态调试:
静态调试一般是指在不加输入信号,或只加固定的电平信号的条件下所进行的直流测试,可用万用表测出电路中各点的电位,通过和理论估算值比较,结合电路原理的分析,判断电路直流工作状态是否正常,及时发现电路中已损坏或处于临界工作状态的元器件。
通过更换器件或调整电路参数,使电路直流工作状态符合设计要求。
(3).动态调试:
在重新印制好PCB板后,再次将软硬件进行联调,发现点阵还是有三行无法显示,猜测行控制信号出错,用万用表测量P0口电压发现P0.5、P0.6以及P0.7输出电压仅为2V左右,显然这几位输出无法上拉。
原因分析:
首先,我们认为是P0口的上拉排阻出错,因此用万用表测量上拉排阻的组织,发现P0.5、P0.6、P0.7位处排阻阻值异常,因此猜想是排阻烧坏,更改换新的排阻后还是出现相同的情况,因此排除排阻烧坏的可能,然后接着检查电路,发现P0.5、P0.6、P0.7控制点阵的线路出现与相邻线路短接的现象,因此我们得出错误原因来源于腐蚀电路板时腐蚀不够彻底,使得残余的小点状铜片让相邻的线路短接的现象。
理措施及效果:
用小刀割断相连处的铜片,使得相邻线路分开。
用万用表再次测量时发现P0口上拉正常,插入点阵,运行程序正常,调试成功。
8软件介绍
采用C语言编写出程序实现软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。
设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。
软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。
编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。
最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。
汇编语言(AssemblyLanguage)是面向机器的程序设计语言,是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。
其具有执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能在不同机型之间移植。
C语言是一种源于编写UNIX操作系统的语言,它是一种结构化语言,可产生压缩代码。
C语言结构是以括号而不是子和特殊符号的语言。
C可以进行许多机器级函数控制而不用汇编语言。
与汇编相比,有如下优点:
对单片机的指令系统不要求了解,仅要求对52的存储器结构有初步了解;
寄存器分配、不同存储器的寻址及数据类型等细节可由编译器管理;
程序有规范的结构,可分为不同的函数。
这种方式可使程序结构化;
将可变的选择与特殊操作组合在一起的能力,改善了程序的可读性;
编程及程序调试时间显著缩短,从而提高效率;
提供的库包含许多标准子程序,具有较强的数据处理能力;
已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术。
C语言作为一种非常方便的语言而得到广泛的支持,C语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植过来。
基于以上理由决定采用C语言为该显示系统的编程语言。
系统软件编译器介绍
C语言编写的程序并不能被单片机直接执行还需要编译为单片机可执行的机器语言。
因此在系统软件设计中,编译器必不可少。
支持MCS-52用C语言编程的编译器主要有两种:
FranklinC52编译器和KEILC52编译器。
目前在单片机开发中普遍都是使用KEILC52来进行编译。
因此软件设计最终方案为采用C语言为程序语言,KEIL为编译工具按照控制、通信、显示等几个功能模块来编写程序
9设计总结
通过此次课程设计,使我更加扎实的掌握了有关单片机技术的有关知识,加深了对课堂理论知识的理解。
在这次课程设计中,遇到了很多问题,最后在老师的指导下,终于游逆而解。
在今后社会的发展和学习过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退。
通过这次课程设计,我掌握了常用元件的识别和测试;
熟悉了常用仪器、仪表;
了解了电路的连线方法;
以及如何提高电路的性能等等,掌握了焊接的方法和技术,这次课程设计不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。
更重要的是,在实验课上,我们学会了很多学习的方法。
而这是日后最实用的,真的是受益匪浅。
要面对社会的挑战,只有不断的学习、实践,再学习、再实践。
这对于我们的将来也有很大的帮助。
以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情实验过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。
果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。
总之,这次课程设计真的收获了很多。
参考文献
[1]陈明荧.8051单片机课程设计实训教材[M].北京:
清华大学出版社,2003年9月.
[2]徐新艳.单片机原理、应用与实践[M].北京:
高等教育出版社,2005年3月.
[3]吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用[M].第一版.北京:
清华大学出版社,2002年.
[4]吴金戌,沈庆阳,郭庭吉,8051单片机实践与应用[M].清华大学出版社,2001
[5]冯博琴,微型计算机原理与接口技术[M].清华大学出版社,2004
[6]张毅刚,MCS-52单片机应用设计[M].哈尔滨工业大学出版社,2004
[7]张淑清,姜万录等,单片微型计算机接口技术及应用[M].国防工业出版社,2003
[8]吴金戌,沈庆阳,郭庭吉,8052单片机实践与应用[M].清华大学出版社,2001
[9]冯博琴,微型计算机原理与接口技术[M].清华大学出版社,2004
附录1:
总体电路原理图
附录2:
实物图
附录3:
元器件清单
序号
名称
型号规格
数量
1
单片机
AT89C52
2
8x8点阵
1088BS
3
晶振
12MHZ
4
电容
22pF
5
电阻
10K
6
100
7
按键开关
8
电容
10uF
9
插针
32
10
插线
16
11
排阻
1k-8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 x8LED 点阵 显示 技术