C51单片机简易时钟设计,显示分秒时,手动时、分进位,自动进位。

#include<reg51.h>
typedef unsigned int u16;
typedef unsigned char u8;
unsigned char code smgduan[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsigned char Time;
void DigDisplay();
void delay(u16 i);
void Timer0Cofig(void);
u8 m=55,f=59,s=23;
sbit K2=P1^2;
sbit K1=P1^1;
void main(void)
{                P2=0X00;P1=0XFF;Timer0Cofig();while(1){if(!K1){delay(10);if(!K1)f++;while(!K1);                                                                         }if(!K2){delay(10);if(!K2)s++;while(!K2);                                                                         }if(m==60)                                                                             //秒进位{m=0;f++;}if(f==60)                                                                             //分钟进位{f=0;s++;}if(s==24)                                                                             //小时进位{s=0;m=0;}                                               DigDisplay();}
}
void delay(u16 i)
{while(i--);
}
void DigDisplay()                                                                            //显示秒分时函数
{u16 i,i1;                                                                                 //显示秒i=m%10;i1=(m/10)%10;P2=0X80;P0=smgduan[i];delay(1);                                                                                 P2=0X40;P0=smgduan[i1];delay(1);                                                                                 P2=0X20;                                                                                         P0=0xBF;delay(1);
//显示分钟i=f%10;i1=(f/10)%10;P2=0X10;P0=smgduan[i];delay(1);                                                                                 P2=0X08;P0=smgduan[i1];delay(1);                                                                                 P2=0X04;           P0=0xBF;delay(1);//显示小时i=s%10;i1=(s/10)%10;P2=0X02;P0=smgduan[i];delay(1);                                                                                 P2=0X01;P0=smgduan[i1];delay(1);delay(80);
}
void Timer0Cofig(void)
{TMOD = 0x01;     //定时器0选择工作方式1TH0  = 0x3C;         //设置初始值,定时50MSTL0  = 0xB0; EA   = 1;             //打开总中断ET0  = 1;                 //打开定时器0中断TR0  = 1;                 //启动定时器0
}
void Timer0() interrupt 1
{TH0 = 0x3C;             //设置初始值TL0 = 0xB0;Time++;if(Time == 20){m++;Time = 0;}
}

protues仿真示例图:

视频示例:

单片机时钟示例

单片机简易时钟开发(protues)相关推荐

  1. 时钟电路程序设计c语言,STC89C52单片机简易时钟程序电路设计(附源代码和电路图)...

    51(STC89C52)单片机简易时钟程序电路设计(附源代码和电路图) 上一篇做了一个温湿度采集电路,觉得这东西玩起来还是挺有意思,然后就想做一个时钟,于是就有了下文 1.成品图 51hei图片_20 ...

  2. Android 开发第七弹:简易时钟(秒表)

    本文承接,Android 开发第五弹:简易时钟(闹钟) 和 Android 开发第六弹:简易时钟(计时器),这一部分是关于秒表的. 布局 同样是新建一个类(StopWatchView)并扩展自Line ...

  3. 24小时切换简易时钟-51单片机

    24小时切换简易时钟 简介 1.本设计主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机STC89C51单片机和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟. 2. ...

  4. 微型计算机系统电子时钟程序设计,基于单片机的电子时钟设计 普通单片机电子时钟的设计的分析...

    摘要:随着电子科技的飞速发展,尤其是超大规模集成电路的出现,给我国的经济带来了实质性的改变.其中,对于单片机的使用已经在很多领域都有出现,比如说在工业自动化控制房间.在智能仪器仪表方面以及各种家用电器 ...

  5. 51单片机简易电阻测量仪仿真设计

    51单片机简易电阻测量仪仿真设计( proteus仿真+程序+报告+讲解视频) 仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0037 51单 ...

  6. 51单片机 外部时钟_基于51单片机的LCD12864显示模拟时钟

    今天要分享的仿真和程序是基于51单片机的LCD12864显示模拟时钟.公众号之前也分享过数字时钟,但是那些时钟都是采用数字显示的形式来显示时间,而今天分享一个采用LCD12864显示的模拟指针式时钟. ...

  7. 第十一届 蓝桥杯 单片机设计与开发项目 决赛

    第十一届 蓝桥杯 单片机设计与开发项目 决赛 题目 源码 赛题总结 1.界面切换 2.参数生效 3.LED显示 题目 源码 #include <STC15F2K60S2.H> #inclu ...

  8. FT60F011A包含1Krom+EEPROM+Flash单片机IC方案开发

    FT60F011A包含1Krom+EEPROM+Flash单片机IC方案开发 FT60F011A,可以烧录,编带等 特性 l 全自我知识产权8位指令集 l 8层10bit硬件堆栈 l 1Kx14b程序 ...

  9. 51单片机设计简易计算机原理,基于AT89C51单片机简易计算器的设计(DOC).docx

    PAGE PAGE # 基于AT89C51单片机简易计算器的设计 [摘要]单片机的出现是计算机制造技术高速发展的产物,它是嵌 入式控制系统的核心,如今,它已广泛的应用到我们生活的各个领域, 电子.科技 ...

  10. 基于51单片机简易数字示波器Proteus仿真

    功能介绍: 采用51单片机作为主控CPU:LCD12864可显示方波,三角波,锯齿波,正弦波等,可通过光标对波形进行测量,可以调节显示波形的幅度和频率,也可以将波形进行左右拖拉,完美的仿真出一个51单 ...

最新文章

  1. 接口的特点及,抽象类与接口的区别
  2. android四中启动模式
  3. 喷水装置(一)--nyoj题目6
  4. 基本系统设备感叹号更新不了_电脑识别不了U盘?别紧张,免费教你如何解决...
  5. Git忽略项目中的指定的文件
  6. html5学习笔记---05.JavaScript 中的面向对象,继承和封装
  7. Elastic-Job
  8. S3 api 断点下载
  9. 深度学习一(PyTorch物体检测实战)
  10. 马尔可夫随机场与条件随机场
  11. Visio 直角连接线增加直角拐弯的方法, 取消自动附着,取消自动捕捉
  12. 为什么公司宁愿花15k去重招一个应届生,也不愿意加薪5k留住老程序员?
  13. C#制作自己的打包工具
  14. 国内有名的汽车与交通调查研究咨询公司情况
  15. 1001 害死人不偿命的(3n+1)猜想 (15分)_Quentin
  16. 遥遥领先一键导出微信小程序、UNIAPP低代码源码使用介绍
  17. 原创|Android Jetpack Compose 最全上手指南
  18. html塔防游戏,HTML5 版塔防游戏
  19. matlab2012仿真电路图,MATLAB电路仿真搭建教程
  20. 米酷影视6.2.8完整版(仿首涂模板+四套首页模板)

热门文章

  1. 象棋游戏java代码_象棋游戏 - java代码库 - 云代码
  2. 含泪入坑 GMSSL
  3. UG NX10.0软件安装教程
  4. 【Google浏览器无法登录账号】为安全起见,您无法从此设备登录。请稍后重试,或从其他设备登录
  5. 冯氏集团于进博会发布报告,分析影响全球服装采购格局的五大因素
  6. Win10系统下LaserJet Pro MFP M227sdn无法自动双面打印问题解决
  7. 项目管理全景沙盘演练经验分享(内附项目管理软件分析)
  8. PowerDesigner 数据字典模板
  9. python中导入win32com.client出错问题
  10. 9种常见的前端跨域解决方案(详解)