分類彙整: 樹莓派之疑難

為何不給力?鍵盤與滑鼠

現今來說一般 USB 的鍵盤或滑鼠,不論是有線的或無線的,在樹莓派上的使用大概都沒有問題了,如果不幸碰到問題,那就把它當成是一次學習的機會,說不定會有一個美好的回憶!首先請你檢查所用的電源供應器(請參照欲善其事, 先利其器: 樹莓派的電源),當然也可以使用供電型的 USB 集線器 HUB 來確認是不是供電的問題。同時請檢查看看是否是大家已熟知有問題的 USB  鍵盤或者是滑鼠,假如至此仍然不能得到問題的解決,那你很可能碰到了 USB 裝置的相容性的問題,此時大概也只有找一個相容於樹莓派的裝置一途了。

或許你還可能遇到,比方說鍵盤雖然可以動作但是工作不正常,就像按鍵會自動重複等等,一般來說這類的問題統稱為 USB 裝置的驅動程式相容性問題,通常是不容易在很短的時間內就得到解決的。此時如果上網 Google 一下,也許是個值得推薦的好辦法,因為說不定有些人已經解決了這個問題。

︰為了行文簡潔起見,此後綠色的語詞標記為網路鏈接,請點擊後到達相關的網頁,然而由於網際網路時時刻刻都會變遷一事,萬一鏈接不到,也只能先說聲抱歉了。

開機沒畫面?Noobs 安裝

如果你閱讀過 驚鴻一瞥;啟動過程與燈號 一文,你應該能了解 SD 卡對開機的重要性。要成功的把比方說 2014-05-06 的最新發行版NOOBS_v1_3_7.zip 拷貝到 SD 卡,你需要知道『如何準備樹莓派用的 SD 卡?』。雖然 軟體新手 的目的就是為了減少困難工具軟體的使用,但由於不同廠商出產的 SD 卡,容量、速度、檔案系統的規劃不同,所以對 SD 卡的基本了解依然不可缺少。這意思是說︰假如你有一片 SD 卡,容量真的 夠大──有8G以上,速度夠快等級 Class 6 以上,又適當規劃成 fat 類型的檔案系統的空白卡,而且你知道怎麼從 zip 壓縮檔把整個目錄資料拷貝到 SD 卡的根目錄,那把它拷貝進去就完成了開機片了,開機後再使用 Noobs 提供的安裝軟體去安裝你想要的發行系統就可以了。此外 Nobbs 提供開機系統的管裡辦法,能讓你再次選擇安裝其他發行系統。換句話說,假使你的 SD 卡,速度相容於樹莓派硬體而且容量大於 Noobs 建議數值,你只有適當規劃成相容於樹莓派啟動過程的 fat 類型的檔案系統這一關了。即使你很幸運,也許還是了解一下『如何準備樹莓派用的 SD 卡』的好。

適當的模型通常是了解複雜的東西很好的概念工具,對硬碟、SD 卡等等儲存裝置來說,方格紙是一個合宜的選擇。

notebook-paper

你可以把 SD 卡看成依序排列的方格,每一個方格有一個編號代表這個方格。在硬碟的術語上,一個方格是最小儲存單位,稱作磁區 sector。在 SD 卡上一個磁區大小通常為 512 位元組。出於作業系統管理上的方便,以及多個作業系統的共用性考慮,將硬碟分割成若干區塊,每個區塊都可以看成一個可以單獨使用的邏輯磁碟機,稱作分割區塊 partition 。

這些分割區塊為作業系統所使用,規劃成不同的檔案系統,用來管理檔案及目錄。比方說目前 Raspbian 用 ext4 檔案系統,而微軟的  Windows 常用 ntfs 檔案系統,所謂的 fat 檔案系統從 DOS 年代就有,最早用於軟碟機 floppy,這正是樹莓派啟動過程必不可少的分割區塊。那怎麼知道有幾個分割區呢?硬碟一開頭的磁區有一個分割區總表 partition table 說明這個硬碟的邏輯規劃。至此你大概可以猜想到為什麼 Noobs 安裝程式的存在了?

如前所述,使用 Noobs 安裝程式,你只需要知道如何把整個 SD 卡 format 格式化成 fat 檔案系統就可以了。如果你使用 Linux 系統或許你早就知道怎麼做了,假如你是新手,那請你依使用的發行版安裝 gparted 這個應用軟體;如果你使用微軟 Windows、MAC OS … 請到 SD 卡組織下載對應的格式化軟體。假如你使用電腦 HDMI 顯示器,也按照這裡說明的步驟來作了,結果開機沒畫面,那你可能碰到 SD 卡相容性的問題,請參考這裡;如果你使用的是電視上的 HDMI 或 HDMI 轉 VGA 一類的轉換器接上顯示器,請參考這裡

事實上樹莓派早先並沒有 Noobs 安裝程式,而是提供硬碟的映像檔image,比如最新的 Raspbian 的 映像檔是 2014-01-07-wheezy-raspbian.zip,直接安裝後會有兩個分割區塊;而下面是在 Raspbian 終端機上用分割區劃分工具程式 fdisk 指令來看用 Noobs 安裝 Raspbian 系統後的 8G SD 卡,共有五個分割區塊︰

sudo fdisk /dev/mmcblk0

進入後按 p 鍵,列出分割區總表,按 q 鍵離開。顯示如下︰

Command (m for help): p

Disk /dev/mmcblk0: 8068 MB, 8068792320 bytes
4 heads, 16 sectors/track, 246240 cylinders, total 15759360 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000ae11
Device BootStartEndBlocksIdSystem
/dev/mmcblk0p1204829101561454054+eW95 FAT16 (LBA)
/dev/mmcblk0p2291635215693823638873685Linux extended
/dev/mmcblk0p315693824157593593276883Linux
/dev/mmcblk0p52924544304742361440cW95 FAT32 (LBA)
/dev/mmcblk0p6305561615693823631910483Linux

經由前面的說明,可以知道在 Raspbian 系統上整個 SD 卡的裝置名稱是 /dev/mmcblk0,五個分割區塊名稱分別是 /dev/mmcblk0p1,/dev/mmcblk0p2 … /dev/mmcblk0p6 ,其中 /dev/mmcblk0p1 就是放置啟動程式的分割區塊。也就是說映像檔是整個 SD 卡的內容,它包括分割區總表以及各個分割區塊,所以不能用一般的檔案拷貝方法來處理。如果說你想要複製整個 SD 卡,在 Linux 上你可以用 dd 工具程式,在 Windows 上的話,請試試這個軟體

欲善其事, 先利其器: 樹莓派的電源

雖然今天樹莓派已廣為流行, 賣了數百萬台. 你依然需要注意選用的電源供應器. 考察 樹莓派的原始設計:  如 Raspberry-Pi-R2.0-Schematics-Issue2.2_027.pdf , 512M Rev.B  上所說,  F3 保險絲的電阻大約 是 0.28 Ohms, 一般典型使用約為 700mA, 那壓降為 0.196V. 正如網路上曾說好的樹莓派電源供應器,  輸出電壓為 5.25V, 事實是正為了補償壓降損失而來, 才能使 TP1-TP2 間的電壓接近 5V.  如果再考慮供應電線的阻抗, 以及USB其它裝置的供電, TP1-TP2 間的電壓或許將在 5V +- 5% 區間之外, 以致引發某些 USB 裝置的工作不正常.

USB_Power_Input