如果你是一個(gè)喜歡 DIY 電子設(shè)備的初級(jí)創(chuàng)客,那么對(duì)于 Arduino 和 Raspberry Pi 這兩種開發(fā)板肯定不會(huì)陌生。因?yàn)閯?chuàng)客們的大部分想法實(shí)現(xiàn)都是得到了它們的鼎力相助。
然而,它們總是被創(chuàng)客們放到一起說(shuō)這說(shuō)那,其實(shí),它們之間還是有著明顯的區(qū)別,因此用途也不盡相同。從本質(zhì)上說(shuō) Raspberry Pi 是一款五臟俱全的電腦,而 Arduino 則是一個(gè)微控制器,更像是電腦中的一個(gè)組件。
所以說(shuō),作為一名初級(jí)創(chuàng)客或者對(duì)于這兩種開發(fā)板不是很熟悉的朋友,并不能依據(jù)自己需求來(lái)為自己挑選一個(gè)適合自己的開發(fā)板。因此,我們?cè)谶@里會(huì)較為詳細(xì)的為大家介紹一下這兩種開發(fā)板的功能、區(qū)別和用途,以便一些創(chuàng)客們可以根據(jù)自己的需求來(lái)合理的選擇適合自己的開發(fā)板。
Raspberry Pi 和 Arduino 設(shè)計(jì)的最初目的都是作為一種教學(xué)工具,為了使人們更簡(jiǎn)單方便的使用它們,從而激發(fā)人們的學(xué)習(xí)興趣。也正是因?yàn)槭褂煤蛯W(xué)習(xí)它們變得非常的簡(jiǎn)單,使得如今的它們已經(jīng)變成了創(chuàng)客們的必備工具。
由此可以看出,兩款價(jià)格相近的開發(fā)板有著明顯的不同。Raspberry Pi 的處理速度要比 Arduino 快 40 多倍,內(nèi)存是 Arduino 的 128000 倍,而且 Raspberry Pi 還可以運(yùn)行 Linux 操作系統(tǒng),可以連接互聯(lián)網(wǎng),所以 Raspberry Pi 看起來(lái)更像是一個(gè)功能齊全的電腦。雖然,它的各項(xiàng)性能和 PC 還是不能相比的,但是從數(shù)據(jù)參數(shù)可以看出,Raspberry Pi 似乎完勝 Arduino。
然而,Raspberry Pi 在使用各種傳感器的易用性上可遠(yuǎn)不如 Arduino。就拿簡(jiǎn)單的 LED 燈閃爍舉例,使用 Arduino 的話,我們可以直接使用 Arduino 的 LED 示例代碼,并通過(guò)簡(jiǎn)單的修改原程序,就可以實(shí)現(xiàn)豐富的 LED 閃爍形式。
而這一個(gè)看似簡(jiǎn)單的功能如果放在 Raspberry Pi 上實(shí)現(xiàn)的話,不光要安裝支持 LED 硬件的驅(qū)動(dòng)程序,還需要親自動(dòng)手編寫程序代碼。對(duì)一些沒有任何編程經(jīng)驗(yàn)的人來(lái)說(shuō),用 Arduino 可以 10 分鐘就可以學(xué)會(huì)的事,在 Raspberry Pi 一天也不見得弄出什么動(dòng)靜。
Arduino 對(duì)于支持的傳感器都是即插即用的,而且所有傳感器的使用方法都有示例代碼作為演示,這對(duì)于一些硬件和程序小白來(lái)講簡(jiǎn)直太有用了,大大降低了相關(guān)知識(shí)的學(xué)習(xí)成本。
而如果想在 Raspberry Pi 上使用這些傳感器,那就得需要安裝匹配的驅(qū)動(dòng)程序,之后還要編寫程序代碼才能控制傳感器的一些行為。此外,Arduino 可以在任何一臺(tái)電腦上使用,操作簡(jiǎn)單。而使用 Raspberry Pi 還要具備一些 Linux 操作系統(tǒng)的相關(guān)知識(shí),才能讓如上的操作運(yùn)用自如,對(duì)于小白來(lái)講,使用 Raspberry Pi,恐怕第一步是學(xué)習(xí) Linux。
但是,上文我們有所提到,Raspberry Pi 具備臺(tái)電腦的所有功能,所以它的一些功能是 Arduino 望塵莫及的。比如,Raspberry Pi 可以運(yùn)行 Linux 操作系統(tǒng),這意味著 Raspberry Pi 上可以運(yùn)行各種各樣的軟件,使用各種編程語(yǔ)言(如 Python)開發(fā)程序。而且 Raspberry Pi 多任務(wù)處理能力,也為 Raspberry Pi 實(shí)現(xiàn)更為豐富復(fù)雜的功能奠定了基礎(chǔ)。
好了,我們現(xiàn)在清楚了它們特性與各自的突出之處,Arduino 適合一些編程能力較低的初級(jí)創(chuàng)客,以及側(cè)重傳感器使用的硬件產(chǎn)品。而 Raspberry Pi 更適合有著一定的編程經(jīng)驗(yàn)的創(chuàng)客,以及依賴多種應(yīng)用程序和豐富功能的硬件產(chǎn)品。
事實(shí)上,在這里將 Arduino 和 Raspberry Pi 分出個(gè)高低是沒有意義的,兩者都具備了各自獨(dú)特的優(yōu)點(diǎn)。反而是對(duì)于硬件開發(fā)者,要了解自己將要做的產(chǎn)品特性,并依據(jù)自身的能力來(lái)選擇使用哪一個(gè)開發(fā)板,從而使得自己的想法得以快速準(zhǔn)確的實(shí)現(xiàn)。對(duì)于學(xué)習(xí)者來(lái)講,我們建議這兩種開發(fā)板最好是都要系統(tǒng)的學(xué)習(xí)一下,因?yàn)槟銜?huì)從中獲得許多的相關(guān)知識(shí),也是你今后成為一名優(yōu)秀創(chuàng)客的基本條件。