吴忠躺衫网络科技有限公司

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

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

3天內(nèi)不再提示

Arduino天氣時(shí)鐘的制作教程

454398 ? 來(lái)源:工程師吳畏 ? 2019-08-01 11:13 ? 次閱讀

在本文中,我們將制作Arduino天氣時(shí)鐘,它將告訴我們時(shí)間,日期和溫度。 LM35傳感器將為我們提供溫度,DS3231將告訴我們?nèi)掌诤蜁r(shí)間,我們將使用OLED顯示溫度,日期和時(shí)間。

電路圖

首先,將OLED與Arduino連接。 OLED通過(guò)SPI和I2C通信與Arduino配合使用,但我們使用SPI通信連接它。 Arduino上的SPI引腳分別為引腳8,9,10,11和13. OLED與Arduino的連接如下:

連接CS將OLED連接到Arduino的10個(gè)。

將OLED的DC連接到Arduino的第9針。

Connect OLED的RES到Arduino的第8針。

將OLED的D1連接到Arduino的第11針。

將OLED的D0連接到Arduino的引腳13.

將OLED的VCC連接到Arduino的5V引腳。

將OLED的GND連接到Arduino的GND引腳。

然后,將DS3231模塊與Arduino連接。 DS3231模塊通過(guò)I2C通信與Arduino配合使用。 Arduino上用于I2C通信的引腳是SDA和SCL。按如下方式將DS3231模塊連接到Arduino:

將DS3231的GND連接到Arduino的GND引腳。

將DS3231的VCC連接到Arduino的5V引腳。

將OLED的SDA連接到Arduino上的A4。

將OLED上的SCL連接到Arduino上的A5引腳。

最后,將LM35傳感器與Arduino連接。將LM35的左側(cè)引腳連接到Arduino上的5V,中間引腳連接到Arduino上的A0,左側(cè)引腳連接到Arduino上。

代碼說(shuō)明

首先,我們?yōu)镈S3231模塊和OLED添加了庫(kù)。與用于OLED的其他庫(kù)相比,OLED的Adafruit庫(kù)具有更多功能。

#include#包括接下來(lái),我們定義了連接DS3231模塊和OLED的引腳。 DS3231模塊通過(guò)I2C通信與Arduino配合使用,因此我們使用了Arduino的SDA和SCL引腳。

OLED通過(guò)SPI通信與Arduino配合使用。因此,我們初始化了用于SPI通信的引腳8,9,10,11,13。之后,我們初始化了LM35傳感器引腳和其他變量。

DS3231 rtc(SDA,SCL);

#define OLED_MOSI 11

#define OLED_CLK 13

#define OLED_DC 9

#define OLED_CS 10

#define OLED_RESET 8Adafruit_SSD1306顯示(OLED_MOSI,OLED_CLK,OLED_DC,OLED_RESET,OLED_CS);

const int sensor_pin = A0;

float temp;

float output;

在設(shè)置功能中,我們將LM35傳感器引腳聲明為輸入,因?yàn)锳rduino將從傳感器獲取輸入。然后我們將命令發(fā)送到DS3231和OLED以開始與Arduino通信。

pinMode(sensor_pin,INPUT); rtc.begin(); display.begin(SSD1306_SWITCHCAPVCC); 以下行在代碼中進(jìn)行了注釋,但如果您是第一次使用DS3231模塊并且想要設(shè)置日期,日期和時(shí)間,則取消注釋這些行并進(jìn)行設(shè)置。

//rtc.setDOW(星期三);//將星期設(shè)置為星期日//rtc.setTime(19,02,0);//將時(shí)間設(shè)置為12:00:00(24小時(shí)格式)//rtc.setDate(7,12,1917);//將日期設(shè)置為2017年6月6日然后我們?cè)贠LED上打印“天氣時(shí)鐘”5秒鐘。

display.clearDisplay(); display.setTextColor(WHITE); display。 setTextSize(2); display.setCursor(0,0); display.print(“Weather”); display.setCursor(0,17); display.print(“Clock”); display.display(); delay(5000 ); 在循環(huán)函數(shù)中,我們從LM35讀取并計(jì)算溫度。然后我們得到時(shí)間和日期并打印在OLED上。

output = analogRead(sensor_pin); temp =(output * 500)/1023; display.clearDisplay(); display.setTextSize(2); display .setCursor(20,0); display.print(rtc.getTimeStr()); display.setTextSize(1); display.setCursor(0,15); display.print(rtc.getDateStr()); display.setTextSize( 1); display.setCursor(70,15); display.print(rtc.getDOWStr());

完整的Arduino代碼

#include #include DS3231 rtc(SDA,SCL); #define OLED_MOSI 11 #define OLED_CLK 13 #define OLED_DC 9 #define OLED_CS 10#define OLED_RESET 8Adafruit_SSD1306 display(OLED_MOSI,OLED_CLK,OLED_DC,OLED_RESET,OLED_CS); const int sensor_pin = A0; float temp; float output; void setup(){pinMode(sensor_pin,INPUT); rtc.begin(); display.begin(SSD1306_SWITCHCAPVCC);//rtc.setDOW(WEDNESDAY);//將星期設(shè)置為星期日//rtc.setTime(19,02,0);//將時(shí)間設(shè)置為12:00:00(24小時(shí)格式)//rtc.setDate(7,12,1917);//將日期設(shè)置為6月6日,2017display.clearDisplay(); display.setTextColor(WHITE); display.setTextSize(2); display.setCursor(0,0); display.print(“Weather”); display.setCursor (0,17); display.print(“Clock”); display.display(); delay(5000);} void loop(){output = analogRead(sensor_pin); temp =(output * 500)/1023; display .clearDisplay(); display.setTextSize(2); display.setCursor(20,0); display.print(rtc.getTimeStr()); display.setTextSize(1); display.setCursor(0,15);顯示。打印(rtc.getDateStr()); display.setTextSize(1); display.setCursor(70,15); display.print(rtc.getDOWStr()); display.setTextSize(1); display.setCursor(20,25 ); display.print(“Temp:”); display.print(temp); display.print(“C”); display.display();延遲(1000);}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6477

    瀏覽量

    187817
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    I2C總線與Arduino的接口示例

    基礎(chǔ) I2C總線由兩條線組成:數(shù)據(jù)線(SDA)和時(shí)鐘線(SCL)。SDA用于傳輸數(shù)據(jù),而SCL用于同步數(shù)據(jù)傳輸。I2C設(shè)備可以是主設(shè)備或從設(shè)備。主設(shè)備生成時(shí)鐘信號(hào)并啟動(dòng)數(shù)據(jù)傳輸,從設(shè)備響應(yīng)主設(shè)備的請(qǐng)求。 Arduino與I2C
    的頭像 發(fā)表于 01-17 15:34 ?225次閱讀

    使用小安派DSL制作天氣

    用小安派 DSL做天氣站 用戶分享DIY ? 前言 小安派-DSL(AiPi-DSL) 是安信可開源團(tuán)隊(duì)專門為Ai-M61-32S設(shè)計(jì)的一款屏幕驅(qū)動(dòng)開發(fā)板,支持2.8/3.5寸等30Pin SPI
    的頭像 發(fā)表于 01-03 11:18 ?190次閱讀
    使用小安派DSL<b class='flag-5'>制作</b><b class='flag-5'>天氣</b>站

    自己設(shè)計(jì)的Arduino UNO R3主控板原理圖+PCB源文件(可直接打樣)

    一年前做的Arduino UNO r3,開源精神,把自己這塊板子奉獻(xiàn)給大家,板子沒(méi)有什么問(wèn)題,可以直接打樣制作,原理圖文件都表明了型號(hào)。不用謝~ Arduino UNO R3主控板原理圖部分截圖: *附件:MYArduino
    發(fā)表于 12-10 10:14

    中國(guó)氣象局推出“中國(guó)天氣小助手”智能體

    近日,中國(guó)氣象局華風(fēng)氣象傳媒集團(tuán)攜手支付寶,正式推出了首個(gè)國(guó)家級(jí)天氣智能體——“中國(guó)天氣小助手”。這一創(chuàng)新服務(wù)由中國(guó)氣象局提供權(quán)威的氣象數(shù)據(jù)支持,旨在為用戶提供多元化的氣象領(lǐng)域服務(wù)。 用戶只需在
    的頭像 發(fā)表于 12-02 18:06 ?628次閱讀

    開源項(xiàng)目!基于 Arduino 的 MIDI 架子鼓

    牢固地固定在插槽中。 第 6 步:給鼓墊接線 1、固定電纜: 使用熱膠將帶狀電纜連接到墊子上。 2、焊接鼓墊: 通過(guò)焊接將鼓墊連接到多頻段帶狀電纜。 第 7 步:制作 Arduino 擴(kuò)展板 1
    發(fā)表于 11-25 12:00

    基于Arduino的串口通信項(xiàng)目

    基于Arduino的串口通信項(xiàng)目涉及多個(gè)方面,包括硬件連接、軟件編程、串口參數(shù)配置等。 一、硬件準(zhǔn)備 Arduino開發(fā)板 :確保你有一塊Arduino開發(fā)板,如Arduino Uno
    的頭像 發(fā)表于 11-22 09:24 ?856次閱讀

    做一個(gè)智能天氣鬧鐘用什么芯片合適?

    需要實(shí)時(shí)接收網(wǎng)絡(luò)API接口的天氣數(shù)據(jù)并實(shí)時(shí)展示,主要包括溫濕度,天氣預(yù)報(bào),天氣預(yù)警信息等重要的氣象信息。請(qǐng)各位大佬指點(diǎn)指點(diǎn)!!!
    發(fā)表于 08-06 15:22

    ESP8266網(wǎng)絡(luò)天氣時(shí)鐘OLED顯示

    基于ESP8266實(shí)現(xiàn)網(wǎng)絡(luò)獲取天氣時(shí)鐘并OLED顯示
    的頭像 發(fā)表于 06-28 04:46 ?1422次閱讀
    ESP8266網(wǎng)絡(luò)<b class='flag-5'>天氣</b><b class='flag-5'>時(shí)鐘</b>OLED顯示

    支持 GPS,基于 Arduino 的墨水屏時(shí)鐘(文末可下載完整文件)

    三個(gè)不同的版本,分別是「簡(jiǎn)易」版本、「低功率」版本和「Arduino Mini」版本。 「簡(jiǎn)易」版本是基于 Arduino Nano 搭建。這個(gè)版本可以減少成本、零件數(shù)量和制作的復(fù)雜性;缺點(diǎn)是需要用一個(gè)
    發(fā)表于 05-31 11:34

    微軟MSN天氣服務(wù)引入全新AI模型

    微軟在天氣預(yù)測(cè)領(lǐng)域取得了突破性的進(jìn)展,為MSN天氣服務(wù)引入了全新的AI預(yù)測(cè)模型。該模型由微軟Start團(tuán)隊(duì)精心研發(fā),并基于他們?cè)赼rXiv上發(fā)表的最新論文。這一創(chuàng)新模型結(jié)合了五種不同的人工智能模型和三種深度學(xué)習(xí)架構(gòu),形成了一個(gè)強(qiáng)大而精準(zhǔn)的
    的頭像 發(fā)表于 05-07 09:25 ?615次閱讀

    如何使用emwin制作時(shí)鐘

    請(qǐng)教下,使用emwin制作時(shí)鐘 ??
    發(fā)表于 04-29 06:21

    如何用Arduino制作一個(gè)簡(jiǎn)易自動(dòng)喂魚器

    如果你家里養(yǎng)有魚,并想找到一種自動(dòng)化喂食的方法,這個(gè)項(xiàng)目可能會(huì)對(duì)你有所啟發(fā)。 在這個(gè)教程中,作者將展示如何制作自己的基于Arduino的自動(dòng)喂魚器,讓小魚不在餓肚子。 自動(dòng)喂魚器的工作原理非常
    發(fā)表于 03-28 11:25

    如何制作自己的Arduino電容計(jì)

    在這個(gè)項(xiàng)目中,您將學(xué)習(xí)如何制作自己的Arduino電容計(jì)(測(cè)量電容器的值,范圍從pF到1000的uF)。一般來(lái)說(shuō),電子愛(ài)好者喜歡設(shè)計(jì)自己的小工具而不是購(gòu)買。在這個(gè)項(xiàng)目中,我們使用兩種電容測(cè)量方法,即
    的頭像 發(fā)表于 02-25 15:10 ?1728次閱讀
    如何<b class='flag-5'>制作</b>自己的<b class='flag-5'>Arduino</b>電容計(jì)

    如何使用Arduino制作智能垃圾箱

    在這個(gè)項(xiàng)目中,我將向您展示如何使用Arduino制作智能垃圾箱,當(dāng)您帶著垃圾接近時(shí),垃圾箱的蓋子會(huì)自動(dòng)打開。
    的頭像 發(fā)表于 02-11 12:22 ?3223次閱讀
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>制作</b>智能垃圾箱

    使用Arduino Nano制作一個(gè)4×4×4 LED立方體

    在這個(gè)項(xiàng)目中,我們將使用 Arduino Nano 制作一個(gè)很酷的 4×4×4 LED立方體。LED 立方體,也稱為 LED矩陣,可以照亮您的房間、學(xué)習(xí)空間或創(chuàng)客區(qū)域,使其看起來(lái)非常酷炫。此外,它非常容易構(gòu)建,并幫助您在電子和編碼方面發(fā)揮創(chuàng)意。
    的頭像 發(fā)表于 02-11 12:07 ?3383次閱讀
    使用<b class='flag-5'>Arduino</b> Nano<b class='flag-5'>制作</b>一個(gè)4×4×4 LED立方體
    百家乐官网佣金计算| 百家乐怎么玩请指教| 百家乐官网代理新闻| 百家乐返水1.2不限| 新2百家乐官网娱乐城| 威尼斯人娱乐城送38| 博彩百家乐官网带连线走势图| 网络棋牌频道| 百家乐规则好学吗| 百家乐官网真钱娱乐| 百家乐有试玩的吗| 富二代百家乐官网的玩法技巧和规则 | 百家乐官网任你博娱乐| 赌场回忆录| 机器百家乐作弊| 中国百家乐官网技巧| 东方夏威夷网站| 百家乐游戏机论坛| 山西百家乐官网用品| 网上尊龙国际娱乐| 百家乐在线洗码| 巴比伦百家乐官网的玩法技巧和规则 | 金冠娱乐城注册| 百家乐老是输| 百家乐官网大娱乐场开户注册| 真錢棋牌游戏| 基础百家乐的玩法技巧和规则| 神州百家乐官网的玩法技巧和规则 | 太阳城百家乐优惠| 任我赢百家乐官网软件中国有限公司| 六合彩130| 互联网百家乐的玩法技巧和规则| 百家乐官网款| 百家乐官网盛大娱乐城城| 亲朋棋牌大厅下载| 百家乐挂机软件| 娱乐城百家乐官网的玩法技巧和规则 | 老虎机遥控器多少钱| 现场百家乐百家乐| 百家乐官网任你博娱乐场| 宿迁市|