时钟计时器的设计单片机原理及应用课程设计(编辑修改稿)内容摘要:

元 当 STC89C52 单片机的复位引脚 RST(全称 RESET)出现 2 个机器周期以上的高电平时,单片机就执行复位操作。 如果 RST 持续为高电平,单片机就处于循环复位状态。 根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。 上电复位要求接通电源后,自动实现复位操作。 上电或开关复位要求电源 接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。 上电后,由于电容的充电和反相门的作用,使 RST 持续一段时间的高电平。 当单片机已在运行当中时,按下复位键 K 后松开,也能使 RST 为一段时间的高电平,从而实现上电或开关复位的操作。 电路如图 6 示 : K2VCC GNDR410K 图 6 复位单元 电路 6 4 系统软件 设计 1. 程序流程 如图 7 所示: 我 的程序中用了个定时器中断,还是用了独立键盘调时,蜂鸣器闹铃及提醒。 图 7 软件系统流程图 开始初始化部分。 功能键按下 显示中断初始化开启定时器0YN返回调显示子程序调键扫描子程序。 功能键按下。 B1键按下。 B2键按下。 B3键按下 NYYYB1键功能 处理程序B2键功能 处理程序B3键功能 处理程序YNNN 7 我 的程序中用了个定时器中断,所以有中断服务程序,是为了使秒自加而 使用定时器中断,定时 50MS 循环 20 次到一秒以后,向 CPU 申请中断,使秒自加 1。 图 8 中断服务程序流程图 开始现场保护计数器重新加载循环次数减1。 是否满2 0次 秒值加1。 是否满6 0s 秒显示缓冲单元清0分值加1。 是否满6 0m in 分显示缓冲单元清0时值加1。 是否满2 4h 时显示缓冲单元清0现场恢复返回NYNNNYYY 8 1 子程序流程框图 加 1 子程序流程框图如图 9 所示: 图 9 加 1子程序流程图 开始使十位数占A高 半字节取十位数,取个位数 并占A低 半字节加1十进制调整个位数送缓冲单元个位数送缓冲单元把十位数交换到低半字节十位数送缓冲单元返回 9 5 系统 调试 ( AT89C52) AT89C52 单片机的 40 个引脚大致可分为 4 类:电源、时钟、控制和 I/O 引脚。 ⒈ 电源 : ⑴ VCC 芯片电源,接 +5V; ⑵ VSS 接地端; ⒉ 时钟 :XTAL XTAL2 晶体振荡电路反相输入端和输出端。 ⒊ 控制线 :控制线共有 4 根, ⑴ ALE/PROG:地址锁存允许 /片内 EPROM 编程脉冲 ① ALE 功能:用来锁存 P0 口送出的低 8 位地址 ② PROG 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,此引脚输入编程脉冲。 ⑵ PSEN:外 ROM 读选通信号。 ⑶ RST/VPD:复位 /备用电源。 ① RST( Reset)功能:复位信号输入端。 ② VPD 功能:在Vcc 掉电情况下,接备用电源。 ⑷ EA/Vpp:内外 ROM 选择 /片内 EPROM 编程电源。 ① EA 功能:内外 ROM 选择端。 ② Vpp 功能:片内有 EPROM 的芯片,在 EPROM 编程期间,施加编程电源 Vpp。 ⒋ I/O 线 80C51 共有 4 个 8 位并行 I/O 端口: P0、 P P P3 口,共 32 个引脚。 P3 口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。 AT89C52 封装如图 3 所示: 图 3 AT89C52 12345678RST/VPD91011121314151617XTAL218XTAL119GND202122232425262728PSEN29ALE/PROG30EA/Vpp313233343536373839VCC402AT89C52 10 PROTEUS 中设计硬件 PROTEUS 软件使用过程如下: 1)选择元器件 2)放置元器件 3)连线 4)添加程序 5)运行仿真 在 WAVE 中编写程序,编译、连接形成 HEX 文件。 在 PROTEUS 中把 HEX 文件加载到单片机芯片上。 即 protues 原理图中。 运行仿真看结果如图 8 所示 : 图 8 protues仿真结果 11 6 详细仪器清单 表格 3 仪器清单 仪器名称 数量 STC89C52 1 4 位共阴数码管 2 蜂鸣器 1 贴片按键 5 圆排母 40P 74LS574 1 12 7 总结与致谢 短暂几天的单片机课程设计结束了,从这次课程设计中学到了很多很多东西。 例如:如何运用 protel DXP2020 制作双面板。 大型程序的编写等。 在这次课程设计中遇到很多困难,程序的 编写无从下手,到最后还是借鉴别人的程序来完成的。 其次懂的了编写复杂程序该如何下手。 在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常的,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下 次再碰到同样的问题的。 课程设计结束了,但是从中学到的知识会让我受益终身,因为无论以后从不从事单片机工作,也许毕业设计会用到呢。 在此我特别感激谢老师和实验室的各位同学,没有你们的帮助,我们不会这么顺利完成本次设计。 13 参考文献 [1] 候伯亨。 《 VHDL硬件描述语言与数字逻辑电路设计》。 西安 : 西安电子科技大学出版社, 1999 [2] 王天曦 ,李洪儒。 《电子技术工艺基础》编著。 北京 : 清华大学出版社 , 2020 [3] 李广弟,朱月秀,王秀山。 《单片机基础》。 北京 : 北京航空航天大学出版社 , 202。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。