数字电子钟的设计与实现毕业设计(编辑修改稿)内容摘要:
书( 2020) 5 TXD(串行输出口) /INT0(外部中断 0) /INT1(外部中断 1) T0(记时器 0 外部输入) T1(记时器 1 外部输入) /WR(外部数据存储器写选通) /RD(外部数据存储器读选通) RST:复位输入。 ALE/PROG:如果对外部存储器进行访问,那么输出的电平将用于对地址字节的锁存。 一般情况下, ALE 端输出的为稳定的脉冲信号。 /PSEN:外部程序存储器的选通信号。 XTAL1:内部时钟电路和反向振荡放大器的输入端口。 XTAL2:来自反向振荡器的输出。 图 引脚图 单片机引脚分配 和 用于数码显示; 用于蜂鸣器闹钟报警; 用于按键; RST 用于上电复位; XTAL XTAL2 用于晶振。 本设计所用主控制模块如图所示。 数字电子钟的设计与实现 6 图 设计主控模块 显示模块 显示器由 3 个共阳两位 LED 数 码管组成。 共阳极数码管就是将所有发光二极管的阳极接到一起,形成只有一个公共阳极揭发,当需要用到共阳极数码管的时候应将公共极接 +5V 电压,如果有一个字段的发光二极管的阴极输入为低电平时,那么相应字段的二极管就点亮,当某一字段的阴极为高电平时,相应字段就不亮 [11]。 LED 数码管是用好几个发光二极管封装而成的,从外表上看就像一个“ 8”字型的 器件 ,内部引线已经连接完毕,而只是将它们的各个笔划引出来接成公共电极 就行了。 每个 LED 数码管总共有 8 个段数,其中 7 段用于对数字的显示,还有一段是用于显示小数点的。 [12] 图 LED 显示器的符号 图 共阳极接线图 本设计显示器由 3个 2位 7段 LED数码管组成。 通过总线分别与单片机的 口和 口连接。 其中 口显示时、 口显示分、 口显示秒。 [13]如图 所示: 盐城工学院本科生毕业设计说明书( 2020) 7 图 显示电路 复位模块 本设计采用自动上电复位,电路复位后 P0- P3口引 脚全部表现为高电平,特殊功能寄存器和程序计数器将全部被清零。 当复位脚由高电平变为低电平时,单片机将从 ROM 的 00H 处开始运行程序 [8]。 复位通常是由外部的复位电路来实现的。 电路图如图所示: 图 复位电路 按键模块 按键控制模块由 3 个按键组成。 系统通过扫描按键是否被按下,来设定各模块的工作情况,使计时器可以在按键的控制下,有序地进行工作。 设计中每个按键实现各自的功能,操作方式十分简单 [9]。 如图所示: 数字电子钟的设计与实现 8 图 按键模块 晶振模块 晶振模块 的组成只有两种元器件,一个晶振和两个电容,两个电容的与晶振相串联后连接到单片机上,并接地。 要是单片机能够正常的工作,就必须要有晶振电路来给其提供时钟频率,而且随着该频率的不同单片机的工作速度也就不一样。 图 晶振模块 闹钟模块 闹钟模块是由一个 PNP 型的三极管,一个电阻和一个蜂鸣器组成的,三极管的发射极接电压,基极经电阻与单片机相连,集电极与蜂鸣器相连,而蜂鸣器的另一端接地。 当单片机 引脚输出一个电平时,三极管导通,蜂鸣器报警,从而达到闹钟的功效。 盐城工学院本科生毕业设计说明书( 2020) 9 图 闹钟模块 本次设计的数字电子钟概括讲就包括以上六个基本模块,每个模块实现各自的功能,互不干扰。 原理图见附录 1, PCB 图见附录 4。 数字电子钟的设计与实现 10 4 系统软件程序设计 程序流程图 各个中断口的首地址是在程序运行后再设置的,紧接着中断被开启,中断开启后将比较设定时间与当时时间,倘若两项比较不一致,则显示时钟然后进行扫描,并程序继续往下执行 [14]。 倘若达到了闹钟设定数值,则向闹钟。 当外部中断有相应时,闹钟就会停止。 图 调时钟流程图 显示时钟 是否按下一次(调时) 显示 否按下两次(调分) 显示 闹铃比较处 开 始 Y N Y N 结 束 盐城工学院本科生毕业设计说明书( 2020) 11 当 按下一次调时;按下两次调分;在此基础上 按下数值加一、按下 数值减一, 设定完成之后再 显示。 设置闹钟时间 回到闹铃比较处 图 设闹钟流程图 开始对闹钟时间进行调节,按 三次 和 、 分别对 闹钟 时钟加一 或减一 ,按 四次和 、 分别对闹钟分钟进行加一或减一设置, 查看显示值,再判断是否退出回到闹铃比较处。 显示原闹钟时间 按下三次 ?(调闹钟时) 显示 按下四次 ?(调闹钟分) 显示 是否退出 闹铃比较处 开 始 Y N Y N 结 束 数字电子钟的设计与实现 12 图 主时钟计时流程图 重置初值 (20H)=0? 秒单元加 1 秒 单 元=60。 分单元加 1,秒清零 分 单元=60。 时单元加 1,分清零 时 单 元=24。 时分秒单元清零 中断返回 开 始 N N N N Y Y Y Y 盐城工学院本科生毕业设计说明书( 2020) 13 该程序是主时钟的中断服务程序,先要对其设定一个初始值,查看首地址中的值是否为零,如果为零,则秒单位自动加一,当秒为 60 时,则分就会自动加一 [15]。 当分为60 时,时加一。 当时为 24 时,对秒分时都清零。 然后返回中断。 秒信号发 生器是整个系统的时基行,由晶振和分频器实现的,将标准秒信号送入“秒计数器”,秒计数器采用 60 进制计数器,每当累计 60 秒时发一个“分脉冲”信号,该信号作为分计数器的时钟脉冲。 以此类推,分计数器与时计数器均采用同样的方式进行计数。 数字电子钟的设计与实现 14 5 系统调试 数字电子钟的系统调试包括软件调试,硬件调试。 硬件调试包括电源模块、显示模块、按键模块等模块的调式,软件调试就是通过修改软件程序,使电子钟的功能完善,能满足课题的基本要求,并提高数字电子钟的精度。 首先使用软件仿真,并不断的进行调试,直到仿真结果能满足设计的要求为止,当 软件调试成功了,才开始硬件电路的调试,如此进行软硬件联合调试 [19]。 软件调试 Proteus 软件调试 PROTEUS 不仅综合了许多模块,而且包含了各种信号源、虚拟仪器等等。 我们可以运用其来模拟各种电路的仿真运行 [20]。 比如说有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、 RS232 动态仿真、 I2C 调试器、 SPI 调试器、键盘和 LCD 系统仿真的功能 [21];它还包含了专门用来精确测量与分析的高级仿真图表。 它们构成了单片机系统设计与仿真的完整的虚拟实验室。 根据课题系统 设计要求,进行 Keil 和 Proteus 系统仿真,不断调试程序,直到符合功能要求。 Proteus 总体仿真图 51 所示。 图 仿真图 盐城工学院本科生毕业设计说明书( 2020) 15 Keil 软件调试 首选 在 Keil 软件 中 根据设计要求 编好一个程序 代码 , 确保编译没有错误后 , 再 添加到 PROTEUS 仿真软件中的 STC89C51 芯片中,保存,运行,观察是否 能 得到想要的结果 ; 如果不 能, 则回到 Keil 中 重新 改进程序,再编译、仿真,直至所有功能均可实现 为止。 显示时钟功能,要能显示时、分、秒。 清零功能,按下清零键当前时间从 初始值 走起。 设置闹钟时间 功 能, 分别按下 S1 键三次和四次 ,进行调 时和分的调节。 闹铃功能, 当达 到了设定的 闹钟 时间后 , 蜂鸣器 就会不断的 发出声音。 硬件调试 软件系统测试能够正确的显示时间以及闹钟,然后把各模块组合在一起,就做成完整的数字电子钟,实物图附录 3 所示。 经过不断的软硬件联合调试,修改程序和硬件连接,最终完成的作品就能实现数字电子钟设计所提出的功能。 数字电子钟的设计与实现 16 总 结 毕业设计其实是一次综合性的实践,它将我们所学的各种知识综合运用到实践上,在整个设计过程中, 我通过查阅资料来扩展所学的知识,并将它们串联在一起,进而加深对所学 理论知识的理解,在此基础上锻炼了操作能力。 通过本次毕业设计,获益良多。 掌握了用 C 语言来编写程序,学会了使用 Proteus 和 Keil 软件来模拟单片机的仿真。 此外,在收集、查阅、应用文献资料的过程中,学会了如何根据实际需要有选择有价值性的资料,从而来确定能满足系统要求的元件及型号。 在整个设计过程中,将会遇到各种各样的问题,面对在设计过程中出现的大小问题,就需要有针对性的对问题进行分析,从而解决好每一个小问题,这样才能确保整个系统的正确性。 第一,要查看是不是软件编程中出现了问题,如果连程序都没有完善好,那么,程 序下载到硬件电路中,在实际操作的过程中就肯定会存在问题。 找到问题所在后,自己解决不了的,可以找老师、同学一起讨论研究,不断地完善自己所设计的数字电子钟。 总之,在理论与实践相结合的过程中,只有不断地思考和不断地动手实践,才能减小理论与实践之间的距离,将理论知识充分的运用到实践中去。 在毕业设计的过程中,我的能力在多方面都得到了提高,尤其在单片机软件编程及元器件的焊接制作方面受益匪浅。 软件设计是个即灵活又细腻的工作,我要细心地去发现问题,解决问题,去不断完善,以此来培养我良好的逻辑思维能力以及分析问题,解决问题 的能力。 元器件焊接时,要求我在原理图完成后一定要进行电气检查,这样可以降低错误率,提高制作出来的单片机的成功率。 经过此次毕业设计,我不仅对所学的知识有了更加深入的理解,而且还锻炼了自己的动手能力,这所以的一切将会为我今后的发展打下坚实的基础。 盐城工学院。数字电子钟的设计与实现毕业设计(编辑修改稿)
相关推荐
选择安排 钢筋工程: 本工程钢筋加工均在现场设点加工,场内水平和垂直运输以 1台 QTZ60( R=36m)和 2台 QTZ80( R=50m) (地下室施工时 布置 ) 塔吊吊运为主, 并 机动 布置 汽车 吊,钢筋 和模板 的堆场均布置在塔吊工作半径所及的范围内。 模板工程: ,上部结构和地下室内筒体剪力墙板均采用定型大模板(九夹板拼装)。 平台板采用定型大模板(九夹板拼装); 支撑系统
的投影分量 ZYX HHH。 在地平坐标系中,磁阻安徽建筑工业学院毕业设计 (论文 ) 5 传感器 的三轴输出为 ZRYRXR HHH 。 令γγγγc o ss in0s inc o s0001ro o lR,ββββc o s0s in110s in0c o sp itchR ,则可得: TZYXr o llp ic
analyses the intention, configuration, simulation links and simulation results. In the end, the paper summarizes main content of the research and some following study and research objects are
OM)已经存储了160个不同的点阵字符 ,图形寄存器选择控制表如表 所示: 表 LCD1602 寄存器选择控制表 RS R/W 操作说明 0 0 写入指令寄存器(清屏指令等) 0 1 读 busy flag,以及读取位址计数器( DB0~DB6)的值 1 0 写入数据寄存器(显示各字型等) 1 1 从数据寄存器读取数据 (2)指令集 1602 通过 D0~ D7 的 8 位数据端传输数据和指令。
eil,第二个是 Protues,本次仿真是将两个软件结合起来进行的。 用 Protues 软件 进行仿真,其仿真的电路图如图 所示 图 Protues仿真电路图 14 数字电子钟正常工作时,仿真的 LED 显示器显示如图 所示,当按下切换键时,数字电子钟进入日期显示界面,此时 LED 数码管显示器的显示如图 和 所示,当按下调整键时,数字电子钟进入调整界面,此时 LED 数码管显示器的显示如图
计的要求。 而点阵显示器件驱动显示软件程序编写麻烦,占用的引脚相对也较多。 也不是理解的显示器件。 所以在本设计中,我们考虑用液晶显示器件,虽然 12864液晶比 1602液晶的功能强,不过在价格方面却贵了好多。 而 1602液晶也足够满足本设计的需要。 因此,在本设计实验我们选择 1602液晶显示器件。 1602 液晶的参数资料 我们选择了 1602液晶做为本设计的显示 模块的显示器件。