那曲檬骨新材料有限公司

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>DIY RTC模塊開(kāi)源

DIY RTC模塊開(kāi)源

2022-07-04 | zip | 0.03 MB | 次下載 | 2積分

資料介紹

PCB圖如下:
poYBAGKy_TyABbPTAABsRyLRh6I965.png
pYYBAGKy_T6AFMdlAAA1BbSwsMg089.png

成分

DS3231S#
Analog Devices Inc./Maxim Integrated
× 1
1N4007B-G
康芯科技
× 1
C503B-RBS-CW0Z0AA2
科銳LED
× 1
106CKR063M
伊利諾伊電容器
× 1
CR2302 電池
麥克塞爾
× 1

描述

DIY RTC 模塊

?

?

?

DS3231 RTC芯片

?

該模塊的核心是 Maxim 的低成本、極其精確的 RTC 芯片 – DS3231。它管理所有計(jì)時(shí)功能,并具有一個(gè)簡(jiǎn)單的兩線 I2C 接口,可輕松與您選擇的任何微控制器連接。

?

pYYBAGKy_UqASrsgAABKeC-Lnmw229.jpg

?

該芯片維護(hù)秒、分、小時(shí)、星期、日期、月份和年份信息對(duì)于少于 31 天的月份,月末的日期會(huì)自動(dòng)調(diào)整,包括閏年的更正(直到 2100 年有效)。

時(shí)鐘以 24 小時(shí)制或 12 小時(shí)制運(yùn)行,帶有 AM/PM 指示器。它還提供兩個(gè)可編程的時(shí)間警報(bào)。

該板的另一個(gè)很酷的功能是 SQW 引腳,它可以輸出 1Hz、4kHz、8kHz 或 32kHz 的漂亮方波,并且可以通過(guò)編程方式進(jìn)行處理。在許多基于時(shí)間的應(yīng)用程序中,這可以進(jìn)一步用作由于警報(bào)條件而產(chǎn)生的中斷。

溫度補(bǔ)償晶體振蕩器(TCXO)

大多數(shù) RTC 模塊都帶有一個(gè)用于計(jì)時(shí)的外部 32kHz 晶體。但是這些晶體的問(wèn)題是外部溫度會(huì)影響它們的振蕩頻率。這種頻率變化可以忽略不計(jì),但肯定會(huì)增加。

為避免晶體出現(xiàn)如此輕微的漂移,DS3231 由一個(gè) 32kHz 溫度補(bǔ)償晶體振蕩器 (TCXO) 驅(qū)動(dòng)。它對(duì)外部溫度變化具有很強(qiáng)的免疫力。

?

?

?

pYYBAGKy_U2AW3MxAAAw0oLPz6c285.png

?

TCXO 封裝在 RTC 芯片內(nèi)部,使整個(gè)封裝體積龐大。緊挨著集成晶體的是一個(gè)溫度傳感器

傳感器通過(guò)添加或刪除時(shí)鐘節(jié)拍來(lái)補(bǔ)償頻率變化,從而使計(jì)時(shí)保持在正軌上。

這就是 TCXO 提供穩(wěn)定且準(zhǔn)確的參考時(shí)鐘并將 RTC 保持在每年 ±2 分鐘以內(nèi)的原因。

?

將 DS3231 RTC 模塊連接到 Arduino UNO

讓我們將 RTC 連接到 Arduino。

連接相當(dāng)簡(jiǎn)單。首先將 VCC 引腳連接到 Arduino 上的 5V 輸出,然后將 GND 接地。

現(xiàn)在我們剩下用于 I2C 通信的引腳。請(qǐng)注意,每個(gè) Arduino 板都有不同的 I2C 引腳,應(yīng)相應(yīng)地連接。在具有 R3 布局的 Arduino 板上,SDA(數(shù)據(jù)線)和 SCL(時(shí)鐘線)位于靠近 AREF 引腳的引腳接頭上。它們也被稱為 A5 (SCL) 和 A4 (SDA)。

如果您有 Mega,則針腳不同!您需要使用數(shù)字 21 (SCL) 和 20 (SDA)。請(qǐng)參閱下表以快速了解。

?

代碼說(shuō)明:

?

草圖首先包含用于與模塊通信的wire.h 和RTClib.h 庫(kù)。然后我們創(chuàng)建一個(gè) RTClib 庫(kù)對(duì)象并定義 daysOfTheWeek 二維字符數(shù)組來(lái)存儲(chǔ)天數(shù)信息。

?

在代碼的設(shè)置和循環(huán)部分,我們使用以下函數(shù)與 RTC 模塊進(jìn)行交互。

begin() 函數(shù)確保 RTC 模塊已連接。

?

lostPower() 函數(shù)讀取 DS3231 的內(nèi)部 I2C 寄存器以檢查芯片是否丟失了時(shí)間跟蹤。如果函數(shù)返回 true,我們就可以設(shè)置日期和時(shí)間。

?

adjust() 函數(shù)設(shè)置日期和時(shí)間。這是一個(gè)過(guò)載功能。

?

一種重載方法 DateTime(F(__DATE__), F(__TIME__)) 設(shè)置草圖編譯的日期和時(shí)間。

第二個(gè)重載方法 DateTime(YYYY, M, D, H, M, s) 使用明確的日期和時(shí)間設(shè)置 RTC。例如,要將 2017 年 1 月 27 日的 12:56 設(shè)置為: rtc.adjust(DateTime(2017, 1, 27, 12, 56, 0));

?

now() 函數(shù)返回當(dāng)前日期和時(shí)間。它的返回值通常存儲(chǔ)在數(shù)據(jù)類(lèi)型 DateTime 的變量中。

year() 函數(shù)返回當(dāng)前年份。

month() 函數(shù)返回當(dāng)前月份。

day() 函數(shù)返回當(dāng)前日期。

dayOfTheWeek() 函數(shù)返回當(dāng)前星期幾。此函數(shù)通常用作 2D 字符數(shù)組的索引,該數(shù)組存儲(chǔ)天數(shù)信息,如上述程序 daysOfTheWeek 中定義的

hour() 函數(shù)返回當(dāng)前小時(shí)。

minute() 函數(shù)返回當(dāng)前分鐘。

second() 函數(shù)返回當(dāng)前秒數(shù)。

?

unixtime() 函數(shù)以秒為單位返回 unix 時(shí)間。Unix 時(shí)間是用于描述時(shí)間點(diǎn)的系統(tǒng)。它是自 00:00:00(稱為協(xié)調(diào)世界時(shí) - 1970 年 1 月 1 日星期四)以來(lái)經(jīng)過(guò)的秒數(shù)。

?

TimeSpan() 函數(shù)用于從當(dāng)前時(shí)間添加/減去時(shí)間。您可以添加/減去天、小時(shí)、分鐘和秒。它也是一個(gè)重載函數(shù)。

?

now() + TimeSpan(seconds) 返回當(dāng)前時(shí)間加上秒數(shù)的未來(lái)時(shí)間。

now() - TimeSpan(days,hours, minutes, seconds) 返回過(guò)去的時(shí)間。

?

Arduino 代碼 – 在 24C32 EEPROM 中讀/寫(xiě)

使用 DS3231 RTC 模塊,您可以獲得 32 字節(jié)的電可擦除 ROM。即使設(shè)備的主電源中斷,其內(nèi)容也不會(huì)被刪除。

?

以下程序從 24C32 EEPROM 寫(xiě)入然后讀取消息。您可以使用此程序來(lái)保存設(shè)置或密碼或其他任何東西。

?

#include

?

無(wú)效設(shè)置()

{

char somedata[] = "lastminuteengineers.com"; //要寫(xiě)入的數(shù)據(jù)

Wire.begin(); //初始化連接

序列號(hào).開(kāi)始(9600);

Serial.println("正在寫(xiě)入內(nèi)存...");

?

// 寫(xiě)入 EEPROM

i2c_eeprom_write_page(0x57, 0, (byte *)somedata, sizeof(somedata));

?

延遲(100);//添加一個(gè)小延遲

Serial.println("內(nèi)存寫(xiě)入");

}

?

無(wú)效循環(huán)()

{

Serial.print("讀取內(nèi)存:");

int地址=0;//第一個(gè)地址

?

// 訪問(wèn)內(nèi)存中的第一個(gè)地址

字節(jié) b = i2c_eeprom_read_byte(0x57, 0);

?

而 (b!=0)

{

Serial.print((char)b); //打印內(nèi)容到串口

地址++; //增加地址

b = i2c_eeprom_read_byte(0x57, addr); //從內(nèi)存中訪問(wèn)一個(gè)地址

}

序列號(hào).println(" ");

延遲(2000);

}

?

void i2c_eeprom_write_byte(int deviceaddress, unsigned int eeaddress, byte data) {

int rdata = 數(shù)據(jù);

Wire.beginTransmission(設(shè)備地址);

Wire.write((int)(eeaddress >> 8)); // 最高位

Wire.write((int)(eeaddress & 0xFF)); // LSB

Wire.write(rdata);

Wire.endTransmission();

}

?

// 警告:address 是頁(yè)地址,6 位結(jié)束會(huì)回繞

// 另外,數(shù)據(jù)最大可以是 30 字節(jié)左右,因?yàn)?Wire 庫(kù)有一個(gè) 32 字節(jié)的緩沖區(qū)

void i2c_eeprom_write_page(int deviceaddress, unsigned int eeaddresspage, byte* data, byte length) {

Wire.beginTransmission(設(shè)備地址);

Wire.write((int)(eeaddresspage >> 8)); // 最高位

Wire.write((int)(eeaddresspage & 0xFF)); // LSB

字節(jié) c;

對(duì)于 ( c = 0; c < 長(zhǎng)度; c++)

Wire.write(data[c]);

Wire.endTransmission();

}

?

byte i2c_eeprom_read_byte(int deviceaddress, unsigned int eeaddress) {

字節(jié) rdata = 0xFF;

Wire.beginTransmission(設(shè)備地址);

Wire.write((int)(eeaddress >> 8)); // 最高位

Wire.write((int)(eeaddress & 0xFF)); // LSB

Wire.endTransmission();

Wire.requestFrom(deviceaddress,1);

if (Wire.available()) rdata = Wire.read();

返回rdata;

}

?

// 也許我們一次不能讀取超過(guò) 30 或 32 個(gè)字節(jié)!

void i2c_eeprom_read_buffer(int deviceaddress, unsigned int eeaddress, byte *buffer, int length) {

Wire.beginTransmission(設(shè)備地址);

Wire.write((int)(eeaddress >> 8)); // 最高位

Wire.write((int)(eeaddress & 0xFF)); // LSB

Wire.endTransmission();

Wire.requestFrom(設(shè)備地址,長(zhǎng)度);

詮釋 c = 0;

對(duì)于 ( c = 0; c < 長(zhǎng)度; c++ )

if (Wire.available()) 緩沖區(qū)[c] = Wire.read();

}

?

特征:

?

兩個(gè)時(shí)間警報(bào)。

數(shù)字溫度傳感器輸出。

注冊(cè)老化修剪。

DS 3231 RTC 與 2032 電池座。

高度準(zhǔn)確的 RTC 完全管理所有計(jì)時(shí)功能。

實(shí)時(shí)時(shí)鐘計(jì)數(shù)秒、分、小時(shí)、月日期、月、星期幾和年,閏年補(bǔ)償有效至 2100。

使用 PCB 上的 SMD 跳線(A0、A1、A2)為 AT24C32 配置 I2C 設(shè)備地址。

可編程方波輸出信號(hào)

用于連續(xù)計(jì)時(shí)的備用電池輸入。

低功耗操作可延長(zhǎng)電池備用運(yùn)行時(shí)間。

?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)
大发888游戏充值| 大发888娱乐城 qq服务| 缅甸百家乐网站| 百利宫百家乐官网现金网| 大发888手机版客户端| 百家乐园百利宫娱乐城信誉好...| 百家乐官网辅助器| 百家乐官网投注规则| bet365体育在线投注 jxhymp| 缅甸百家乐的玩法技巧和规则| 百家乐哪家有优惠| 百家乐官网强对弱的对打法| 百家乐官网技巧在那里| 网络龙虎| 海王星百家乐技巧| 百家乐对子计算方法| 华泰百家乐官网的玩法技巧和规则| 百家乐官网太阳城小郭| 盈乐博娱乐城| 大发888出纳柜台 在线| 百家乐娱乐人物| 百家乐官网娱乐网代理佣金| 百家乐官网方法技巧| 莱芜市| 现金娱乐城| 百家乐游戏筹码| 网上的百家乐是假的吗| 百家乐网上投注系统| 百家乐破解视频| 正品百家乐官网的玩法技巧和规则| 尊龙百家乐官网娱乐平台| 注册百家乐官网送彩金 | 百家乐官网游戏技巧| 百家乐官网闲单开多少| 达孜县| 888娱乐城| 立即博娱乐城| bet365.com| 波克城市棋牌下载| 澳门百家乐官网注册| 女神百家乐官网的玩法技巧和规则|