「老師,我學嵌入式系統需要買一塊開發板嗎?」這是許多剛入門嵌入式系統的朋友,最常問的一句話。尤其從軟體業界轉行的朋友表示,他們才剛踏入嵌入式系統領域,硬體一點也不熟。一塊開發板少則 NT$4000 ~ NT$5000,多則一萬多元,實在買不下手。加上不知道哪塊開發板好?或者應該跟哪個廠商買?所以如果可以用「軟體模擬」的話,不僅省錢,也不會買了不適用而後悔。對於這樣的疑問,我都斬釘截鐵、帶著詭異的微笑、用短到對方無法接受的語句回答說:「要!」
「呃...可是...」「要!」「那...可不可以...」「不行!」滿足了自己捉弄別人的一點小小樂趣後,我會正經八百地解釋道:「學電腦不可能不上機 就學得會。就像學開車,你也不能光憑想像就考得上駕照。你可以不買車,先跟別人借車來練。但沒辦法天天對著鏡子想:『我會開車、我會開車、我會開 車...』就考上駕照。同理,你可以先跟補習班或朋友,借板子來學,但不能靠催眠來學會嵌入式系統。」
在這裡先幫某些讀者解釋一下何謂「開發板」 。某些廠商,會把目前在嵌入式業界流行的 CPU,搭配上各式各樣的周邊,做成一塊電路板,賣給嵌入式教育市場,或有志學習嵌入式系統的學生,作為實驗平台之用。這種板子,我們就稱它為「開發板」、「評估版」。英文叫做「Evaluation Board」,或簡稱「EVB」。
其實這個名詞最早來自業界。一些想推廣自家產品的晶片商,為了展現產品優點,吸引下游系統廠商使用,會自己「兜」出一塊「Demo」用的板子。雖然把產品配合其它電路,把整個系統做到好,並非晶片廠商該做之事(有點撈過界,一口氣把下游廠商該做的電路整合工作全包了)。但為了吸引買家,不得不這麼做。這就是業界口中的「評估板(EVB)」、「開發板」、或「Demo Board」。
開發板為了展示主晶片的最大能耐,通常集合了最多的周邊電路。真正的產品,會把不需要的周邊拿掉,以減低成本。不過這種情況在嵌入式教育領域,就跟業界作法相反。每位老師無不希望拿到的板子上,有最多的周邊,能夠用一塊板子教所有課程。這就是為什麼一塊開發板會貴到讓同學買不下手的原因。
「難道沒有用軟體模擬的解決方案嗎?」我當初學嵌入式系統也是這麼想。後來找到「SkyEye」以及「QEMU」這兩套不錯的模擬軟體。用了一陣子發現,嵌入式系統最難的,就是用軟體去控制那些硬體。而當今的模擬軟體,是無法讓您很紮實地學到控制硬體的技巧的。至少,控制真正硬體時那些要注意的物理特性(比如:XX 元件要先拉高電位 10 奈秒後,才能穩定到可以初始化下一個硬體元件,此時您就得去算出要用幾圈空迴圈,讓系統延遲 10 奈秒),軟體模擬就學不到。
要買開發板嗎?答案已經很明顯了吧?
留言列表