1、单片机课程设计之自动打铃系统单片机课程设计之自动打铃系统 这是我们本学期的单片机课程设计题目, 程序就是在昨天的数字钟的基础上增加 了一些内容,不想继续做了,还有一门考试要复习。 设计一台自动打铃系统设计一台自动打铃系统 一、设计任务 用单片机器件为主体,设计一台自动打铃系统。 (1)按照设计标准,画出系统框图和系统硬件电路图。 (2)完成该课题的程序设计,提交程序设计框图及程序设计清单。 (3)提交课程设计报告 二、设计要求 (一)基本要求 (1)基本计时和显示功能(用 12 小时制显示)。包括上下午标志,时、分的 数字显示,秒信号指示。 (2)能设置当前时间(含上、下午,时,分) (3)能
2、实现基本打铃功能,规定: 上午 6:00 起床铃:打铃 5 秒、停 2 秒、再打铃 5 秒。 下午 10:30 熄灯铃:打铃 5 秒、停 2 秒、再打铃 5 秒。 铃声可用小喇叭播放,凡是用到铃声功能的均按此处理 (二)发挥部分 (1)增加整点报时功能,整点时响铃 5 秒,要求有控制启动和关闭功能。 (2)增加调整起床铃、熄灯铃时间的功能。 (3)增设上午 4 节课的上下课打铃功能,规定如下: 730 上课,820 下课:830 上课,920 下课;940 上课,1030 下课;1040 上课,1130 下课;每次铃声 5 秒。 (4)特色和创新自选。 三、设计步骤 (1) 设计能正常工作的一
3、个单片机最小硬件系统, 外围电路包括设置键盘, LCD 或 LED 的显示屏; (2)进行软件设计,利用单片机系统时钟先设计一个高精度的内部时钟系 统,最小精确时间为期 1 秒; (3)在秒计数器的基础上设计一个 24 小时时钟,并设计若干定时功能; (4)设计打铃执行机构,完成自动打铃功能。 四、课程设计说明书要求 后面略 公开我的主要设计资料:公开我的主要设计资料: 主程序流程图:主程序流程图: 汇编程序清单:汇编程序清单: /* 程序名称:51 单片机自动打铃系统 简要说明:实现 24 小时制电子钟,8 位数码管显示,显示时分秒 显示格式:23-59-59(小时十位如果为 0 则不显示)
4、 到预定时间启动蜂鸣器模拟打铃,蜂鸣器 BEEP:P3.7 打铃方式分起床、熄灯铃和上、下课铃两种 系统使用 4 只按键,3 只按键用来调整时间,fpc 连接器,防水连接器,连接器 论坛,供应 http:/ 另一只为强制打铃按钮 调整选择键 SET_KEY:P1.0;通过选择键选择调整位,选中位闪烁 增加键 ADD_KEY:P1.1;按一次使选中位加 1 减少键 DEC_KEY;P1.2;按一次使选中位减 1 如果长按 ADD_KEY 或 DEC_KEY,识别后则进行调时快进,此时停止闪烁 如果选中位是秒,则按增加键或减少键都是将秒清零 强制打铃键 DALING_KEY:P1.3;用来强制打铃
5、或强制关闭铃声 P0 口输出数码管段选信号,P2 口输出数码管位选信号。晶振 12M 编 写:JiangX.net 最后更新:09/1/2 晚 */ BEEP EQU P3.7 ;定义蜂鸣器(电铃)控制信号输出口 ORG 0000H ;程序入口地址 LJMP START ORG 000BH ;定时器 0 中断入口地址 LJMP TIMER_0 ORG 0300H /*程序开始,初始化*/ START: SETB BEEP ;关闭蜂鸣器(电铃) SETB 48H ;使用一个 bit 位用于调时闪烁标志 SETB 47H ;使用一个 bit 位用于产生脉冲用于调时快进时基 CLR 45H ;关闭响
6、铃方式 1 标志 CLR 44H ;关闭响铃方式 2 标志 MOV R1,#0 ;调整选择键功能标志:0 正常走时、1 调时、2 调分、3 调秒 MOV 20H,#00H ;用于控制秒基准时钟源的产生 MOV 21H,#00H ;清零秒寄存器 MOV 22H,#00H ;清零分寄存器 MOV 23H,#00H ;清零时寄存器 MOV 24H,#00H ;用于控制调时闪烁的基准时钟的产生 MOV IP,#02H ;IP,IE 初始化 MOV IE,#82H MOV TMOD,#01H ;设定定时器 0 工作方式 1 MOV TH0,#3CH MOV TL0,#0B0H ;赋定时初值,定时 50ms SETB TR0 ;启动定