单片机电子时钟课程设计报告.docx

上传人:b****5 文档编号:5698420 上传时间:2022-12-31 格式:DOCX 页数:15 大小:272.84KB
下载 相关 举报
单片机电子时钟课程设计报告.docx_第1页
第1页 / 共15页
单片机电子时钟课程设计报告.docx_第2页
第2页 / 共15页
单片机电子时钟课程设计报告.docx_第3页
第3页 / 共15页
单片机电子时钟课程设计报告.docx_第4页
第4页 / 共15页
单片机电子时钟课程设计报告.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

单片机电子时钟课程设计报告.docx

《单片机电子时钟课程设计报告.docx》由会员分享,可在线阅读,更多相关《单片机电子时钟课程设计报告.docx(15页珍藏版)》请在冰豆网上搜索。

单片机电子时钟课程设计报告.docx

单片机电子时钟课程设计报告

目录

一、设计要求……………………………………………………………………4

二、设计方案和论证……………………………………………………………4

1.总设计原理图…………………………………………………………………………4

2.元器件清单……………………………………………………………………………5

3、各部分功能实现………………………………………………………………………5

4、STC89C52单片机介绍…………………………………………………………………5

5、上电按钮复位电路………………………………………………………………………8

6、晶振电路………………………………………………………………………………8

7.下载端口…………………………………………………………………………………8

8、1602A液晶显示器………………………………………………………………………10

9、时钟显示校正电路………………………………………………………………………12

10、蜂鸣器电路……………………………………………………………………………12

11、外接电源电路…………………………………………………………………………13

12、总电路原理图…………………………………………………………………………14

13、程序流程图……………………………………………………………………………15

三、设计总结………………………………………………………………………15

1实验中遇到的问题及解决方法……………………………………………………………15

2设计体会……………………………………………………………………………………16

四、参考文献………………………………………………………………………16

 

一、设计要求

1、准确计时,以数字形式显示时、分、秒的时间。

2、小时以24小时计时形式,分秒计时为60进位。

3、校正时间功能(即调整时间)

4、闹钟功能。

5、整点报时。

6、总结检验电路设计结果

二、设计方案和论证

本次设计时钟电路,使用了ATC89C52单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按键来调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用C语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:

键盘、芯片、扬声器、显示屏即可满足设计要求。

1、总设计原理框图如下图所示:

 

2、元器件清单

名称

数量

STC89C52单片机

1

12M晶振

1

PNP9015三极管

2

10k排阻

1

10k微调电阻

1

10k电阻

2

4.7k电阻

2

Led发光二极管

1

四角按键

4

蜂鸣器

1

10uF电容

1

30pF电容

2

1602液晶显示器

1

40脚插座

1

铜板15cm*15cm

1

排针和排插

若干

3、各部分功能实现

(1)单片机发送的信号通过程序控制最终在数码管上显示出来。

(2)单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。

(3)为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正液晶显示器上显示的时间。

(5)单片机通过控制闹铃电路来完成定时闹钟的功能。

4、STC89C52单片机介绍

STC89C52单片机是由深圳宏晶公司代理销售的一款MCU,是由美国设计生产的一种低电压、高性能CMOS8位单片机,片内含8kbytes的可反复写的FlashROM和128bytes的RAM,2个16位定时计数器[5]。

STC89C52单片机内部主要包括累加器ACC(有时也简称为A)、程序状态字PSW、地址指示器DPTR、只读存储器ROM、随机存取存储器RAM、寄存器、并行I/O接口P0~P3、定时器/计数器、串行I/O接口以及定时控制逻辑电路等。

这些部件通过内部总线联接起来,构成一个完整的微型计算机。

其管脚图如图所示。

STC89C52单片机管脚结构图

VCC:

电源。

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

P3.6/WR(外部数据存储器写选通)

P3.7/RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

 

5、上电按钮复位电路

本设计采用上电按钮复位电路:

首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,单片机芯片正常工作。

其中电阻R2决定了电容充电的时间,R2越大则充电时间长,复位信号从VCC回落到0V的时间也长。

6、晶振电路

本设计晶振电路采用12M的晶振。

晶振的作用是给单片机正常工作提供稳定的时钟信号。

单片机的晶振并不是只能用12M,只要不超过20M就行,在准许的范围内,晶振越大,单片机运行越快,还有用12M的就是好算时间,因为一个机器周期为1/12时钟周期,所以这样用12M的话,一个时钟周期为12us,那么定时器计一次数就是1us了,电容范围在20-40pF之间,这里连接的是30pF的电容。

机器周期=10*晶振周期=12*系统时钟周期

 

7.下载端口

设计用到的STC89C52单片机芯片的ISP下载线是通过单片机的TXD,RXD引脚把程序烧进去的。

管脚TXD和RXD用于异步串行通信。

其实STC89C52单片机的ISP下载线就是一个max232芯片连接STC和计算机的串行通信口。

计算机把程序从九针串口送到max232芯片,电平转换后送进单片机的串行口,也就是TXD和RXD。

然后单片机的串行模块把数据送到程序区。

8、1602A液晶显示器

 

8.1引脚功能说明

1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表8-1所示:

编号

符号

引脚说明

编号

符号

引脚说明

1

VSS

电源地

9

D2

数据

2

VDD

电源正极

10

D3

数据

3

VL

液晶显示偏压

11

D4

数据

4

RS

数据/命令选择

12

D5

数据

5

R/W

读/写选择

13

D6

数据

6

E

使能信号

14

D7

数据

7

D0

数据

15

BLA

背光源正极

8

D1

数据

16

BLK

背光源负极

表8-1:

引脚接口说明表

第1脚:

VSS为地电源。

第2脚:

VDD接5V正电源。

第3脚:

VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。

第4脚:

RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。

第5脚:

R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。

当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。

第6脚:

E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

第7~14脚:

D0~D7为8位双向数据线。

第15脚:

背光源正极。

第16脚:

背光源负极。

10.8.2.31602LCD的指令说明及时序

1602液晶模块内部的控制器共有11条控制指令,如表10-14所示:

序号

指令

RS

R/W

D7

D6

D5

D4

D3

D2

D1

D0

1

清显示

0

0

0

0

0

0

0

0

0

1

2

光标返回

0

0

0

0

0

0

0

0

1

*

3

置输入模式

0

0

0

0

0

0

0

1

I/D

S

4

显示开/关控制

0

0

0

0

0

0

1

D

C

B

5

光标或字符移位

0

0

0

0

0

1

S/C

R/L

*

*

6

置功能

0

0

0

0

1

DL

N

F

*

*

7

置字符发生存贮器地址

0

0

0

1

字符发生存贮器地址

8

置数据存贮器地址

0

0

1

显示数据存贮器地址

9

读忙标志或地址

0

1

BF

计数器地址

10

写数到CGRAM或DDRAM)

1

0

要写的数据内容

11

从CGRAM或DDRAM读数

1

1

读出的数据内容

表10-14:

控制命令表

1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。

(说明:

1为高电平、0为低电平)

指令1:

清显示,指令码01H,光标复位到地址00H位置。

指令2:

光标复位,光标返回到地址00H。

指令3:

光标和显示模式设置I/D:

光标移动方向,高电平右移,低电平左移S:

屏幕上所有文字是否左移或者右移。

高电平表示有效,低电平则无效。

指令4:

显示开关控制。

D:

控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:

控制光标的开与关,高电平表示有光标,低电平表示无光标B:

控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:

光标或显示移位S/C:

高电平时移动显示的文字,低电平时移动光标。

指令6:

功能设置命令DL:

高电平时为4位总线,低电平时为8位总线N:

低电平时为单行显示,高电平时双行显示F:

低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。

指令7:

字符发生器RAM地址设置。

指令8:

DDRAM地址设置。

指令9:

读忙信号和光标地址BF:

为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。

指令10:

写数据。

指令11:

读数据。

与HD44780相兼容的芯片时序表如下:

读状态

输入

RS=L,R/W=H,E=H

输出

D0—D7=状态字

写指令

输入

RS=L,R/W=L,D0—D7=指令码,E=高脉冲

输出

读数据

输入

RS=H,R/W=H,E=H

输出

D0—D7=数据

写数据

输入

RS=H,R/W=L,D0—D7=数据,E=高脉冲

输出

9、时钟显示校正电路

本设计利用按键开关来校正时钟显示的数字。

当按钮按下时,将在相应的端口输入一个低电平,通过相应的程序来改变时钟显示。

其中S1按键开关用来选择要修改的数字;S2按键用来增加所选数字的数值;S3按键用来减少所选数字的数值。

 

10、蜂鸣器电路

电路接法:

三极管选定PNP型,基极B连接5V电压,发射极E连接一个1K左右的电阻后接I/O口,集电极C连接蜂鸣器后接地。

单片机在复位后的个I/O口是高电平,此时三极管是截止的,编写程序使选定的I/O为低电平,此时三极管导通,导通后蜂鸣器与电源正极连通,构成一个工作回路,从而发出滴滴的响声。

其中电阻R1在电路里起分压限流的作用,PNP三极管起到模拟开关的作用。

11、外接电源电路

外接电源电路用于连接外部5V电源与电子时钟电路,通过自锁开关控制电路的导通与断开,当开关闭合时,电路导通,外部电源给电路正常供电,电子时钟正常工作。

当开关断开时,电路停止工作。

12、总电路原理图

 

13、程序流程图

软件程序从开始执行,先通过初始化各个寄存器,经过扫描按键来决定是否设定参数来执行相应功能的程序,进而在数码管上显示

 

三、设计总结

辛辛苦苦努力了一个月,终于有了成果,把理论变成了现实,出了欣喜外,还充满了成就感。

1实验中遇到的问题及解决方法

实验中遇到了很多意想不到的问题,从一开始的设计原理图,程序的编写到最后的电路板制作,一直都是在发现问题和解决问题中度过。

还好自己一路坚持了下来,把问题一一解决。

设计的时候,程序的编写是比较难的,还要都熬过来了

制作电路板的时候,打孔时要很小心,刚开始打的孔都有点歪,多打的几个孔,才慢慢找到感觉。

在PCB板布线的时候,绕了好多弯,刚开始的时候,元件的位置没摆好,布线的时候,总是会有很多的跳线,布了好几天,元件的位置换了又换,最后才终于找到最佳的布线位置。

如果刚开始的时候,就把元件的位置摆放好,跟原理图的相对位置一致,就不会有这么多的麻烦了。

其实这些都不是问题,只要我们有耐心,够细心,都可以把它们解决。

2设计体会

以前看别人的一个电子表卖十几块钱,心里面有点愤愤不平,现在,自己做过一个电子钟,才发现,其中的不容易,还有艰辛。

其实做其他的事情也是一样,都会经过很多的困难,才能成功。

突然想起一句话“不经历风雨,怎么见彩虹”。

其实想想,这一个月,也留下了很多美好的回忆。

还记得那个晚上通宵达旦仿真,不成功,誓不睡觉,很困了,都还在弄着。

却当仿真成功时,没有一丝睡意,有的只是心中的喜悦

还记得那天废寝忘食打孔和焊板,还记得当数码管终于亮起来那一刻……

通过这次设计让我真正体会到了,有付出,才会有收获。

 

四、参考文献

[1]谢自美.电子线路设计·实验·测试[M].武汉:

华中理工大学出版社,1992.

[2]何立民.单片机应用系统设计[M].北京:

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

[3]楼然笛.单片机开发[M].北京:

人民邮电出版社,1994.

[4]付家才.单片机控制工程实践技术[M].北京:

化学工业出版社2004.3.

[5]李光才.单片机课程设计实例指导[M].北京:

北京航空航天大学出版社2004.

[6]朱定华.单片机原理及接口技术实验[M].北京:

北方交通大学出版社2002.11.

[7]刘湘涛.江世明.单片机原理与应用[M].北京:

电子工业出版社,2006.

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

当前位置:首页 > 医药卫生 > 基础医学

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

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