怎么去设计一种基于51单片机的简易时钟?

控制/MCU

1882人已加入

描述

功能:

1、使用单片机内部定时器实现时分秒计时

2、能够设置闹钟时间

3、闹钟时间到,蜂鸣器响

4、使用LCD1602显示时间

部分程序:#include "reg51.h"

#include "lcd1602.h"

#define uchar unsigned char

#define uint unsigned int

sbit beep=P3^2;//蜂鸣器

sbit k1=P1^0;//按钮

sbit k2=P1^1;

sbit k3=P1^2;

sbit k4=P1^3;

sbit k5=P1^4;

sbit k6=P1^5;

sbit k7=P1^6;

sbit k8=P1^7;

uchar shi=11,fen=59,miao=50;//时间

uchar nao_shi=12,nao_fen=0;

uchar xian1[]="00:00:00";

uchar xian2[]="00:00";

uchar time=0;

//延时

void delay(uint i)

{

while(i--);

}

//主函数

void main()

{

beep=0;

init_1602();

TMOD|=0X01;

TH0=0X3C;

TL0=0XB0;

ET0=1;//打开定时器0中断允许

EA=1;//打开总中断

TR0=1;//打开定时器

while(1)

{

if(!k1)//小时

{

delay(1000);

if(!k1)

{

if(shi<23)

shi++;

while(!k1);

}

}

if(!k2)

{

delay(1000);

if(!k2)

{

if(shi>0)

shi--;

while(!k2);

}

}

if(!k3)//分钟

{

delay(1000);

if(!k3)

{

if(fen<59)

fen++;

while(!k3);

}

}

if(!k4)

{

51单片机

51单片机

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分