Arduino板以及隨之而來(lái)的許多價(jià)格合理的微控制器,永遠(yuǎn)改變了愛(ài)好電子產(chǎn)品。擁有豐富的電子和計(jì)算知識(shí)的超級(jí)極客領(lǐng)域現(xiàn)在可以為所有人使用。
硬件價(jià)格一直在下降,在線(xiàn)社區(qū)也在不斷增長(zhǎng)。之前我們已經(jīng)介紹了Arduino入門(mén),并且有很多很棒的初學(xué)者項(xiàng)目可以讓您熟悉,所以沒(méi)有理由不直接加入!
但是今天,我們將介紹
加電!
大多數(shù)Arduino板上都有一個(gè)電源調(diào)節(jié)器,這是剛接觸這個(gè)世界的人們經(jīng)常犯的一些錯(cuò)誤,以及如何避免這些錯(cuò)誤。 ,表示您可以通過(guò)USB或電源為其供電。盡管每塊板的用途完全不同,但通常通過(guò)直流桶式插孔或VIN引腳輸入 7-12v 。這使我們很好地認(rèn)識(shí)了第一個(gè)錯(cuò)誤:
1。從外部向董事會(huì)“后退”供電
第一個(gè)始終吸引著人們。如果您是使用電池或電源為電路板供電,則必須確保 V + 連接到 VIN 引腳,并且 Ground 線(xiàn)連接到 GND 引腳。如果您將其倒退,則可以保證您可以油炸您的電路板。
這個(gè)看似明顯的錯(cuò)誤發(fā)生的頻率比您想象的要高,因此始終
在打開(kāi)任何東西之前,請(qǐng)檢查電源設(shè)置!
當(dāng)空氣中有油炸的Arduino氣味時(shí),這通常是主要原因。第二種可能是因?yàn)槟承〇|西試圖從板上汲取太多電流。了解組件所需的功率與電路板可提供的功率之比是至關(guān)重要的。
在深入探討此功能之前,讓我們快速了解一下功率背后的理論。
時(shí)事
與微控制器合作的重要部分是了解電子基礎(chǔ)知識(shí)。雖然您不需要成為天才的電氣工程師,但了解電壓,安培,電阻以及它們之間的聯(lián)系非常重要。 Sparkfun具有出色的電子學(xué)入門(mén)知識(shí),另外還有一些解釋電壓,電流(Amps)和歐姆定律(電阻)的視頻。
準(zhǔn)確了解組件所需的電量是使用Arduino板的必不可少的部分。
2。直接從Pins運(yùn)行組件
這個(gè)組件吸引了很多渴望直接進(jìn)入項(xiàng)目的人們。可以直接在Arduino引腳上使用一些低功耗組件。但是,在許多情況下,這樣做可能會(huì)給Arduino帶來(lái)過(guò)多的功率,從而有可能損壞您的微控制器。
這里最糟糕的違法者是電動(dòng)機(jī)。即使是低功率的電動(dòng)機(jī),其功率變化率也是如此,以至于直接與Arduino引腳一起使用通常都是不安全的。為了真正使用DIY方式使用電機(jī),您需要使用 H橋。這些芯片使您可以使用arduino引腳控制直流供電的電機(jī),而不會(huì)冒油炸電路板的風(fēng)險(xiǎn)。
這些小芯片將電源與Arduino,并允許電機(jī)雙向移動(dòng)。非常適合DIY機(jī)器人或遙控車(chē)。使用這些芯片的最簡(jiǎn)單方法是作為Arduino屏蔽的一部分,它們可以從Aliexpress處以不到2美元的價(jià)格購(gòu)買(mǎi),或者如果您喜歡冒險(xiǎn),可以隨時(shí)制作自己的芯片。
對(duì)于使用帶有Arduino的電機(jī)的初學(xué)者,Adafruit擁有使用芯片本身及其突破性電機(jī)屏蔽的教程。
繼電器和MOSFET
其他電氣組件和設(shè)備可能會(huì)消耗更多可預(yù)測(cè)的電量,但是您仍然不希望它們直接連接到微控制器。甚至5v LED燈帶也可能很危險(xiǎn)。雖然可以將一些直接連接到板上進(jìn)行測(cè)試是可以的,但是通常更好的做法是使用外部電源,并通過(guò)繼電器或 MOSFET 對(duì)其進(jìn)行控制。
盡管兩者之間存在差異,但是對(duì)于業(yè)余電子產(chǎn)品中的許多應(yīng)用,它們?cè)诠δ苌鲜窍嗤摹烧叨伎梢猿洚?dāng)電源和組件之間的開(kāi)關(guān),由Arduino打開(kāi)或關(guān)閉。繼電器與控制它的電路完全隔離,僅用作開(kāi)/關(guān)開(kāi)關(guān)。 Dejan Nedelkovski從他的教程文章中獲得了很好的視頻介紹如何使用繼電器。
MOSFET通過(guò)使用脈沖寬度調(diào)制(PWM)來(lái)傳遞不同量的功率。從Arduino引腳上。有關(guān)使用帶LED燈條的MOSFET的入門(mén)知識(shí),請(qǐng)查看我們的終極指南,將其連接到Arduino。
3。誤解性面包板
剛開(kāi)始時(shí)一個(gè)常見(jiàn)的錯(cuò)誤是導(dǎo)致短路。當(dāng)電路的某些部分連接到不應(yīng)有的地方時(shí),就會(huì)發(fā)生這種情況,從而使電源走線(xiàn)更為簡(jiǎn)單。最好的結(jié)果是您的電路工作不正常,最壞的情況是油炸的組件甚至有火災(zāi)危險(xiǎn)!
為避免在使用面包板時(shí)出現(xiàn)這種情況,了解面包板的功能非常重要。 《科學(xué)伙伴》中的這段視頻是結(jié)識(shí)的絕妙方法。
這里的重要方面是記住每個(gè)板上的滑軌如何工作。在全尺寸和一半尺寸的面包板上,外導(dǎo)軌水平工作,內(nèi)導(dǎo)軌垂直工作,中間有縫隙。迷你面包板只有垂直導(dǎo)軌。
避免面包板短路的最簡(jiǎn)單方法是在打開(kāi)設(shè)備電源之前檢查工作。最后一刻可以為您省去很多麻煩!
4。焊接錯(cuò)誤
將Arduino或組件焊接到原型板上時(shí),可能會(huì)發(fā)生相同的問(wèn)題,尤其是在像Arduino Nano這樣的較小的板上。所要做的只是兩個(gè)引腳之間的一小滴焊料引起短路,這可能會(huì)損壞您的微控制器。避免這種情況的唯一方法是保持警惕,并盡可能多地進(jìn)行焊接。
剛開(kāi)始時(shí),焊接似乎是一件微妙而艱巨的任務(wù),但是隨著時(shí)間的推移,焊接變得越來(lái)越容易。我們的初學(xué)者項(xiàng)目指南應(yīng)幫助從面包板進(jìn)入原型世界的任何人!
5。接線(xiàn)多達(dá)錯(cuò)誤的引腳
使用微控制器意味著使用引腳。大多數(shù)組件和許多電路板都帶有將其連接到原型板上的引腳。知道哪個(gè)引腳起作用對(duì)確保事情按您希望的方式工作至關(guān)重要。
前面提到的MOSFET是一個(gè)常見(jiàn)的例子。 MOSFET上的三個(gè)支路分別稱(chēng)為柵極,漏極和源極。混合任何這些可能會(huì)導(dǎo)致電源流向錯(cuò)誤的方向或引起短路。這可能會(huì)破壞您的MOSFET,Arduino,設(shè)備,或者如果您真倒霉,那么這三者都將消失!
始終尋找數(shù)據(jù)表或組件的引腳排列在使用它確定確切的引腳位置以及需要使用多少功率之前。
6。代碼中的語(yǔ)法錯(cuò)誤
遠(yuǎn)離Arduino的硬件方面,編碼時(shí)會(huì)犯很多錯(cuò)誤。最典型的錯(cuò)誤包括:
行尾缺少分號(hào)
括號(hào)丟失/類(lèi)型錯(cuò)誤
拼寫(xiě)錯(cuò)誤
上述任何一個(gè)問(wèn)題(雖然較小)都會(huì)使程序正常運(yùn)行。以眨眼草圖為例。下面是Arduino IDE附帶的簡(jiǎn)單Blink.ino草圖,其中刪除了幫助文本。乍一看,看起來(lái)或多或少是可以的,不是嗎?
void setup() {
pinMode(LED_BUILTIN, OUTPUT)
}
void loop {
digitalWrite(LED_BUILTIN, HIGH);
delay{1000};
digitalwrite(LED_BUILTIN, LOW);
delay(1000);
該代碼無(wú)法編譯,原因有5個(gè)。讓我們來(lái)看一下它們:
第2行:缺少分號(hào)。
第5行:缺少功能括號(hào)。
第7行:括號(hào)類(lèi)型錯(cuò)誤。
第8行: DigitalWrite函數(shù)的拼寫(xiě)錯(cuò)誤。
第8/9行::缺少右花括號(hào)。
以下是該代碼的樣子:
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
這些錯(cuò)誤中的每一個(gè)(盡管很小)都會(huì)使程序無(wú)法運(yùn)行。乍一看到底是什么錯(cuò)可能會(huì)很令人沮喪,盡管隨著時(shí)間的推移它確實(shí)變得容易得多。習(xí)慣于進(jìn)行Arduino編程的一個(gè)好技巧是打開(kāi)另一個(gè)程序,您可以參考該程序,因?yàn)樵诖蠖鄶?shù)情況下,不同程序之間的語(yǔ)法和格式是相同的。
如果您是第一次編寫(xiě)Arduino,請(qǐng)先進(jìn)行編碼進(jìn)軍編碼,歡迎您!這是一種有益的學(xué)習(xí)興趣,而且鑒于某些類(lèi)型的程序員的需求,這可能是職業(yè)的巨大轉(zhuǎn)變!有良好的編碼習(xí)慣,這些習(xí)慣適用于所有編程語(yǔ)言,因此值得及早學(xué)習(xí)。
7。串行廢話(huà)
串行監(jiān)視器是Arduino的控制臺(tái)。在這里,您可以發(fā)送從Arduino引腳獲取的任何數(shù)據(jù),并將其顯示為易于閱讀的文本。不幸的是,正如許多人可能已經(jīng)知道的那樣,它并不總是那么簡(jiǎn)單。
在嘗試使事情正常運(yùn)行的初期,沒(méi)有任何事情比將您的微控制器設(shè)置為打印到串行監(jiān)視器,讓一切都變得毫無(wú)意義,這更令人沮喪。幸運(yùn)的是,幾乎總是有一個(gè)簡(jiǎn)單的解決方案。
在代碼中啟動(dòng)串行監(jiān)視器時(shí),還可以設(shè)置其波特率。該數(shù)字僅表示每秒發(fā)送到串行監(jiān)視器的位數(shù)。在下面的示例中,波特率在代碼中設(shè)置為9,600。確保也使用串行監(jiān)視器底部的下拉菜單將其設(shè)置為相同的值,并且所有內(nèi)容都應(yīng)正確顯示。
您可能會(huì)在串行監(jiān)視器中注意到有多種速度可供選擇。除非您要傳輸大量數(shù)據(jù),否則幾乎不需要更改波特率。在9,600時(shí),串行監(jiān)視器每秒可以打印近1,000個(gè)字符。如果您能快速閱讀并取得祝賀,那么您顯然是向?qū)А?/p>
8。缺少的庫(kù)
可用于Arduino的庫(kù)的數(shù)量不斷增加且不斷增長(zhǎng),這是使新手能夠輕松訪(fǎng)問(wèn)它的原因之一。由經(jīng)驗(yàn)豐富的編碼人員編寫(xiě)并免費(fèi)發(fā)布的庫(kù)使使用復(fù)雜的組件(例如可單獨(dú)尋址的LED燈條和天氣傳感器)成為可能,而無(wú)需了解復(fù)雜的編碼。
您可以通過(guò)選擇素描》 包含庫(kù)》 管理庫(kù)以打開(kāi)庫(kù)瀏覽器。
一旦安裝了庫(kù),便可以在任何項(xiàng)目中使用它們,并且許多庫(kù)都帶有自己的示例項(xiàng)目。這里有兩個(gè)可能的陷阱。
使用需要您沒(méi)有的庫(kù)的代碼。
嘗試使用項(xiàng)目中未包含的庫(kù)的某些部分
在第一種情況下,如果您發(fā)現(xiàn)一段對(duì)您的項(xiàng)目來(lái)說(shuō)似乎很完美的代碼,則發(fā)現(xiàn)一旦將其放入IDE中,它就會(huì)拒絕編譯,請(qǐng)檢查是否確實(shí)沒(méi)有尚未包含尚未安裝的庫(kù)。您可以通過(guò)查看代碼頂部的 #include 進(jìn)行檢查。如果其中包含您尚未安裝的內(nèi)容,則它將無(wú)法正常工作!
在第二種情況下,您遇到的是相反的問(wèn)題。如果您使用的是安裝在計(jì)算機(jī)上的庫(kù)中的功能,并且代碼拒絕編譯,則可能是您忘記了將庫(kù)包含在當(dāng)前正在處理的草圖中。例如,如果您想在Neopixel LED燈條上使用夢(mèng)幻般的Fastled庫(kù),則需要在代碼開(kāi)頭添加 #include“ FastLED.h” ,以使其了解尋找資料庫(kù)。
9。浮空
對(duì)于倒數(shù)第二個(gè)錯(cuò)誤,我們將介紹浮腳。通過(guò)浮動(dòng),我們真正的意思是引腳的電壓波動(dòng)會(huì)導(dǎo)致讀數(shù)不穩(wěn)定。這會(huì)在使用按鈕觸發(fā)Arduino上的某些東西時(shí)引起特別的問(wèn)題,并可能導(dǎo)致不良行為。
這是由于周?chē)娮釉O(shè)備產(chǎn)生了不必要的干擾,但是可以使用Arduino的內(nèi)部功能輕松解決
AddOhms的這段視頻介紹了該問(wèn)題以及解決方法。
10。登月射擊
這不是一個(gè)具體問(wèn)題,而是一個(gè)耐心問(wèn)題。 Arduino使進(jìn)入并開(kāi)始制作原型創(chuàng)意變得非常容易。雖然困難的項(xiàng)目確實(shí)可以帶來(lái)快速的學(xué)習(xí)經(jīng)驗(yàn),但值得一開(kāi)始。如果您嘗試的第一個(gè)項(xiàng)目非常復(fù)雜,那么您很可能會(huì)遇到上述問(wèn)題之一,從而使您感到沮喪,并有可能被油炸的電子產(chǎn)品所困擾。
與微控制器一起工作的最大好處是可供學(xué)習(xí)的項(xiàng)目。如果您打算制造復(fù)雜的照明系統(tǒng),那么從簡(jiǎn)單的交通信號(hào)燈系統(tǒng)開(kāi)始將為您提供繼續(xù)前進(jìn)的基礎(chǔ)。在創(chuàng)建巨大的LED燈條表演之前,也許可以嘗試一些較小的嘗試,例如在PC機(jī)箱內(nèi)部進(jìn)行測(cè)試。
每個(gè)小項(xiàng)目都會(huì)教給您使用Arduino控制器的另一個(gè)方面,而在您不了解它之前
學(xué)習(xí)曲線(xiàn)
Arduino的學(xué)習(xí)曲線(xiàn)對(duì)于初學(xué)者來(lái)說(shuō)可能會(huì)讓人望而生畏,但是它專(zhuān)用的在線(xiàn)社區(qū)使Arduino的學(xué)習(xí)曲線(xiàn)變得令人生畏。學(xué)習(xí)過(guò)程的痛苦要小得多。通過(guò)注意像本文中這樣的簡(jiǎn)單錯(cuò)誤,您可以為自己省去許多麻煩。
現(xiàn)在,您知道應(yīng)該避免哪些錯(cuò)誤,為什么不嘗試構(gòu)建自己的Arduino,沒(méi)有比這更好的方法了。
責(zé)任編輯:wv
-
Arduino
+關(guān)注
關(guān)注
188文章
6477瀏覽量
187492
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論