标题:
蓝桥杯电子钟程序设计
[打印本页]
作者:
一颗丫小白杨
时间:
2018-12-7 16:50
标题:
蓝桥杯电子钟程序设计
单片机设计与开发项目模拟试题 程序设计部分
基于单片机的电子钟程序设计与调试
一、 基本要求
使用 CT107D 单片机竞赛板,完成“电子钟”功能的程序设计与调试。
二、 硬件框图
三、 功能描述
3.1 初始化
1)关闭蜂鸣器、继电器等无关外设;
2)设备初始化时钟为 23 时 59 分 50 秒,闹钟提醒时间 0 时 0 分 0 秒。
3.2 显示功能
1) 时间显示格式
1 2 - 0 0 - 0 2
12 时 间隔 0 分 间隔 2 秒
2) 温度显示格式
8 8 8 8 8 2 1 C
熄灭 温度
2 / 2
3.3 按键功能
1)按键 S7 定义为“时钟设置”按键,通过该按键可切换选择待调整的
时、分、秒,当前选择的显示单元以 1 秒为间隔亮灭,时、分、秒
的调整需注意数据边界属性。
2)按键 S6 定义为“闹钟设置”按键,通过该按键可进入闹钟时间设置
功能,数码管显示当前设定的闹钟时间。
3)按键 S5 定义为“加”按键,在“时钟设置”或“闹钟设置”状态下,
每次按下该按键当前选择的单元(时、分或秒)增加 1 个单位。
4)按键 S4 定义为“减”按键,在“时钟设置”或“闹钟设置”状态下,
每次按下该按键当前选择的单元(时、分或秒)减少 1 个单位。
5)按键功能说明:
按键 S4、S5 的“加”、“减”功能只在“时钟设置”或“闹钟设置”
状态下有效;
在 “时钟显示”状态下,按下 S4 按键,显示温度数据,松开按键,
返回“时钟显示”界面。
3.4 闹钟提示功能
1)指示灯 L1 以 0.2 秒为间隔闪烁,持续 5 秒钟;
2)闹钟提示状态下,按下任意按键,关闭闪烁提示功能。
单片机源程序如下:
/*******************************************************************************
* 文件名称:基于单片机的电子钟程序设计与调试
* 作 答 者:杨玉祥
* 缺 陷:温度的显示不正确,闹钟的提示功能有问题。
* 日期版本:2018-11-30/V1.0a
*******************************************************************************/
#include "head.h"
#include <reg52.h>
extern volatile int flag;
sbit s4 = P3^3;
sbit s5 = P3^2;
sbit s6 = P3^1;
sbit s7 = P3^0;
void cls_buzz(void);
void Delay1ms();
void display();
void time0();
void SetTime();
void Clock();
void tem(void);
void main()
{
P2 = (P2&0x1f)|0x80;
P0 = 0xff;
cls_buzz(); //关闭蜂鸣器
time0(); //定时器中断
while(1)
{
if(0 == s7)
Clock();
else if(0 == s6)
SetTime();
else if(0 == s4)
tem();
}
// if(1 == flag)
// Clock(); //钟表模式
// else if(2 == flag)
// SetTime(); //闹钟模式
}
复制代码
0.png
(36.51 KB, 下载次数: 27)
下载附件
2018-12-7 21:26 上传
全部资料51hei下载地址:
电子钟.zip
(50.45 KB, 下载次数: 28)
2018-12-7 16:49 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
2653701223
时间:
2020-4-24 23:36
有问题还放在上面?
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1