【Proteus仿真】【Arduino单片机】DS1302时钟

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用Proteus8仿真Arduino单片机控制器,使用PCF8574、LCD1602液晶、DS1302等。
主要功能:
系统运行后,LCD1602显示时间日期。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*/#include <LiquidCrystal_I2C.h>
#include <RTClib.h>// 创建液晶显示屏对象  
LiquidCrystal_I2C lcd(0x27,16,2);//创建DS1302对象
DS1302 rtc(4, 5, 6);void setup(void) 
{//LCD1602初始化lcd.init();lcd.backlight();lcd.setCursor(0, 0);rtc.begin();while (!rtc.isrunning()) {lcd.print("RTC is NOT running!");// following line sets the RTC to the date & time this sketch was compiledrtc.adjust(DateTime(__DATE__, __TIME__));}lcd.clear();rtc.adjust(DateTime(__DATE__, __TIME__));lcd.setCursor(0, 0);lcd.print("20  -  -    Day ");lcd.setCursor(0, 1);lcd.print("  :  :  ");
}void loop(void) 
{char buf[5];DateTime now = rtc.now();sprintf(buf,"%04d",now.year());lcd.setCursor(0, 0);lcd.print(buf);//年sprintf(buf,"%02d",now.month());lcd.setCursor(5, 0);lcd.print(buf);//月sprintf(buf,"%02d",now.day());lcd.setCursor(8, 0);lcd.print(buf);//日lcd.setCursor(15, 0);lcd.print(now.dayOfWeek());//星期sprintf(buf,"%02d",now.hour());lcd.setCursor(0, 1);lcd.print(buf);//时sprintf(buf,"%02d",now.minute());lcd.setCursor(3, 1);lcd.print(buf);//分sprintf(buf,"%02d",now.second());lcd.setCursor(6, 1);lcd.print(buf);//秒
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619

在这里插入图片描述

联系作者

视频地址:https://space.bilibili.com/444388619/video
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/146789.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux命令之文件管理相关命令

文件操作 Linux系统中常见文件分为普通文件和目录文件。 1.pwd----显示当前工作目录的绝对路径 pwd通常不添加参数&#xff0c;直接在命令行中使用 [itheimalocalhost ~]$ pwd #打印当前工作目录 2.cd--切换目录 [itheimalocalhost ~]$ cd ./public #切换工作…

按键精灵实现打开QQ自动化脚本

以下是基于按键精灵实现的一个打开QQ的功能&#xff0c;其基本的思路是&#xff1a; 1. 滑屏找到图标&#xff1b; 2. 点击图标&#xff1b; 3. 进入登录界面&#xff0c;检测登录按钮&#xff1b; 4. 点击登录&#xff1b; 实现代码如下&#xff1a; Dim 企儿,登录企儿 …

C语言第入门——第十六课

目录 一、分治策略与递归 二、递归 1.求解n的阶乘 2.输入整数、倒序输出 3.输入整数、正序输出 4.计算第n位Fibonacci数列 ​编辑5.无序整数数组打印 6.找到对应数组下标 一、分治策略与递归 在我们遇到大问题的时候&#xff0c;我们的正确做法是将它分解成小问题&a…

uni-app小程序开发使用uView,u-model传入富文本内容过长,真机上无法滚动

uni-app小程序开发使用uView&#xff0c;u-model传入富文本内容过长&#xff0c;真机上无法滚动 找到u-model插件&#xff0c;在slot内容的外层自定义加入一个scroll-view标签&#xff0c;设置scroll-y“true”&#xff0c;指定高度。 <template><view><u-pop…

章鱼网络在 NEARCON23 发布 Octopus 2.0

香港时间2023年11月8日12点&#xff0c;章鱼网络举行第15期 Community Call。 我们在10月8日庆祝了章鱼网络主网上线二周年&#xff0c;并参加了激动人心的 Cosmoverse2023 活动。最重要的是&#xff0c;我们在 Octopus 2.0 的开发中取得了重大进展。 11月8日 Community Call …

vue3 - pinia 中的 storeToRefs

interface.d.ts文件 export interface useMyStore {id: stringcontent: stringtype: stringstatus: booleancollected: booleandate: stringquality: string }useMyStore.js文件 const msgData [{id: 123,content: 腾讯大厦一楼改造施工项目 已通过审核&#xff01;,type: 合…

SQLite3 数据库学习(二):SQLite 中的 SQL 语句详解

参考引用 SQLite 权威指南&#xff08;第二版&#xff09;SQLite3 入门 1. SQL 语句操作 SQLite 数据库 1.1 创建数据表格 create table 表名(字段名 数据类型&#xff0c; 字段名 数据类型&#xff0c; 字段名 数据类型&#xff0c; 字段名 数据类型); 命令行语句结束要加分…

装修干货|卧室常见3个软装搭配问题。福州中宅装饰,福州装修

引言 作为一名软装设计师&#xff0c;我对卧室的家具及软装布置颇有心得&#xff0c;现在就给你们带来卧室装修设计一些小技巧&#xff1a; 1. 床&#xff1b;衣柜&#xff1b;床头柜的摆放 床的摆放位置非常重要&#xff0c;一般要放在离窗户稍远的地方&#xff0c;避免直接…

Git客户端(TortoiseGit)使用

参考文章&#xff1a; https://www.cnblogs.com/xuwenjin/p/8573603.html 【精选】使用TortoiseGit工具进行开发&#xff08;连接远程仓库进行克隆、拉取、获取、提交、推送、新建/切换/合并分支、解决冲突&#xff09;_tortoisegit连接远程仓库-CSDN博客 tortoise git 拉取…

ReentrantLock源码浅析

一、ReentrantLock概念 ReentrantLock是JAVA并发情况下提供的用来加锁的机制&#xff0c;位于JUC包下&#xff0c;提供了一系列的加锁释放锁的方法&#xff0c;使用起来非常简单&#xff0c;只需要在代码块之前调用lock()方法&#xff0c;在finally中调用unlock()方法即可解决…

Postman接收列表、数组参数@RequestParam List<String> ids

示例如下: 接口定义如下: GetMapping(value "/queryNewMoviePath")public List<Map<String, Object>> queryNewMoviePath(RequestParam List<String> ids ) {return service.queryNewMoviePath(ids);}postman中测试如下&#xff1a; http://loc…

【Spring篇】使用注解进行开发

&#x1f38a;专栏【Spring】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【如愿】 &#x1f970;欢迎并且感谢大家指出小吉的问题 文章目录 &#x1f33a;原代码&#xff08;无注解&#xff09;&#x1f384;加上注解⭐两个注…

开发模型>螺旋模型

螺旋模型是在快速原型的基础上扩展而成的一种生存周期模型。这种模型将整个软件开发流程分成多个阶段&#xff0c;每个阶段都由4部分组成&#xff0c;它们是&#xff1a; ① 目标设定。为该项目进行需求分析&#xff0c;定义和确定这一个阶段的专门目标&#xff0c;指定对过程和…

分布式下多节点WebSocket消息收发

1、使用场景 2、疑问 第一次发送请求后&#xff0c;通过N1&#xff0c;W2&#xff0c;到达service2&#xff0c;建立websocket连接。 1、接下来发送的消息&#xff0c;通过Ngixn后和网关gateway后还能落在service2上面吗&#xff1f; 如果不能落在service2上&#xff0c;需要怎…

互联网医院系统:数字化时代中医疗服务的未来

随着数字化时代的发展&#xff0c;互联网医院系统在医疗服务中的作用日益凸显。本文将讨论互联网医院系统的一些关键技术方面&#xff0c;探讨这些技术如何推动医疗服务进入数字化时代。 1. 数据智能与个性化服务 互联网医院系统依赖于大数据分析和人工智能技术&#xff0c;…

python文件操作之xml转txt

在使用yolo进行深度学习训练时&#xff0c;我们所使用的标签文件都是txt格式的&#xff0c;但是有的人使用的标注软件生成的可能是xml文件&#xff0c;那么就需要使用python工具写一个格式转换脚本。 首先导入库&#xff0c;并定义标注的图片地址、生成的标签文件xml地址、存储…

Spring Boot使用EhCache完成一个缓存集群

在上一篇在SpringBoot中使用EhCache缓存&#xff0c;我们完成了在Spring Boot中完成了对EhCaChe的使用&#xff0c;这篇&#xff0c;我们将对EhCache的进一步了解&#xff0c;也就是搭建一个EhCache的缓存集群。 集群 在搭建一个EhCache的时候&#xff0c;我们需要先了解&…

2023-11-17 VsCode使用makefile进行多文件编译

点击 <C 语言编程核心突破> 快速C语言入门 VsCode使用makefile进行多文件编译 前言一、一个简单的多文件示例二、makefile基本语法三、VsCode使用makefile总结 前言 要解决问题: C或C可以多文件编译, 意味着需要进行代码组织, 为了方便多文件编译, gnu开发了make工具, …

2018年五一杯数学建模A题徐州潘安湖风景区游览路线设计解题全过程文档及程序

2019年五一杯数学建模 A题 徐州潘安湖风景区游览路线设计 原题再现 徐州是一个老工业基地和资源型城市&#xff0c;煤炭开采历史长达130年。长期煤炭开采在徐州累计形成采煤塌陷区达数十万亩。位于徐州市贾汪区西南部、紧邻马庄的潘安湖湿地公园原来就是徐州最大的、塌陷最严…

实验六:Android的网络编程基础

实验六&#xff1a;Android 的网络编程基础 6.1 实验目的 本次实验的目的是让大家熟悉 Android 开发中的如何获取天气预报&#xff0c;包括了 解和熟悉 WebView、WebService 使用、网络编程事件处理等内容。 6.2 实验要求 熟悉和掌握 WebView 使用 了解 Android 的网络编程…