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

51单片机学习之旅——在LCD1602上显示时钟

新建工程

打开软件

LCD1602模块代码添加

因为我们在LCD1602上显示时钟,因此我们需要添加LCD1602的模块代码

跳转到这条博客51单片机学习之旅——模块化编程集_51单片机ruminant-CSDN博客,复制相关代码跳转到这条博客51单片机学习之旅——模块化编程集_51单片机ruminant-CSDN博客,复制相关代码

定时器0模块代码添加

本次项目在LCD1602上显示时钟,要用到定时器中断,因此我们下来添加定时器中断模块代码跳转到这条博客51单片机学习之旅——模块化编程集_51单片机ruminant-CSDN博客,复制相关代码跳转到这条博客51单片机学习之旅——模块化编程集_51单片机ruminant-CSDN博客,复制相关代码

main.c文件代码:
#include <REGX52.H>
#include "LCD1602.h"//头文件的作用是声明,我这里要用到啥啥啥
#include "timer0.h"//让程序知道到哪里去找,相当于“任意门”unsigned char s=0,m=0,h=0;//s秒m分钟h小时void main()//键盘Insert键会让输入竖线变下划线
{//初始化LCD_Init();//LCD1602屏幕初始化Timer0_Init();//定时器0初始化//不用实时更新的部分LCD_ShowString(1,1,"Clock:");//从第一行第一列开始显示Clock:LCD_ShowString(2,1,"  :  :");//从第二行第一列开始显示  :  :while(1)//需要实时更新的部分写在循环里{LCD_ShowNum(2,1,h,2);//从第二行第一列开始以两位宽显示变量hLCD_ShowNum(2,4,m,2);//从第二行第四列开始以两位宽显示变量mLCD_ShowNum(2,7,s,2);//从第二行第七列开始以两位宽显示变量s}
}void Timer0_Routine() interrupt 1//定时器0中断函数
{static unsigned int T0Count;//累计1秒TL0=0x18;//定时器0配置的是01模式1:16位不重载模式,且单片机是12MHz,12T分频TH0=0XFC;//所以TL0=(65536-1000)%256,TH0=(65536-1000)/256T0Count++;if(T0Count==1000)//如果时间够1秒{T0Count=0;//归零重新计数s++;//秒累加1s++等同于s=s+1}if(s==60){s=0;//满60秒进位1分钟,秒归零重新累加m++;}if(m==60){m=0;//满60分钟进位1小时,分钟归零重新累加h++;}if(h==24){h=0;//一天24个小时}
}
http://www.lryc.cn/news/539774.html

相关文章:

  • Jest单元测试
  • C++字符串处理指南:从基础操作到性能优化——基于std::string的全面解析
  • JVM类加载过程详解:从字节码到内存的蜕变之旅
  • 【力扣Hot100详解】解锁“字母异位词分组”:用排序魔法一键通关力扣!
  • vite配置scss全局变量
  • Spring Boot01(注解、)---java八股
  • 2.19学习记录
  • 汽车免拆诊断案例 | 2013 款奔驰 S300L 车起步时车身明显抖动
  • 【HeadFirst系列之HeadFirst设计模式】第5天之工厂模式:比萨店的秘密武器,轻松搞定对象创建!
  • Redis如何解决热Key问题
  • 从开发到部署:EasyRTC嵌入式视频通话SDK如何简化实时音视频通信的集成与应用
  • Zookeeper(58)如何在Zookeeper中实现分布式锁?
  • Mac端homebrew安装配置
  • Spring 接入 DeepSeek
  • vscode将文件中行尾默认CRLF改为LF
  • python-leetcode 33.排序链表
  • 【数据结构初阶第十二节】设计循环队列
  • 基于微信小程序的民宿短租系统设计与实现(ssm论文源码调试讲解)
  • 使用 Jetty 构建 HTTPS 服务入门指南
  • 数据结构《图》
  • 用Chrome Recorder轻松完成自动化测试脚本录制
  • ⭐️苹果电脑安装windows10双系统【详细图文步骤保姆级教程】【本教材适用于MAC台式机、笔记本MacBook air和pro】
  • win10系统上的虚拟机安装麒麟V10系统提示找不到操作系统
  • Java 大视界 -- 开源社区对 Java 大数据发展的推动与贡献(91)
  • 深入浅出C语言内存模型——高阶篇
  • AI 百炼成神:逻辑回归, 垃圾邮件分类
  • MybatisPlus-扩展功能
  • 《计算机视觉》——角点检测和特征提取sift
  • DeepSeek模型快速部署教程-搭建自己的DeepSeek
  • Swift CChar元祖转String