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

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

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

基于Arduino開發(fā)板的倒計時器制作設(shè)計

電子設(shè)計 ? 來源:一板網(wǎng) ? 作者:風(fēng)箏 ? 2021-01-03 09:15 ? 次閱讀

計時器是一種時鐘形式,通常用于測量時間間隔。有兩種類型的計時器,一種是從零開始向上計數(shù),用于測量已用時間,稱為秒表。而第二種類型的計時器從用戶提供的指定持續(xù)時間倒計時,通常稱為倒計時器。

在本教程中,我們將向您展示如何使用Arduino開發(fā)板制作一個倒計時器。在本文中,我們沒有使用任何實時時鐘(RTC)模塊來獲取時間。持續(xù)時間由用戶通過鍵盤和1602的LCD設(shè)定的。當(dāng)計時器歸零時,將會通過蜂鳴器發(fā)出警報聲。

所需的材料

● Arduino UNO開發(fā)板

● LCD顯示模塊1602

● 4 * 4的矩陣鍵盤

● 蜂鳴器

● 按鈕

電位器(10k)

電阻(10k、100歐)

● 連接導(dǎo)線

電路原理

pIYBAF_q8uyALXmmAAGMSbr6hF0276.png

在這里,Arduino Uno開發(fā)板用作主控制器。使用鍵盤來設(shè)定持續(xù)時間,以及LCD顯示模塊1602來顯示倒計時。按鈕用于啟動定時。有關(guān)如何將Arduino開發(fā)板與4x4矩陣鍵盤進(jìn)行連接,請參考:https://www.yiboard.com/thread-780-1-1.html。

代碼和說明

在本文的末尾處,給出了完整的Arduino計時器代碼。

在下面的代碼中,我們正在初始化鍵盤和LCD的庫以及代碼中使用的變量。

#include

#include

long int set1;

long int set2;

long int set3;

long int set4;

long int j;

int t1, t2, t3, t4, t5, t6;

int r1, r2, r3;

char key;

String r[8];

String hours;

String minutes;

String seconds;

在下面的代碼中,我們初始化行和列的數(shù)目,用于定義鍵盤矩陣。

const byte ROWS = 4; // Four rows

const byte COLS = 4; // Three columns

char keys[ROWS][COLS] = {

{'1','2','3','A'},

{'4','5','6','B'},

{'7','8','9','C'},

{'*','0','#','D'}

};

為了將連接4 * 4矩陣鍵盤與Arduino開發(fā)板進(jìn)行連接,我們必須定義使用的行和列的引腳。所以在下面的代碼中我們已經(jīng)定義了鍵盤的引腳以及1602模塊的引腳。

byte rowPins[ROWS] = { 6, 7, 8, 9 };// Connect keypad ROW0, ROW1, ROW2 and ROW3 to these Arduino pins

byte colPins[COLS] = { 10, 11, 12, 13 };// Connect keypad COL0, COL1 and COL2 to t

LiquidCrystal lcd(A0, A1, 5, 4, 3, 2); // Creates an LC object. Parameters: (rs, enable, d4, d5, d6, d7)

下面的代碼用于聲明一個keypad數(shù)組:

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

在void setFeedingTime()函數(shù)中,按下按鈕后,我們可以輸入定時器的時間,然后在輸入完成后,我們必須按下D開始倒計時。

void setFeedingTime()

{

feed = true;

int i=0;

lcd.clear();

lcd.setCursor(0,0);

lcd.print("Set feeding Time");

lcd.clear();

lcd.print("HH:MM:SS");

lcd.setCursor(0,1);

while(1){

key = kpd.getKey();

char j;

if(key!=NO_KEY){

lcd.setCursor(j,1);

lcd.print(key);

r[i] = key-48;

i++;

j++;

if (j==2 || j == 5)

{

lcd.print(":"); j++;

}

delay(500);

}

if (key == 'D')

{key=0; break; }

}

lcd.clear();

}

在void setup()函數(shù)中,我們初始化了LCD和串行通信,并在下面的代碼中將引腳定義為INPUT和OUTPUT。

void setup()

{

lcd.begin(16,2);

Serial.begin(9600);

pinMode(A0, OUTPUT);

pinMode(A1, OUTPUT);

pinMode(A3, INPUT);

pinMode(A4, OUTPUT);

}

這個Arduino倒計時器的工作原理很簡單,但代碼有點復(fù)雜。

最初,它會在LCD顯示屏上打印輸出“Arduino Timer”,直到您按下按鈕。只要按下按鈕,它會通過調(diào)用“setFeedingTime”函數(shù)來要求輸入倒計時時間。然后你可以通過使用鍵盤輸入持續(xù)時間。然后你需要按'D'來保存時間并開始倒計時。在void loop()函數(shù)中,我們已經(jīng)做了一些計算以逐秒遞減時間,并根據(jù)剩余時間顯示Hour、Minutes和Seconds(HH:MM:SS)相應(yīng)的值。您可以在下面查看完整的代碼。

當(dāng)計時器歸零時,蜂鳴器開始發(fā)出蜂鳴聲并且只發(fā)出100次蜂鳴聲。要停止蜂鳴器,請按住按鈕。您可以隨時使用按鈕在計數(shù)時停止定時器。

編輯:hfy

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

    關(guān)注

    1

    文章

    426

    瀏覽量

    32774
  • 蜂鳴器
    +關(guān)注

    關(guān)注

    12

    文章

    892

    瀏覽量

    46023
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5093

    瀏覽量

    97802
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6474

    瀏覽量

    187430
收藏 人收藏

    評論

    相關(guān)推薦

    AI80C51U倒計時

    AI80C51U倒計時
    的頭像 發(fā)表于 01-10 11:41 ?57次閱讀

    倒計時無線遙控開關(guān)生產(chǎn)多快好省改進(jìn)案例

    定時開關(guān)等領(lǐng)域。 倒計時無線遙控開關(guān)生產(chǎn)圖片 ??????該產(chǎn)品相較于普通的無線遙控開關(guān)增加了倒計時功能、外接浮球感應(yīng)開關(guān)等,電子元器件數(shù)量較多,所以使用的是雙面插件,需要焊接的錫點太多,人工焊錫效率不高,每個錫點最少耗費
    的頭像 發(fā)表于 12-24 16:44 ?130次閱讀
    <b class='flag-5'>倒計時</b>無線遙控開關(guān)生產(chǎn)多快好省改進(jìn)案例

    系統(tǒng)化課程體系——2天倒計時

    ??開課倒計時2天!?????COURSEINTRODUCTION??課程介紹???01EMC基礎(chǔ)-EMC(電磁兼容性)確保產(chǎn)品不受電磁干擾(EMI),并避免能量泄露至其他設(shè)備。EMC設(shè)計的三要素
    的頭像 發(fā)表于 12-16 09:52 ?213次閱讀
    系統(tǒng)化課程體系——2天<b class='flag-5'>倒計時</b>!

    掌握EMC核心知識——7天倒計時!

    賽盛技術(shù)第九期“EMC實戰(zhàn)特訓(xùn)營“開課倒計時7天”!本期課特訓(xùn)營將于12月18日正式開課,課程涵蓋電磁兼容(EMC)領(lǐng)域的核心知識。四位資深講師主講,團(tuán)隊經(jīng)驗累計超過70年,并結(jié)合賽盛技術(shù)公司19年
    的頭像 發(fā)表于 12-11 09:40 ?188次閱讀
    掌握EMC核心知識——7天<b class='flag-5'>倒計時</b>!

    Arduino Nano Matter開發(fā)板正式上市

    Silicon Labs(芯科科技)和Arduino在近日共同宣布Arduino Nano Matter開發(fā)板現(xiàn)已正式上市。這是延續(xù)今年3 月芯科科技和Arduino釋出
    的頭像 發(fā)表于 12-10 13:50 ?267次閱讀

    看門狗定時的工作原理

    看門狗定時是一種獨立的計時器硬件模塊,其核心功能是倒計時。如果系統(tǒng)軟件在計時器超時前沒有對其進(jìn)行復(fù)位操作(即“喂狗”),看門狗將觸發(fā)一個預(yù)定義的動作,通常是系統(tǒng)復(fù)位或中斷。
    的頭像 發(fā)表于 10-21 14:18 ?519次閱讀
    看門狗定時<b class='flag-5'>器</b>的工作原理

    LMC555 CMOS計時器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《LMC555 CMOS計時器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-20 09:16 ?0次下載
    LMC555 CMOS<b class='flag-5'>計時器</b>數(shù)據(jù)表

    基于51單片機(jī)24秒倒計時設(shè)計

    本資源內(nèi)容概要:? ? ? ?這是基于51單片機(jī)24秒倒計時設(shè)計包含了 C語言程序源代碼(keil軟件打開) 。本資源適合人群:? ? ? 單片機(jī)愛好者、電子類專業(yè)學(xué)生、電子diy愛好者。本資源能
    發(fā)表于 06-25 10:03 ?0次下載

    倒計時三天!軟通動力邀您共赴數(shù)字中國建設(shè)峰會·智算云生態(tài)大會

    倒計時三天!軟通動力邀您共赴數(shù)字中國建設(shè)峰會·智算云生態(tài)大會
    的頭像 發(fā)表于 05-21 09:50 ?445次閱讀
    <b class='flag-5'>倒計時</b>三天!軟通動力邀您共赴數(shù)字中國建設(shè)峰會·智算云生態(tài)大會

    倒計時3天!軟通動力與您相約鯤鵬昇騰開發(fā)者大會2024

    倒計時3天!軟通動力與您相約鯤鵬昇騰開發(fā)者大會2024
    的頭像 發(fā)表于 05-07 09:21 ?528次閱讀
    <b class='flag-5'>倒計時</b>3天!軟通動力與您相約鯤鵬昇騰<b class='flag-5'>開發(fā)</b>者大會2024

    SiliconLabs攜手Arduino演示基于MGM240模塊的新型Nano Matter開發(fā)板

    Arduino Nano Matter開發(fā)板,從而將Matter協(xié)議引入Arduino生態(tài)系統(tǒng),為廣大的開發(fā)人員提供一個快速涉足Matter互聯(lián)互通設(shè)計的絕佳途徑。
    的頭像 發(fā)表于 04-11 17:35 ?682次閱讀
    SiliconLabs攜手<b class='flag-5'>Arduino</b>演示基于MGM240模塊的新型Nano Matter<b class='flag-5'>開發(fā)板</b>

    用74192設(shè)計倒計時電路,proteus仿真時為什么手動改變逆計數(shù)的時鐘引腳時可以進(jìn)行計數(shù)

    用74192設(shè)計倒計時電路,proteus仿真時為什么手動改變逆計數(shù)的時鐘引腳時可以進(jìn)行計數(shù),使用信號發(fā)生輸入方波時無法進(jìn)行計數(shù)
    發(fā)表于 03-24 12:20

    數(shù)字電路,八路競賽搶答畢業(yè)設(shè)計,Proteus仿真

    計時器復(fù)位;右:搶答開始),若處于右邊,鼠標(biāo)點擊SW1旁紅色左右箭頭,將開關(guān)打至左邊。 觀察圖中,8位選手的編號為0~7。 運行仿真,仿真結(jié)果如下圖所示。選手號數(shù)碼管無顯示,倒計時數(shù)碼管顯示停留在30
    發(fā)表于 03-18 13:11

    電池廠赴歐建廠倒計時 或是基于歐盟《新電池法》

    電池廠赴歐建廠倒計時 或是基于歐盟《新電池法》 因為歐洲車企提出新的要求,強(qiáng)調(diào)2027年之后的動力電池必須要本地化,最起碼是電芯和正極材料是在歐洲生產(chǎn)的;這使得電池廠赴歐建廠進(jìn)入倒計時。 從電池廠
    的頭像 發(fā)表于 02-22 16:50 ?744次閱讀

    揭秘 “紅綠燈倒計時” 原理

    如今,高德“紅綠燈倒計時”功能已服務(wù)遍布全國范圍內(nèi)近240個城市的8萬多個紅綠燈路口,未來還將進(jìn)一步拓展至更高數(shù)量級。
    的頭像 發(fā)表于 02-21 17:19 ?2060次閱讀