单片机实验代码——可调时间的时钟程序

这篇博客介绍了作者在单片机课程中编写的可调时间时钟程序,计划增加闹钟和模式选择功能,程序参考了郭天祥的新概念51单片机源代码,是一个单片机综合练习项目。
摘要由CSDN通过智能技术生成

今天单片机课上写的一个时钟程序,代码如下:

#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit S1 = P1^3;
sbit S2 = P1^1;
sbit S3 = P1^2;
sbit S4 = P1^0;
sbit beep = P2^7;
sbit a = P0^0;
sbit b = P0^1;
sbit c = P0^2;
sbit d = P0^3;
sbit e = P0^4;
sbit f = P0^5;
sbit g = P0^6;
sbit p = P0^7;
sbit key1 = P1^4;
sbit key2 = P1^5;
sbit key3 = P3^6;
sbit key4 = P3^7;
uchar num, hour, min, sec, snum;
uchar qian, bai, shi, ge, counter;
uchar code N[10] = {0xc0, 0xf9 ,0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90}; //0, 1, 2, 3, ...8, 9
uchar code Z[10] = {0x40, 0x79 ,0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x10}; //0., 1., 2., ... 8., 9.

void delayms(uint xms)
{
	uint i,j;
	for(i = xms; i > 0; i--)
		for(j = 110; j > 0; j--);
}

void init()
{
	TMOD = 0x01;
	TH0 = 0x3c;
	TL0 = 0xb0;
	S1 = S2 = S3 = S4 = 0;
	P0 
单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。这正符合了现代时钟的设计要求。数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字时钟及扩大其应用,有着非常现实的意义。因此本论文所做的数字时钟采用了以单片机(STC89C51)为核心,结合相关的外围元器件例如液晶显示、按键电路、复位电路、闹钟电路,再配以相应的软件,达到制作简易数字钟的目的,能实现实时时钟显示的功能,能进行年、月、日、时、分、秒和实时温度的显示,并且通过蓝牙模块实现两台单片机的通信功能。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值