粘貼不了新的東西(粘貼突然不能用了)
1240
2022-05-30
單片機和嵌入式,我喜歡用兒子和爸爸這種關系去區分它們。
我當初是通過嵌入式挖到了單片機開發,所以說單片機和嵌入式是一個包含關系,嵌入式包含了單片機。
這層關系一定要先搞清楚。
嵌入式總共分為以下幾個主流方向:
1. 單片機開發工程師
需要學習的知識大概如下:
①學習C語言、匯編
②學習51、STM32單片機
③學習常用Usart、IIC、SPI、can協議。
④能看懂數據手冊基本參數
⑤能看懂電路原理
⑥熟悉繪圖工具(AD)使用。
2. Linux系統開發工程師
需要學習的知識大概如下:
①熟悉uboo移植、內核kernel的裁剪。
②熟悉Linux設備驅動開發
③熟悉ARM CPU架構、Linux內核、內存管理、進程調度、文件系統、網絡原理等。
④熟悉常用外設驅動Usart、IIC、SPI、Nandflash、MMU等
⑤熟悉Bootloader開發
3. Linux應用工程師
需要學習的知識大概如下:
①.熟悉C和C++
②熟悉Linux系統文件、進程、內存共享、消息隊列、信號、多線程、網絡等
③熟悉GTK或者QT
④熟悉視頻、音頻、Ble等算法協議。
4. 安卓系統開發工程師
需要學習的知識大概如下:
①.熟悉Linux內核與驅動程序開發
②熟悉Android框架開發和維護
③熟悉Android Hal和framework開發
④熟悉JNI/NDK開發。
⑤熟悉Android下網絡編程。
⑥熟悉C,C++,java,Shell編程語言。
每個方向所需要的學習的課程內容是不一樣的,1和2是偏硬件驅動層,3,4是更偏重應用層。
很多人喜歡去評價,說哪個方向比哪個好。
我做了這個行業10年來說說自己的看法。
這4個方向,沒有說哪個比哪個好,如果單純用工資去衡量,這種方式并不客觀,可能會影響到你的判斷和選擇。
當初我就是這樣,哪里工資高就去哪里,完全沒考慮到一個行業的發展趨勢。
最終導致的結果就是,你的收入很容易到達瓶頸,再怎么也漲不上去。
所以,這個首先看你個人的一個擅長或者興趣領域。
如果你的動手能力強,可以往單片機開發方向和Linux系統開發方向。
如果你想偏軟件的,不想碰硬件,往Linux應用開發和安卓開發。
如果你是剛入門這塊的話,我建議是先從單片機開發上手。
很多人說單片機開發很簡單,沒前途,不否認單片機開發工資確實低一點,因為大多數開發都是在做應用,單片機就是一個工具,你只會用工具工資還想高到哪里去?
如果你能獨立完成產品軟硬件設計看看?
會藍牙、Zigbee、NBIOT、WiFi開發看看?
這些也都是單片機,只是在單片機內部加了特殊模塊(BLE、Zigbee)集成的SOC。
這個大家可以去招聘平臺搜搜看,搜嵌入式大多數都是單片機開發的職位,比如STM32之類的,足以說明市場之大,市場大意味著工作也好找。
還有一點就是局限性,用單片機做產品基本個人都能完整整個技術部分,包括硬件和軟件設計。
而Linux或者安卓方向卻很難,拿安卓來開發來說,他需要有Linux系統開發工程師把系統移植到ARM或者其他架構下的芯片里,然后把外設驅動都調好,安卓系統才能基于這上面跑起來。
所以如果你想后期自己創業做產品,單片機方向是比較合適的,只要你有豐富的經驗,完全可以自己一個人獨立開發一款產品。
當然,如果你完全是看工資,那往Linux和安卓方向比較適合你。
單片機 嵌入式
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。