「否定的智慧比肯定的智慧更有用」
-行為的藝術。
「用最少的錢做最多的事」是台灣人只差在沒刺青在身上,奉行不渝的金科玉律。
這句話不能說完全不對,但若任何事情都照這個準則去作,恐怕是大有問題。
就如同有一點數學基礎的人都知道,要駁倒一條數學定理,你只要舉出一個反例即可。
以下的案例是否可以作為反例?留給各位思考
步進馬達
n 年前曾經碰過一個 case,某個客人他已經有一個產品是一塊 ARM SoC 的板子搭載一具攝影機,他想再加一個步進馬達控制攝影機的轉向。當然照一般人的想法就是叫 ARM 去做這件事,開玩笑,ARM 耶,運算能力這麼強,推個步進馬達不過是小菜一碟。
- 板子上已經搭載 Linux,而 OS 提供的 delay 會彈跳,不適合拿來作為推動步進馬達的方波運算用。
- 要精準的推動步進馬達只有靠 hardware timer,而使用 hardware timer 必須進入 Linux kernel mode,kernel mode program 當掉整個系統也隨之摧毀。
- hardware timer 被用光了
- 沒有多的 GPIO,只剩 I2C。
- 影像處理本身就佔用大量 CPU 資源。
如果今天還硬叫 ARM 去推步進馬達,會發生什麼事?會不會馬達乎快乎慢?會不會永遠轉不到定點?如果硬要 cost down 全部叫 ARM 做,能得到一個堪用的產品嗎?
電池壽命
直到有一天,站長的同學跟提起,他們公司正在找熟 MSP430 的人。幾經追問之下才知道,很多開發電池供電設備的廠商,主 CPU 用 ARM 而進入睡眠或省電模式時會用 MSP430 維持起碼的運作,因為 MSP430 的功耗非常低,甚至在 TI demo 中,幾顆檸檬的電量就可以維持 MSP430 的運作。
在這個例子中,除了低估無線通訊與 ARM 的耗電量外,也沒有跟有經驗的專家諮詢正確的作法,一意孤行的結果造成更多金錢人力的損失。
沒有留言:
張貼留言