大工13秋《单片机原理及应用》大作业单片机电子时钟设计杨建军.pdf
《大工13秋《单片机原理及应用》大作业单片机电子时钟设计杨建军.pdf》由会员分享,可在线阅读,更多相关《大工13秋《单片机原理及应用》大作业单片机电子时钟设计杨建军.pdf(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、网络教育学院网络教育学院单片机原理及应用大作业单片机原理及应用大作业单片机电子时钟设计题题目目:学习中心:学习中心:大连学习中心大连学习中心层层次:次:高中起点专科专专业:业:电气工程及其自动化电气工程及其自动化年年级:级:1209 年春/秋 季学学号:号:学生姓名:学生姓名:单片机电子时钟设计单片机电子时钟设计一、一、摘要摘要1957 年,Ventura 发明了世界上第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。现代的电子时钟是基于单片机的一种计时工具,采用延时程序产生一定的时间中断,用于一秒的定义,通过计数方式进行满六十秒分钟进一,满六十分小时进一,满二十四小时小时清零
2、。从而达到计时的功能,是人民日常生活补课缺少的工具。现在高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英钟、石英表都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调试,数字式电子钟用集成电路计时时,译码代替机械式传动,用 LED 显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。二、时钟的基本原理二、时钟的基本原理电子时钟由 89C51,BUTTON,六段数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小
3、时为一天。而电路中唯一的一个控制键却拥有多种不同的功能,按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开,则可以通过按键实现分钟的累加,每按一次分钟加一;而连续两次按下按键不放松,则可实现小时的调节,同样每按一次小时加一并通过一个控制键用来实现时间的调节和是否进入省电模式的转换。应用 Proteus 的 ISIS 软件实现了单片机电子时钟系统的设计与仿真。该方法仿真效果真实、准确,节省了硬件资源。三、设计方案和论证三、设计方案和论证本次设计时钟电路,使用了 ATC89C51 单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用键盘键上的按
4、键来调整时钟的时、分、秒,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、LED 显示即可满足设计要求。(一)(一)总设计原理框图如下图所示:时钟电路微 型控 制器数据显示校时输入声光报时(二)设计方案的选择(二)设计方案的选择1.计时方案方案 1:采用实时时钟芯片现在市场上有很多实时时钟集成电路,如 DS1287、DS12887、DS1302 等。这些实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需要程序干预。因此,在工业实时测控系统中多采用这一类专用芯片来实现实时时
5、钟功能。方案 2:使用单片机内部的可编程定时器。利用单片机内部的定时计数器进行中端定时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,但程序设计较为复杂。2.显示方案对于实时时钟而言,显示显然是另一个重要的环节。通常LED 显示有两种方式:动态显示和静态显示。静态显示的优点是程序简单、显示亮度有保证、单片机 CPU 的开销小,节约 CPU 的工作时间。但占有 I/O 口线多,每一个 LED 都要占有一个 I/O 口,硬件开销大,电路复杂。需要几个LED 就必须占有几个并行口,比较适用于LED 数量较少的场合。当然当 LED 数量较多的时候,可以使用单片机的串行口通过移位寄存器的方式加以
6、解决,但程序编写比较麻烦。LED 动态显示硬件连接简单,但动态扫描的显示方式需要占有 CPU 较多的时间,在单片机没有太多实时测控任务的情况下可以采用。本系统需要采用 6 位 LED 数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式。(三)硬件部分(三)硬件部分1 1、STC89C51STC89C51 单片机介绍单片机介绍STC89C51 单片机是由深圳宏晶公司代理销售的一款 MCU,是由美国设计生产的一种低电压、高性能 CMOS 8 位单片机,片内含 8kbytes 的可反复写的 FlashROM 和 128bytes 的 RAM,2 个 16 位定时计数器5。STC8
7、9C51 单片机内部主要包括累加器 ACC(有时也简称为 A)、程序状态字 PSW、地址指示器 DPTR、只读存储器 ROM、随机存取存储器 RAM、寄存器、并行 I/O 接口 P0P3、定时器/计数器、串行 I/O 接口以及定时控制逻辑电路等。这些部件通过内部总线联接起来,构成一个完整的微型计算机。其管脚图如图所示。STC89C51单片机管脚结构图VCC:电源。GND:接地。P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程 序数据存储器,它可以被定义为数据/地址的第八位。在 FIA
8、SH 编程时,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”时,其管脚被内部上拉电阻 拉高,且作为输入。并因此作为输入时,
9、P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存 储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器 的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为
10、 AT89C51 的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2/INT0(外部中断 0)P3.3/INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH 编程期间,此引脚用于输入编
11、程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器 时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时,ALE只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。EA/VPP:当/EA 保持低电平
12、时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。2 2、上电按钮复位电路、上电按钮复位电路本设计采用上电按钮复位电路:首先经过上电复位,当按下按键时,RST 直接与 VCC 相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST 依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST 为低电平,单片机芯片正常工作。其中电阻 R2 决定了电容
13、充电的时间,R2 越大则充电时间长,复位信号从 VCC 回落到 0V 的时间也长。3 3、晶振电路、晶振电路本设计晶振电路采用 12M 的晶振。晶振的作用是给单片机正常工作提供稳定的时钟信号。单片机的晶振并不是只能用 12M,只要不超过20M 就行,在准许的范围内,晶振越大,单片机运行越快,还有用12M 的就是好算时间,因为一个机器周期为 1/12 时钟周期,所以这样用 12M 的话,一个时钟周期为 12us,那么定时器计一次数就是 1us 了,电容范围在 20-40pF 之间,这里连接的是 30pF 的电容。机器周期=10*晶振周期=12*系统时钟周期4.4.下载端口下载端口设计用到的 ST
14、C89C52 单片机芯片的 ISP 下载线是通过单片机的 TXD,RXD引脚把程序烧进去的。管脚 TXD 和 RXD 用于异步串行通信。其实 STC89C52 单片机的 ISP 下载线就是一个 max232 芯片连接 STC 和计算机的串行通信口。计算机把程序从九针串口送到 max232 芯片,电平转换后送进单片机的串行口,也就是TXD 和 RXD。然后单片机的串行模块把数据送到程序区。5 5、显示电路、显示电路就时钟而言,通常可采用液晶显示或数码管显示。由于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或
15、点阵),一般多采用并行接口,对微处理器的接口要求较高,占用资源多。另外,89C2051本身无专门的液晶驱动接口,因此,本时钟采用数码管显示方式。数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。对于实时时钟而言,显示显然是另一个重要的环节。通常LED 显示有两种方式:动态显示和静态显示。静态显示的优点是程序简单、显示亮度有保证、单片机 CPU 的开销小,节约 CPU 的工作时间。但占有 I/O 口线多,每一个 LED 都要占有一个 I/O 口,硬件开销大,电路复杂。需要几个LED 就必须占有几个并行口,比较适用于LED 数量较少的场合。当然当 LE
16、D 数量较多的时候,可以使用单片机的串行口通过移位寄存器的方式加以解决,但程序编写比较麻烦。LED 动态显示硬件连接简单,但动态扫描的显示方式需要占有 CPU 较多的时间,在单片机没有太多实时测控任务的情况下可以采用。本系统需要采用 6 位 LED 数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式。6 6、时钟显示校正电路、时钟显示校正电路本设计利用按键开关来校正时钟显示的数字。当按钮按下时,将在相应的端口输入一个低电平,通过相应的程序来改变时钟显示。其中 S1 按键开关用来选择要修改的数字;S2 按键用来增加所选数字的数值;S3 按键用来减少所选数字的数值。7 7、蜂鸣
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理及应用 大工 13 单片机 原理 应用 作业 电子 时钟 设计 建军
限制150内