91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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);顯示。打?。╮tc.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)注

    190

    文章

    6526

    瀏覽量

    196885
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Arduino plc和termux esp

    Arduino plc和termux esp
    的頭像 發(fā)表于 12-06 06:41 ?1847次閱讀

    停車的時(shí)長(zhǎng)準(zhǔn)不準(zhǔn)?鐵路時(shí)鐘系統(tǒng)、鐵路時(shí)鐘、鐵路授時(shí)

    時(shí)鐘系統(tǒng)
    西安同步電子科技有限公司
    發(fā)布于 :2025年11月12日 17:41:04

    鐵路時(shí)鐘系統(tǒng)介紹、時(shí)鐘系統(tǒng)、授時(shí)服務(wù)器

    時(shí)鐘系統(tǒng)
    西安同步電子科技有限公司
    發(fā)布于 :2025年11月12日 17:39:23

    指針式時(shí)鐘 單面網(wǎng)絡(luò)子鐘

    時(shí)鐘
    jf_47371611
    發(fā)布于 :2025年09月12日 13:38:52

    【RA4E2開發(fā)板評(píng)測(cè)】——7.使用AT指令獲取城市天氣預(yù)報(bào)

    使用ESP8266連接RA4E2開發(fā)板后,可以通過(guò)ESP8266連接WIFI網(wǎng)絡(luò),然后通過(guò)AT指令訪問(wèn)api.seniverse.com心知天氣網(wǎng)站獲取城市天氣預(yù)報(bào)。 板子連接如下圖所示: 硬件
    發(fā)表于 09-03 13:10

    ??FourCastNet 3實(shí)現(xiàn)快速精準(zhǔn)的大型集合天氣預(yù)報(bào)

    FourCastNet 3(FCN3)是 NVIDIA Earth-2 中最新的 AI 全球天氣預(yù)報(bào)系統(tǒng)。FCN3 首次完美地結(jié)合了概率預(yù)測(cè)能力、計(jì)算效率、頻譜保真度、集合校準(zhǔn)和次季節(jié)
    的頭像 發(fā)表于 08-30 15:49 ?2247次閱讀

    雷曼光電戶外LED顯示屏如何應(yīng)對(duì)異常天氣

    近期,全國(guó)多地出現(xiàn)區(qū)域性異常天氣,川陜渝地區(qū)持續(xù)性高溫,重慶連續(xù)五天出現(xiàn)超40℃高溫,“桑拿天”、“燒烤天”強(qiáng)勢(shì)侵襲;與此同時(shí),華北華南地區(qū)遭遇集中暴雨,部分區(qū)域伴隨短時(shí)強(qiáng)風(fēng)天氣。這類異常氣候?qū)敉?/div>
    的頭像 發(fā)表于 08-18 13:56 ?1184次閱讀

    利用NVIDIA Earth-2平臺(tái)預(yù)測(cè)天氣

    隨著極端天氣事件愈發(fā)頻繁,破壞性也越來(lái)越強(qiáng),能夠?qū)ζ溥M(jìn)行預(yù)測(cè)變得至關(guān)重要。對(duì)于那些對(duì)天氣波動(dòng)非常敏感的行業(yè)來(lái)說(shuō),次季節(jié)氣候預(yù)測(cè)(即預(yù)測(cè)兩周或更長(zhǎng)時(shí)間之后的天氣),為主動(dòng)決策和風(fēng)險(xiǎn)管理奠定了基礎(chǔ)。
    的頭像 發(fā)表于 08-12 15:08 ?1252次閱讀

    如何用Arduino Nano/UNO R3開發(fā)板給另一個(gè)Arduino IDE不能下載的Arduino Nano/UNO R3開發(fā)板重新燒錄引導(dǎo)程序bootlaoder

    本文介紹了如何用能夠Arduino IDE下載的Arduino Nano/UNO R3開發(fā)板給另一個(gè)Arduino IDE不能下載的Arduino Nano/UNO R3開發(fā)板重新燒錄
    的頭像 發(fā)表于 08-08 20:16 ?3558次閱讀
    如何用<b class='flag-5'>Arduino</b> Nano/UNO R3開發(fā)板給另一個(gè)<b class='flag-5'>Arduino</b> IDE不能下載的<b class='flag-5'>Arduino</b> Nano/UNO R3開發(fā)板重新燒錄引導(dǎo)程序bootlaoder

    【匯思博SEEK100開發(fā)板試用體驗(yàn)】05 天氣app開發(fā)--支持24小時(shí)+7天天氣預(yù)報(bào)

    1 前言 這次接著開發(fā)天氣APP,上次已經(jīng)實(shí)現(xiàn)了從和風(fēng)天氣獲取實(shí)時(shí)、24h以及7天的天氣數(shù)據(jù)了,但只是將實(shí)時(shí)數(shù)據(jù)顯示出來(lái)。這次要完成24h和7天的數(shù)據(jù)顯示,用到List和Scroll容器。 2
    發(fā)表于 07-08 20:23

    免費(fèi)分享Arduino入門+進(jìn)階(全套例程+書籍)

    Arduino是一款開源電子原型平臺(tái),由硬件(單片機(jī)開發(fā)板)和軟件(編程環(huán)境)組成,旨在讓非專業(yè)用戶也能輕松入門電子制作和編程。它的核心思想是簡(jiǎn)化硬件開發(fā),通過(guò)直觀的編程和模塊化設(shè)計(jì),讓用戶快速實(shí)現(xiàn)
    的頭像 發(fā)表于 05-22 11:40 ?1107次閱讀
    免費(fèi)分享<b class='flag-5'>Arduino</b>入門+進(jìn)階(全套例程+書籍)

    《ESP32S3 Arduino開發(fā)指南》第二章 Arduino基礎(chǔ)知識(shí)

    完成一個(gè)電子產(chǎn)品的制作。這就給開源硬件的推廣和普及設(shè)定了一個(gè)很高的門檻,電子愛好者需要花很多時(shí)間和精力才能開始開發(fā)和制作自己的作品。而使用Arduino能很快地完成一個(gè)電子產(chǎn)品的制作,
    發(fā)表于 05-13 09:28

    智慧路燈如何應(yīng)對(duì)惡劣天氣

    ,面對(duì)暴雨、大風(fēng)、暴雪等惡劣天氣,叁仟智慧路燈的穩(wěn)定運(yùn)行面臨著嚴(yán)峻考驗(yàn)。一旦叁仟智慧路燈在惡劣天氣下出現(xiàn)故障,不僅會(huì)影響城市的照明系統(tǒng),還可能導(dǎo)致交通混亂、信息傳遞受阻,給城市的正常運(yùn)轉(zhuǎn)和居民的生活帶來(lái)諸多不便。
    的頭像 發(fā)表于 04-01 18:27 ?620次閱讀

    智慧路燈如何應(yīng)對(duì)極端天氣?

    引言 在氣候變化的大背景下,極端天氣愈發(fā)頻繁,如狂風(fēng)暴雨、高溫酷暑、暴雪嚴(yán)寒等。這些極端天氣對(duì)城市基礎(chǔ)設(shè)施構(gòu)成嚴(yán)峻挑戰(zhàn),叁仟智慧路燈作為智慧城市建設(shè)的關(guān)鍵一環(huán)也不例外。叁仟智慧路燈不僅要在正常環(huán)境下
    的頭像 發(fā)表于 03-19 17:20 ?705次閱讀

    NVIDIA Earth-2平臺(tái)實(shí)現(xiàn)超分辨率天氣預(yù)測(cè)

    相比傳統(tǒng)的高分辨率天氣預(yù)測(cè),Earth-2 的 CorrDiff 模型在能效上提升了 10000 倍,實(shí)現(xiàn)了 AI 驅(qū)動(dòng)的公里尺度精準(zhǔn)天氣預(yù)報(bào),從而有助于提升災(zāi)害應(yīng)對(duì)能力和拯救生命。
    的頭像 發(fā)表于 03-06 10:06 ?890次閱讀