单片机整点报时闹钟.docx

上传人:b****9 文档编号:25416421 上传时间:2023-06-08 格式:DOCX 页数:19 大小:221.96KB
下载 相关 举报
单片机整点报时闹钟.docx_第1页
第1页 / 共19页
单片机整点报时闹钟.docx_第2页
第2页 / 共19页
单片机整点报时闹钟.docx_第3页
第3页 / 共19页
单片机整点报时闹钟.docx_第4页
第4页 / 共19页
单片机整点报时闹钟.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

单片机整点报时闹钟.docx

《单片机整点报时闹钟.docx》由会员分享,可在线阅读,更多相关《单片机整点报时闹钟.docx(19页珍藏版)》请在冰豆网上搜索。

单片机整点报时闹钟.docx

单片机整点报时闹钟

 

单片机最小应用系统

指导老师:

吴兆华

学生:

曾雅琼

学号:

092011109

机电工程学院

2010年五月

目录

一设计题目3

二设计目的3

2.1设计目的要求3

2.2系统设计意义3

三系统硬件图4

四程序流程图4

五、系统说明与分析5

5.1系统主要组成部分5

5.2单片机最小系统部分5

5.2.1MCS-51系列单片机概述5

5.2.2MCS-51系列单片机的并行I/O口6

5.2.3MCS-51系列单片机的工作方式和时序7

5.3数码显示部分8

5.3.1概述8

5.3.2LED数码管引脚结构8

5.3.3LED数码管显示原理9

5.3.4LED数码管的驱动方式10

5.4电路板的制作11

5.5系统连线说明分析12

六源程序13

七总结19

八参考文献20

 

一设计题目

整点报时闹钟

二设计目的

该单片机最小应用系统设计目的及要求如下:

2.1设计目的要求

1、通过本次实验,掌握单片机I/O口的使用,6位7段数码管动态显示数据的方法以及蜂鸣器的用法;

2、通过对单片机的使用和编程,了解单片机的应用编程;

3、掌握单片机汇编语言设计和分析方法;

4、学会使用并熟练掌握电路绘制软件Protel99SE;

5、掌握电路图绘制及PCB图布线技巧。

2.2系统设计意义

1、在系统掌握单片机相应基础知识的前提下,熟悉单片机最小应用系统的设计方法及系统设计的基本步骤。

2、完成所需单片机最小应用系统原理图设计绘制的基础上完成系统的电路图设计。

3、完成系统所需的硬件设计制作,在提高实际动手能力的基础上进一步巩固所学知识。

4、进行题目要求功能基础上的软件程序编程,会用相应软件进行程序调试和测试工作。

5、用AT89S51,DAC0823设计出题目所要求的电压输出,实现电压值动态显示,并针对实际设计过程中软、硬件设计方面出现的问题提出相应解决办法。

 

三系统硬件图

图1电路原理图

四程序流程图

图2程序流程图

五系统说明与分析

5.1系统主要组成部分

模拟电压输出系统主要分为三个部分:

单片机最小系统,蜂鸣器提示部分,数码管显示部分。

所用主要元件有:

AT89S51,蜂鸣器,六位七段数码管。

5.2单片机最小系统部分

5.2.1MCS-51系列单片机概述

MCS-51系列单片机是一种高性能的8位机系列,广泛应用于各种小型控制系统中,其引脚图如图所示。

本论文采用的AT89C51单片机是AMTEL公司生产的MCS-51系列的兼容产品,与MCS-51指令系统兼容,系统结构相同,CMOS工艺制造并带有非易失性Flash程序存储器。

全部支持12时钟和6时钟操作。

AT89C51包含128字节RAM、32条I/O口线、3个16位定时/计数器、6输入4优先级嵌套中断结构、1个串行I/O口(可用于多机通信I/O扩展或全双工UART以及片内振荡器和时钟电路)。

RAM

ROM

CPU

I/O接口

电路

定时器/

计数器

时钟

 

图3MCS-51系列单片机

5.2.2DAC0832芯片介绍

DAC0832是一款常用的数摸转换器,它有两种连接模式,一种是电压输出模式,另外一种是电流输出模式,为了设计的方便,选用电压输出模式,如电路图所示,Iout1和Iout2之间接一参考电压,VREF输出可控制电压信号。

它有三种工作方式:

不带缓冲工作方式,单缓冲工作方式,双缓冲工作方式。

该电路采用单缓冲模式,由电路图可知,由于/WR2=/XFER=0,DAC寄存处于直通状态。

又由于ILE=1,故只要在选中该片(/CS=0)的地址时,写入(/WR=0)数字量,则该数字信号立即传送到输入寄存器,并直通至DAC寄存器,经过短暂的建立时间,即可以获得相应的模拟电压,一旦写入操作结束,/WR1和/CS立即变为高电平,则写入的数据被输入寄存器锁存,直到再次写入刷新。

5.2.3MCS-51系列单片机的工作方式和时序

单片机应用系统中,除了基本计算机系统单元电路外.还需配备完整的外围电路、以完成复位、掉电保护、提供时钟、节电等功能。

(1)时钟电路:

单片机内部有一个高增益的反相放大器,通过XTAL1和XTAL2引脚外接石英振于或陶瓷振子、微调电容组成振荡器如图13所示。

该振荡器发出的脉冲直接送入内部时钟电路。

振荡器若外接的是石英扳子,微调电容通常选择30pF;外接陶瓷娠子时选样47pF。

振荡频率范围选择1.2—12M。

MCS5-51系列单片机也可以采用外接时钟,这时XTAL2脚用来输入外部时钟信号(XTAL2脚为内部时钟电路的输入端),XTALl脚则接地如图13-b所示。

对于CHM05工艺制造的80C51单片机,则应从XTALl脚输入外部时钟信号,XTAL2脚悬空。

(a)外接石英晶体振荡电路(b)外接时钟电路

图4两种单片机时钟电路

(a)上电复位(b)按键电平复位

(c)RC放电过程(d)电平复位过程

图5单片机常用复位电路

(2)复位电路:

复位使单片机处于起始状态,并从此状态开始运行MCS5-51单片机RST引脚为复位端,该引脚连续保持2个机器周期(24个时钟振荡周期)以上的高电平。

可使单片机复位。

本论文使用的是外部复位电路,单片机在启动后要从复位状态开始运行,因此上电时要完成复位工作,称上电复位,如图14-a所示。

上电瞬间电容两端的电压不能发生突变,只RST端为高电平+5v,上电后电容通过及RC电路放电RST端电压逐渐下降,直至低电平0V,如图14-c所示。

适当选择R、C的值,使RST端的高I电平维持2个机器周期以上即可完成复位。

单片机L在运行过程中,出于本身或外并干扰的原因会导致出错。

这时可按复位键以重新开始远行,按键复位可分为按键电平复位或按健脉冲复位,如图14-b所示。

按键脉冲复位和上电平复值的原理是一样的,都是利用RC电路的放电原理,如图14-d所示。

让RST端能保持一段时间的高电平,以完成复位,按键电平复位时,按键时间也应保持在两个机器周期以上。

根据设计要求和计算简便的原则,我们选择12M的石英晶振、30PF的电容、+5V电源,最小系统如下:

图6单片机最小系统

5.3数码显示部分

5.3.1概述

七段LED数码管由8个发光二极管组成。

基中7个长条形的发光管排列成“日”字形,另一个圆点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。

LED数码管有两种不同的形式:

一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED数码管;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED数码管。

在本试验中用的是共阴极数码管。

5.3.2LED数码管引脚结构

一位七段数码管的引脚结构如下图所示:

 

图7数码管

图8一位七段数码管的引脚图

其中+是选择阴极和阳极端口,A,B,C,D,E,F,G,DP为字形选择端口。

左边是共阴极数码管,右边是共阳极数码管。

5.3.3LED数码管显示原理

七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。

LED数码管的g~a七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码,下面给出共阴极的字形码见表6

表6共阴极数码管的字形表

“0”

3FH

 

“8”

7FH

 

“1”

06H

 

“9”

6FH

 

“2”

5BH

 

“A”

77H

 

“3”

4FH

 

“b”

7CH

 

“4”

66H

 

“C”

39H

 

“5”

6DH

 

“d”

5EH

 

“6”

7DH

 

“E”

79H

 

“7”

07H

 

“F”

71H

 

5.3.4LED数码管的驱动方式

数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。

所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。

这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码。

动态扫描显示接口是单片机中应用最为广泛的一种显示方式之一。

其接口电路是把所有显示器的8个笔划段A-H同名端连在一起,而每一个显示器的公共极COM是各自独立地受I/O线控制。

CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟那个显示器亮,则取决于COM端,而这一端是由I/O控制的,所以就可以自行决定何时显示哪一位了。

所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。

在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。

 

5.4电路板的制作

Protel99功能强大,为我们进行电子电路原理图和印制板图的设计提供了良好的操作环境。

用Protell99进行电路设计分为两大部分:

原理图的设计和电路板的设计。

原理图的设计实在SCH系统中进行的,电路原理图是印刷板电路设计的基础,只有设计好原理图才有可能进行下一步的电路板设计。

用protel99进行电路板设计的第一步是其原理图的设计。

显然,原理图决定整个电路的基本功能,也是接下来生成网表和设计印刷板电路的基础。

具体步骤如下:

(1)图面设置:

Protel99允许用户根据电路的规模设置图面的大小,按照偏好和习惯设置图面的样式。

实际上,设置图面就是设置了一个工作平面,以后的工作就要在这个平面上进行。

所以图面应该设置得足够大,为进一步工作提供一个足够大的工作空间。

(2)放置元件:

所谓放置元件就是从元件库中选取所需得元件,将其布置到图面上合适的位置,有时还要重定义元件的编号、封装。

元件的封装很重要,要根据元件的实际尺寸和实际封装来决定,要是元件没封装好,将会给以后电路板的制作带来很大的麻烦。

这些都是下一步工作的基础。

Protel99为用户提供了一个非完备的元件库,并且允许用户对这个元件库进行编辑或者新建自己的元件库。

电路板的制作过程

(1)打印:

将生成的PCB图打印到热转印纸上,需注意线不能太窄,墨要加重,否则制板时容易断线,如果在操作过程中断了线,可用电烙铁将锡带过。

(2)熨烫:

将热转印纸覆在铜板上,用电熨斗进行熨烫,关键要注意熨烫的时间,不能太久,也不能时间太短,否则,太久会把铜板烫坏,不够的话墨迹覆不上去。

(3)腐蚀:

把铜板放到三氯化铁溶液中腐蚀,需注意溶液浓度要较高,最好用热水配置,这样腐蚀更快,一般3分钟即可。

如果时间过长,需剩下的铜线也可能被腐蚀。

(4)打孔:

打孔时注意钻头尺寸,本次用的钻头大小是0.712mm的,最需注意的地方是集成块的管脚,如果打孔误差大,管座就很难插上。

(5)放置元件:

放置前应先打磨一下打孔后留下的毛刺,并均匀地涂上松香水(目的是防止铜线氧化,易于焊锡覆着焊盘,但多涂会导致焊接时焊点变黑,影响美观)。

放置元件时注意集成块的管脚,二极管和电解电容的正负,这些都是平时比较容易出错的地方。

(6)焊接:

焊接技术比较难掌握,焊锡、烙铁与焊盘的位置关系,焊锡熔化时间

长短,松香水的浓度,烙铁的温度等等,都是影响焊点美观的因素。

(7)检查:

检查是否有虚焊,集成块管脚位置是否正确,电源引线位置是否恰当等。

检查完毕就能进行调试了。

5.5系统连线说明分析

调试过程:

1、保证电路板连接正确后,接上电源,测试最小系统是否工作;

2、观察数码管显示的值是否与当前输出用电压表测得的值相符,如果不相符,分析原因。

找出问题的所在,解决问题,知道显示正确为止。

实验过程中的问题及改进方法

1、制作电路板过程中由于焊接等原因,造成电路连接不通现象,浪费了调试时间。

2、在实际调试过过程中,由于对最小系统的而不熟悉,而导致开始时候最小系统不工作,复位电路没有反应,在同学的帮助下,找到了问题,调整了焊线,使系统显示正确了。

3、程序编制中,数码管的动态显示和码的调整是个重点,需要花费时间来调试,共阴极数码管的解法不一样,也会导致出现乱码,我在试验的开始的时候就是出现了乱码,我仔细的检查了焊线,重新写了字形码,最后显示正确了。

六源程序

ORG00H

JMPSTART

START:

MOVP0,#40H;蜂鸣器响

MOVP0,#01H;指向秒针个位

MOVP1,#077H;输入0

MOVP0,#02H;指向秒针十位

MOVP1,#77H;输入0

MOVP0,#04H;指向分针个位

MOVP1,#077H;输入0

MOVP0,#08H;指向分针十位

MOVP1,#77H;输入0

MOVP0,#10H;指向时针个位

MOVP1,#77H;输入0

MOVP0,#20H;指向时针十位

MOVP1,#77H;输入0

MOVR1,#06H

MOVR2,#10H

MOVR3,#06H

MOVR4,#02H

MOVB,#24H

AJMPM1

M1:

MOVP0,#01H

MOVP1,#11H

LCALLDELAY1S

MOVP1,#6DH

LCALLDELAY1S

MOVP1,#5DH

LCALLDELAY1S

MOVP1,#1DH

LCALLDELAY1S

MOVP1,#3EH

LCALLDELAY1S

MOVP1,#7EH

LCALLDELAY1S

MOVP1,#16H

LCALLDELAY1S

MOVP1,#7FH

LCALLDELAY1S

MOVP1,#3FH

LCALLDELAY1S

MOVP1,#77H

LCALLDELAY1S

MOVP0,#02H

DJNZR1,M2

MOVA,R1

MOVRO,40H

MOVDPTR,#SQTAB1

MOVCRO,@RO+DPTR

MOV41H,RO

MOVR1,A

MOVP0,#02H

MOVCP1,@RO+DPRT+6

LJMPM1

SQTAB1:

RO6,5,4,3,2,1,77H,11H,6DH,5DH,1DH,3EH

M2:

MOVP1,#77H

DJNZR2,M3

MOVP0,#04H

MOVA,R2

MOVRO,40H

MOVDPTR,#SQTAB2

MOVCRO,@RO+DPTR

MOV41H,RO

MOVR2,A

MOVP0,#02H

MOVCP1,@RO+DPRT+10

MOVA,#06H

LJMPM1

SQTAB2:

RO10,9,8,7,6,5,4,3,2,1,77H,11H,6DH,5DH,1DH,3EH,7EH,16H,7F,3F

M3:

MOVP1,#77H

MOVR2,10H

DJNZR3,M4

MOVP0,#08H

MOVR1,R3

MOVRO,40H

MOVDPTR,#SQTAB1

MOVCRO,@RO+DPTR

MOV41H,RO

MOVR3,R1

MOVP0,#02H

MOVCP1,@RO+DPRT+6

LJMPM1

M4:

MOVP1,#77H

DJNZB,START

MOVR3,#06H

MOVP0,#10H

DJNZR4,M5

MOVP0,#04H

MOVA,R4

MOVRO,40H

MOVDPTR,#SQTAB2

MOVCRO,@RO+DPTR

MOV41H,RO

MOVR4,A

MOVP0,#02H

MOVCP1,@RO+DPRT+10

MOVP0,#40H

MOVR3,#06H

LJMPM1

M5:

MOVP1,#77H

MOVP0,#20H

DECR4

MOVP0,#04H

MOVA,R4

MOVRO,40H

MOVDPTR,#SQTAB2

MOVCRO,@RO+DPTR

MOV41H,RO

MOVA,R1

MOVP0,#02H

MOVCP1,@RO+DPRT+10

LJMPM1

DELAY1S:

MOVR2,#10

DE1:

MOVR3,#200

DE2:

MOVR4,#248

DE3:

DJNZR4,DE3

DJNZR3,DE2

DJNZR2,DE1

RET

 

总结

1、在设计系统过程中,学会用ProtelDXP画原理图和PCB图。

通过查阅相关的书籍,设计了电路原理图,经过仿真和反复的修改电路中元器件的参数得到了可行的电路图。

2、刚开始在电路板制做完成后进行检测,发现小系统不能正常工作,经过自己和同学的排查发现问题所在,原来是复位电路中极性电容接反所致,重新焊接后系统工作正常。

整个过程中大大的提高了动手能力。

3、接下来是最关键的步骤——电路板的调试,软硬件相结合,开始将程序烧到硬件电路中,刚开始工作比较正常,达到了题目的要求,当程序运行几个循环后,发现开始出现错误。

输出的波形比较紊乱,然后进行故障的排查,检查硬件和软件都没有问题,再进行一次调试还是不行,通过查阅数模转换芯片的资料,发现问题的所在,自己将片选信号接到地上可能导致一直工作状态,出现程序紊乱的现象。

将片选信号接到单片机的一个管脚上,通过程序来控制数模转换芯片的工作状态。

经过再一次的调试,程序运行比较稳定。

运算放大器输出正常的波形。

4、调试程序过程中,针对遇到的问题,寻找解决方法,同时学会利用C语言编制单片机程序。

5、经过学习单片机接口实验这门课,使自己对单片机有了更深入的了解,提高了自己的动手能力。

很感谢在整个课程学习中老师和师兄们的指导,以及同班同学的热心帮助。

 

参考文献

[1]孙安青.AT89S51单片机实验及实践教程[M].

[2]秦晓梅.育斌.单片机原理综合实验教程[M].辽宁:

大连理工大学出版社,2004.

[3]明荧.8051单片机基础教程[M].2003.

[4]黎文模.ProtelDXP电路设计与实例精解[M].北京:

人民邮电出版社,2006.

[5]何立民.单片机应用系统设计系统配置与接口技术.北京:

北京航空航天大学出版社,1999.

[6]张友德.单片微型机原理、应用与实验.上海:

复旦大学出版社,1994.

[7]房小翠.单片机实用系统设计技术.北京:

国防工业出版社,1993.

[8]张洪润.单片机应用技术教程.北京:

清华大学出版社,1997.

[9]莫力.Protel电路设计.北京:

国防工业出版社,2005.

[10]肖玲妮,袁增贵.Protel99SE.北京:

清华大学出版社,2003.

 

 

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

当前位置:首页 > 初中教育 > 科学

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

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