Re: [請益] 韌體工程師如何選擇方向?
因為我第一份工作也是寫韌體上的GUI,提供一點我的經驗給你參考,
前提是如果你還有要繼續走韌體這條路的話XD
我第一份工作是寫video phone上的GUI,當時還沒有用QT等好物,
一切GUI元件都是前人用C刻出來的土炮,我們的系統是跑Linux,
而我的工作是負責維護修改GUI而已,但是閒暇之餘也跟著team裡的大師們
學會基本的makefile與shell script,把opensource library從configure、make
,然後把library整合到自己的系統上。
走嵌入式系統,特別是嵌入式Linux,其實也有分上下兩層(kernel-space/user-space)。
有些人走user-space,上述的工作應該跑不掉:
把open source整進來系統再呼叫API使用。
比如說openssl,libjpg,libtiff,libesmtp,ffmpeg,gsoap等等,反正就是看案子需要
甚麼功能,然後找open source porting進來用,porting的難度在於把x86的library
搬到arm/mips上的時候多多少少會遇到一點問題,怎麼修改configure或是makefile
讓之可以成功make,就是需要一點經驗跟優良的google能力XD
走user-space開發性質有點像純軟,你不用管太多硬體平台特性,
單純的在ARM上面寫code,只要懂得怎麼build code與燒FW就好了,
如果發覺硬體怪怪的,就把platform team負責的人抓來看XD
之後的第二份工作,一開始丟給我一顆ARM 32bit的MCU,要我用這顆MCU
控制LCD與鍵盤並且與主SOC/副SOC溝通等等。
坦白說,一開始我根本甚麼都不會,不要說示波器了,連怎麼控制GPIO
與填暫存器都不知道XD
幸好,這顆MCU還算熱門,有書可以參考,再搭配板子上的LED等等,讓我開始
學會怎麼用none OS code控制GPIO,SPI,I2C,SSP等等溝通介面與中斷、timer等等。
我建議原PO可以去買一塊開發版,上面沒有OS,單純用none OS code去控制,
(比如說TI的MSP,ST的STM32、或是老牌的NXP LPC等系列),學會最底層的控制,
將來Linux driver,如果把他想的簡單一點,可以說是把底層控制
套上Linux上的framework。
案子做完後,公司開始想要自己開SOC,並在上面跑Linux,所以接著我又開始看
Linux driver與kernel的部分,一邊學怎麼寫Driver,然後跑FPGA驗證,
我們的產品要接PC,所以我也學怎麼寫MFC,好用來跑測試程式。
我建議可以買這本書來看一下,業者出身的作者寫出來的東西,
其實還蠻符合業界狀況的
http://www.books.com.tw/products/0010479889
以上,提供給你參考~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.54.145
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1457151943.A.922.html
※ 編輯: askacis (220.133.54.145), 03/05/2016 12:29:45
※ 編輯: askacis (220.133.54.145), 03/05/2016 12:34:06
※ 編輯: askacis (220.133.54.145), 03/05/2016 12:35:11
→
03/05 12:41, , 1F
03/05 12:41, 1F
※ 編輯: askacis (220.133.54.145), 03/05/2016 12:43:53
→
03/05 12:42, , 2F
03/05 12:42, 2F
→
03/05 12:44, , 3F
03/05 12:44, 3F
→
03/05 12:45, , 4F
03/05 12:45, 4F
※ 編輯: askacis (220.133.54.145), 03/05/2016 12:46:49
→
03/05 12:46, , 5F
03/05 12:46, 5F
→
03/05 12:50, , 6F
03/05 12:50, 6F
→
03/05 12:50, , 7F
03/05 12:50, 7F
→
03/05 12:52, , 8F
03/05 12:52, 8F
→
03/05 13:10, , 9F
03/05 13:10, 9F
→
03/05 13:10, , 10F
03/05 13:10, 10F
推
03/05 13:37, , 11F
03/05 13:37, 11F
→
03/05 13:40, , 12F
03/05 13:40, 12F
→
03/05 13:41, , 13F
03/05 13:41, 13F
→
03/05 13:42, , 14F
03/05 13:42, 14F
→
03/05 13:42, , 15F
03/05 13:42, 15F
→
03/05 13:45, , 16F
03/05 13:45, 16F
→
03/05 13:46, , 17F
03/05 13:46, 17F
→
03/05 13:48, , 18F
03/05 13:48, 18F
→
03/05 13:49, , 19F
03/05 13:49, 19F
→
03/05 13:50, , 20F
03/05 13:50, 20F
→
03/05 13:51, , 21F
03/05 13:51, 21F
→
03/05 13:52, , 22F
03/05 13:52, 22F
→
03/05 13:52, , 23F
03/05 13:52, 23F
→
03/05 13:54, , 24F
03/05 13:54, 24F
→
03/05 13:55, , 25F
03/05 13:55, 25F
→
03/05 13:55, , 26F
03/05 13:55, 26F
推
03/05 16:46, , 27F
03/05 16:46, 27F
→
03/05 17:34, , 28F
03/05 17:34, 28F
→
03/06 12:43, , 29F
03/06 12:43, 29F
推
03/07 13:28, , 30F
03/07 13:28, 30F
→
03/07 13:28, , 31F
03/07 13:28, 31F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 5 篇):
Soft_Job 近期熱門文章
PTT職涯區 即時熱門文章
101
201