電子發(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 ESP32智能手表

Diy ESP32智能手表

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

資料介紹

PCB圖如下:
pYYBAGKy_LyAZxu8AACc0rMn7zE026.png
poYBAGKy_L6ADy4cAABimjmVVp8653.png

成分

ESP32-S2-WROVER-N4R2
樂(lè)鑫系統(tǒng)
× 1
3.3V 5V 串口適配器模塊 CH340G USB TTL UART Arduino Pro Mini Bridge × 1
TL6700AF160QG
電子開(kāi)關(guān)
× 3
TL6700AF160QG
電子開(kāi)關(guān)
× 2
CLM3C-MKW-CWaXb233
科銳LED
× 2
AMS1117-5 × 1
BC547BTA
× 1
106SML035MD4
CDE/伊利諾伊電容器
× 3
USB4500-03-0-A
GCT
× 1
I2C IIC 串行 128x64 OLED 顯示模塊 × 1

描述

Diy ESP32 智能手表

ESP32?是一系列低成本、低功耗的片上系統(tǒng)微控制器,集成了 Wi-Fi 和雙模藍(lán)牙。ESP32 系列采用雙核和單核版本的 Tensilica Xtensa LX6 微處理器、Xtensa LX7 雙核微處理器或單核 RISC-V 微處理器,并包括內(nèi)置天線開(kāi)關(guān)、RF balun、功率放大器、低噪聲接收放大器濾波器電源管理模塊。ESP32 由總部位于上海的中國(guó)公司 Espressif Systems 創(chuàng)建和開(kāi)發(fā),并由臺(tái)積電使用其 40 納米工藝制造。它是 ESP8266 微控制器的繼任者。

規(guī)格

當(dāng)談到 ESP32 芯片規(guī)格時(shí),您會(huì)發(fā)現(xiàn):

ESP32 是雙核的,這意味著它有 2 個(gè)處理器。

它內(nèi)置了Wi-Fi和藍(lán)牙。

它運(yùn)行 32 位程序。

時(shí)鐘頻率可以高達(dá) 240MHz,它有一個(gè) 512kB 的 RAM。

這個(gè)特定的板有 30 或 36 個(gè)引腳,每行 15 個(gè)。

它還提供多種外圍設(shè)備,例如:電容式觸控、ADCDAC、UART、SPI、I2C 等等。

它帶有內(nèi)置霍爾效應(yīng)傳感器和內(nèi)置溫度傳感器。

ESP32 引腳指南

與 ESP826 相比,ESP32 具有更多功能更豐富的 GPIO。

使用 ESP32,您可以決定哪些引腳是 UART、I2C 或 SPI——您只需在代碼上進(jìn)行設(shè)置。這是可能的,因?yàn)?ESP32 芯片的多路復(fù)用功能允許將多個(gè)功能分配給同一引腳。如果您沒(méi)有在代碼上設(shè)置它們,則默認(rèn)使用引腳 - 如下圖所示(引腳位置可能因制造商而異)。

帶有 30 個(gè) GPIO 的版本

poYBAGKy_NiAdIfnAACWGJoBpFs799.png

OLED顯示模塊概述

OLED 顯示模塊突破了小型單色 OLED 顯示屏。它寬 128 像素,高 64 像素,寬 0.96 英寸。它是微型的,但它仍然具有沖擊力 - OLED 顯示屏由于高對(duì)比度而非常易讀,并且您可以在其中放置大量的圖形。

由于顯示器自己發(fā)光,因此不需要背光。這顯著降低了運(yùn)行 OLED 所需的功率,這就是為什么顯示器具有如此高的對(duì)比度、極寬的視角并且可以顯示深黑色級(jí)別的原因。

pYYBAGKy_NqAc-zRAAArm69Q1qc307.jpg

該模塊的核心是一個(gè)強(qiáng)大的單芯片 CMOS OLED 驅(qū)動(dòng)控制器 - SSD1306,它處理所有 RAM 緩沖,因此您的 ESP32 只需要做很少的工作。SSD1306 控制器的工作電壓范圍為 1.65V 至 3.3V – 非常適合與 ESP32 等 3.3V 微控制器連接。

OLED 內(nèi)存映射

要完全控制您的 OLED 顯示模塊,了解其內(nèi)存映射非常重要。

無(wú)論 OLED 模塊的大小如何,SSD1306 驅(qū)動(dòng)程序都有一個(gè)內(nèi)置的 1KB 圖形顯示數(shù)據(jù) RAM (GDDRAM),用于保存要顯示的位模式的屏幕。這 1K 的內(nèi)存區(qū)域被組織成 8 頁(yè)(從 0 到 7)。每頁(yè)包含 128 列/段(塊 0 到 127)。并且每列可以存儲(chǔ) 8 位數(shù)據(jù)(從 0 到 7)。這肯定告訴我們我們有

8 頁(yè) x 128 段 x 8 位數(shù)據(jù) = 8192 位 = 1024 字節(jié) = 1KB 內(nèi)存

下面突出顯示了包含頁(yè)面、段和數(shù)據(jù)的整個(gè) 1K 內(nèi)存。

poYBAGKy_NyAas--AABaJ7vbBiA441.png

每個(gè)位代表屏幕上的特定 OLED 像素,可以通過(guò)編程方式打開(kāi)或關(guān)閉。

128×64 OLED 屏幕顯示 RAM 的所有內(nèi)容,而 128×32 OLED 屏幕僅顯示 RAM 的 4 頁(yè)(一半內(nèi)容)。

將 OLED 顯示模塊連接到 ESP32

理論說(shuō)完了,讓我們開(kāi)始實(shí)踐吧!讓我們將顯示器連接到 ESP32。

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

接下來(lái),將 SCL 引腳連接到 ESP32 上的 I2C 時(shí)鐘 D22 引腳,并將 SDA 引腳連接到 ESP32 上的 I2C 數(shù)據(jù) D21 引腳。請(qǐng)參閱 ESP32 引腳分配。

下圖向您展示了如何連接所有東西。

poYBAGKy_N6AUTv4AAB7BNq_feY930.png

帶ESP32的 OLED 顯示模塊的接線連接

有了它,您現(xiàn)在就可以上傳一些代碼并進(jìn)行顯示打印了。

安裝 OLED 顯示模塊庫(kù)

OLED 顯示器的 SSD1306 控制器具有靈活而復(fù)雜的驅(qū)動(dòng)程序。為了使用 SSD1306 控制器,需要大量的內(nèi)存尋址知識(shí)。幸運(yùn)的是,Adafruit 的 SSD1306 庫(kù)是為了隱藏 SSD1306 控制器的復(fù)雜性而編寫(xiě)的,這樣我們就可以發(fā)出簡(jiǎn)單的命令來(lái)控制顯示器。

要安裝庫(kù),請(qǐng)導(dǎo)航到 Sketch > Include Library > Manage Libraries... 等待庫(kù)管理器下載庫(kù)索引并更新已安裝庫(kù)的列表。

pYYBAGKy_OCAB5CeAAAyX70YHHE754.png

通過(guò)輸入“adafruit ssd1306”過(guò)濾您的搜索。應(yīng)該有幾個(gè)條目。尋找 Adafruit 的 Adafruit SSD1306。單擊該條目,然后選擇安裝。

poYBAGKy_P2AElueAAAz9hYiPTs094.png

這個(gè) Adafruit SSD1306 庫(kù)是一個(gè)特定于硬件的庫(kù),它處理較低級(jí)別的函數(shù)。它需要與 Adafruit GFX 庫(kù)配對(duì)以顯示點(diǎn)、線、圓、矩形等圖形基元。也安裝此庫(kù)。

poYBAGKy_P-AZOMdAAAztnJ6Nxc917.png

筆記

該庫(kù)從 ESP32 分配 1KB(128×64)/8 位)的內(nèi)存作為緩沖區(qū)。因此,它可以操作屏幕緩沖區(qū),然后執(zhí)行從 ESP32 內(nèi)存到 SSD1306 控制器內(nèi)部存儲(chǔ)器的批量傳輸。

修改 Adafruit SSD1306 庫(kù)

Adafruit 的 SSD1306 庫(kù)不是為 128×64 OLED 顯示器(我們現(xiàn)在使用的顯示器)設(shè)置的。必須在 Adafruit_SSD1306.h 頭文件中更改顯示大小以使其適合我們。如果沒(méi)有改變,錯(cuò)誤消息說(shuō)#error(“高度不正確,請(qǐng)修復(fù)Adafruit_SSD1306.h!”);嘗試在 Arduino IDE 中驗(yàn)證示例草圖時(shí)可能會(huì)出現(xiàn):

pYYBAGKy_QKAEsjUAAAUwZXyPUk903.png

要更改 Adafruit_SSD1306.h 頭文件,請(qǐng)打開(kāi)您的速寫(xiě)本位置。通常是我的文檔 > Arduino?,F(xiàn)在去圖書(shū)館> Adafruit_SSD1306

pYYBAGKy_QSAaZtoAABM6r0JyWc666.png

在文本編輯器中打開(kāi) Adafruit_SSD1306.h 文件。向下滾動(dòng)文件以找到帶有 SSD1306 顯示器的部分或直接轉(zhuǎn)到第 1 行。73. 注釋掉#define SSD1306_128_32 并取消注釋#define SSD1306_128_64 使本節(jié)中的代碼如下所示:

pYYBAGKy_QaAB-M8AABGY3YiQP4427.png

而已?,F(xiàn)在保存文件并重新啟動(dòng)您的 Arduino IDE。

ESP32 代碼 – 顯示文本

現(xiàn)在有趣的東西來(lái)了!

以下測(cè)試草圖將打印“Hello World!” 顯示屏上的消息。它還包括

顯示反轉(zhuǎn)文本

顯示數(shù)字

顯示帶基數(shù)的數(shù)字(十六進(jìn)制,十二月)

顯示 ASCII 符號(hào)

水平和垂直滾動(dòng)文本

滾動(dòng)顯示部分

這將使您全面了解如何使用 OLED 顯示器,并可作為更多實(shí)際實(shí)驗(yàn)和項(xiàng)目的基礎(chǔ)。

概念

一個(gè)簡(jiǎn)單的 MicroPython 腳本,用于將帶有 oled 的 ESP32 變成智能手表。

poYBAGKy_QmAWLhzAAFqDFM7ikQ471.png

目前它可以連接到互聯(lián)網(wǎng),獲取天氣和時(shí)間。接下來(lái),我將使用來(lái)自 Google 的 OAuth2ForDevices 和一個(gè)將未讀郵件保存到 Google Drive 的腳本來(lái)添加對(duì) Gmail 的訪問(wèn)。

設(shè)置

在您的板上安裝 MicroPython。

在 consts_exemple.py 文件中,將以下值替換為您的值

NTW_LIST、WEATHER_API_KEY、GOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET

將 consts_exemple.py 重命名為 consts.py。

上傳 ESP32 根目錄下的 Libs 和 Sources 文件夾中的 consts.py 和 python 文件。您可以使用 Ampy 程序或提供的 upload.sh 腳本來(lái)執(zhí)行此操作。您可以編輯 .ampy 文件以更改默認(rèn)配置。

運(yùn)行main.py,就可以使用Ampy了。對(duì)于測(cè)試就像使用 Esplorer。

工作板

大一號(hào)

https://www.banggood.com/Geekcreit-ESP32-OLED-Module-For-Arduino-ESP32-OLED-WiFi-bluetooth-Dual-ESP-32-ESP-32S-ESP8266-p-1148119.html

小一號(hào)

https://eu.banggood.com/LILYGO-TTGO-16M-bytes-128M-Bit-Pro-ESP32-OLED-V2_0-Display-WiFi-bluetooth-ESP-32-Module-For-Arduino-p-1205876。 html

oled 未連接到標(biāo)準(zhǔn) I2C 引腳,其 SDA 引腳為 4,SCL 引腳為 15。您可以通過(guò)將 Wire.begin(4, 15) 添加到設(shè)置代碼來(lái)進(jìn)行設(shè)置。顯示器的 I2C 地址為 0x3C。您還需要使用 OLED_RST 引腳來(lái)啟用顯示: pinMode(16,OUTPUT); 數(shù)字寫(xiě)入(16,低);延遲(50);數(shù)字寫(xiě)入(16,高);應(yīng)用這些設(shè)置后,I2CScan 可以找到顯示和大多數(shù) SSD1306 Arduino 庫(kù)工作(例如,Adafruit SSD1306 在將 Wire.begin() 更改為 Wire.begin(4, 15) 并設(shè)置復(fù)位引腳和 I2C 地址后工作)。

尺寸:25.5mm 高 50mm 寬 5.75mm 厚

具有潛力的未經(jīng)測(cè)試的電路板

最小的

https://www.banggood.com/X-8266-ESP-WROOM-02-ESP32-Rev1-WiFi-bluetooth-Module-OLED-IOT-Electronics-Starter-Kit-p-1272172.html?rmmds=search&ID= 511646&cur_warehouse=CN

有可用的編程板,您可以將這些 SOC 之一插入其中。不同類(lèi)型的 ESP SOC 有不同的板。您可以在受歡迎的中國(guó)供應(yīng)商處找到它們,也可能在其他地方找到它們。

它們看起來(lái)像這樣:

pYYBAGKy_QuAH1GmAAC6u7uyOAs975.jpg

ESP32 是一款采用 TSMC 超低功耗 40 納米技術(shù)設(shè)計(jì)的單 GHz Wi-Fi 和藍(lán)牙組合芯片。它針對(duì)最佳功率性能、RF 性能、穩(wěn)健性、多功能性、特性和可靠性進(jìn)行設(shè)計(jì)和優(yōu)化,適用于各種應(yīng)用和不同的功率配置文件。

ESP32 是業(yè)界集成 Wi-Fi + 藍(lán)牙應(yīng)用最多的解決方案,外部組件少于 10 個(gè)。ESP32 集成了天線開(kāi)關(guān)、RF balun、功率放大器、低噪聲接收放大器、濾波器和電源管理模塊。因此,整個(gè)最小印刷電路板 (PCB) 面積的解決方案。

ESP32 專(zhuān)為移動(dòng)、可穿戴電子產(chǎn)品物聯(lián)網(wǎng) (IoT) 應(yīng)用而設(shè)計(jì)。它具有最先進(jìn)的低功耗芯片的許多特性,包括高分辨率時(shí)鐘門(mén)控、功耗模式和動(dòng)態(tài)功耗縮放。

所需組件

ESP-32 / ESP-32S

USB TTL / UART

引領(lǐng)

觸覺(jué)開(kāi)關(guān)按鈕

電阻器(220 歐姆,10k)

跳線

少焊面包板

雙A 1.5v電池+(電池盒)

接線指南

下載

下載 Arduino IDE

下載 https://git-scm.com/download/win

下載 ESP 32S 藍(lán)牙用戶(hù)指南?

下載 ESP 32S 數(shù)據(jù)表

使用 PlatformIO 進(jìn)一步學(xué)習(xí) | 作為 ESP-IDF 組件使用

沃森物聯(lián)網(wǎng)平臺(tái) | NodeMCU 固件

代碼

Esp32 代碼

smart_watch.ino

下載(4)

?

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

評(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)