两位数码管显示设计2.docx

上传人:b****8 文档编号:10544896 上传时间:2023-02-21 格式:DOCX 页数:24 大小:547.19KB
下载 相关 举报
两位数码管显示设计2.docx_第1页
第1页 / 共24页
两位数码管显示设计2.docx_第2页
第2页 / 共24页
两位数码管显示设计2.docx_第3页
第3页 / 共24页
两位数码管显示设计2.docx_第4页
第4页 / 共24页
两位数码管显示设计2.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

两位数码管显示设计2.docx

《两位数码管显示设计2.docx》由会员分享,可在线阅读,更多相关《两位数码管显示设计2.docx(24页珍藏版)》请在冰豆网上搜索。

两位数码管显示设计2.docx

两位数码管显示设计2

 

课程设计说明书

 

课程名称:

单片机机原理及应用

设计题目:

两位数码管显示设计

院系:

电子信息与电气工程系

学生姓名:

学号:

专业班级:

指导教师:

 

课程设计任务书

设计题目

两位数码管显示设计

学生姓名

所在院系

电子信息与电气工程系

专业、年级、班

设计要求:

(一)基本要求:

使用两个一位数码管显示器,循环显示两位数00-99

(二)技术参数及要求:

1、具有开关及指示灯,有复位按键;

2、数码管动态显示,即扫描方式,每一位每间隔一段时间点亮一次。

字符的亮度及清晰度与每位点亮停留时间和每位显示的时间内轮换导通次数有关。

学生应完成的工作:

1硬件电路的总体设计;

2硬件电路原理图的绘制;

3软件程序的总体设计方案;

3软件程序流程图的绘制;

4软件程序的编辑和调试工作;

5软件电路结合应电路的仿真和测试工作;

6电路板的制作,以及实物元器件的焊接工作;

7我主要负责硬件电路的设计和程序的复查。

参考文献阅读:

[1]沈德金.单片机接口技术实验指导.北京:

北京航空航天大学出版社,1993.3

[2]增义方张彦仲.信号处理单片机及应用.北京:

航空工业出版社,1997.9

[3]张文涛.PROTEUS仿真软件应用.武汉:

华中科技大学出版社,2010.2

[4]黄长著.80c51汇编程序实例.程序员.2007年8月刊

[5]

工作计划:

5月4号接受任务,分析题目并查阅相关资料,做出整体硬件电路的设计方案。

5月5号-6号根据所提出电路的设计方案,绘制硬件电路。

5月7号查阅资料,分析所设计系统的软件结构,并做出设计方案。

5月8号-9号由系统软件的设计方案,绘制程序流程图,并且根据流程图编写系统程序。

5月10号结合程序和硬件电路,用Proteus、Keil、Matlab进行电路仿真调试,至电

路按要求工作为止。

5月11号-12号绘制PCB板,并进行实物焊接操作。

5月13号-14号完成设计验收上交设计报告。

任务下达日期:

指导教师(签名):

学生(签名):

两位数码管显示设计

 

摘要:

本设计主要由硬件部分和软件部分组成。

硬件部分中,AT89C52是核心,时钟电路、复位电路、显示电路以及电源电路等为辅助部分;软件部分是用汇编语言编程,用keil软件来编译、调试的。

经过软硬件部分的有机结合,本设计可以完成运用显示电路中的两个一位数码管循环显示两位数00-99的功能。

设计实物比较重要的一个环节就是显示电路,在这里尽显本设计的独特之处,其一、数码管是运用三极管触发的;其二、数码管的显示运用的是动态显示。

我们的设计虽然运用了三极管触发数码管、动态显示等技巧节省了不少开支、一定程度上简化了电路,但同时也为我们的编程环节带来了不少麻烦;不光如此,显示方面效果也不好。

关键词:

AT89C52数码管keilproteus汇编语言动态显示

 

1.设计背景……………………………………………………………1

1.1设计课题及目的……………………………………………………1

1.2相关技术和研究……………………………………………………1

2.设计方案……………………………………………………………1

2.1两位数码管显示设计方案………………………………………2

2.1.1方案一数码管静态显示……………………………………2

2.1.2方案二数码管动态显示

(一)

(二)………………………3

2.2设计方案的整体设计………………………………………………4

2.2.1硬件电路设计方案…………………………………………4

2.2.2程序设计方案………………………………………………4

3.方案实施……………………………………………………………4

3.1硬件电路的方案实施……………………………………………4

3.1.1电源电路的设计……………………………………………4

3.1.2主控电路的设计……………………………………………5

3.1.2.1时钟电路………………………………………………6

3.1.2.2复位电路………………………………………………………6

3.1.2.3AT89C52………………………………………………………6

3.1.3显示电路………………………………………………………6

3.1.4硬件电路的整体布局…………………………………………7

3.2系统程序方案的实施………………………………………………8

3.2.1方案一静态显示系统程序…………………………………8

3.2.2方案二动态显示系统程序

(一)…………………………8

3.2.3方案二动态显示系统程序

(二)…………………………10

4.结果与结论………………………………………………………11

4.1结果………………………………………………………………12

4.2结论………………………………………………………………12

5.收获与致谢………………………………………………………12

5.1收获………………………………………………………………12

5.2致谢………………………………………………………………12

6.参考文献……………………………………………………………12

7.附件…………………………………………………………………13

7.1元器件清单………………………………………………………13

7.2硬件电路显示电路图……………………………………………14

7.3电源电路图…………………………………………………………14

7.4最终方案实施程序………………………………………………15

 

1.设计背景

1.1设计课题及目的

本课题实现的是二位数码管的动态显示,通过动态扫描,实现0-99的循环计数。

通过本课题的学习,使自己掌握AT89C52单片机的硬件的基本结构、内部各种功能部件的工作原理及编程控制、指令系统以及各种常用硬件接口的设计,最终使自己能够根据工程开发任务的要求,具有实现MCS-51单片机应用系统的设计能力。

通过完成一个包括电路设计和程序开发的完整过程,使自己了解开发一单片机应用系统的全过程,为今后从事相应打下基础。

综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。

1.2相关技术与研究

现在有这样一种计算机,它的最小系统仅用一片很小的集成电路就可进行简单的运算和控制,它就是目前渗透到我们生活各个领域的单片机,可以说现在几乎很难找到没有单片机踪迹的领域。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机,更不用说自动控制领域的机器人、智能仪表、医疗器械了。

因此,为适应时代的发展,学校为我们准备了这次课程设计。

学校希望通过这次课程设计,让我们积累更多实践经验,为我们走向社会,打下良好的基础。

若将经典电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。

单片机应用系统的硬件结构给予电子系统“身躯”,单片机应用系统的应用程序赋予其“生命”。

例如,在设计智能化仪器显示器的显示功能时,可在开机时显示系统自检结果,未进入工作时显示各种待机状态,仪器运行时显示运行过程,工作结束后可显示当前结果、自检结果、原始数据、各种处理报表等。

在无人值守时,可给定各种自动运行功能。

因此,为适应时代的发展,学校为我们准备了这次课程设计。

学校希望通过这次课程设计,让我们积累更多实践经验,为我们走向社会,打下良好的基础。

2.设计方案

2.1两位数码管显示设计方案

2.1.1方案一,数码管静态显示

如图2-1所示,此方案所作两位数码管显示电路由主控电路,电源电路,显示电路三部分组成。

其独特之处是显示电路运用数码管静态显示方式实现(运用相关软件验证了其可行性,不过与此次课程设计要求不符,没采用),其显示效果绝佳(不闪烁),不过其电路线路比较繁杂。

工作于静态显示方式下,两片数码管共阳极分别于一个三极管9051集电极相连,两个三极管基极分别于可以提供+5V的单片机的PO.0、P0.1端口相连;每位的段码线(a-g,省略了小数点的dp)分别于单片机的P2.0-P2.6、P3.0-P3.6一一相连(码段线于这些端口之间分别加一300藕的保护电阻)。

当数码管显示字符已确定(0-9其中之一)后,相应的单片机输出口P将维持不变,直到有程序切换到另一数字(0-9其中之一)为止,正因如此,此方案下数码管的亮度比较高。

图2-1静态电路

2.1.2方案二,数码管动态显示

(一)

(二)

如图2-2所示(电源电路如图3-1所示),此方案所作两位数码管显示电路也是由主控电路,电源电路,显示电路三部分组成。

其独特之处在于数码管的动态显示,为单片机节省下了不少P口,还使得电路线路更简单一些,其缺点是编程麻烦、显示方面效果不好,闪烁在我们运用的器件范围之内无法应用相应措施消除。

由于所用程序模块不同,所以此方案下我们又细分成两套方案,即

(一)运用中断来片选,

(二)运用置位复位来片选。

由于我组成员对置位复位的感念了解相应的透彻一些,所以我们最终选择方案二

(二)来完成此次使用两个一位数码管显示器,循环显示两位数00-99的设计。

图2-2动态电路

2.2设计方案的整体设计

2.2.1硬件电路设计方案

如图2-3所示,,我组成员将整个硬件电路的设计划分为三个模块:

单片机主控制电路、数据显示电路、电源电路。

其中,单片机控制电路又分为时钟电路和复位电路,单片机采用AT89C52;数据显示电路用的是两个一位数码管显示以及两个三极管9051、若干阻值的电阻组成;电源电路由桥堆2W10、滤波电容、三端稳压器TA7805三部分组成。

图2-3硬件整体布局图2-4动态显示主程序流程图

2.2.2程序设计方案

如图2-4所示,本设计软件程序整由主程序、复位置位子程序、扫描子程序等模块组成。

3.方案实施

3.1硬件电路的方案实施

3.1.1电源电路的设计

如图3-1所示,电源电路由桥堆2W10、滤波电容C1、TA7805(U1)三部分组成。

220V交流市电通过电源变压器T1变换成交流低压,再经过桥式整流电路D1~D4和滤波电容C1的整流和滤波,在固定式三端稳压器AT7805的VREG和COMMON两端形成一个并不十分稳定直流电压(该电压常常会因为市电电压的波动或负载的变化等原因而发生变化)。

此直流电压经过AT7805的稳压和另一电容(并在AT7805的VREG和COMMON两端,图中没标记出)便在输出端产生了精度高、稳定度好的直流输出电压。

图3-1动态电路电源模拟

3.1.2主控电路的设计

如图3-2所示,主控电路由AT89C52、时钟电路、复位电路组成。

图3-2动态电路主控电路

3.1.2.1时钟电路

时钟电路中器件都有电容C1、C2,晶振X1,其值分别是33PF、33PF、11.0592MHZ。

其中,晶振的频率对单片机运行速度起决定作用,晶振的频率越高,系统的时钟频率就越高,单片机的运行速度越快,所以我们选择几乎接近于晶振在时钟电路中选取范围的最大值11.0592(晶振的振荡频率范围通常是1.2MHZ-12MHZ)。

3.1.2.2复位电路

复位电路中器件只有按键和接地电阻R1。

MCS-51的复位是由外部的复位电路来实现的。

复位电路通常采用上电自动复位和按钮复位,而按钮复位(我们称之为按键手动复位)又分为电平方式和脉冲方式。

现在我们选的是最简单的一种,也就是电平复位方式。

我们做的电路,通过AT89C52的RST端经接地电阻R1和电源VCC接通而实现的。

3.1.2.3AT89C52

AT89C52是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内直通用8位中央处理器(CPU)和FLASH存储单元,共有40个引脚,功能强大。

我们的设计实物只用了它的XTAL1、XTAL2、RST、P0.0、P0.1、P2.0-P2.6这12个引脚。

其中,XTAL1、XTAL2分别是震荡器反相放大器(内部时钟发生器)的输入端和输出端,也就是和时钟电路连接的端口。

RST是复位输入(当振荡器工作时,此引脚出现两个机器周期以上高电平将使单片机复位),是与复位电路连接的端口。

P0.0、P0.1可起到触发、片选显示电路中两个一位数码管(十位、个位)的作用,是与显示电路连接的触发/片选的端口。

P2.0-P2.7是一组带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输出口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流,在这里我们使用的是它们的输出,每个端口分别并出两条,分两组,每组8条有机的和相应的那个数码管的引脚连接,如图3-3。

3.1.3显示电路的设计

如图3-3所示,两个1K的电阻、七个300欧的电阻、两个三极管9051和两个一位的数码管组成。

由于现在我们所用的数码管是共阳极的,所以其触发端必须是高电平,因而我们选择9051Q1(Q2)接在单片机触发/片选端P0.0(P0.1)与数码管的触发端,来组合完成精细的触发/片选。

而剩下的a、b、c、d、e、f、g分别接相应的供给端P2.0-P.6(除dp对应的P2.7口)

图3-3动态电路显示电路

3.1.4硬件电路全局图

硬件电路仿真如图3-4所示(除电源电路)。

图3-4动态电路硬件电路

3.2系统程序的方案实施

3.2.1方案一静态显示系统程序

org00h

start:

movr1,#00h

begin:

calltt

calldelay

incr1

cjner1,#100,begin

sjmpmain

tt:

movdptr,#tab

mova,r1

movb,#10

divab

movca,@a+dptr

movp3,a

mova,b

movca,@a+dptr

movp3,a

ret

delay:

movr2,#50

del:

movr3,#40

del1:

movr4,#248

djnzr4,$

djnzr3,del1

ret

tab:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h

ret

end

3.2.2方案二动态显示系统程序

(一)

org0000h

ajmpmain

org000bh

ajmpitop

org0030h

main:

movTMOD,#01h

mov20h,#14h

clrA

mov40h,A

mov41h,A

setbET0

setbEA

movTH0,#0ach

movTL0,#0b0h

setbTR0

here:

movdptr,#tab

movA,40h

movcA,@A+dptr

setbP0.1

movP2,A

clrP0.0

acalldl1

movA,41h

movcA,@A+dptr

setbP0.0

movP2,A

clrP0.1

acalldl1

sjmphere

itop:

pushpsw

pushACC

movTH0,#0ach

movTL0,#0b0h

djnz20h,return

mov20h,#14h

movA,#01h

addA,41h

mov41h,A

cjneA,#10,return

mov41h,#00h

movA,#01h

addA,40h

mov40h,A

cjneA,#10,return

mov40h,#00h

return:

popACC

poppsw

reti

dl1:

movr7,#200

dl:

movr6,#50

dl6:

djnzr6,dl6

djnzr7,dl

ret

tab:

db0c0h,0f9h,0a4h,0b0h,099h,092h,082h,0f8h,080h,090h

end

3.2.3方案二动态显示系统程序

(二)

org10h

start:

movr1,#00h

begin:

calltt

calldel

incr1

cjner1,#100,begin

sjmpstart

tt:

movr2,#25

dd:

movdptr,#tab

mova,r1

movb,#10

divab

movca,@a+dptr

setbp0.0

movp2,a

clrp0.1

calldel

mova,b

movca,@a+dptr

setbp0.1

movp2,a

clrp0.0

calldel

djnzr2,dd

ret

del:

movr6,#250

del11:

movr7,#100

djnzr7,$

djnzr6,del11

ret

tab:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h

ret

end

4.结果与结论

4.1结果

在老师的指导、组员之间的讨论、自己精心的准备刻苦的工作下,我组再规定时间内完成了此次两位数码管显示设计。

电路安装调试后,实物运行状态几乎与预期的一致,比较成功。

4.2结论

一、我们的设计最终的成功证明了用三极管为共阳极数码提供高电平触发数码管显示是可行的。

二、我们的设计最终的成功验证了数码管动态显示方式有显示效果差的缺点。

三、我们的设计最终的成功体现了学校此次的课程设计安排确实是必要的。

为我们在动手方面又一次提供了很好的机会,使我们更加坚定了好好学习专业知识的信念和明白了动手实践的重要性。

5.收获与致谢

5.1收获

经过这半个来月的奋战,使我收获不少。

首先,经过大量资料的查阅,让我对单片机有了更深刻的了解,知道了它在我们生活中的作用是其它实物无法取代的,使我更见坚定了对单片机这门专业课更加深入学习的信念;其次,这段时间里经过和组员们的合作与互助让我更加透彻的体会到团队协作互助所迸发出来的力量真是无穷无尽的,又一次培养了我的团队协作素养。

再次,辛苦的工作过程令我加深我对辅导老师老师的敬佩之情,他们平时兢兢业业的备课给我们传授知识所吃的苦远远要比我们这俩周吃的苦多无穷倍,同时成功的喜悦为我坚持刻苦认真对待每一件事这一习惯提供了无穷的动力。

5.2致谢

在这里我首先感谢这次课程设计过程中一直为我们操劳的辅导老师,是您们的关心指导使我们通过此次课程设计对单片机这门专业课有了一个系统而全面的了解,感谢您们为我们付出这么多。

同时我也要感谢我们组的所有成员,在你们的帮助和支持下,我定时定量的做完了我所做的那份工作。

总之,我非常感谢此次设计中帮过鼓励过我们的老师和同学。

6.参考文献

【1】沈德金.单片机接口技术实验指导.北京:

北京航空航天大学出版社,1993.3

【2】增义方张彦仲.信号处理单片机及应用.北京:

航空工业出版社,1997.9

【3】张文涛.PROTEUS仿真软件应用.武汉:

华中科技大学出版社,2010.2

【4】黄长著.80c51汇编程序实例.程序员.2007年8月刊

【5】

7.附件

7.1硬件电路显示电路图

7.2电源电路图

7.3最终方案实施汇编程序

org10h

start:

movr1,#00h

begin:

calltt

calldel

incr1

cjner1,#100,begin

sjmpstart

tt:

movr2,#25

dd:

movdptr,#tab

mova,r1

movb,#10

divab

movca,@a+dptr

setbp0.0

movp2,a

clrp0.1

calldel

mova,b

movca,@a+dptr

setbp0.1

movp2,a

clrp0.0

calldel

djnzr2,dd

ret

del:

movr6,#250

del11:

movr7,#100

djnzr7,$

djnzr6,del11

ret

tab:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h

ret

end

7.4元件清单表

指导教师评语:

 

课程设计报告成绩:

,占总成绩比例:

30%

课程设计其它环节成绩:

环节名称:

考勤,成绩:

,占总成绩比例:

20%

环节名称:

综合,成绩:

,占总成绩比例:

50%

总成绩:

指导教师签字:

年月日

本次课程设计负责人意见:

 

负责人签字:

年月日

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

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1