資料介紹
描述
關(guān)注 Snap Circuits 平臺!
概述
什么是快速電路?
Snap Circuits? 讓電子學習變得輕松有趣!了解如何將 Snap Circuits? 與您的硬件集成。為孩子們帶來樂趣!
引進項目
如果您還沒有完成介紹,請轉(zhuǎn)到Snap Circuits - 介紹項目。該項目還包含 Snap Circuit 項目的完整索引。
讓我們開始吧
項目目標
展示如何使用 Arduino 草圖來監(jiān)控按鈕。
構(gòu)建電路
該項目的最低設置要求是SC-300。

打開下面的 PDF 并按照說明進行操作。PDF 文件也可以在 GitHub 存儲庫中找到。
Push_Button_Monitor.pdf
?
以下是您將用于構(gòu)建電路的組件的圖像。

完成電路
這是完整電路的圖像。

我做了一個木箱來裝 Snap Circuits 板和 Arduino。我從當?shù)氐囊患覙I(yè)余愛好商店購買了一些木頭,將其切割并粘在一起。如果您對細節(jié)感興趣,請告訴我,我會發(fā)布它們。
以與閃爍 LED 項目相同的方式將此草圖加載到 Arduino IDE 中?。加載后編譯并運行它。該項目的草圖會將輸出寫入串行端口,因此您需要從“工具”菜單中打開串行監(jiān)視器(您可以按)。Ctrl-Shift M
這是如何工作的
電路
Arduino 上的數(shù)字引腳可以配置為輸出或輸入引腳。在項目一中,我們將模式設置為輸出,這樣我們就可以更改 LED 的狀態(tài)。添加到電路中的開關(guān)和電阻器允許我們切換 Arduino 上配置為輸入的第二個引腳的狀態(tài);也就是說,我們要讀取引腳是高電平還是低電平。
為了達到高電平或低電平,我們將開關(guān)的一端連接到 Arduino 上的 5V 電源。我們可以將另一個連接到其中一個數(shù)字引腳,但這會導致我們在開關(guān)打開時處于“浮動”狀態(tài)。浮動狀態(tài)意味著當我們在軟件中讀取引腳時,我們將獲得隨機結(jié)果。我們想“鎖定”該值,使其為高或低。我們通過在電路中添加 10K 電阻來實現(xiàn)。該電阻器的一端接地,另一端連接到開關(guān)和數(shù)字引腳。當開關(guān)打開時,數(shù)字引腳通過電阻接地,該引腳上的讀數(shù)將為低電平。當開關(guān)閉合(通過按下它)時,開關(guān)將數(shù)字引腳直接連接到 5V,引腳上的讀數(shù)為高電平。
軟件
在草圖的設置功能中,首先設置串行輸出,以便我們可以在應用程序運行時獲得一些反饋。打開串行監(jiān)視器以查看應用程序運行時的輸出。接下來將數(shù)字引腳設置為輸入,并讀取當前值以初始化循環(huán)功能。
void setup()
{
? // ***
? // *** Display the pin number
? // ***
? Serial.begin(115200);
? Serial.print("Monitoring push button on pin ");
? Serial.println(BUTTON_PIN);
? // ***
? // *** Initialize the digital pin for input.
? // ***
? pinMode(BUTTON_PIN, INPUT);
? // ***
? // *** Get the current value of the pin
? // ***
? _previousValue = digitalRead(BUTTON_PIN);
}
在 Loop 函數(shù)中,我們通過讀取值并將其與先前的值進行檢查來監(jiān)控數(shù)字引腳。如果數(shù)字引腳的當前值與以前的版本不同,則會顯示該操作。當當前值為高時,按鈕關(guān)閉或按下。如果當前值為 LOW,則按鈕打開或已釋放。
// ***
// *** Read the current value from the pin
// ***
int currentValue = digitalRead(BUTTON_PIN);
在循環(huán)的底部是延遲下一次讀取的延遲語句。這是作為一個簡單的去抖功能完成的。
delay(DEBOUNCE_TIME);
什么是去抖?當開關(guān)的內(nèi)部相互接觸以閉合電路或當它們分離以打開電路時,按下開關(guān)會產(chǎn)生錯誤的打開和關(guān)閉轉(zhuǎn)換。有很多方法可以在軟件和硬件中解決這個問題。對于這個項目,我使用了一個簡單的延遲來消除額外的轉(zhuǎn)換。
閱讀有關(guān)去抖動的更多信息:
下圖演示了應用程序的輸出。

嘗試的事情
- 很高興看到當數(shù)字引腳上的輸入“浮動”時會發(fā)生什么。松開綠線并將其放在不會與電路接觸的地方。現(xiàn)在啟動應用程序并反復按下和釋放按鈕。你要注意什么。有時應用程序運行正常,有時未檢測到切換事件。現(xiàn)在重新打開綠色并重試。現(xiàn)在一切正常。
- 在應用程序中,默認去抖時間設置為 100 毫秒。將此值設置為 0 并重試。發(fā)生什么了?現(xiàn)在試驗各種值,看看它如何改變應用程序的行為。
為按鈕 LED項目保留此電路!
?
- 使用電壓監(jiān)控器上的手動復位來斷開按鈕開關(guān)
- 兒童樂高Arduino教程之眨眼草圖
- Arduino開關(guān)按鈕和紐扣電池電源
- Arduino Oled帶按鈕的反轉(zhuǎn)文本
- 使用按鈕來操作LED
- 使用Arduino和BRB(大紅色按鈕)按需播放戰(zhàn)歌
- 用Arduino UNO、LCD和按鈕構(gòu)建的數(shù)字投擲器
- Arduino如何制作智能按鈕
- 帶按鈕的Arduino控制伺服電機位置
- 驅(qū)動I2S DAC以再現(xiàn)在Arduino草圖中計算的聲音
- 在Arduino中使用按鈕
- 用于Arduino UNO的8按鈕控制器屏蔽
- labview的按鈕控件匯總 384次下載
- 基于計數(shù)器按鈕控制的電機程序啟動與停止 16次下載
- Arduino板是什么如何使用IDE軟件創(chuàng)建和上傳Arduino程序到Arduino板
- 按鈕的使用和維護方法 按鈕的常見故障及其排除方法 2113次閱讀
- 如何區(qū)分按鈕的短按與長按? 3775次閱讀
- 實現(xiàn)按鈕的短按與長按的區(qū)分 1954次閱讀
- 基于Arduino與機智云的家居環(huán)境遠程監(jiān)控系統(tǒng) 2517次閱讀
- 如何使用Arduino控制大型線性執(zhí)行器 2166次閱讀
- 如何使用Arduino來制作一個簡單的歐姆表 6428次閱讀
- 一款按鈕互鎖正回轉(zhuǎn)操控電路 2919次閱讀
- 控制按鈕的結(jié)構(gòu)和符號_控制按鈕的分類 1.4w次閱讀
- 如何通過草圖布線器來降低Layout的復雜性 1299次閱讀
- 一種將手和筆輸入優(yōu)勢結(jié)合的三維草圖構(gòu)圖方式 4514次閱讀
- arduino連接顯示屏方法詳解 4.7w次閱讀
- 分享10個cad繪制草圖的技巧 1.4w次閱讀
- arduino是什么以及arduino能干什么 4.5w次閱讀
- 急停按鈕工作原理_急停按鈕電氣符號_急停按鈕型號介紹 12.4w次閱讀
- 按鈕開關(guān)型號_按鈕開關(guān)型號有哪些_按鈕開關(guān)有幾種 7.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論