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

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

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

跑鞋里程表的制作

454398 ? 來源:wv ? 2019-08-28 11:41 ? 次閱讀

第1步:材料

對于這個項(xiàng)目,我使用了以下組件:

- Arduino Nano

- 4針OLED LCD屏幕(背光)

- 10K歐姆電阻

- 4針按鈕

- 電線

- 3D打印機(jī)

步驟2:設(shè)置OLED屏幕

跑鞋里程表的制作

我首先確保屏幕工作并且可以通過Arduino很好地控制 - 我開始使用常規(guī)尺寸模型并最終縮小使用Arduino Nano,希望設(shè)計更加緊湊。

如圖所示,屏幕的四個引腳應(yīng)連接到Arduino,如下所示:

VCC - 》 5V電源

GND - 》 GND

SCL - 》 A5

SDA - 》 A4

然后可以使用芯片控制屏幕??梢栽趆ttps://randomnerdtutorials.com/guide-for-oled-display-with-arduino/找到一些基本的入門代碼。 Adafruit GFX和SSD1306庫是必需的,并且包含了使屏幕工作的繁重工作,因此在Arduino IDE中實(shí)現(xiàn)簡單的內(nèi)置模式或文本顯示相對簡單。

步驟3:添加按鈕

我希望此設(shè)備具有交互性,因此我在其設(shè)置中添加了一個按鈕。這非常簡單,我們只需將按鈕上的一個引腳連接到Arduino的3.3V電源,另一端連接到其第二個數(shù)字輸入。按鈕也與10K歐姆電阻器串聯(lián)接地。

一旦到位,Arduino就可以從按鈕接收輸入并在屏幕上顯示結(jié)果。

第4步:編程

我已粘貼下面設(shè)備的代碼。它只包含幾個if循環(huán),并定義一個里程變量,當(dāng)按下按鈕時,里程變量會增加并顯示在屏幕上。我還包括延遲,因此如果按下按鈕,它會更快地增加。

#include

#include

#include

//OLED顯示TWI地址#define OLED_ADDR 0x3C

Adafruit_SSD1306顯示(-1);

#if(SSD1306_LCDHEIGHT!= 64)#error(“高度不正確,請修復(fù)Adafruit_SSD1306.h!”); #endif

//常量不會改變。它們用于設(shè)置引腳號:const int buttonPin = 2;//按鈕引腳的數(shù)量const int ledPin = 13;//LED引腳的編號

//變量將改變:int buttonState = 0;//用于讀取按鈕狀態(tài)的變量int miles = 240;//計算里程數(shù)

void setup(){//將LED引腳初始化為輸出:pinMode(ledPin,OUTPUT);//將按鈕引腳初始化為輸入:pinMode(buttonPin,INPUT);

//初始化并清除display display.begin(SSD1306_SWITCHCAPVCC,OLED_ADDR); display.clearDisplay(); display.display(); Serial.begin(9600);//更新顯示所有上述圖形display.display(); }

void loop(){//讀取按鈕值的狀態(tài):buttonState = digitalRead(buttonPin);

//檢查是否按下了按鈕。如果是,則buttonState為HIGH:if(buttonState == HIGH){//打開LED:digitalWrite(ledPin,HIGH);//增量里程變量display.clearDisplay();里程+ = 1;延遲(100); } else {//關(guān)閉LED:digitalWrite(ledPin,LOW); }

//檢查鞋子是否太舊(超過250英里)if(miles》 250){display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(0,55); display.print(“新對的時間!”); } else {display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(0,55); display.print(“你很高興!”); }//display field values//display Headers display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(5,0); display.print(“Miles Run:”);

display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(15,30); display.print(“”); display.print(英里);//display message display.display(); Serial.print(英里); }

步驟5:裝置設(shè)備

為了使器件更小,我換成了Arduino Nano。這個代碼都不需要改變,但是Arduino最近更換了他們的bootloader,所以如果你從中國購買一臺帶有CH34X芯片的廉價Nano,你可能需要下載一些驅(qū)動程序并使用舊的bootloader(這是一個選項(xiàng)) IDE)。我將組件直接焊接到芯片上,然后3D打印出一個可以在這里找到的小盒子。我在前面為屏幕切了一個洞,然后在側(cè)面有兩個小孔,用于充電線和按鈕。因?yàn)檫@只是一個原型而且專注于電子功能,所以我用一些電工膠帶將它們固定在一起,并用安全銷固定在鞋子上。我試圖通過將電池的正極引線連接到Arduino上的Vin和負(fù)極引線接地來切換到電池供電(使用9V)以使設(shè)備更便攜。我包括一個與正極引線串聯(lián)的撥動開關(guān)來控制電源。這首先工作,但由于某種原因,其他開關(guān)不起作用,屏幕偶爾會出現(xiàn)故障。我認(rèn)為我發(fā)現(xiàn)的撥動開關(guān)可能有問題,但為了時間的緣故,我現(xiàn)在決定放棄電池的想法。

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

    關(guān)注

    1

    文章

    15

    瀏覽量

    9853
收藏 人收藏

    評論

    相關(guān)推薦

    開關(guān)電源設(shè)計與制作

    電子發(fā)燒友網(wǎng)站提供《開關(guān)電源設(shè)計與制作.doc》資料免費(fèi)下載
    發(fā)表于 10-24 16:36 ?4次下載

    無線充電技術(shù):電動汽車未來的里程焦慮解藥

    長期以來,電動汽車的里程焦慮一直是阻礙消費(fèi)者購買的重要因素。然而,無線充電技術(shù)的出現(xiàn)有望改變這一局面,為電動汽車的普及帶來新的希望。   無線充電技術(shù)通過簡化充電過程,降低充電站的建設(shè)成
    的頭像 發(fā)表于 10-24 14:22 ?620次閱讀

    特斯拉里程碑達(dá)成:第1億顆4680電池震撼問世

    特斯拉的4680電池技術(shù)再次跨越重要里程碑,公司于9月15日欣然宣布,其第1億顆創(chuàng)新性的4680電池已成功下線,這一成就標(biāo)志著特斯拉在電池制造領(lǐng)域的飛速進(jìn)展。特斯拉首席執(zhí)行官埃隆·馬斯克通過社交媒體向辛勤工作的電池團(tuán)隊(duì)致以熱烈祝賀,彰顯了公司對這一里程碑事件的自豪與重視。
    的頭像 發(fā)表于 09-18 15:30 ?1151次閱讀

    光刻掩膜版制作流程

    光刻掩膜版的制作是一個復(fù)雜且精密的過程,涉及到多個步驟和技術(shù)。以下是小編整理的光刻掩膜版制作流程: 1. 設(shè)計與準(zhǔn)備 在開始制作光刻掩膜版之前,首先需要根據(jù)電路設(shè)計制作出掩模的版圖。這
    的頭像 發(fā)表于 09-14 13:26 ?473次閱讀

    遠(yuǎn)程電表抄:智能電網(wǎng)的新里程

    1.界定與基本原理遠(yuǎn)程電表抄,又被稱為全自動電能計量,是一種通過無線網(wǎng)絡(luò)或通信網(wǎng)絡(luò)技術(shù)性,完成電力企業(yè)遠(yuǎn)程獲得用戶電表讀值的專業(yè)技術(shù)。這種系統(tǒng)不再依賴人工上門服務(wù)抄,反而是通過傳感器、物聯(lián)網(wǎng)產(chǎn)品
    的頭像 發(fā)表于 05-22 14:16 ?511次閱讀
    遠(yuǎn)程電表抄<b class='flag-5'>表</b>:智能電網(wǎng)的新<b class='flag-5'>里程</b>碑

    指針萬用和數(shù)字萬用有什么區(qū)別?

    指針萬用和數(shù)字萬用都是用于測量電壓、電流、電阻等電氣參數(shù)的儀器,它們在電氣維修、檢測和電子制作等領(lǐng)域有著廣泛的應(yīng)用。
    的頭像 發(fā)表于 05-13 17:43 ?2777次閱讀

    小鵬汽車智駕總里程假期5天超1800萬公里

    小鵬汽車官方公布了五一假期期間的智駕數(shù)據(jù),總里程5天已超過1800萬公里! 5月4日智駕總里程達(dá)384.1萬公里; 5月4日智能泊車6.3萬次; 5月4日智駕里程滲透率約55.9%; 4月30日---5月4日智駕總
    的頭像 發(fā)表于 05-06 18:31 ?1071次閱讀

    邁凱倫F1全球最短里程再拍,新東家三年僅行駛23公里

    值得注意的是,該F1在2021年的拍賣中,里程表顯示僅行駛了387公里。盡管實(shí)際成交價遠(yuǎn)高于1500萬美元的預(yù)期,且刷新了當(dāng)年最昂貴拍賣車型及Gooding & Company拍賣行車展期間最高成交紀(jì)錄,但在過去三年間,新主人并未對其進(jìn)行過多駕駛。
    的頭像 發(fā)表于 04-28 10:11 ?458次閱讀

    汽車HMI發(fā)展,帶動MCU市場的需求轉(zhuǎn)變

    。 ? 什么是HMI ? HMI是Human Machine Interface,也就是所謂的人機(jī)界面,可以泛指用戶與設(shè)備進(jìn)行信息交換的途徑,是人與計算機(jī)之間進(jìn)行交換信息和對話的接口。HMI的形式可以是多樣的,早期汽車的儀表盤主要是以機(jī)械指針為主,包括了車速里程表、轉(zhuǎn)速
    的頭像 發(fā)表于 03-15 09:08 ?5168次閱讀
    汽車HMI發(fā)展,帶動MCU市場的需求轉(zhuǎn)變

    cadence LOGO如何制作

    電子發(fā)燒友網(wǎng)站提供《cadence LOGO如何制作.docx》資料免費(fèi)下載
    發(fā)表于 03-07 14:28 ?0次下載

    SL3036國產(chǎn)新品 48V/60V電動車里程增程器供電芯片

    隨著電動車的普及,里程焦慮成為了很多電動車用戶面臨的問題。為了解決這個問題,SL3036國產(chǎn)新品應(yīng)運(yùn)而生,它是一款48V/60V電動車里程增程器供電芯片。這款芯片的出現(xiàn),為電動車用戶提供了更加可靠
    發(fā)表于 01-16 17:23

    百度地圖宣布城市車道級導(dǎo)航取得里程碑突破

    近日,百度地圖宣布其城市車道級導(dǎo)航取得里程碑突破,已率先覆蓋全國超100城普通道路。
    的頭像 發(fā)表于 01-09 17:28 ?1134次閱讀
    百度地圖宣布城市車道級導(dǎo)航取得<b class='flag-5'>里程</b>碑突破

    Arduino制作循跡小車教程

    Arduino制作循跡小車完全教程
    發(fā)表于 01-05 11:09 ?4次下載

    快速制作PCB中的秘密

    快速制作PCB中的秘密
    的頭像 發(fā)表于 12-14 18:27 ?724次閱讀
    快速<b class='flag-5'>制作</b>PCB中的秘密

    機(jī)器人里程計數(shù)據(jù)的上傳與接收

    1.通信協(xié)議 里程計數(shù)據(jù)格式(19字節(jié)) 2.STM32端 /** * @brief 發(fā)送里程計數(shù)據(jù) */ void DataTrans_Odom ( void ) { uint8_t _cnt
    的頭像 發(fā)表于 11-16 16:48 ?465次閱讀
    機(jī)器人<b class='flag-5'>里程</b>計數(shù)據(jù)的上傳與接收