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