找到 112 篇文章 關於 Arduino 板

使用 Arduino 控制直流電機

Yash Sanghvi
更新於 2021年5月31日 14:41:28

473 次瀏覽

直流電機是最簡單的電機型別。它有兩個端子或引線。當連線到電池時,電機將旋轉,如果反轉連線,電機將反向旋轉。如果端子上的電壓降低,電機速度將相應降低。在本文中,我們將瞭解如何將直流電機與 Arduino 介面並控制其速度。我們不會考慮反轉電機的方向,因為這需要一個額外的 IC(H 橋)。在本文結束時,我將提供一些… 閱讀更多

在 Arduino 中從源分離中斷

Yash Sanghvi
更新於 2021年5月31日 14:42:30

1K+ 次瀏覽

我們已經看到,為了將中斷連線到源,我們使用 .attachInterrupt() 函式,並使用所需的引數。例如,為了將中斷連線到特定引腳,我們使用 attachInterrupt(digitalPinToInterrupt(pin), ISR, mode); 同樣,要從源分離中斷,我們可以呼叫 detachInterrupt() 函式。這將簡單地停用該特定中斷。停用引腳中斷的推薦語法為: detachInterrupt(digitalPinToInterrupt(pin)) 其中 pin 是您希望停用中斷的引腳號。

在 Arduino 中啟用和停用中斷

Yash Sanghvi
更新於 2021年5月31日 14:42:53

7K+ 次瀏覽

如果您希望停用中斷(在執行某些關鍵程式碼段時,尤其是應該在給定時間段內完成的程式碼段),您可以使用 noInterrupts() 函式來實現。一旦您的關鍵程式碼執行完畢,並且您希望重新啟用中斷,您可以使用 interrupts() 函式來實現。請注意,中斷在 Arduino 中預設啟用,因此,在沒有初始呼叫 noInterrupts() 的情況下呼叫 interrupts() 是沒有必要的。示例包含 noInterrupts() 和 interrupts() 的程式碼的通用結構如下所示: void setup() { // 在此處放置您的設定程式碼,以執行一次: } ... 閱讀更多

檢查 Arduino 中的字元是否可列印

Yash Sanghvi
更新於 2021年5月31日 14:43:23

379 次瀏覽

透過各種操作,您可能會遇到不可列印的字元。畢竟,char 是一個 8 位數字,如果您檢視 ASCII 表(https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html),只有從 32 到 127 的值,或總共 96 個值(在 127 個值中)是可列印的(參見 http://facweb.cs.depaul.edu/~sjost/it212/documents/ascii-pr.htm)。ASCII 僅使用 7 位數字,而不是 8 位。因此,如果您從函式獲得 char 輸出,並希望檢查它是否可列印,則可以使用 Arduino 的 isPrintable() 函式。語法 isPrintable(myChar) 其中 myChar 是要檢查的字元。如果字元可列印,則此函式返回 true。示例 void setup() { ... 閱讀更多

將 10 位數字對映到 Arduino 中的 8 位

Yash Sanghvi
更新於 2021年5月31日 14:45:03

1K+ 次瀏覽

出於各種原因,通常必須在 Arduino 中執行對映。一個示例是將 10 位 ADC 輸出對映到 8 位以節省儲存空間。10 位數字將佔用 2 個位元組的儲存空間,而 8 位數字將僅佔用一個位元組,並且仍然保留 10 位數字的大部分資訊。Arduino 有一個現成的 map() 函式來實現此目的。語法 map(value, fromLow, fromHigh, toLow, toHigh) 其中,value 是要對映的值;fromLow 和 fromHigh 是當前值的範圍邊界;toHigh 和 toLow 是新值的範圍邊界… 閱讀更多

清除/設定 Arduino 中數字的特定位

Yash Sanghvi
更新於 2021年5月31日 14:38:36

1K+ 次瀏覽

當您深入研究高階韌體時,您會處理許多暫存器,其特定位需要根據您的用例進行設定或清除。Arduino 有內建函式來執行此操作。語法 bitSet(x, index) 和 bitClear(x, index) 其中 x 是其位需要設定/清除的數字,index 是位的位數(0 表示最低有效位或最右邊的位)。此函式就地更改數字 x,並返回 x 的更新值。請注意,設定位表示將其值設定為 1,清除位表示將其值設定為 0。示例… 閱讀更多

在 Arduino 中將數字限制在給定範圍內

Yash Sanghvi
更新於 2021年5月31日 14:18:08

4K+ 次瀏覽

Arduino 中的 constrain() 函式有助於(顧名思義)將數字限制在上限和下限之間。語法 constrain(val, min, max) 其中,val 是要限制的數字,min 是下限值,max 是上限值如果 val 小於 min,則此函式將返回 min。如果 val 大於 max,則此函式將返回 max。只要 val 在 min 和 max 之間,此函式將返回 val。示例以下示例說明了此函式的使用: void setup() { // 在此處放置您的設定程式碼,以執行一次: ... 閱讀更多

在 Arduino 中對數字進行按位右/左移位

Yash Sanghvi
更新於 2021年5月31日 14:17:17

2K+ 次瀏覽

如果您是韌體開發人員,那麼將數字或暫存器移位一定數量的位可能非常常見。在 Arduino 中,也可以使用與 C 語言中相同的位移位運算子,即 >> 用於右移。語法 x >> n 或 x > 1); Serial.println(x

Arduino 中的模/餘數

Yash Sanghvi
更新於 2021年5月31日 14:16:04

7K+ 次瀏覽

Arduino 中的模運算子與 C 語言或大多數其他語言中的模運算子完全相同。運算子為 %。語法為:a % b,它返回 a 除以 b 時的餘數。示例以下示例說明了此運算子的使用: void setup() { // 在此處放置您的設定程式碼,以執行一次: Serial.begin(9600); Serial.println(); Serial.println(10%3); Serial.println(4%2); Serial.println(50%9); } void loop() { // 在此處放置您的主程式碼,以重複執行: } 輸出序列監視器輸出如下所示。您可以自己計算餘數並驗證輸出是否正確。

檢查 Arduino 中的字元是否為空格/空白

Yash Sanghvi
更新於 2021年5月31日 14:15:32

615 次瀏覽

isSpace() 和 isWhitespace() 函式可用於檢查字元是否為空格或更具體地說是空白。空白是空格的子集。雖然空白僅包含空格和水平製表符('\t'),但空格包含換頁符('\f')、換行符('')、回車符('\r')甚至垂直製表符('\v')。示例以下示例演示了這些函式的使用: void setup() { // 在此處放置您的設定程式碼,以執行一次: Serial.begin(9600); Serial.println(); char c1 = 'a'; char c2 = ' '; char c3 = '\t'; char c4 = ''; ... 閱讀更多

廣告
© . All rights reserved.