Re: [問題] Embedded C&C++ 入門書或課程

作者: descent (「雄辯是銀,沉默是金」)   2020-09-24 18:24:07
我自己的學習方向是下面這種的 - non-os,
使用的平台是 stm32f4
購買的學習書籍
https://descent-incoming.blogspot.com/2016/04/books-stm32f4.html
這是我的學習心得
https://descent-incoming.blogspot.com/2015/09/bare-metal-for-stm32f4-discovery-board.html
shorten: https://bit.ly/34d67Z9
這是我自己的學習, 我不是做這方面的工作。
你說的 SSD Firmware Engineer, 如果是在 linux embedded,
可能要學習如何在 linux 下寫 ssd driver。
如果是做 nas 甚至有可能要理解 linux 檔案系統那層,
從而最佳化 nas 的檔案存取功能。
Jserv 的課程可以參考看看, 看哪種 embedded 的工作是你想做的。
我自己認為從 linux embedded 應用程式是最容易進去的 (我是這樣開始的),
網通廠會有類似的工作。就是寫 linux 應用程式, 使用 cross compiler,
使用 cross compiler 大概會是第一個門檻。
另外也會需要使用 corss compiler 移植一些相關程式。
現在有很多開發板, 自己練習已經沒那麼困難了。
也可以試試看樹莓派。
linux 應用程式可以參考:
APUE, The Linux Programming Interface - A Linux and UNIX System Programming
應該這 2 本就夠了。
一般還會需要 shell script 技能, 鳥哥私房菜這本可以提供此技能。
※ 引述《james732 (james732)》之銘言:
: 我覺得embedded看規模與需求,大概會有幾個層次
: 1.沒有任何os,可能只有一個 while (1) 循序處理與一些中斷處理
: 學生時代會寫的8051點亮LED之類的程式就是這種
: 我現在的工作也是這樣的
: 主要就是在RAM與ROM都極少的情況下
: 與外部的Hardware做一些不會非常複雜非常即時的交互
: 在這個架構下,最主要的挑戰應該是怎麼在有限資源達到需求
: 並且在沒有os幫忙調度的情況下,各功能要怎麼協調
: 另外就是要怎麼透過register與晶片的硬體做互動
: 但這個部份每個系列的晶片都不同
: 而且廠商通常會提供sample code使用
: 但不幸sample code不符合需求或有bug時
: 就會需要研究相關的datasheet
: 因為沒有OS或任何的軟體框架,基本上Code也很好寫,愛怎麼寫就怎麼寫
: 直接在邏輯裡存取硬體暫存器也沒人會阻止你
: 但如果有需要跨晶片的需求,就要考慮適當的切分軟硬體邏輯
作者: Lipraxde (Lipraxde)   2020-09-24 18:36:00
<(_ _)> 以前有受惠於大大的文章過
作者: nickchen1202 (Nickchen Nick)   2020-09-24 20:00:00
推大大
作者: sarafciel (Cattuz)   2020-09-25 12:24:00
推descent
作者: lc85301 (pomelocandy)   2020-10-01 00:10:00
推大大
作者: laughingman (笑面男)   2020-10-08 22:58:00
推大大

Links booklink

Contact Us: admin [ a t ] ucptt.com