女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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)建一個(gè)Arduino控制的廚房計(jì)時(shí)器

454398 ? 來(lái)源:工程師吳畏 ? 2019-08-05 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

廚房定時(shí)器用戶界面流程

打開(kāi)電源后,設(shè)備將顯示“Arduino Kitchen Timer”消息3秒鐘。

然后計(jì)時(shí)器將提示您設(shè)置時(shí)間。您可以通過(guò)按左右鍵將光標(biāo)移動(dòng)到分鐘和小時(shí)。

您可以使用向上和向下箭頭鍵調(diào)整分鐘和小時(shí)設(shè)置。

設(shè)置了所需的時(shí)間后,按下選擇按鈕,計(jì)時(shí)器將啟動(dòng)。

如果您想再次設(shè)置時(shí)間,請(qǐng)?jiān)俅伟聪逻x擇按鈕。

一旦時(shí)間結(jié)束,蜂鳴器將發(fā)出蜂鳴聲。

要停止蜂鳴器,請(qǐng)按鍵盤(pán)護(hù)罩上的重置按鈕。

廚房定時(shí)器所需的組件

Arduino

LCD鍵盤(pán)護(hù)盾

蜂鳴器

廚房定時(shí)器的電路圖

首先,對(duì)齊并放置L CD Keypad直接屏蔽Arduino。然后將蜂鳴器的正極連接到Arduino上的引腳12,將蜂鳴器的負(fù)極連接到地面。

Arduino廚房定時(shí)器項(xiàng)目代碼

將以下代碼復(fù)制并上傳到Arduino IDE中。代碼的每個(gè)部分都有一個(gè)附帶的解釋?zhuān)詭椭私馑墓δ堋?/p>

#include

// select the pins used for the LCD keypad

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// define some variables

int lcd_key = 0;

int adc_key_in = 0;

int hrs = 0;

int mins = 0;

int set_mins = 0;

int set_hrs = 1;

int secs = 60;

int cursor_pos = 1;

int buzzer_pin = 12;

bool startTimer = false;

bool setTimer = true;

bool get_time = false;

unsigned long interval=1000; // the time we need to wait

unsigned long previousMillis=0; // millis() returns an unsigned long.

// Defining button used by the lcd keypad

#define btnRIGHT 0

#define btnUP 1

#define btnDOWN 2

#define btnLEFT 3

#define btnSELECT 4

#define btnNONE 5

// read the buttons

int read_LCD_buttons()

{

adc_key_in = analogRead(0); // reading the button value from the lcd keypad

// checking which button is pressed

if (adc_key_in 》 1000) return btnNONE; // We make this the 1st option for speed reasons since it will be the most likely result

if (adc_key_in 《 50) return btnRIGHT;

if (adc_key_in 《 250) return btnUP;

if (adc_key_in 《 450) return btnDOWN;

if (adc_key_in 《 650) return btnLEFT;

if (adc_key_in 《 850) return btnSELECT;

return btnNONE; // when all others fail, return this.。.

}

void setup()

{

Serial.begin(115200);

pinMode(buzzer_pin, OUTPUT);

lcd.begin(16, 2); // start communication with LCD keypad shield

lcd.setCursor(0,0);

lcd.print(“Arduino Kitchen”);

lcd.setCursor(0, 1);

lcd.print(“ Timer”);

delay(3000);

}

void loop(){

// Checking which condition is true based on the button pressed

if(startTimer == true){

start_timer();

}

else if (setTimer == true){

set_timer();

}

}

// This function will count the time and will beep the buzzer when the time will be up.

void start_timer(){

// Checking whether time is up or not

if(hrs == 0 && mins == 0 && secs == 0){

lcd.setCursor(0, 0);

lcd.print(“ Time is UP”);

lcd.setCursor(0, 1);

lcd.print(“ Beep Beep”);

digitalWrite(buzzer_pin, HIGH);

delay(500);

digitalWrite(buzzer_pin, LOW);

delay(500);

}

else if(secs 《 0){

secs = 59;

mins = mins - 1;

}

else if(mins 《 0){

mins = 59;

hrs = hrs - 1;

}

else

{

get_time = true;

counter();

lcd.setCursor(0, 0);

lcd.print(“Timer is ON”);

lcd.setCursor(0, 1);

lcd.print(hrs);

lcd.print(“:”);

lcd.setCursor(4, 1);

lcd.print(mins);

lcd.print(“:”);

lcd.setCursor(8, 1);

lcd.print(secs);

}

lcd_key = read_LCD_buttons(); // read the buttons

switch (lcd_key) // depending on which button was pushed, we perform an action

{

// if select button is pressed, move back to set time

case btnSELECT:

{

startTimer = false;

setTimer = true;

delay(300);

lcd.clear();

break;

}

case btnNONE:

{

break;

}

}

}

// This function will set the time

void set_timer(){

counter();

lcd.setCursor(0, 0);

lcd.print(“Set Time”);

lcd.setCursor(0, 1);

lcd.print(“Hrs:”);

lcd.print(hrs);

lcd.setCursor(8, 1);

lcd.print(“Mins:”);

lcd.print(mins);

lcd.setCursor(0,1);

lcd_key = read_LCD_buttons(); // read the buttons

switch (lcd_key) // depending on which button was pushed, we perform an action

{

// if right button is pressed, then move the cursor to minutes

case btnRIGHT:

{

cursor_pos = set_mins;

break;

}

// if left button is pressed, then move the cursor to hours

case btnLEFT:

{

cursor_pos = set_hrs;

break;

}

// if up button is pressed, add 1 to the minutes or hours

case btnUP:

{

delay(300);

if(cursor_pos == set_mins){

mins++;

if(mins 》 59){

mins = 0;

}

}

else if(cursor_pos == set_hrs){

hrs++;

if(hrs 》 24){

hrs = 0;

}

}

break;

}

// if down button is pressed, minus 1 from the minutes or hours

case btnDOWN:

{

delay(300);

if(cursor_pos == set_mins){

mins--;

if(mins 《 0){

mins = 60;

}

}

else if(cursor_pos == set_hrs){

hrs--;

if(hrs 《 0){

hrs = 24;

}

}

break;

}

// if select button is pressed, start the timer

case btnSELECT:

{

startTimer = true;

setTimer = false;

mins = mins - 1;

delay(300);

break;

}

case btnNONE:

{

break;

}

}

}

void counter() {

unsigned long currentMillis = millis(); // grab current time

// check if “interval” time has passed (1000 milliseconds)

if ((unsigned long)(currentMillis - previousMillis) 》= interval) {

lcd.clear();

if(get_time == true){

secs--;

get_time = false;

}

previousMillis = millis();

}

}

創(chuàng)建廚房計(jì)時(shí)器只是一個(gè)開(kāi)始!

您已經(jīng)創(chuàng)建了自己的廚房計(jì)時(shí)器!該項(xiàng)目的最佳部分是能夠調(diào)整該模塊以構(gòu)建其他項(xiàng)目,這些項(xiàng)目需要LCD和按鈕或蜂鳴器之間的簡(jiǎn)單接口。您還可以為模塊設(shè)計(jì)自定義3D打印的外殼,并使其成為您自己的。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 計(jì)時(shí)器
    +關(guān)注

    關(guān)注

    1

    文章

    432

    瀏覽量

    33705
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6497

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    零知開(kāi)源——基于STM32F407VET6零知增強(qiáng)板的四路獨(dú)立計(jì)時(shí)器

    獨(dú)立控制,支持開(kāi)始、暫停和重置功能,并具備定時(shí)報(bào)警功能(4小時(shí)或每小時(shí)觸發(fā))。項(xiàng)目結(jié)合了TFT顯示屏、蜂鳴器和按鈕控制,提供了個(gè)直觀的用戶界面。核心功能 >四路獨(dú)立
    發(fā)表于 07-01 10:31

    零知開(kāi)源——基于STM32F407VET6零知增強(qiáng)板的四路獨(dú)立計(jì)時(shí)器

    本教程介紹基于STM32F407VET6零知增強(qiáng)板的四路獨(dú)立計(jì)時(shí)器實(shí)現(xiàn)方案。項(xiàng)目采用TFT顯示屏、蜂鳴器和按鈕構(gòu)建交互系統(tǒng),支持各計(jì)時(shí)器獨(dú)立控制(開(kāi)始/暫停/重置)和智能報(bào)警(4小時(shí)及以上每小時(shí)觸發(fā)
    的頭像 發(fā)表于 07-01 10:13 ?215次閱讀
    零知開(kāi)源——基于STM32F407VET6零知增強(qiáng)板的四路獨(dú)立<b class='flag-5'>計(jì)時(shí)器</b>

    基于STM32F407VET6零知增強(qiáng)板的四路獨(dú)立計(jì)時(shí)器

    計(jì)時(shí)器
    PCB56242069
    發(fā)布于 :2025年07月01日 09:41:44

    納祥科技客戶案例 | 集計(jì)時(shí)、照明、裝飾于體的電子沙漏計(jì)時(shí)器方案

    傳統(tǒng)沙漏作為計(jì)時(shí)工具,雖具備儀式感,但存在功能單、無(wú)法實(shí)時(shí)調(diào)整具體定時(shí)等局限性。應(yīng)客戶需求,納祥科技推出了結(jié)合LED顯示、重力感應(yīng)、低功耗等技術(shù)的電子沙漏計(jì)時(shí)器方案,實(shí)現(xiàn)傳統(tǒng)沙漏的美學(xué)與現(xiàn)代
    的頭像 發(fā)表于 06-13 16:32 ?273次閱讀
    納祥科技客戶案例 | 集<b class='flag-5'>計(jì)時(shí)</b>、照明、裝飾于<b class='flag-5'>一</b>體的電子沙漏<b class='flag-5'>計(jì)時(shí)器</b>方案

    如何構(gòu)建個(gè)次充電可以運(yùn)行數(shù)月的嵌入式設(shè)備?

    想象下設(shè)計(jì)個(gè)寵物GPS追蹤,它需要跟蹤時(shí)間、安排任務(wù)和節(jié)約電力,但保持MCU和GPS全天候活躍將消耗數(shù)小時(shí)的電池。 你如何解決這個(gè)問(wèn)題? ? 僅在必要時(shí)使用RTC喚醒MCU。 ?
    的頭像 發(fā)表于 03-04 11:25 ?413次閱讀
    如何構(gòu)建<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b><b class='flag-5'>一</b>次充電可以運(yùn)行數(shù)月的嵌入式設(shè)備?

    EE-109:ADSP2106x:使用2106x SPORT作為計(jì)時(shí)器

    電子發(fā)燒友網(wǎng)站提供《EE-109:ADSP2106x:使用2106x SPORT作為計(jì)時(shí)器.pdf》資料免費(fèi)下載
    發(fā)表于 01-07 14:11 ?0次下載
    EE-109:ADSP2106x:使用2106x SPORT作為<b class='flag-5'>計(jì)時(shí)器</b>

    智能廚房應(yīng)用什么傳感

    的工作原理、應(yīng)用場(chǎng)景以及為用戶帶來(lái)的便利。 智能廚房中的傳感技術(shù) 智能廚房通過(guò)集成多種傳感,能夠?qū)崟r(shí)監(jiān)測(cè)烹飪過(guò)程中的溫度、濕度、氣味等關(guān)鍵參數(shù),從而實(shí)現(xiàn)對(duì)烹飪過(guò)程的精準(zhǔn)
    的頭像 發(fā)表于 12-11 09:10 ?698次閱讀

    單個(gè) MSP430? 計(jì)時(shí)器模塊的多時(shí)基應(yīng)用說(shuō)明

    電子發(fā)燒友網(wǎng)站提供《單個(gè) MSP430? 計(jì)時(shí)器模塊的多時(shí)基應(yīng)用說(shuō)明.pdf》資料免費(fèi)下載
    發(fā)表于 09-13 11:09 ?0次下載
    單個(gè) MSP430? <b class='flag-5'>計(jì)時(shí)器</b>模塊的多時(shí)基應(yīng)用說(shuō)明

    MSPM0-高級(jí)控制計(jì)時(shí)器有助于實(shí)現(xiàn)更好的控制和更好的數(shù)字輸出

    電子發(fā)燒友網(wǎng)站提供《MSPM0-高級(jí)控制計(jì)時(shí)器有助于實(shí)現(xiàn)更好的控制和更好的數(shù)字輸出.pdf》資料免費(fèi)下載
    發(fā)表于 08-28 11:30 ?0次下載
    MSPM0-高級(jí)<b class='flag-5'>控制</b><b class='flag-5'>計(jì)時(shí)器</b>有助于實(shí)現(xiàn)更好的<b class='flag-5'>控制</b>和更好的數(shù)字輸出

    用于電源門(mén)控的TPL5110毫微功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《用于電源門(mén)控的TPL5110毫微功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:26 ?0次下載
    用于電源門(mén)控的TPL5110毫微功耗系統(tǒng)<b class='flag-5'>計(jì)時(shí)器</b>數(shù)據(jù)表

    用于電源門(mén)控應(yīng)用的TPL5111毫微功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《用于電源門(mén)控應(yīng)用的TPL5111毫微功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:25 ?0次下載
    用于電源門(mén)控應(yīng)用的TPL5111毫微功耗系統(tǒng)<b class='flag-5'>計(jì)時(shí)器</b>數(shù)據(jù)表

    TLC555-Q1 LinCMOS?計(jì)時(shí)器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TLC555-Q1 LinCMOS?計(jì)時(shí)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-23 11:19 ?0次下載
    TLC555-Q1 LinCMOS?<b class='flag-5'>計(jì)時(shí)器</b>數(shù)據(jù)表

    具有看門(mén)狗功能的TPL5010納瓦級(jí)功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有看門(mén)狗功能的TPL5010納瓦級(jí)功耗系統(tǒng)計(jì)時(shí)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-22 10:04 ?0次下載
    具有看門(mén)狗功能的TPL5010納瓦級(jí)功耗系統(tǒng)<b class='flag-5'>計(jì)時(shí)器</b>數(shù)據(jù)表

    TLC555 LinCMOS?技術(shù)計(jì)時(shí)器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TLC555 LinCMOS?技術(shù)計(jì)時(shí)器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-20 11:15 ?3次下載
    TLC555 LinCMOS?技術(shù)<b class='flag-5'>計(jì)時(shí)器</b>數(shù)據(jù)表

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

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