基于单片机的可调数字时钟硬件总体设计说明书.doc
《基于单片机的可调数字时钟硬件总体设计说明书.doc》由会员分享,可在线阅读,更多相关《基于单片机的可调数字时钟硬件总体设计说明书.doc(34页珍藏版)》请在三一文库上搜索。
1、 可调数字时钟可调数字时钟 硬件总体设计说明书硬件总体设计说明书 编制单位: 作 者: 版 本:V0.1 发布日期:2011-2-12 审 核 人: 批 准 人: TS006_硬件总体设计说明书 i 目目 录录 1.引言引言 .1 1.1.编写目的:.1 1.2.背景.1 1.3.定义.2 1.4.参考资料.2 2.总体设计总体设计 .2 2.1.开发与运行环境.2 硬件环境2 2.2.硬件功能描述.2 3.硬件模块设计硬件模块设计 .3 3.1.描述.3 单片机硬件电路原理图单片机硬件电路原理图3 图 1 单片机电路原理图3 数码管硬件电路原理图数码管硬件电路原理图4 4.嵌入式软件设计嵌入
2、式软件设计 .8 4.1程序流程8 4.2.算法8 5.调试过程调试过程.9 6.经验总结经验总结.9 7.附录附录.11 数字钟总体设计说明书 1 1.1.引言引言 1.1.1.1.编写目的:编写目的: 该课程设计中我们选用的芯片是 STC90C51。STC90C51 是一种带 4K 字节闪烁可编程可擦 除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压, 高性能 CMOS8 位微处理器,俗称单片机。STC90C51 是一种带 2K 字节闪烁可编程可擦除只读 存储器的单片机。单片机的可擦除只读存储器可以反复擦除
3、 100 次。该器件采用 ATMEL 高密 度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功 能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 STC90C51 是一种高效微控制器, AT89C2051 是它的一种精简版本。AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且 价廉的方案。 STC90C51 是一个低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦写的 Flash 只读程序存储器和 128 bytes 的随机存取数据存储器(RAM),器件采用 ATMEL 公司的 高密度、非易失性存储技术生
4、产,兼容标准 MCS-51 指令系统,片内置通用 8 位中央处理器和 Flash 存储单元,内置功能强大的微型计算机的 STC90C51 提供了高性价比的解决方案。 STC90C51 是一个低功耗高性能单片机,40 个引脚,32 个外部双向输入/输出(I/O)端 口,同时内含 2 个外中断口,2 个 16 位可编程定时计数器,2 个全双工串行通信口,STC90C51 可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和 Flash 存储器结合在 一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。 1.2.1.2.背景背景 数字钟是采用数字电路实现对.时,分,秒.数字显
5、示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石 英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产 生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时 自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、 甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字 钟及扩大其应用,有着非常现实的意义。 数字钟总体设计说明书 2 本作品采用 Atmel 公司的 STC90C51 单片机,以 C 语言为程序设计
6、的基础,设计两个用四 位数码管显示时、分的时钟。 1.3.1.3.定义定义 sbit-特殊功能位声明,也就是声明某一个特殊功能寄存器中的某一位 regh52.h 在代码中引用头文件,其实际意义就是将这个头文件中的全部内容放到引用头文件的位置处, 免得在重复编写 1.4.1.4.参考资料参考资料 新概念 51 单片机 C 语言教程入门、开发、提高、拓展全攻略郭天祥 电子工业出版社 DS1302 中文资料PDF 单片机原理及接口技术李朝青 北京航空航天大学出版社 2.2.总体设计总体设计 2.1.2.1.开发与运行环境开发与运行环境 硬件环境 一台完整的电脑,包括键盘、鼠标,hot51 单片机开发
7、板, USB 串行口接线。 软件环境 采用的是 Windows 操作系统,Keilc51 系统软件,用 C 语言进行开发。 2.2.2.2.硬件功能描述硬件功能描述 此时钟在正常计时模式下具有自动调整每月的天数、闰年的天数及星期的变化,并且 时制为二十四时制。 MENU: 菜单按键,松开按键时有效 第一次按下此键后,进入调分状态,此时可以对分进行修改。 数字钟总体设计说明书 3 第二次按下此键后,进入调时状态,此时可以对时进行修改。 第三次按下此键后,进入闹钟调分状态,此时可以对闹钟进行 修改。 第四次按下此键后,进入闹钟调时状态,此时可以对闹钟时进 行修改。 第五次按下此键后,退出所有状态。
8、 INC: 加一键,松开按键有效。 SWITCH:闹钟的开与关。 3.3.硬件模块设计硬件模块设计 3.1.3.1.描述描述 单片机硬件电路原理图单片机硬件电路原理图 图 1 单片机电路原理图 发光二极管导通时,产生一个正向的工作电流 IF,工作电流根据发光二极管的材料、 功率等不同,额定电流一般在 1040mA 左右,发光二极管导通时的正向压降 VF 比较大,一 般为 1.53V(普通硅二极管约为 0.7V)。因此在正常使用中,为了保证发光二极管在电源电 压 V 的作用下管子的工作电流不超过额定值,必须给发光二极管串联一只限流电阻 R,R 的阻 数字钟总体设计说明书 4 值可由下式算出:R(
9、V-VF)/IF。其中 V 为工作电源电压,VF 为发光二极管的正向压降, IF 为额定工作电流。 从上面原理图 1 可知,当单片机的 P0 口输出低电平(0V)时,有正向工作电流流过发光 二极管,发光二极管就亮;相反,当 P0 口输出高电平(5V)时,发光二极管没有足够电压差 产生工作电流,此时发光二极管不亮。因此,程序中只需交替让单片机的 P0 口输出低电平 “0”和高电平“1”就可以让发光二极管发光。 另外,P0 口作为外接 I/O 口时必须接上拉电阻。 数码管硬件电路原理图数码管硬件电路原理图 数码管管脚图说明: 0.5 寸单联共阴高亮红色数码管 数字对应数码管显示控制转换字节(共阴编
10、码) 显示HGFE,DCBA编码 0 0011,11110x3F; 1 0000,01100x06; 2 0101,10110x5B; 3 0100,11110x4F; 4 0110,01100x66; 5 0110,11010x6D; 6 0111,11010x7D; 7 0000,01110x07; 8 0111,11110x7F; 9 0110,11110x6F; 共阳为编码取反即可, 数字钟总体设计说明书 5 接线为高低端口对应接法。 动态显示原理动态显示原理: 在本次时钟制作中,均采用了8位数码管动态扫描显示。它将所有数码管的8个段线相应 地并接在一起,并接到 AT89S51的P0口
11、,由P0口控制字段输出。而各位数码管的共阳极由单 片机的P2口接一个74LS138控制实现8位数码管的位输出控制。 这样,对于一组数码管动态扫描显示需要由两组信号来控制:一组是字段输出口输出的 字形代码,用来控制显示的字形,称为段码;另一组是位输出口输出的控制信号,用来选择 第几位数码管工作,称为位码。 由于各位数码管的段线并联,段码的输出对各位数码管来说都是相同的。因此,在同一 时刻如果各位数码管的位选线都处于选通状态的话,8位数码管将显示相同的字符。若要各位 数码管能够显示出与本位相应的字符,就必须采用扫描显示方式。即在某一时刻,只让某一 位的位选线处于导通状态,而其它各位的位选线处于关闭
12、状态。同时,段线上输出相应位要 显示字符的字型码。这样在同一时刻,只有选通的那一位显示出字符,而其它各位则是熄灭 的,如此循环下去,就可以使各位数码管显示出将要显示的字符。 虽然这些字符是在不同时刻出现的,而且同一时刻,只有一位显示,其它各位熄灭,但 由于数码管具有余辉特性和人眼有视觉暂留现象,只要每位数码管显示间隔足够短,给人眼 的视觉印象就会是连续稳定地显示。 数码管不同位显示的时间间隔可以通过调整延时程序的延时长短来完成。数码管显示的 时间间隔也能够确定数码管显示时的亮度,若显示的时间间隔长,显示时数码管的亮度将亮 些,若显示的时间间隔短,显示时数码管的亮度将暗些。若显示的时间间隔过长的
13、话,数码 管显示时将产生闪烁现象。所以,在调整显示的时间间隔时,即要考虑到显示时数码管的亮 度,又要数码管显示时不产生闪烁现象。 数码管是由7个条形的LED和右下方一个圆形的LED组成,这样一共有8个段线,恰好适 用于8位的并行系统。数码管有共阴极和共阳极两种,共阴极数码管的公共阴极接地,当各段 阳极上的电平为“1”时,该段点亮,电平为“0”时,该段熄灭; 晶振电路晶振电路 数字钟总体设计说明书 6 控制按钮的连接控制按钮的连接 在电路中,控制开关分别接在 P3.2,P3.3,P3.4 引脚,当开关接通,则相对应的引脚被 拉为低电平,所以在程序中只要检测对应引脚为低电平,则执行响应的操作。 D
14、S1302DS1302 功能及说明功能及说明: DS1302 是DALLAS 公司推出的涓流充电时钟芯片内含有一个实时时钟/日历和31 字节静 态RAM 通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒分时日日期月年的信 息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM 指示决定采用24 或12 小时格 式DS1302 与单片机之间能简单地采用同步串行的方式进行通信仅需用到三个口线1 RES 复位 2 I/O 数据线3 SCLK串行时钟时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方 式通信DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW DS
15、1302 是由DS1202 改进而来增加了以下的特性双电源管脚用于主电源和备份电源供应 Vcc1 为可编程涓流充电电源附加七个字节存储器它广泛应用于电话传真便携式仪器以及电池 供电的仪器仪表等产品领域。下面将主要的性能指标做一综合: 实时时钟具有能计算2100 年之前的秒分时日日期星期月年的能力还有闰年调整的能 力 31*8位暂存数据存储RAM 串行I/O 口方式使得管脚数量最少 宽范围工作电压2.0 5.5V 数字钟总体设计说明书 7 工作电流2.0V 时,小于300nA 读/写时钟或RAM 数据时有两种传送方式单字节传送和多字节传送字符组方式 8 脚DIP 封装或可选的8 脚SOIC 封装
16、根据表面装配 简单3 线接口 与TTL 兼容Vcc=5V 可选工业级温度范围-40 +85 与DS1202 兼容 在DS1202 基础上增加的特性 对Vcc1 有可选的涓流充电能力 双电源管用于主电源和备份电源供应 备份电源管脚可由电池或大容量电容输入 附加的7 字节暂存存储器 DS1302DS1302 的基本组成和工作原理的基本组成和工作原理 1.DS1302 的管脚排列及描述如下图及表所示 2.DS1302 与微控制器的接口软件及功能 1写保护寄存器操作 当写保护寄存器的最高位为0 时允许数据写入寄存器写保护寄存器可以通过命令字节8E 8F 来规定禁止写入/读出写保护位不能在多字节传送模式
17、下写入 数字钟总体设计说明书 8 2时钟停止位操作 当把秒寄存器的第 7 位时钟停止位设置为 0 时起动时钟开始 3.多字节传送方式 当命令字节为BE 或BF 时DS1302 工作在多字节传送模式8 个时钟/日历寄存器从寄存器0 地址开始连续读写从0 位开始的数据当命令字节为FE 或FF 时DS1302 工作在多字节RAM 传送 模式31 个RAM 寄存器从0 地址开始连续读写从0 位开始的数据 4.4.嵌入式软件设计嵌入式软件设计 4.14.1程序流程程序流程 4.2.4.2.算法算法 在本次程序中用到的主要算法有十进制数转换为 bcd 码和将 bcd 码转换为十进制数 数字钟总体设计说明书
18、 9 5.5.调试过程调试过程 本次制作过程中程序编写好之后首先在单片机开发板上调试之后再运用到实际电路中, 程序在以前也写得差不多,在制作过程中对程序的编写没有太多的时间,主要是花在了 PCB 板的绘制,在绘制过程中也出现了一些问题,在画元件封装的时候虽然用游标卡尺量过了, 但是在画封装的时候还是出现了一些问题,把部分元件的封装画的太大了,导致元件不能插 在板子上,需要把原件的引脚掰一下再插上去。以及在后来制作好的板子的调试,首先是板 子的调试,在制作好电路板之后,为了保真电路板是通的,我首先用最笨的方法就是用万用表 先测量每一个连接点是否都是通的,主要是因为在制作 PCB 板的过程中我是用
19、 ORcad 画好的, 可是在刻板机上无法刻出来,后来,在导入 DXP 之后出了问题,没法做出来,只好自动布局 了,在刻好电路板之后,只好用这种办法先测试每一根线是完好的,在测试过程中发现有好 几处线是断开的,用飞线接起来,不过也不多,只有两根,在保证了电路时完全联通的之后, 插上单片机接通电源之后发现显示是完好的,出现的唯一问题就是制作的电子钟不走,只显 示初始化的时间,在有的时候又发现走了,可是制作的表只走 60 秒,就有不走了,后来,咨 询王老师让我们看看晶振是否工作,再用示波器观察之后发现晶振是工作的,而且时钟芯片 的输出也是完好的,可是单片机就是无法读取到时钟芯片的数据,我在网上查了
20、很多资料, 有的说最主要的原因是 DS1302 时钟芯片是坏的,说国产的很多都是山寨,我又重新找了一个 时钟芯片之后发现问题还是一样的,还有另外一种原因就是地的影响很大,我用示波器观察 之后发现地的干扰还是特别大,最后在王老师的指导下,我们把制作的板子上的时钟芯片去 了,接上开发板上的时钟电路能正常工作,把我制作的开发板上的时钟芯片接到开发板上, 开发板上的电路不能工作,最终明白了一定是我只做的电路板对地的干扰特别大,最后的解 决方法就是在时钟芯片的地引脚通过一电容在接地后电路能正常工作,仔细想一想就会发现 我们在用示波器观察晶振和时钟芯片是否正常工作是只用示波器观察了是否有波形输出,而 且并
21、没有考虑输出信号的大小,所以这样的观察可以说是无效的。 6.6.经验总结经验总结 在本次课程设计中,通过动手实践操作,进一步学习和掌握了单片机原理的有关知识, 特别是程序的编程方面,加深了对单片机原理及应用技术的认识,进一步巩固了对单片机知 识的理解,更进一步掌握了单片机应用系统的设计、制作、调试的方法。在这次制作过程中, 进一步复习了相关的知识,查询相关的资料。这次的制作主要与实践操作和理论相结合,提 数字钟总体设计说明书 10 高动手实践能力,更在一周的时间了解了更多的有关单片机的知识,使知识更加丰富,使自 己更加充实。 同时更近一步的学习了 PCB 的设计以及制作,在绘制 PCB 的过程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 可调 数字 时钟 硬件 总体 设计 说明书
链接地址:https://www.31doc.com/p-5020848.html