安安
关于你一般软轫体工程师是否要有靠原厂release的spec 及example code就能开发一个系统的能力
我想系统这个名词定义很广泛
有人会跟你说整个系统是指你整个single thread的program(搞不好只用一个while loop + interrupt + IO control)
也有人会跟你说整个系统是指你这块板子bootloader + OS + application
也会有人跟你说整个系统是指你这个产品(例如server) + 其他产品(switch)的整合
甚至有人跟你说整个系统是指....我讲不完
但我认为一般轫体工程师要会的不外乎就是会这几项
1. 看懂Makefile, 会修改Makefile, 可能会自己写Makefile, 熟悉各种compiler
2. Booting sequence, booting有问题要会修改assembly code
3. Component's driver (flash, sensor, LCD , LED 等等)
4. 一般常用的Interface (UART, SPI, I2C, PCI)
5. 一些领域特有的interface (网通或是音讯等)
6. 不同种的bootloader或是OS间的整合(jumping or booting)
7. 会写各种components's unit test
8. DMA, Timer, MMU 吧拉吧拉
这些东西大都是F/W 的日常, 学士差不多35K, 硕士40K吧, 每年加薪3 ~ 5 %
CP值不如卖卤味鸡排
※ 引述《suspect1 ()》之铭言:
: 老鲁我自从接下写韧体的工作后,真正了解自己的不足与废。
: 老鲁的工作其实很基本,就是在一个32-bit MCU 读取sensor的值
: 透过的界面都是常用的(UART、I2C、SPI....)。老鲁每次都是靠
: 狂拜google大神,参考别人的code然后copy paste拼拼凑凑之后
: 惊险过关。每次虽然都有小小的成就感,却也更加没自信,因为
: 毕竟code都是参考网络上的,自己实际写出来的不多。也还好目前
: 敝公司采用的平台很多open source,但我也有想过一旦换了别家厂商
: 假设几乎没有范例参考下,我光有硬件spec、timing diagram可能
: 就写不出来
: 不知道一般正常的韧体工程师是否要有靠原厂release的data sheet
: example code就能开发一个系统的能力?