51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频)

这篇具有很好参考价值的文章主要介绍了51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频)

仿真图proteus7.8及以上

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:S0046

1.主要功能:

本设计旨在设计一个基于51单片机的多功能数字时钟闹钟proteus仿真设计,可以显示时、分、秒,并且可以设置时间和闹钟。

1、采用单片机内部定时器实现计时;

2、采用八位数码管显示时分秒;

3、可对时分秒分别进行加减设置,设置时对应数码管闪烁;

4、可设置闹钟,并且到时间后蜂鸣器每隔1s响一次,持续6s;

5、闹钟鸣响时,可手动消除闹钟。

需注意仿真中51单片机芯片是通用的,AT89C51,AT89C52都是51单片机的具体型号,内核是兼容的。无论stc还是at都一样,引脚功能都是一样的,程序也是一样的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

以下为本设计资料展示图:

2.仿真

开始仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。开始仿真后数码管显示时间00:00:00。时间逐秒递增。

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件

显示时间的情况下,按下设置键进入设置模式,时钟闪烁表示当前正在设置时钟,再按下设置键进入分钟设置模式,分钟闪烁,再按下设置键进入秒钟设置模式,秒钟闪烁。设置完秒钟再按设置退出设置模式,数码管正常显示。

按下功能切换按键显示闹钟时间。闹钟时间显示下按下设置键进入闹钟设置模式,时钟闪烁表示当前正在设置闹钟时钟,再按下设置键进入闹钟分钟设置模式,闹钟分钟闪烁,再按下设置键进入闹钟秒钟设置模式,闹钟秒钟闪烁。设置完秒钟再按设置退出设置模式,数码管正常显示闹钟时间。

闹钟时间到,蜂鸣器闹铃,蜂鸣器每隔1s响一次,持续6s,可以通过按键关停闹钟。

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件

3. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件

/*******************************************************************************
* 函 数 名       : main
* 函数功能		 : 主函数
* 输    入       : 无
* 输    出    	 : 无
*******************************************************************************/
void main()
{	
	Timer0Init();  //定时器0初始化
		xian1[0]=shi/10;//计算到显存   时钟的十位
		xian1[1]=shi%10;// 时钟的个位
		xian1[3]=fen/10;// 分钟的十位
		xian1[4]=fen%10;// 分钟的个位
		xian1[6]=miao/10;  // 秒钟的十位
		xian1[7]=miao%10;  // 秒钟的个位
		xian2[0]=shi0/10;
		xian2[1]=shi0%10;
		xian2[3]=fen0/10;
		xian2[4]=fen0%10;
		xian2[6]=miao0/10;
		xian2[7]=miao0%10;
	while(1)
	{
	  if(mode)
	  	display2();//显示闹钟
	  else
		display1();//显示时间
	  if(!key1 &&(cixu==0))	//功能切换
	  {
	  	mode=!mode;
		while(!key1);
	  }
	  if(!key2)//选择
	  {
	  	if(cixu<3)
			cixu++;
		else
			cixu=0;
	  	while(!key2);
	  }
	  if(!key3)		//加
	  {
	  	if(mode==0)
		{
		  switch(cixu)
		  {
		  case 1:
		  	if(shi<23)
				shi++; //时钟+
				break;
		  case 2:
		  	if(fen<59)
				fen++;  //分钟+
				break;
		  case 3:
		  	if(miao<59)
				miao++;	    //秒钟+
		  }
		}
		else
		{
		  switch(cixu)
		  {
		  case 1:
		  	if(shi0<23)
				shi0++;	   //闹钟时钟+
				break;
		  case 2:
		  	if(fen<59)
				fen0++;		//闹钟分钟+
				break;
		  case 3:
		  	if(miao0<59)
				miao0++;	  //秒钟分钟+
		  }
		}
		xian1[0]=shi/10;//计算到显存
		xian1[1]=shi%10;
		xian1[3]=fen/10;
		xian1[4]=fen%10;
		xian1[6]=miao/10;
		xian1[7]=miao%10;
		xian2[0]=shi0/10;
		xian2[1]=shi0%10;
		xian2[3]=fen0/10;
		xian2[4]=fen0%10;
		xian2[6]=miao0/10;
		xian2[7]=miao0%10;
	  	while(!key3);
	  }
	  if(!key4)		//减
	  {
	  	if(mode==0)
		{
		  switch(cixu)
		  {
		  case 1:
		  	if(shi>0)
				shi--;
				break;
		  case 2:
		  	if(fen>0)
				fen--;
				break;
		  case 3:
		  	if(miao>0)
				miao--;
		  }
		}
		else
		{
		  switch(cixu)
		  {
		  case 1:
		  	if(shi0>0)
				shi0--;
				break;
		  case 2:
		  	if(fen0>0)
				fen0--;
				break;
		  case 3:
		  	if(miao0>0)
				miao0--;
		  }
		}
		xian1[0]=shi/10;//计算到显存
		xian1[1]=shi%10;
		xian1[3]=fen/10;
		xian1[4]=fen%10;
		xian1[6]=miao/10;
		xian1[7]=miao%10;
		xian2[0]=shi0/10;
		xian2[1]=shi0%10;
		xian2[3]=fen0/10;
		xian2[4]=fen0%10;
		xian2[6]=miao0/10;
		xian2[7]=miao0%10;
	  	while(!key4);
	  }
	  if(!key5)	//停止响铃
	   {
		beep_flag=0;
		beep=1;
	   while(!key5);
	   }

	  if((shi==shi0)&&(fen==fen0)&&(miao==miao0))//判断响铃
	  {
	  	 beep_flag=1;
		 beep=0;
	  }
	}		
}

4. 原理图

原理图使用AD绘制,可供实物参考,仿真不同于实物,经验不足不要轻易搞实物。

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件

Proteus仿真和实物作品的区别:

1.运行环境:Proteus仿真是在计算机上运行的,而实物则是在硬件电路板上运行。

2.调试方式:在Proteus仿真中,可以方便地进行单步调试和观察变量值的变化,而在实物中则需要通过调试器或者串口输出等方式进行调试。

电路连接方式:在Proteus仿真中,可以通过软件设置进行电路连接的修改,而在实物中则需要通过硬件电路板和连接线进行修改。

3.运行速度:Proteus仿真通常比实物运行速度快,因为仿真是基于计算机运行的,而实物则需要考虑电路板上的物理限制和器件的响应时间等因素。

4.功能实现:在Proteus仿真中,可以通过软件设置实现不同的功能,而在实物中则需要根据电路设计和器件的性能进行实现。

元器件清单

元件 型号 数量
单片机 AT89C51 1
电容 10uf 1
电容 30pf 2
晶振 12MHZ 1
电阻 10k 1
按钮 6
数码管 8位共阴 1
电阻 1k 1
三极管 PNP 1
蜂鸣器 有源 1
排阻 10k 1

电源部分
排针 2P 1
电容 0.1uf 2
电容 100uf 2
稳压器 7805 1

5. 设计报告

6600+字设计报告,内容包含设计框图,引言,硬件设计介绍,软件设计介绍,仿真调试,总结和参考文献。

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件

6. 设计资料内容清单&&下载链接

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法–必读!!!!

1、仿真图

2、程序源码

3、开题报告

4、原理图

5、功能要求

6、元器件清单

7、设计报告

8、软硬件流程框图

9、讲解视频

Altium Designer 软件资料

KEIL软件资料

Proteus软件资料

单片机学习资料

答辩技巧

设计报告常用描述

鼠标双击打开查找更多51 STM32单片机课程毕业设计.url

51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频),51单片机,51单片机,proteus,嵌入式硬件文章来源地址https://www.toymoban.com/news/detail-705812.html

资料下载链接(可点击):

到了这里,关于51单片机简易时钟闹钟八位数码管显示仿真( proteus仿真+程序+原理图+报告+讲解视频)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 51单片机实验三:数码管显示时钟 按键调节时间时闪烁提示

    功能效果:1.时分秒的动态显示。2.用三个按键实现时分秒的修改,调节的数字闪烁提示。  

    2024年02月11日
    浏览(36)
  • 51单片机入门——(新)简易数字时钟

    实现正确稳定地显示小时(两位数)、分钟(两位数)、秒钟(两位数),同时数码管应无闪烁问题。 通过按键分别实现时、分信息的调整,方便用户对时间的校准。 加入闹铃功能在(本设计中用LED代替)。 key1 用于切换时分秒的加减。例:第一次按下后,按key2key3时“秒”加减,

    2024年02月11日
    浏览(45)
  • 24小时切换简易时钟-51单片机

    1、本设计主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机STC89C51单片机和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。 2、本设计拟实现的性能指标如下: (1)键盘用于校正、调节数码管上显示的时间。 (2)单片机通过输出

    2024年02月11日
    浏览(45)
  • 基于51单片机的简易6位密码锁(数码管 led 矩阵)

      本文章是基于51单片机的简易密码锁,无掉电保护,所以没有用到I^C总线协议,仅用到数码管显示,矩阵键盘扫描,led显示。   本例程主要实现功能为:定义一个六位数的初始密码,用矩阵输入,输入正确后led被点亮,错误不点亮;摁下任意一个按键蜂鸣器发出声音,松下

    2024年02月11日
    浏览(37)
  • C51单片机的电子时钟(数码管显示+独立按键模块修改及暂停时间)

    IMG_1120 通过查看这三个原理图我们可以得知控制K1、K2、K3及K4是通过P31、P30、P32及P33来实现的,控制8个数码管是P22、P23及P24来实现, 控制发光二极管则由P00-P07来实现。 代码分为三部分分别为main.c、key.h、key.c scankey()函数的主要代码,通过软件入手提高系统的可靠性,防止外

    2024年02月05日
    浏览(52)
  • 51单片机-定时器(简易时钟的实现)

    最近在学习51单片机,学到了 定时器 这块,由于自己的基础不太扎实,在这方面花了很多时间,这里通过对定时器和中断的介绍,用 简易时钟 这个例子来对学习的内容进行加深巩固,把自己的经验分享给大家,希望对大家能够有帮助。 其实就是单片机的内部,通过系统时钟

    2024年02月03日
    浏览(65)
  • 【普中】基于51单片机简易计算器数码管显示设计( proteus仿真+程序+实物演示+讲解视频)

    【普中开发板】基于51单片机简易计算器数码管显示设计( proteus仿真+程序+实物演示+讲解视频) Proteus 仿真:Proteus 8.16(有低版本) 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:P04 普中开发板实验设计 本设计旨在设计一个基于51单片机的简易计算器仿真设计。 功能要求

    2024年02月02日
    浏览(57)
  • 使用51单片机和DS1302时钟芯片做一个简易的电子时钟

    今天给大家推荐一个51单片机小实验,带你使用51单片机做一款简易的电子时钟,其中计时模块采用DS1302硬件模块,显示采用LCD显示屏,具体怎么实现开来一起看看吧! DS1302 是 DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟和31字节静态 RAM,通过简单的串行接口与

    2024年02月11日
    浏览(45)
  • 【个人笔记】51单片机串口通信的字符串接收和发送,串口通信调节数码管显示时钟(串口通信,定时器,数码管)

           目的:利用PROTUES仿真软件、串口调试助手、虚拟串口,搭建单片机与PC通信仿真平台,熟悉单片机串口的配置及与PC机的通信方法;尝试制定通信协议,单片机根据通信协议解析接收到的内容,并根据接收的指令执行相应的操作。 基本功能: 1.时分秒的动态显示。

    2024年02月11日
    浏览(59)
  • 单片机数字时钟/闹钟

    1.设计概述: 由单片机 AT89C51芯片和动态数码显示管为核心,辅以必要的电路,构成一个数字时钟。 时钟显示方式为:时-分-秒。时钟计时周期为24小时,显满刻度为“23时59分59秒”。 具有调整功能。设置有三个按键,分别对时、分、秒进行调整校对。 外加可当闹钟使用,闹钟

    2024年02月11日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包