當前位置:首頁 > 物聯(lián)網(wǎng) > 可穿戴設備
[導讀] 說到可穿戴設備,我們一般首先想到的就是智能手表。買一個時尚的智能手表當然不錯,但作為一個創(chuàng)客,你也可以選擇和我一樣自己做一個!   我給這個DIY

說到可穿戴設備,我們一般首先想到的就是智能手表。買一個時尚的智能手表當然不錯,但作為一個創(chuàng)客,你也可以選擇和我一樣自己做一個!



 

我給這個DIY的智能手表起名為RetroWatch,整個項目基于Android和Arduino開發(fā)板,項目的所有軟硬件設計都是開源的。你可以在GitHub下載源碼或貢獻自己的力量。另外值得一提的是RetroWatch已經(jīng)支持u8glib了,它讓你可以選擇任何你想用的屏幕(包括OLED),而屏幕所占用的RAM也能變得更少。

第一步:系統(tǒng)結構設計

如上圖所示,RetroWatch的結構比較簡單:硬件平臺基于Arduino,上面只有一個控制按鈕。另外,我還開發(fā)了基于安卓系統(tǒng)的應用,讓手表可以通過藍牙和安卓設備進行連接,這樣我們就可以通過RetroWatch查看安卓設備上的RSS推送和系統(tǒng)通知了。

第二步:組件準備

因為我們要做的是一個智能手表,確保各個組件的小巧也是關鍵之一。

Arduino微控制器

我選擇的是最小巧的Arduino,ProMini,這是一個UnoR3的輕量級版本。上面甚至沒有USB接口芯片,所以還需要額外準備一個USB轉(zhuǎn)UART模塊。這款Arduino有兩個工作電壓不同的版本(3.3v/5v),我選擇的是3.3V的版本,因為藍牙模塊和顯示屏都支持3.3V,3.7V的LiPo電池也能正常使用。

3.3V版本的Arduino的工作頻率為8MHz,5V版本的工作頻率為16MHz,但8MHz足夠使用了。

一般ArduinoProMini的核心處理器件是ATmega328單片機,其RAM為2KB;而只配置有1KBRAM的ATmega128的Arduino版本是不夠用的。

藍牙

HC~06藍牙模塊比較常見。其中有一款帶有一個接口板,上面包含一個重置按鈕和一個LED,但體積也相對較大。鑒于接口板對本項目沒多大意義,還額外增加了成本,所以這里選擇的不帶接口板的HC~06。

顯示屏

我們需要一塊足夠小、功耗足夠低的顯示屏。我最后選擇了Adafruit的0.96英寸的128&TImes;64OLED顯示屏,支持I2C,SPI,可以很方便地和Arduino進行連接。我這里選用的是I2C和SSD1306驅(qū)動芯片。

電池

我的選擇是3.7VLiPo電池,容量為140mAh。一般使用可堅持7小時。同樣,選擇電池的尺寸很重要。

其它

除了線材等組件之外,還需要用到一顆10kΩ電阻(用于按鈕連接)。

第三步:組裝

整個系統(tǒng)的硬件結構連接圖如下所示:

藍牙連接Arduino:

VCC~3.3V

GND~GND

TX~D2

RX~D3

OLED連接Arduino:

GND~GND

VCC~VCC

SDA~A4(模擬引腳4)

SCL~A5(模擬引腳5)

如果使用的是SPI接口,則可以參考Adafruit教程按如下方式連接:

D1:MOSI~ArduinoD11(MOSI)

D2:MISO~ArduinoD12(MISO)(可選)

D0:CLK~ArduinoD13(SCK)

DC:DC(數(shù)據(jù)命令)~ArduinoD8(或其它)

CS:CS(芯片選擇)~ArduinoD10(SS)

RES:RESET~ArduinoD9(或其它)

按鈕:

連接方式如圖,注意這里要用到一個10kΩ電阻。

電池連接Arduino:

正極~RAW

負極~GND

USB轉(zhuǎn)UART模塊連接Arduino:

3.3V~VCC

TXD~RXD

RXD~TXD

GND~GND

安裝尺寸如下:

第四步:編譯Arduino代碼并上傳

已經(jīng)做好的Arduino項目可以在GitHub上下載。下載好了之后別急著編譯,還需要先配置一下開發(fā)環(huán)境。

安裝圖形驅(qū)動:

首先需要安裝圖形處理庫Adafruit_SSD1306和Adafruit-GFX-Library,這樣才能在OLED上顯示圖像。(在某些開發(fā)環(huán)境下,Adafruit庫會與Robot_xxx庫產(chǎn)生沖突;如果發(fā)生了這種情況,備份Robot_xxx庫后將其從庫文件夾中刪除。)

警告:如果你使用的是帶SH1106驅(qū)動的OLED,那就在GitHub上下載Adafruit_SH1106驅(qū)動。

另外,本項目也支持u8glib了,你可以在其官方主頁下載支持Arduino的版本。

復制位圖圖像頭文件:

將RetroWatchArduino文件夾中的bitmap.h文件復制到路徑/Arduino安裝文件夾/Arduino/hardware/libraries/RetroWatch。如果沒有這樣的路徑,可以自己創(chuàng)建。

修改源代碼:

打開ArduinoIDE并載入RetroWtchArduino.ino。如果你使用的引腳和本教程不一樣,需要對引腳定義進行修改:

SoftwareSerialBTSerial(9,8);//藍牙TX,RX連接引腳

intbuttonPin=5;//按鈕引腳

display.begin(SSD1306_SWITCHCAPVCC,0x3C);//OLEDI2C地址,使用你的地址替換Ox3D

如果你使用的是u8glib,那么就載入RetroWatchArduino_u8glib.ino文件,然后注意以下代碼:

U8GLIB_SSD1306_128X64u8g(U8G_I2C_OPT_NONE|U8G_I2C_OPT_DEV_0);//根據(jù)你選用的顯示屏進行修改

SoftwareSerialBTSerial(2,3);//藍牙TX,RX連接引腳

intbuttonPin=5;//按鈕引腳

如果你使用的是Adafruit的圖形庫,并有使用到OLED的Reset引腳,那就將OLED的Reset和Arduino的D8引腳相連,當然也可以自定義:

#defineOLED_RESET8

Adafruit_SSD1306display(OLED_RESET);

編譯和上傳:

以上步驟完成之后編譯上傳,成功之后顯示屏上面會顯示RetroWatchArduinoLogo和AdafruitLogo。Logo之后屏幕會顯示00:00,如下圖所示:

第五步:安卓軟件及其源代碼

因為Android4.3之后的版本才支持從應用讀取通知信息,所以請確保你的安卓設備安裝的是Android4.3或更新的系統(tǒng)版本。但如果你使用的是低于4.3的版本,可以使用另一個閹割版的應用:能夠通過智能手表接收通知,但無法讀取內(nèi)容。應用源代碼可以在GitHub上查看,也可以直接通過GooglePlayStore進行安裝(RetroWatch或適合低版本系統(tǒng)的RetroWatchLE)。

安卓軟件安裝之后檢查一下系統(tǒng)是否授予了其讀取通知的權限。

接下來打開手機藍牙,將安卓手機和Arduino的藍牙進行配對。然后在RetroWatch軟件中選擇連接好的Arduino,界面上顯示“Connected”即表示連接成功。

點擊菜單,選擇DatatransfertoWatch(傳輸數(shù)據(jù)到手表),然后設備會用過藍牙將時間和信息傳輸?shù)街悄苁直怼?/p>

因為手表硬件的性能有限,很多功能我們需要通過安卓應用實現(xiàn),手表本身的主要功能是顯示。在安卓應用中,你可以設置可推送消息(僅支持英文字符顯示)和狀態(tài)通知(手機電池電量和信號強度等)的類型,也可以推送應用中訂閱的RSS(可以訂閱天氣RSS,用來在手表上顯示天氣)。更新每30分鐘同步一次。

另外,應用中還提供了65個不同的顯示圖標,你可以自己定義設置。

第六步:手表功能介紹

安裝就緒之后就該探索一下我們的智能手表了。智能手表的系統(tǒng)按照以下模式工作:

啟動顯示:顯示Logo,手表啟動。

時鐘顯示:顯示與之相連的安卓手機上的時間。另外,時間的顯示還可以修改,目前提供了模擬顯示、數(shù)字顯示和混合顯示三種模式。如果你點擊一下按鈕,則手表進入緊急信息顯示模式。如果10分鐘內(nèi)沒有什么數(shù)據(jù)更新和操作,則顯示界面會切換到待機界面。

緊急信息顯示:當用戶點擊按鈕或有新的緊急信息輸入時,手表進入這一模式。用戶可以再次點擊按鈕查看下一條信息,10秒不操作,手表也會自動顯示下一條信息。信息顯示完成之后,手表切換到普通信息顯示。因為RAM只有2KB,非常小。所以該智能手表最多存儲3條緊急信息,多于3條時則自動刪除最舊的信息。

普通信息顯示:緊急信息展示完成之后手表會繼續(xù)展示普通信息,點擊按鈕或5秒不操作就顯示下一條信息。信息顯示完成之后,手表切換回時鐘顯示。普通信息最多存儲7條。

待機顯示:如果10分鐘內(nèi)沒有什么數(shù)據(jù)更新和操作,顯示界面會切換到待機界面。在這一模式下,手表界面僅顯示指示符(可在安卓應用中選擇)和hh:mm模式的時間,其功耗也降低了。在待機模式下點擊按鈕或收到新信息,手表進入時鐘顯示模式。

下面是工作過程演示視頻:

第七步:外部結構制作

你可以自己手工制作一個簡單的包裝:

也可以下載3D文件制作一個造型炫酷的手表:

當然,你完全可以選擇不戴手表,做個桌面提醒器也不錯:

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉