网易首页 > 网易号 > 正文 申请入驻

学生看过来,教你51单片机和RTC模块构建实时时钟

0
分享至

  学生看过来,教你51单片机和RTC模块构建实时时钟

  RTC 模块 (DS1307) 与 8051 微控制器接口

  在本文中,我们将看到如何将RTC(实时时钟)模块连接到8051微控制器。市场上有不同种类的RTC模块。在本教程中,我们使用DS1307 IC随附的最常见的RTC模块、LCD模块和AT89S52(8051型号)。AT89S52 是 Atmel 制造的一款典型的 8051 微控制器。将RTC模块连接到8051微控制器非常简单。您只需要在 RTC 模块和 8051 之间建立 2 个连接。因此,让我们开始营业吧!

  实时时钟模块基本上是一个时间跟踪设备,它给出当前的时间和日期。DS3231 IC附带的RTC模块具有设置报警功能。

  关于DS1307 RTC模块的注意事项

  这里我们使用的是RTC模块和基于I2C协议(双线协议)的时钟芯片DS1307。该模块提供了诸如秒,分钟,小时,星期几,月中某天,月份和年份的详细信息,包括闰年的校正。它可以以12小时或24小时格式运行。该模块的电流消耗为纳安范围。即使是3V电池也可以供电10年,保持精确的时钟,而无需任何外部电源。

  DS1307的存储区为64字节,其中前8个字节保留为RTC寄存器区,其余56个字节作为通用RAM分配。有关当前、日期和时间的详细信息以二进制编码小数 (BCD) 的形式存储在其寄存器区域中。该模块使用称为I2C的串行通信协议与微控制器进行通信。I2C 总线物理上由 2 根有源导线组成。这些电线称为SDA和SCL,都是双向的。SDA 是串行数据线,SCL 是串行 CLock 线。连接到总线的每个设备都有自己唯一的设备地址,无论是MCU还是RTC模块。这些芯片中的每一个都可以充当接收器或发射器,具体取决于功能。

  DS1307在通信网络中充当从站,控制器只能通过启动启动条件和器件地址来访问从站。此后,我们需要发送寄存器编号才能访问其中的值。8051 的接口非常简单,SDA 和 SCL 引脚连接到 8051 的任意两个引脚。在软件方面,我们使用名为"I2C"的用户定义库进行I2C通信。该库允许您与I2C / TWI设备进行通信。

  希望大家到现在为止都能理解!让我们进入电路图!下面给出的是将RTC模块连接到8051的电路图。

  电路图 – RTC 与 8051 接口

  电路图 – RTC 8051 接口

  如图所示建立连接!现在让我们进入编码部分。

  程序/代码说明

  下载程序 – 嵌入式 C

  使用8051的RTC(实时时钟)程序是用嵌入式C(使用Keil编译器)编写的。

  我们首先将"LCD8bit"库包含在程序中。它是一个用户定义的库,用于在8位模式下将微控制器与LCD模块连接。在此库中,我们包含了一些用于初始化LCD,发送命令和发送要显示的数据的功能。

  要连接到LCD数据引脚的端口和要连接到命令引脚的引脚可以在磁带库本身中配置。在这里,我们为数据引脚定义了端口0,为命令引脚定义了P3.5,P3.6和P3.7。

  这里使用的另一个用户定义的库是"delay",它由名为"Delay_ms()"和"Delay_us()"的函数组成。Delay_ms(1000) 将停止程序 1000 毫秒(即一秒)和Delay_us(_)函数用于我们需要停止程序几微秒。

  请浏览我们的教程,了解有关在4 位模式和 8 位模式下将 LCD 模块连接到 8051 的更多信息。

  在这个项目中,我们主要关注RTC模块接口。如前所述,这里使用名为"I2C"的库进行I2C通信。I2CStart()函数将启动通信。I2CSend()是用于发送数据的函数,I2Cread()用于读取寄存器。

  在主程序中定义了两个名为"readAllReg()"和"readSecReg()"的函数,用于从RTC模块读取时间详细信息。前者用于读取所有寄存器,后者仅用于读取"第二个"寄存器。

  在DS1307中,字节存储为二进制编码的小数。因此,在将值写入寄存器之前,我们需要将其转换为BCD(二进制编码小数)。同样明智的是,从寄存器区域读取值后,应将其转换为十进制。Dec_To_BCD()是用于此目的的函数。

  在从RTC模块读取值之前,我们必须立即设置时间和日期。用于此目的的函数是setTime()函数。我们应该将实际时间详细信息作为参数传递。实际格式类似于setTime(sec,min,hour,dow,dom,month,year);.

  在我们的项目中,我们以 24 小时模式使用 DS1307,然后在软件端将其转换为 12 小时模式。因此,时间详细信息应处于 24 小时模式,同时通过setTime()函数传递参数。

  注意:-一次上传程序后,您应该通过注释setTime()函数来重新上传代码。否则,setTime()函数会在每次重置微控制器时损坏当前时间。

  名为displayTime()的函数用于在 LCD 中显示时间和日期。在函数内部,它将每秒调用"readSecreg()"。并且"readAllReg()"函数将每隔一分钟调用一次。一个名为"a[7]"的数组在程序开始时全局声明。"readSecReg()"和"readAllReg()"函数将分别每隔一秒和一分钟定期更新此数组元素。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
大批粉丝冲入商场,玻璃突然爆了!张凌赫线下活动,临时取消

大批粉丝冲入商场,玻璃突然爆了!张凌赫线下活动,临时取消

南方都市报
2026-05-31 16:45:36
广东一位母亲哭诉:读书害人不浅,女儿毕业2年不工作天天打游戏

广东一位母亲哭诉:读书害人不浅,女儿毕业2年不工作天天打游戏

灯锦年
2026-05-31 20:10:42
局势再度失控!美伊深夜交火,多架美机被打爆 !

局势再度失控!美伊深夜交火,多架美机被打爆 !

大嘴说天下
2026-05-31 18:37:38
姚明为ES9做代言!网友:李斌真是下血本了,姚明一般不接广告的

姚明为ES9做代言!网友:李斌真是下血本了,姚明一般不接广告的

火山詩话
2026-05-30 05:44:57
“一吨石油都别想进出伊朗港口” 对革命卫队意味着什么?

“一吨石油都别想进出伊朗港口” 对革命卫队意味着什么?

高博新视野
2026-05-30 18:47:42
缅甸掸邦北部南坎镇发生爆炸,云南瑞丽:未对我群众生产生活造成影响

缅甸掸邦北部南坎镇发生爆炸,云南瑞丽:未对我群众生产生活造成影响

极目新闻
2026-05-31 18:25:10
性生活是不是人的刚需?

性生活是不是人的刚需?

宇宙时空
2026-05-31 12:30:18
内分泌科主任:糖尿病最危险信号,不是口渴,是频繁出现6异常

内分泌科主任:糖尿病最危险信号,不是口渴,是频繁出现6异常

观星赏月
2026-05-31 07:44:43
文班称赞尚帕涅:他经历过低谷但从未放弃 你会愿意为他付出一切

文班称赞尚帕涅:他经历过低谷但从未放弃 你会愿意为他付出一切

北青网-北京青年报
2026-05-31 19:26:40
又一国产主帅下课?深圳新鹏城考虑换帅,41岁前国脚即将离任

又一国产主帅下课?深圳新鹏城考虑换帅,41岁前国脚即将离任

里芃芃体育
2026-05-31 08:20:35
0-1!大连英博第9分钟丢球,防高空球一言难尽,马莱莱险些造红牌

0-1!大连英博第9分钟丢球,防高空球一言难尽,马莱莱险些造红牌

汪星人哟
2026-05-31 19:51:42
任何一艘美航母上,都要带足大量女兵?她们在航母上有什么作用?

任何一艘美航母上,都要带足大量女兵?她们在航母上有什么作用?

探源历史
2026-04-06 04:10:07
大连七旬男子点燃杨絮,导致20辆新能源汽车被烧毁!

大连七旬男子点燃杨絮,导致20辆新能源汽车被烧毁!

极目新闻
2026-05-31 18:02:48
五千万啃光!马蓉从阔太沦落澳洲超市夜班,出门捂脸不敢见人

五千万啃光!马蓉从阔太沦落澳洲超市夜班,出门捂脸不敢见人

皮蛋儿电影
2026-05-14 09:59:14
认出3件算我输!第一个没几个人认得,最后一个更没人叫得出名!

认出3件算我输!第一个没几个人认得,最后一个更没人叫得出名!

三农老历
2026-05-31 12:16:00
《狂飙》高启强原型:从长沙菜场鱼贩到百亿黑老大,结局如何?

《狂飙》高启强原型:从长沙菜场鱼贩到百亿黑老大,结局如何?

南冥那只猫
2026-05-18 09:59:21
小米粥再次被关注!提醒:糖尿病患者喝小米粥时,务必重视这6点

小米粥再次被关注!提醒:糖尿病患者喝小米粥时,务必重视这6点

芹姐说生活
2026-05-25 22:56:54
辽宁养老金调整或将开始,历年调整方案,3500元能涨上120元吗?

辽宁养老金调整或将开始,历年调整方案,3500元能涨上120元吗?

叹为观止易
2026-05-31 18:20:04
央视官宣,第35艘052D“铜川”舰公开,中日“177舰”谁更强?

央视官宣,第35艘052D“铜川”舰公开,中日“177舰”谁更强?

蓝星杂谈
2026-05-31 20:01:01
三四个同事死死拽住,才没让他冲出去!药房医生当众扯下白大褂,只因一句……

三四个同事死死拽住,才没让他冲出去!药房医生当众扯下白大褂,只因一句……

医客
2026-05-30 12:14:19
2026-05-31 21:00:49
大方老师单片机
大方老师单片机
领单片机速学资料,点我头像~
259文章数 1140关注度
往期回顾 全部

科技要闻

戴尔诺基亚又回来了!AI重估老牌科技公司

头条要闻

媒体:印度多个领域面临严重问题 莫迪发出罕见的号召

头条要闻

媒体:印度多个领域面临严重问题 莫迪发出罕见的号召

体育要闻

阿森纳用最悲壮的方式,成就了巴黎王朝

娱乐要闻

朱军退休,正义虽迟但到,女方受惩

财经要闻

医学首席转岗搞科技,A股科技股遭遇巨震

汽车要闻

900V+3.2秒破百 领克10+&领克10上市16.99万元起

态度原创

时尚
健康
艺术
手机
本地

梓渝:慢下来,也很好

尝试干细胞疗法如何避免踩坑?

艺术要闻

16位欧美画家笔下的儿童肖像

手机要闻

下半年最值得期待的5款旗舰新机,配置规格均清晰,谁最值得期待

本地新闻

用剪纸的方式,打开江苏扬州

无障碍浏览 进入关怀版