2010年12月8日 星期三

Qt Conference 2010 會後感言

image

昨天抽空去參加了 Qt Conference 2010。在此特別把看完後的感覺,寫在這裡與大家分享。

對 Qt 有興趣的朋友,我非常推薦去逛逛官網: http://qt.nokia.com 。寫得很好,資料也很豐富。您一定要去試試看!如果,你不排斥英文的話…

2010年7月14日 星期三

升級至 PowerPoint 2010(一):摺疊「帶狀功能區(Ribbon)」



大家開始用 Office 2010 了沒?恐怕在場的讀者,很多人都跟我一樣,最近才被工作場所要求所逼,帶著一點心不甘情不願,開始面對 Office 2007 或更新的 Office 2010。這篇文章是本系列「升級至 PowerPoint 2010」的第一篇。如同前篇所說,本系列挑選 PowerPoint 為主題,敘述 PowerPoint 2010 比 PowerPoint 2003 新增的功能。如果您跟我一樣,從 PowerPoint 2003 猛然升級上來,想必您也吃了不少苦頭。這系列的文章,是我在升級過程中,覺得 PowerPoint 2010 有趣、特殊的功能,我就會把它寫出來。您可以藉由追蹤此系列教學文,慢慢適應 PowerPoint 2010 的環境與新功能。說不定,您會比較喜歡 PowerPoint 2010 也不一定喔!




新系列教學文:「升級至 PowerPoint 2010」

從這篇開始,我將開闢另一個新系列的教學文:「升級至 PowerPoint 2010」。開闢這個系列的原因,是希望提供讀者除了「嵌入式系統」這個系列以外,另一個選擇。原來的「嵌入式系統」系列文章仍然會繼續發表,喜歡的讀者可以追蹤「嵌入式系統」這個標籤,就可以取得該系列的所有文章。


至於為什麼要選擇「PowerPoint 2010」當做新系列的主題,其實有點私心。因為我是講師,PowerPoint 對我來說,是用得最頻繁的一套軟體。加上我直接從 PowerPoint 2003 直接升級上來(跳過 PowerPoint 2007),在介面、功能上,實在有太多的不同等待我去適應。對我來說,適應新版 PowerPoint,著實讓我吃了一番苦頭。



學嵌入式系統最好準備一台桌機?



是的!如果您想學好嵌入式系統,而不希望在學習過程中,遇上莫名其妙的硬體相容性問題,最好準備一部桌上型電腦。講這句話並非特意給想學嵌入式系統的朋友找難題,實在是因為嵌入式系統的開發板,大多需要連接兩條線:一條是序列埠線,好讓 PC 下達指令,控制整塊開發板用的。另一條是並列埠線,這條線大多透過 JTAG(JTAG 是用來「除錯(Debug)」的一種介面),再與開發板相連。對於嵌入式系統工程師來說,下達指令與除錯,兩者都缺一不可。可惜的是,現在的筆記型電腦(簡稱「筆電」),已經很少看到配備序列埠與並列埠的機種。所以,我會建議最好買一部桌上型電腦(簡稱「桌機」),來解決這樣的問題。


2010年7月10日 星期六

RISC 處理器(下):RISC 處理器的四大特色

看完了「上篇:何謂 RISC」以及「中篇:為何嵌入式系統多用 RISC 架構」後,相信大家對於 RISC 的定義,以及 RISC 的優點,應該有一定的認識了。本篇接著要跟大家介紹的是,RISC 處理器有哪些特色?如果您拿到一顆嵌入式的 SoC ,沒人告訴您它是 RISC 架構,如何光憑閱讀該處理器的文件,就可以斷定它應該是 RISC 架構?我將提供幾個 RISC 架構的特色,讓您以後一看文件,就可以「合理懷疑」這顆處理器是「RISC 架構」。

先將 RISC 架構 CPU 獨有的特色列於下方:
  1. 指令集精簡。
  2. 指令管線步驟較多。
  3. 擁有大量的暫存器。
  4. 僅使用簡單的「Load / Store」來存取記憶體。

2010年7月8日 星期四

RISC 處理器(中):為何嵌入式系統多用 RISC 架構?


看完了上集,不知有沒有人好奇:既然有「精簡指令集(RISC)」,那世界上有沒有「複雜指令集」呢?有的!而且就在你我身邊將近三十個年頭了。那就 是 Intel 與  AMD 出品,廣泛用於現今桌機、筆電內的 x86 架構 CPU。x86 架構 CPU 大量提供所謂「好用指令」,也就是一個指令就可以執行相當複雜的工作。雖然程式設計師會因此輕鬆許多,不過這種指令一旦送到 CPU 內執行,可能得花上比一般指令要高上許多的時間,才能完成。這就沒辦法保證管線一定暢通了。此種 CPU 架構,稱為 CISC,全名 Complex Instruction Set Computing,中譯「複雜指令集」。

那到底是「RISC」好?還是「CISC」好?喔喔喔!問這句話最好小心點!這有點像一個外國人問「國民黨好」還是「民進黨好」一樣,有點 小小危險。實際狀況是,兩大陣營各有優劣,彼此存在三、四十年,也沒見哪個陣營壓過另一個。不過在「嵌入式系統」陣營,RISC 的確有點小小贏面。理由請聽我慢慢道來。


2010年7月7日 星期三

RISC 處理器(上):何謂「RISC」?

 
當您在看嵌入式系統的規格時,您也許會看過這一段:「採用 32 bits RISC SoC」。您知道什麼是「RISC」嗎?

「RISC」的全名是「Reduced Instructioin Set Computing」,中文翻譯成「精簡指令集」。它是一種 CPU 的類型,有著「指令集數量精簡」、「指令管線(Pipeline) 步驟眾多」、「擁有大量暫存器」、「採用 Load / Store 機制」等特色。一下子跟大家介紹這麼多名詞,也許大家會頭暈腦脹。不急!我們一個一個慢慢來。


2010年7月6日 星期二

什麼是 SoC?


剛入門嵌入式系統的朋友,一定會聽過「SoC」這個名詞。一般市售的嵌入式系統入門書,多半不會解釋 SoC 是什麼意思。讀者透過閱讀該書數個章節後,隱隱約約可以感受到 SoC 好像就是個人電腦上的 CPU。但是,為什麼不乾脆直接叫 CPU?要叫 SoC 呢?


2010年7月5日 星期一

如何挑選開發板


如果您真的打算要買一塊開發板,奮力跳進「嵌入式系統」這條不歸路...呃...我是說,富有挑戰性的道路,那麼如何選擇一塊適合自己的開發板呢?

首先,嵌入式系統的領域相當廣。不過大致也可以分成兩條路。一條偏「自動控制」,一條偏「消費性電子產品」或「網路通訊產品」。如果您有興趣的是做出機器人手臂、溫度感知器...這類產品,由於它們的行為有一定的規範,如:能夠鎖螺絲的機器人手臂,動作大致不脫「拿螺絲、對準、鎖上、檢查」等四部分,這類稱為「自動控制」類的嵌入式系統。如果您有興趣的是做出如「電子像框」、「手機」...這些消費性電子產品,或者「路由器」、「網路伺服器」...這類「網路通訊產品」,那走的就是另外一個方向了。您得先決定自己有興趣的是哪個方向,才能選擇適合的開發板。


2010年7月4日 星期日

學「嵌入式系統」需要購買開發板嗎?


「老師,我學嵌入式系統需要買一塊開發板嗎?」這是許多剛入門嵌入式系統的朋友,最常問的一句話。尤其從軟體業界轉行的朋友表示,他們才剛踏入嵌入式系統領域,硬體一點也不熟。一塊開發板少則 NT$4000 ~ NT$5000,多則一萬多元,實在買不下手。加上不知道哪塊開發板好?或者應該跟哪個廠商買?所以如果可以用「軟體模擬」的話,不僅省錢,也不會買了不適用而後悔。對於這樣的疑問,我都斬釘截鐵、帶著詭異的微笑、用短到對方無法接受的語句回答說:「要!」

「呃...可是...」「要!」「那...可不可以...」「不行!」滿足了自己捉弄別人的一點小小樂趣後,我會正經八百地解釋道:「學電腦不可能不上機 就學得會。就像學開車,你也不能光憑想像就考得上駕照。你可以不買車,先跟別人借車來練。但沒辦法天天對著鏡子想:『我會開車、我會開車、我會開 車...』就考上駕照。同理,你可以先跟補習班或朋友,借板子來學,但不能靠催眠來學會嵌入式系統。」


2010年7月3日 星期六

為何嵌入式系統要叫「嵌入式」?


我曾經被一位想踏入嵌入式系統領域的朋友問道:「嵌入式系統到底『嵌入』什麼東西啊?」第一次聽到這個問題,我也楞了一下。過了幾秒鐘,我才想到一個不錯的答案:「嵌入式系統是把『作業系統』嵌入到『應用軟體』之下,讓使用者只看得到『應用軟體』,而看不到『作業系統』。」

2010年7月2日 星期五

如何認識一塊嵌入式電路板

想踏入嵌入式系統的朋友們,最常問我的一句話就是:「紀老師,我想要把作業系統移植到這塊板子上。我拿到這塊板子,要讀懂哪些硬體規格,才有辦法順利移植呢?」

好問題!嵌入式系統的特色就是每塊板子都不一樣,充分地「客製化」!所以我也很難寫一篇「Step by Step 移植作業系統」、或是「快快樂樂移植嵌入式作業系統」的文章給您。不過的確有些共通之處。我就在這裡告訴您!