? 樹(shù)莓派(Raspberry Pi,RasPi/RPi)是由英國(guó)的慈善組織“Raspberry Pi 基金會(huì)”開(kāi)發(fā)扒最,基于ARM的微型電腦主板,只有信用卡大小,但卻具備一部個(gè)人計(jì)算機(jī)的基本功能纸俭。基金會(huì)開(kāi)發(fā)樹(shù)莓派的最初目的是為了提升學(xué)校計(jì)算機(jī)科學(xué)及相關(guān)學(xué)科的教學(xué)水平南窗,培養(yǎng)青少年的計(jì)算機(jī)程序設(shè)計(jì)興趣和能力揍很,同時(shí)期望能有更多的應(yīng)用被不斷開(kāi)發(fā)出來(lái),并應(yīng)用到更多領(lǐng)域万伤。然而窒悔,樹(shù)莓派自問(wèn)世以來(lái)就受到眾多計(jì)算機(jī)發(fā)燒友和創(chuàng)客的追捧,曾經(jīng)一“派”難求敌买。目前简珠,具有樹(shù)莓派生產(chǎn)許可的制造商主要有:
- Pi Swag(http://swag.raspberrypi.org)
- Premier Farnell/Element 14,中文名:e絡(luò)盟虹钮,簡(jiǎn)稱(chēng)E14(https://www.farnell.com/)
- RS Components聋庵,RS(http://www.rs-components.com/raspberrypi)
? 這幾家制造商都有在網(wǎng)上出售樹(shù)莓派,不同廠家銷(xiāo)售的樹(shù)莓派僅在外觀上有細(xì)微的區(qū)別芙粱,配置祭玉、性能和使用是完全一樣,大家可以隨便選擇購(gòu)買(mǎi)春畔。在國(guó)內(nèi)脱货,我們可以很容易的從各大購(gòu)物網(wǎng)站上購(gòu)買(mǎi)到。
2.1 樹(shù)莓派硬件
? 圖2.1 展示的是樹(shù)莓派3B+型主板拐迁,樹(shù)莓派3B+型是當(dāng)前最新的版本蹭劈,在所有已發(fā)行的版本中性能最好,功能和接口最多线召,但功耗也相對(duì)較大铺韧。接下來(lái)的章節(jié)中,我們將主要采用該版本的樹(shù)莓派進(jìn)行介紹缓淹,下面首先對(duì)樹(shù)莓派的主要部件及接口的功能進(jìn)行介紹:
? 1:SOC芯片
? 樹(shù)莓派采用博通(Broadcom)BCM283X系列芯片作為SOC芯片哈打,芯片上集成了CPU塔逃、GPU、DSP及SDRAM內(nèi)存等料仗,其中CPU和GPU共享內(nèi)存湾盗,可以在系統(tǒng)中手工修改內(nèi)存占比。不同版本的樹(shù)莓派所采用的SOC芯片在結(jié)構(gòu)和性能上存在一定的差異立轧。
? 2:以太網(wǎng)接口
? 以太網(wǎng)接口讓樹(shù)莓派能以有線(xiàn)的方式接入計(jì)算機(jī)網(wǎng)絡(luò)格粪,這讓我們能輕松的訪(fǎng)問(wèn)互聯(lián)網(wǎng),或遠(yuǎn)程登錄到樹(shù)莓派氛改。樹(shù)莓派的以太網(wǎng)接口是利用USB總線(xiàn)實(shí)現(xiàn)的帐萎,數(shù)據(jù)通過(guò)USB總線(xiàn)進(jìn)行傳輸,大部分型號(hào)的樹(shù)莓派都提供有以太網(wǎng)接口胜卤。
? 3:USB接口
? 通用串行總線(xiàn)(Universal Serial Bus, USB)接口是計(jì)算機(jī)上最常見(jiàn)的接口疆导,您可以用它來(lái)連接鍵盤(pán)、鼠標(biāo)葛躏、U盤(pán)澈段、無(wú)線(xiàn)網(wǎng)卡等設(shè)備。當(dāng)USB接口的數(shù)量不夠用時(shí)舰攒,我們還可以通過(guò)USB集線(xiàn)器增加USB接口數(shù)量败富。
? 4:HDMI接口
? 高清多媒體接口(High Definition Multimedia Interface,HDMI)是一種全數(shù)字化視頻和聲音發(fā)送接口摩窃,用于傳輸未壓縮的音頻及視頻信號(hào)囤耳。通過(guò)它連接到配備有HDMI接口的顯示器(或電視機(jī))上,就能顯示樹(shù)莓派的內(nèi)容偶芍。HDMI接口能夠同時(shí)傳輸視頻和音頻信號(hào)充择,因此我們使用的時(shí)候不需要在樹(shù)莓派的音頻接口連接揚(yáng)聲器,確實(shí)需要通過(guò)音頻接口播放聲音的匪蟀,則需對(duì)操作系統(tǒng)的配置做相應(yīng)的修改椎麦。
? 5:音頻及復(fù)合視頻接口
? 音頻接口(3.5mm耳機(jī)插孔)在沒(méi)有用到HDMI連接的時(shí)候,可以使用標(biāo)準(zhǔn)3.5mm耳機(jī)插孔的揚(yáng)聲器或耳機(jī)播放音頻材彪。同時(shí)观挎,該接口還集成了復(fù)合視頻接口,具有復(fù)合音視頻輸出功能段化,一般用于連接舊型號(hào)的電視機(jī)嘁捷,當(dāng)前已經(jīng)很少使用。
? 6:DSI顯示器接口
? 可以將LCD顯示器連接到樹(shù)莓派上显熏,一般用于嵌入式產(chǎn)品開(kāi)發(fā)雄嚣。通常情況下,HDMI接口已經(jīng)能滿(mǎn)足需求。
? 7:CSI攝像頭接口
? 利用CSI接口可以通過(guò)一條排線(xiàn)將CSI攝像頭連接到樹(shù)莓派上缓升,輕松的進(jìn)行視頻錄制和圖像拍攝鼓鲁。與USB攝像頭相比,這種攝像頭模塊的性能更為出色港谊。
? 8:通用輸入輸出接口(General Purpose Input Output骇吭,GPIO)
? 通用輸入輸出接口(General Purpose Input Output,GPIO)在樹(shù)莓派主板上被設(shè)計(jì)成具有兩排引腳的插槽歧寺。GPIO可以用于連接各種外圍電子設(shè)備和傳感器燥狰,通過(guò)輸入/輸出電平信號(hào),以控制或監(jiān)控這些設(shè)備斜筐。例如碾局,可以使用GPIO控制直流電機(jī)的轉(zhuǎn)速,或是讀取超聲波傳感器的測(cè)量距離等奴艾。GPIO的這些功能特性使得樹(shù)莓派有別于普通計(jì)算機(jī)主板,因?yàn)樗o予開(kāi)發(fā)人員手工操作的自由内斯。我們將在后續(xù)章節(jié)中對(duì)GPIO做進(jìn)一步介紹蕴潦,并大量的使用它們。
? 9:SD卡插槽
? SD卡插槽位于樹(shù)莓派主板背面俘闯。SD/MicroSD卡是樹(shù)莓派必備的存儲(chǔ)部件潭苞,用于安裝操作系統(tǒng)和存儲(chǔ)數(shù)據(jù),SD卡的容量應(yīng)在2GB以上真朗。為了能有更好的使用體驗(yàn)此疹,建議為您的樹(shù)莓派配備大容量(16G以上)的高速(Class10以上)的SD卡。
? 10:Micro USB供電接口
? Micro USB供電接口是樹(shù)莓派主要的供電方式之一遮婶,額定電壓5V蝗碎,不同版本的樹(shù)莓派的標(biāo)準(zhǔn)電流要求略有區(qū)別,例如:1B型只要700mA旗扑,而3B+型則需要2.5A蹦骑,很多安卓(Android)手機(jī)的充電器都能為樹(shù)莓派提供必要的電壓和電流。樹(shù)莓派的電流需求還與其連接的外部設(shè)備有關(guān)臀防,建議在使用的時(shí)候應(yīng)事先計(jì)算好眠菇,為樹(shù)莓派選擇合適電流(功率)的電源,當(dāng)外接設(shè)備功率較大時(shí)袱衷,應(yīng)該采用獨(dú)立的電源為外部設(shè)備供電捎废。
? 11:WiFi及藍(lán)牙模塊
? WiFi功能讓樹(shù)莓派能夠以無(wú)線(xiàn)的方式接入計(jì)算機(jī)無(wú)線(xiàn)網(wǎng)絡(luò)實(shí)現(xiàn)互聯(lián)互通,藍(lán)牙功能則讓樹(shù)莓派能與具備藍(lán)牙功能的設(shè)備(如鼠標(biāo)致燥、鍵盤(pán)登疗、手柄等)進(jìn)行連接使用。目前嫌蚤,僅3B型谜叹、3B+型和Zero W型樹(shù)莓派自帶WiFi和藍(lán)牙功能(兩者集成在一個(gè)芯片上)匾寝,對(duì)于其他型號(hào)的樹(shù)莓派,您可以通過(guò)外接USB WiFi(藍(lán)牙)適配器實(shí)現(xiàn)荷腊。我們將在后續(xù)章節(jié)對(duì)WiFi和藍(lán)牙的使用作進(jìn)一步介紹艳悔。
? 12:以太網(wǎng)供電(PoE)接口
? 有源以太網(wǎng)(Power Over Ethernet, PoE)是指利用以太網(wǎng)進(jìn)行電力傳輸?shù)囊环N技術(shù)。樹(shù)莓派3B+型在原有的Micro USB和GPIO供電的基礎(chǔ)上女仰,新增了以太網(wǎng)供電方式猜年,用戶(hù)可以使用網(wǎng)線(xiàn)為樹(shù)莓派供電,而不需要配置額外的電源疾忍,這為某些應(yīng)用場(chǎng)景提供了極大的便利乔外。
? 自2011年12月第一款樹(shù)莓派問(wèn)世以來(lái),樹(shù)莓派基金會(huì)已經(jīng)發(fā)布了多個(gè)版本的樹(shù)莓派主板一罩,各版本的差異如表2.1所示杨幼。通常,功能較多聂渊、性能較高的版本差购,其體積和功耗也相對(duì)較大,我們應(yīng)該根據(jù)實(shí)際需求選擇合適的版本汉嗽,而不是盲目的使用功能多欲逃、性能高的版本。根據(jù)實(shí)際需要饼暑,在后續(xù)的章節(jié)中我們將主要使用樹(shù)莓派3B+型進(jìn)行介紹稳析。
2.2 樹(shù)莓派軟件
2.2.1 操作系統(tǒng)
? 樹(shù)莓派支持多種操作系統(tǒng),主要基于Liunx和Windows弓叛,大多可以在樹(shù)莓派基金會(huì)的官網(wǎng)(www.raspberrypi.org)找到彰居,以下簡(jiǎn)單介紹兩款具有代表性的操作系統(tǒng)。
-
Raspbian
? Raspbian是樹(shù)莓派基金會(huì)的官方操作系統(tǒng)撰筷,基于Debian GNU/Linux定制裕菠,能運(yùn)行在所有版本的樹(shù)莓派主板上。根據(jù)使用經(jīng)驗(yàn)闭专,Raspbian與樹(shù)莓派結(jié)合得最好奴潘,運(yùn)行穩(wěn)定、功能強(qiáng)大影钉、使用方便画髓,基本能滿(mǎn)足各種應(yīng)用需求,因此強(qiáng)烈建議將Raspbian作為樹(shù)莓派的首選操作系統(tǒng)平委。在后續(xù)的章節(jié)中我們將進(jìn)一步對(duì)Raspbian的使用作詳細(xì)的介紹奈虾,并在上面進(jìn)行各類(lèi)應(yīng)用開(kāi)發(fā)。 -
Windows 10 IoT Core
? Windows 10 IoT Core是微軟公司專(zhuān)門(mén)為物聯(lián)網(wǎng)生態(tài)打造的操作系統(tǒng),Windows 10 IoT Core則是Windows 10 IoT操作系統(tǒng)的核心版本肉微,功能相對(duì)精簡(jiǎn)匾鸥,可以在2B型以上的樹(shù)莓派運(yùn)行。Windows 10 IoT Core的安裝和使用在此就不作詳細(xì)介紹碉纳,有興趣可訪(fǎng)問(wèn)微軟公司的網(wǎng)站獲取更多的資料勿负。
? 除以上介紹的兩款操作系統(tǒng),還有多款支持樹(shù)莓派的操作系統(tǒng)劳曹,如Ubuntu MATE奴愉、OSMC、LibreELEC铁孵、PiNet锭硼、RISC OS等,至于選擇那一種蜕劝,則取決于您想要用樹(shù)莓派做什么檀头。如果想將樹(shù)莓派作為普通的計(jì)算機(jī)使用,或用于電子項(xiàng)目開(kāi)發(fā)的話(huà)岖沛,那么Raspbian是個(gè)非常好的選擇暑始。如果您打算將樹(shù)莓派作為媒體中心使用,那么可以考慮使用OSMC或LibreELEC烫止。
2.2.2 編程語(yǔ)言
? 對(duì)于樹(shù)莓派來(lái)說(shuō),有許多編程語(yǔ)言可用戳稽,事實(shí)上任何可以為ARM架構(gòu)編譯的語(yǔ)言(如C語(yǔ)言等)都可用于樹(shù)莓派馆蠕,其中最流行的語(yǔ)言應(yīng)該算Python。事實(shí)上惊奇,樹(shù)莓派名字中的Pi就是受單詞Python的啟發(fā)而取的互躬。Python是一種解釋型、面向?qū)ο笏汤伞?dòng)態(tài)數(shù)據(jù)類(lèi)型的高級(jí)程序設(shè)計(jì)語(yǔ)言吼渡,功能強(qiáng)大、兼容性好乓序、可靠性高寺酪,Python程序易于編寫(xiě)和閱讀。當(dāng)前替劈,Python有兩個(gè)主要版本:Python 2和Python 3寄雀,兩個(gè)版本一直保持有更新維護(hù),但人們對(duì)到底該使用哪個(gè)版本至今仍存在爭(zhēng)議陨献,您可以訪(fǎng)問(wèn)Python的官網(wǎng)(www.python.org)了解更多的相關(guān)內(nèi)容盒犹,今后我們將主要使用Python 3進(jìn)行開(kāi)發(fā)介紹。另外,由于樹(shù)莓派的兼容性非常好急膀,我們?cè)?B+型上寫(xiě)的程序幾乎不需要要修改就能在Zero W型上運(yùn)行沮协。
2.3 本章小結(jié)
? 本章介紹了樹(shù)莓派主板的主要部件和功能,并對(duì)各版本的樹(shù)莓派進(jìn)行了比較卓嫂,同時(shí)介紹了樹(shù)莓派的操作系統(tǒng)和編程語(yǔ)言慷暂,讓讀者對(duì)樹(shù)莓派有個(gè)基本的了解,為接下來(lái)的課程打基礎(chǔ)命黔。