当前位置: 首页 > news >正文

基于单片机简易电子钟系统Proteus仿真(含全部资料)

全套资料包含:Proteus仿真源文件+keil C语言源程序+AD原理图+流程图+元器件清单+说明书等

资料下载:

通过网盘分享的文件:资料分享
链接:百度网盘 请输入提取码提取码: tgnu


目录

资料下载:

Proteus仿真功能

项目文件资料:

一、Proteus仿真源文件

二、AD原理图文件

二、报告说明书

三、系统流程图

四、Keil c语言程序源代码


项目功能:

设计一个简易时钟
1、使用数码管显示时间
2、使用单片机内部定时实现走时
3、通过按键设置时间,设置时对应显示位置闪烁


项目文件:

一、Proteus仿真源文件

二、AD原理图文件

二、报告说明书

三、系统流程图

四、器件清单

元件型号数量
单片机AT89C511
电容10uf1
电容30pf2
晶振12MHZ1
电阻10k1
按钮4
数码管6位共阴1
排阻10k1

五、Keil c语言程序源代码(部分)

#include "reg51.h" #define uchar unsigned char #define uint unsigned int sbit k1=P3^2;//按钮 sbit k2=P3^3; sbit k3=P3^4; sbit smg1=P2^0;//数码管 sbit smg2=P2^1; sbit smg3=P2^2; sbit smg4=P2^3; sbit smg5=P2^4; sbit smg6=P2^5; uchar code smgduan0[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//显示0~9,无小数点 uchar code smgduan1[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//显示0~9,有小数点 uchar time=0,mode=0;//系统变量 uchar miao=0,fen=0,shi=0;//计时 //延时 void delay(uint i) { while(i--); } //主函数 void main() { uchar k=0; TMOD|=0X01; TH0=0X3C; TL0=0XB0; ET0=1;//打开定时器0中断允许 EA=1;//打开总中断 TR0=1;//打开定时器 while(1) { if(mode==1)//显示小时 { if(time<11) { P0=smgduan0[shi/10];smg1=0;delay(100);smg1=1; P0=smgduan1[shi%10];smg2=0;delay(100);smg2=1; } } else { P0=smgduan0[shi/10];smg1=0;delay(100);smg1=1; P0=smgduan1[shi%10];smg2=0;delay(100);smg2=1; } if(mode==2)//显示分钟 { if(time<11) { P0=smgduan0[fen/10];smg3=0;delay(100);smg3=1; P0=smgduan1[fen%10];smg4=0;delay(100);smg4=1; } } else { P0=smgduan0[fen/10];smg3=0;delay(100);smg3=1; } if(mode==3)//显示秒 { if(time<11) { P0=smgduan0[miao/10];smg5=0;delay(100);smg5=1; P0=smgduan0[miao%10];smg6=0;delay(100);smg6=1; } } else { P0=smgduan0[miao/10];smg5=0;delay(100);smg5=1; P0=smgduan0[miao%10];smg6=0;delay(100);smg6=1; } //按键检测 if(!k1 &&(k!=1)) { k=1; if(mode<3) mode++; else mode=0; } if(mode==1)//设置小时 { if(!k2 &&(k!=2)) { k=2; if(shi<23) shi++; else shi=0; } if(!k3 &&(k!=3)) { k=3; if(shi>0) shi--; else shi=23; } } if(mode==2)//设置分钟 { if(!k2 &&(k!=2)) { k=2; if(fen<59) fen++; else fen=0; } if(!k3 &&(k!=3)) { k=3; if(fen>0) fen--; else fen=59; } } if(mode==3)//设置秒 { if(!k2 &&(k!=2)) { k=2; if(miao<59) } if(!k3 &&(k!=3)) { k=3; if(miao>0) miao--; else miao=59; } } if(k1 && k2 && k3) k=0; } } //定时器中断 void Timer0() interrupt 1 { if(time<20)//1s time++; else { time=0; if(mode==0) { else { miao=0; if(fen<59)//分 fen++; else { fen=0; if(shi<23)//时 shi++; else shi=0; } } } } TH0=0X3C; TL0=0XB0; }

六、全套资料包含

七:项目资源获取

需要完整的资料可以点击下面的名片关注,回复“资料”!

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

http://www.jsqmd.com/news/157008/

相关文章:

  • PyTorch-CUDA-v2.6镜像是否预装TensorBoard?怎么使用?
  • PyTorch-CUDA-v2.6镜像如何上传结果到GitHub仓库?Git操作指南
  • UDS协议诊断会话控制:CANoe平台图解说明
  • 前后端分离实训管理系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 技术分析算法推荐番茄小说正式推荐期刷用户评论书评危害到底有多大影响多大?
  • HR不会告诉你:今年考试周期缩短的CAIE证书,可能是你职业的关键跳板
  • 大数据质量管理的未来:AI驱动的自动化检测
  • PyTorch-CUDA-v2.6镜像能否用于生产环境?专家这样说
  • Win7到Win11通用USB串口驱动下载推荐
  • Zynq MPSoC中VDMA与GPU协同处理核心要点
  • PyTorch-CUDA-v2.6镜像是否支持MPS(Apple芯片)?答案揭晓
  • 使用PyTorch-CUDA-v2.6镜像跑通第一个CNN示例代码
  • Packet Tracer中交换机远程管理配置指南
  • Python入门第一步:环境搭建+基础语法,手把手教你
  • aarch64初学者指南:从CPU模式到异常等级通俗解释
  • PyTorch-CUDA-v2.6镜像SSH连接教程:远程开发也能流畅运行
  • 小白学Python避坑指南:这些错误90%的新手都会犯
  • 在WSL中配置VS Code C++开发环境完整教程
  • 0基础也能学会的Python:从变量到函数,一文读懂
  • Java Web 社区物资交易互助平台系统源码-SpringBoot2+Vue3+MyBatis-Plus+MySQL8.0【含文档】
  • RISC指令流水线机制:深度剖析冲突与解决策略
  • Markdown写技术博客 + PyTorch训练模型 高效输出闭环
  • kali linux换源教学
  • 手把手教你使用OBD2适配器连接车辆实战案例
  • 智能窗帘控制系统:cc2530项目应用实例
  • ModbusTCP报文解析常见问题与调试技巧
  • USB转485驱动程序下载:零基础接入工控设备教程
  • 如何将本地数据挂载到PyTorch-CUDA-v2.6镜像中进行训练
  • hal_uart_rxcpltcallback常见问题解析:入门级故障排查指南
  • 写给纯小白的Python指南:告别看不懂,轻松入门