本書循序漸進地介紹Pi從如何建置到執行有趣的專題,可由此了解到如何選擇並連接適合的硬體,並自己動手安裝Debian作業系統與撰寫韌體來升級週邊的硬體功能。
接著是有趣的部分,您可透過Pi連接家中網路並上網聊天。並可了解如何使用Pi上的Midori瀏覽器,再者可利用Pi來當作公共資訊機(kiosk system),可用來顯示Twitter的資訊。您也可從此書中了解如何透過Pi來控制家中的電腦。
所謂的Raspberry Pi或Pi是款相當成熟的桌上型電腦,只需花費約35塊美金的價格,就可以擁有上網、播放高解析度影像的功能。此外,由於作業系統採用Linux,因此您不需額外支付作業系統的費用。以上這幾點,可能會讓Pi成為電腦歷史上第一臺拋棄式電腦。
Raspberry Pi這類的電腦將會在不久的未來產生大幅的影響力,這種小又便宜的裝置將引領我們進入一個微電腦普及的新大陸,而您可能就是其中的一份子!《Raspberry Pi快速上手指南》循序漸進地教您如何從選擇與連接適合的硬體,到自己動手安裝Debian作業系統與撰寫韌體來升級週邊的硬體功能。此外,您也會從《Raspberry Pi快速上手指南》中學到Pi能執行哪些有趣的專題,並了解如何透過Pi來控制家中的電腦。《Raspberry Pi快速上手指南》將帶領您一步步進入這個新世界!
作者簡介:
梅克‧施密特Maik Schmidt
擔任軟體開發人員超過15年以上,為中型企業建立過許多複雜的解決方案。除了日常工作之外,還替電腦科學雜誌撰寫書評及文章,並為開源軟體編寫程式碼。在業餘時間,喜愛閱讀、寫部落格以及潛水。曾著有《Enterprise Recipes with Ruby and Rails》、《Enterprise Integration with Ruby》與《Arduino快速上手指南》等書。
譯者簡介:
周均健
國立中山大學機械系,義守大學管研所畢。目前於馥林文化擔任《Make》與《ROBOCON》國際中文版主編,泰電電業股份有限公司媒體與投資事業部經理。著有《十分鐘理財》。
謝瑩霖
國立臺灣師範大學應用電子系畢,目前於馥林文化擔任《Make》與《ROBOCON》國際中文版編輯。
章節試閱
認識Raspberry Pi
在您第一次使用Raspberry Pi之前,最好先熟悉它的連接插頭以及它能做些什麼。這麼做將有助於您未來找尋專題方向,以及選擇週邊硬體。舉例來說,您需要電源供應器、鍵盤、滑鼠與螢幕。在此章節中您也能了解哪一個裝置最適合您自己的Pi。
1.1 了解硬體
替Pi開箱是一件非常令人興奮的事。通常的情況下,Pi都和一兩頁的電子設備安全指引與快速上手指南放在一個硬紙板製的普通紙盒裡,所以它還是比不上替Apple產品開箱來得過癮。
第一版的Pi是一塊信用卡大小的單板電腦(single-board computer),而且沒有外殼,感覺只能吸引徹頭徹尾的極客(geek)而已。從某種角度來看,它類似您小時候可能打開過的許多電子設備的內部結構。而最新版的Pi或許會有外殼,但到那時候我們應把焦點擺在板子的內部功能,這才是最重要的,不是嗎?
Pi裡有甚麼
Pi大致上可分為A、B兩種模組,其中模組A比較便宜,但相對模組B而言,連接插頭較少。接下來的內容裡我將會詳細描述這兩者的不同點在哪兒,但在我撰寫此書時,模組A仍然還是無法購買(譯註:2013年2月4日已可購買,但銷售區域只限於歐洲)。所以在本書中我會將重點放在模組B。下圖為模組B的俯視圖。
所有Pi的模組都採用相同的運算核心:一塊名叫BCM2835的系統單晶片(SoC),常用於智慧型手機中。它的特徵是便宜、高效率,而且不耗電,也因此Raspberry團隊認為這塊晶片最適合Pi來使用。
相對於一般的電腦架構,系統單晶片整合了中央處理器(CPU)、圖像處理器(GPU)與記憶體到一塊小小的板子上。這塊BCM2835採用了700Hz的ARM1176JZ-F中央處理器、512MB的隨機存取記憶體(RAM)以及名為VideoCore IV的圖像處理器。第一批生產的Pi只有256MB的隨機存取記憶體,當您要購買Pi時,須注意記憶體容量是否為512MB。
對純使用者來說,圖像處理器是比較麻煩的區塊,由於它的設計及韌體部分有專利,所以原始碼並不開放。對於某些Pi的使用者來說這個問題並不要緊,但對於極度支持自由軟體的使用者來說心裡會有疙瘩。但至少製造商博通(Broadcom)在柏克萊軟體散布授權條款(BSD,Berkeley Software Distribution)下釋放了圖像驅動器的原始碼。
Pi上大多數的連接插頭您應該都很熟悉。舉例來說,在Pi模組B的這塊板子上,您可找到兩個一般大小的USB插頭,您可用它來連接鍵盤與滑鼠。您也可找到一個micro-USB插頭,但它只能用來供電,所以您無法用它來連接更多裝置。假若您需要連接更多的裝置,那麼您必須將它們連接到一個USB分接器。相對來說,模組A只有一個USB插頭,所以您可能總會需要一個額外的USB分接器。
您可直接透過模組B上的乙太(LAN)插頭直接將Pi與網路相連,而模組A並沒有乙太插頭,但您可以透過附加一個USB-to-Ethernet轉換器來連上網。有趣的是,而模組B也是使用它內部的USB硬體來連上網,所以,模組B與有著USB-to-Ethernet轉換器的模組A彼此之間的聯網效能其實並無差別。
由於Pi上配有複合端子(Composite video connector,又稱AV端子)插頭與高清晰度多媒體介面(HDMI,High Definition Multimedia Interface)插頭,您可選擇其中之一將Pi連接到顯示器或電視螢幕上。數位HDMI標準的效能還是比傳統的AV端子標準強得多。使用HDMI,您可以顯示高清畫質的影像,而AV端子卻只能限制在顯示傳統的影像——較年長的極客記憶中兒時的電視影像。您若使用AV端子,高清畫質的影像就無法顯示,而且輸出的畫面會有點閃爍。雖然大多數的電視目前都還附有AV端子接頭,但它這最大的優勢很快地就會全面地被HDMI取代掉。順帶一提,板上並沒有VGA埠,因為Raspberry團隊認為VGA未來也會被HDMI所取代。當然地,您也可以使用轉接頭來將Pi的HDMI影像輸出到一個數位視訊介面(DVI)或視訊圖形陣列(VGA,Video Graphics Array)顯示器。
您可以利用HDMI同時發送聲音與影像,但換作是AV端子的話,您需要另外使用一個音效連接器。這就是AV端子插頭旁邊有個音效插座的原因——您可以將使用標準3.5mm接頭的耳機、揚聲器或是您的音效接收器插上這個插座。
在AV端子埠的左側您會看到包含兩排針腳的擴充接頭,這些針腳大多數是一般用途輸出入針腳(GPIOs,general-purpose input/output pins),您可以用它來將其他電子裝置連接到Pi上。或許您已經從這些針腳的名稱上猜到,它們除了輸出入訊號外並沒有其他的特殊用途,所以您可利用它們來做一些不同的事情。舉例來說,您可以利用擴充接頭將老式的Atari VCS 2600遊戲控制器連到Pi上,這樣就可以使用模擬器來玩您自己最喜歡的8位元遊戲。在第91頁第九章中,您將會學到如何使用擴充接頭,以及親手打造一個小型的硬體專題。
另外您也可在板子上找到其他的連接插頭。CSI連接插頭是用來將攝影機連接到Pi上。DSI連接插頭是將顯示器連接到Pi上。另外還有可用來除錯的JTAG接頭。
Pi的板子上還有五顆表示板子狀態的LED,它們所代表的意義如下:
OK LED用來表示SD卡的存取狀態:當板子在存取SD卡時,該LED會閃爍。這顆LED可以用軟體來控制,所以它所表示的意義並不全然正確。
當Pi接上電源後,PWR LED便會亮起。
FDX LED亮起時,這表示網路連線全雙通。
當網路連線啟動後,LNK LED便開始閃爍。
另外使用10M LED來表示乙太連線的傳輸速率是10Mbit/s或是100bit/s。若該LED恆亮,表示板子的乙太連線傳輸速率達到100Mbit/s。
在以下的圖中您可以看到Pi的背面,而且您也可以看到在板子的右側為SD卡的插槽。
而板子並沒有內建記憶體,所以您必須用SD卡來開機。您在之前可能已經用過SD卡了,因為它是一種使用度非常高的儲存媒介,數位相機、手機以及手持式遊戲機裡都可以看到它的蹤影。SD卡有很多尺寸,而且記憶體容量也不盡相同,範圍從1GB到64GB都有。
什麼是Pi所缺少的
Pi可說是一個便宜又大碗的產品,但仍有部分的好用功能是它所缺少的。例如:Pi中缺少附帶備用電源的實時時鐘(RTC,real-time clock),以及它沒有基本輸入輸出系統(BIOS,Basic Input Output System)。關於時鐘的部分您可透過連接網路時間伺服器來獲取時間,而且大部分的作業系統都是自動這樣做的。至於缺少BIOS的問題,這麻煩就比較大了。
簡單來說,由於BIOS是儲存在唯讀記憶體(ROM,read-only memory)裡的一個程式,在電腦開機時會執行它。除其他事項外,它專門負責新裝置的預設組態以及決定開機順序。舉例來說,您可以利用BIOS指定是要從硬碟開機,或是從光碟機開機。但Pi本身並不沒有BIOS,所以必須每次以SD卡開機。即使您在USB或隨身硬碟中建立了一個非常好用的作業系統,您還是無法開機。當然,您依舊可以使用外部儲存裝置,但是您不能使用這些裝置來啟動Pi。
另外Pi的原始設定並不支援藍牙或是無線網路,但您可以藉由USB適配器(USB dongles)來擴充這些功能。但麻煩的是,大多數的Linux作業系統版本只支援特定的硬體裝置,所以當您要加裝擴充裝置前,請先確認您所安裝的Linux版本是否支援該裝置(在前面第xi頁,〈該如何取得Raspberry Pi及其他額外的硬體裝置〉這段文字中,有到哪裡取得相容硬體的建議)。同樣的事情也發生在其他種類的硬體上,像是麥克風或是網路攝影機。反正只要您的作業系統以及應用程式支援您的裝置,那就什麼問題都沒有了。否則的話,您只好多方嘗試其他的替代裝置來搭配您的作業系統。
現在您已了解Pi上的連接接頭了,在下一節中將為您介紹何種裝置能與Pi搭配。
1.2 其他需知
在第一次打開裝著Pi的箱子後您會很快地發現,Raspberry團隊把「帶您自己的周邊裝置」這句真言發揮得淋漓盡致。為什麼這麼說呢?因為盒子裡只有一塊板子並沒有其他周邊的硬體裝置,您必須利用其他一些裝置來讓這塊板子動起來。而這些裝置大部分您自己的家裡已經有了。
選擇電源供應器
首先,由於這塊板子目前並沒有附電源供應器,所以您必須找到一個附有micro USB接頭的電源供應器。根據Pi的產品說明書內容,A與B兩個模組都需要可提供電壓5V的電源供應器。而且,若您使用的是模組A,則必須採用電流可提供300mA的電源供應器;若您使用的是模組B,則必須採用電流可提供700mA的電源供應器。根據Pi所連接的裝置,它需要的電流甚至會更大。
許多手機的充電器符合Pi的需求,而且這並不是一個巧合。因為手機充電器無所不在,所以Raspberry團隊希望能使用它來替Pi供電。我曾經有一陣子使用三星S II的充電器來當我第一個專題的電源供應器。剛開始還滿好用的,但當我把裝置愈加愈多時,它的表現就無法滿足我的需求了。於是我改用貝爾金(Belkin)所生產的充電器,它可供給的電流高達1A,情況就改善很多了。但若您還是想加裝更多的裝置,還是需要繼續升級您的電源供應器。
有關電源供應,Pi最大的限制是,它的USB埠可提供外接裝置的電流最高只有100mA。所以,只要您的鍵盤與滑鼠需要的電流都是100mA,那在運作上就不會有問題。一般來說,您可以在裝置的背後找到一個上面有著電力特性的小貼紙。如果某個裝置使用的電流超過100mA,遲早您會發現到一些奇怪的反應。為了保險起見,建議模組B採用能供給1A至1.2A的電源供應器,而模組A則採用能供給500mA至700mA的電源供應器。
您可透過有供電的USB分接器來克服上述的問題,但這並不是適用於每個產品。所以,在您購買Pi可使用的額外裝置之前,最好還是先上網查詢一下這個專題的相關資訊比較妥當。
選擇SD卡
即使您有了完美的電源供應器,當開啟Pi時,它還是不能做什麼,因為您需要一塊已搭載作業系統的SD卡。您可以購買事先下載好作業系統的SD卡或者您也可以自行購買空白的SD卡,並且自己下載作業系統(在第14頁的2.2節中會介紹怎麼做)。通常會採用後者,因為這樣能確保您為Pi所準備的軟體為最新、最好的。舉例來說,作者在撰寫本書時,一些事先下載好作業系統的SD卡,它的系統版本是Debian squeeze,但這個版本現已被Debian wheezy(Raspbian)所取代。Raspbian不斷地優化,最新發布的版本自動支援有著512MB隨機存取記憶體的新Raspberry Pi模組。
有部分使用者曾回報SD卡不相容的問題,當您也遇到相同問題時,請參照前言第三節——如何取得Raspberry Pi及其他相容硬體。理論上,您可使用各種容量的SD卡。當然,根據您所安裝的作業系統、應用程式,以及之後在Pi上所建立的資料量多寡,可以知道至少需要多少記憶體容量的SD卡。如同現實生活裡數大便是美的經驗,最好還是採用容量大於4GB以上的SD卡。
接上鍵盤與滑鼠
除非您打算將Pi當作無需使用螢幕、鍵盤與滑鼠的獨立系統(headless system),不然您一定需要鍵盤與滑鼠。或許您手邊剛好有多的鍵盤與滑鼠,只要這些鍵盤與滑鼠的接頭上有USB連接頭,就有可能配合Pi來使用。有時鍵盤內部的USB分接器可能會造成鍵盤無反應或連續出現您鍵盤輸入的字符,其原因在於它從Pi那裡偷了一些電流,而這些電流可能原本是要給其他東西使用的。當您遇到此問題時,請先嘗試更換鍵盤或是將鍵盤連接到可自供電的USB分接器上。但當然最好還是希望鍵盤及滑鼠所消耗的電流小於100mA。
有一些無線鍵盤與無線滑鼠在Pi上運作的不是很好,其原因在於Linux作業系統不支援。所以為避免問題產生,在一開始使用Pi時,您最好還是保守一點,先採用有線的裝置,在確認它們都能正常運作後,再逐一更換為您想使用的其他元件。
一般來說,您將會需要用到兩個以上的USB裝置(或者一個以上,如果您用的Pi是模組A),因此您可以使用USB分接器將多出來的裝置連接到Pi上。為了確保您使用的USB分接器能傳導足夠的電流給所有連接的裝置,在大部分的情況下,最好使用可自我供電的USB分接器。
顯示器的選擇
不同的顯示器需要不同的纜線接頭,因此您可選擇HDMI纜線接頭或是AV端子纜線接頭。若您使用的是HDMI而您的顯示器也有音效輸出,那麼您便已完成這個步驟。否則,您必須額外使用標準的3.5mmTRS連接接頭來連接Pi的音效插座與您的聲音系統。同樣的連接接頭您也可以在iPod的耳機纜線連接頭上找到,當然,您也可以拿它來用。
選擇正確的網路裝置
如果您使用的Pi是模組B,而且想要將它連上網路,那麼您只需要將網路線插入乙太埠即可連網。假若您使用的Pi是模組A,那麼您必須額外購買USB-to-Ethernet轉接接頭。
添加外殼
未來新版的Pi可能會搭配外殼一同銷售,但到目前為止,外殼的部分還沒提供,所以保護Pi的做法就必須您自己去處理。就像許多電子裝置一樣,Pi對於粉塵與可導電表面相當敏感,所以您遲早會將它藏在一個殼子裡。
在Pi社群裡的成員非常有創意,早有一群人自己利用樂高積木,甚至使用紙板做出Pi的外殼。但這些自製的外殼都有個很大的問題,那就是外殼讓Pi的轉接接頭插取變得很不方便。所以,最好的辦法還是到Adafruit或MidMyPi上選購專用的外殼。
除了上述所提到的所有裝置外,您仍需要一臺能獨立作業的電腦來處理一些工作,例如將圖片複製到SD卡中,或是交叉編譯應用程式。所以這樣看下來,要把Pi整個安裝起來感覺沒有像一開始所想的那麼便宜。
當您把所有連接纜線都安裝到Pi上,並將它擺在桌上後,整體看起來就顯得十分雜亂(請參考下圖)。在不管Pi的外觀下,它已經準備好要讓您進行第一次測試了!
認識Raspberry Pi
在您第一次使用Raspberry Pi之前,最好先熟悉它的連接插頭以及它能做些什麼。這麼做將有助於您未來找尋專題方向,以及選擇週邊硬體。舉例來說,您需要電源供應器、鍵盤、滑鼠與螢幕。在此章節中您也能了解哪一個裝置最適合您自己的Pi。
1.1 了解硬體
替Pi開箱是一件非常令人興奮的事。通常的情況下,Pi都和一兩頁的電子設備安全指引與快速上手指南放在一個硬紙板製的普通紙盒裡,所以它還是比不上替Apple產品開箱來得過癮。
第一版的Pi是一塊信用卡大小的單板電腦(single-board computer),而且沒有外殼,感覺只...
作者序
近十年來電腦價格愈來愈便宜,因此電腦現在不只是放在電腦桌下而已,您可發現在生活周遭許多的產品中都有電腦的影子,如:智慧型手機或DVD播放器。雖然電腦已經很便宜了,但您並不會在買雜貨時順手買一台電腦吧。因為您至少要花個幾年來用它,所以您總是在購買電腦時考慮許久。
像Raspberry Pi這類的電腦將會在不久的未來產生大幅度的影響力。所謂的Raspberry Pi或Pi是款相當成熟的桌上型電腦,而且只需花費您35塊美金,就可以擁有上網、播放高解析度影像,此外由於作業系統採用Linux,因此您不需額外支付作業系統的費用。以上這幾點,可能會讓Pi成為電腦歷史上第一台拋棄式電腦。
一開始樹莓派基金會(Raspberry Pi Foundation)設計Pi的目的是用來教小朋友們如何設計程式,因此Pi被拿來當作教學裝置並不意外。而最重要的是您可將Pi當成身旁已有的裝置,舉例來說,當作多媒體娛樂中心或者是便宜但功能強大的網路伺服器,甚至是經典遊戲的模擬器。
此外Pi也能被用來製作電子專題,相對於目前正火紅的Arduino控制板,Pi是採用較成熟的作業系統,因此您可使用較多的程式語言來撰寫您的專題。
像Pi這種小又便宜的裝置將引領我們進入一個微電腦普及的新大陸,而您就是其中的一份子,藉由這本書您可更快速地進入這個新世界。
誰適合閱讀這本書?
任何一位想了解如何使用Raspberry Pi的人都適合閱讀這本書,即使您先前已有其他電腦的使用經驗,從此書中您會了解到Pi還是有些許的不同,因此這本書旨在協助您,避免您陷入一些陷阱中。
您可選擇許多種不同的作業系統給Pi使用,但本書將重點放在適合初學者使用的Debian Linux(Raspbian)上。假若您從未使用過Linux系統或者您已經使用過Linux系統了,都可從(附錄1,Linux入門開始)看起,因為在Pi上執行Linux與在一般電腦上執行Linux有些許的不同。
如果您手邊正好有Raspberry Pi,並按照本書的步驟及範例來做,您將獲得更大的幫助。
近十年來電腦價格愈來愈便宜,因此電腦現在不只是放在電腦桌下而已,您可發現在生活周遭許多的產品中都有電腦的影子,如:智慧型手機或DVD播放器。雖然電腦已經很便宜了,但您並不會在買雜貨時順手買一台電腦吧。因為您至少要花個幾年來用它,所以您總是在購買電腦時考慮許久。
像Raspberry Pi這類的電腦將會在不久的未來產生大幅度的影響力。所謂的Raspberry Pi或Pi是款相當成熟的桌上型電腦,而且只需花費您35塊美金,就可以擁有上網、播放高解析度影像,此外由於作業系統採用Linux,因此您不需額外支付作業系統的費用。以上這幾點,可...
目錄
致謝
序
第一章:認識Raspberry Pi
1.1了解硬體
1.2其他需知
1.3下一階段
第二章:安裝作業系統
2.1 Pi可用的作業系統有哪些
2.2 設置不同作業系統的SD開機卡
2.3 下一階段
第三章 對Raspbian進行組態設定
3.1 初始化您的Pi
3.2 自訂您的Pi設定值
3.3 啟動桌面
3.4 利用高階封包工具(APT)來管理軟體
3.5 下一階段
第四章 對韌體進行組態設定
4.1 更新韌體或系統核心
4.2 對影像輸出進行組態設定
4.3 測試影音系統的組態值
4.4 下一階段
第五章 小插曲:利用Pi建立一個公共資訊系統(Kiosk)
5.1 顯示Twitter的資訊
5.2 自動刷新瀏覽網頁
5.3 下一階段
第六章 將您的Pi連上網路
6.1 在網頁上執行每日待辦事項
6.2 使用Pi中的安全殼協定
6.3 利用Pi分享桌面資料
6.4 將Pi當作網頁伺服器
6.5 在Pi中加入WiFi的功能
6.6 下一階段
第七章 將Pi變身成多媒體娛樂中心
7.1 安裝Raspbmc
7.2 第一次啟動Raspbmc
7.3 添加檔案到XBMC裡
7.4 以遙控方式控制XBMC
7.5 下一階段
第八章 將Pi當成遊戲主機
8.1 玩互動虛構小說
8.2 玩點與敲擊冒險遊戲
8.3 模擬其他平臺
8.4 玩原生遊戲
8.5 下一階段
第九章 以GPIO針腳進行修修補補
9.1您需要用到的材料
9.2 認識Pi的GPIO針腳
9.3 打造一個基本電路
9.4 使用GPIO針腳來控制LED
9.5 打造一個「顯示記憶體容量」的警示設備
9.6 在瀏覽器上展示GPIO的狀態
9.7 萬一裝置無法運作時怎麼辦?
9.8 下一階段
附錄A:Linux 入門
A1.1 第一次接觸
A1.2 導覽檔案系統
A1.3 編輯文字檔
A1.4 管理使用者
A1.5 管理作業程序
A1.6 關機與重新啟動Pi
A1.7 取得幫助
致謝
序
第一章:認識Raspberry Pi
1.1了解硬體
1.2其他需知
1.3下一階段
第二章:安裝作業系統
2.1 Pi可用的作業系統有哪些
2.2 設置不同作業系統的SD開機卡
2.3 下一階段
第三章 對Raspbian進行組態設定
3.1 初始化您的Pi
3.2 自訂您的Pi設定值
3.3 啟動桌面
3.4 利用高階封包工具(APT)來管理軟體
3.5 下一階段
第四章 對韌體進行組態設定
4.1 更新韌體或系統核心
4.2 對影像輸出進行組態設定
4.3 測試影音系統的組態值
4.4 下一階段
第五章 小插曲:利用Pi建立一個公共資訊系統(Kiosk)
5.1 顯示Twitter的...
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。