作者esheep (^^)
看板Soft_Job
标题Re: [请益] 韧体新鲜人请益
时间Wed Dec 20 15:30:42 2017
手机排版,请见谅
一般来说 刚拿到IC的Demo Code 及 Spec, driver 部分的工作大致如下
1. 看Spec 的 IC arch.
重点在知道 这 IC 的主要功能及运作时
的control flow.
2. 看Spec 的 Register 描述
重点在初步厘清 这 IC 可以给你什麽?
以及 不能 给你什麽
3. 看Code IC init 部份
用Spec 中 IC initialization register 当
key words 去找Code,
重点在 call register 的顺序,其次是参
数
4. 看Code data init 部份
一样从 Spec 找key words,
这部分可能需要,也可能不用。
重点在 得知"何时"需重新做 “ 那些”
data init
5. 看Spec data部分时序图
确认data 传输的限制及aligment
看 Code
常见是直接call bus APIs. 知道怎麽用
就行了,不用看进去
5. 看Spec Interrupt
这部分 Code 可能没有或不完整
如果是 Linux kernel 做法都一样,
google 一下就有了
重点:
1. 确认支援的interrupt mode
2. 确认是否需delay, pull H/L
这里容易有 HW 整合的问题,
有问题建议直接找HW协助量讯号
6. 其他
suspend and resume etc.
这部分跟 你们的产品Spec 比较有关
知道 IC 在这些状态下,对应的register
要怎麽设定就行了
结论:
一般 demo code 就只是把IC Spec 写成code 而已,Code 本身不会有太多跟IC 功
能无关的软体架构 或 演算法
I C 控制的code 也就这样,剩下的就是一堆 Limitation, walk around , corner case
handle...
※ 引述《Severus5566 (正义 从天而降)》之铭言:
: 小弟学士社会新鲜人
: 应徵上一个写韧体的职务
: 但大学只有学过C语言跟玩过一点Arduino
: 说来惭愧 自己不知道怎麽阅读DataSheet
: 然後用韧体来控制硬体(写C语言)
: 有爬文 好像控制暂存器还是记忆体位置?
: 恳请大大给点指点
: 可请写韧体的前辈们给我开些书单 让我工作之余时能自己看
: 目前状态:主管给我一些厂商的范例程式码,可是韧体的函式库里面注解不多
: 所以读起来很吃力,也不确定自己理解的是不是对的
: 就像是去GitHub挖一笔资料来看 但不知道有哪些函式可以应用
: 或是这些函式或变数从哪个H档引用来的
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 39.8.72.212
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1513755045.A.9F0.html
1F:→ badyy: 最重要的不是记得下班前把bug清掉吗?? 12/20 17:07
2F:推 x246libra: 谢谢分享。下次来试试看这样的步骤 12/20 18:55
3F:→ esheep: IC control 很少有 bug. 大部分都在说服别人: 请接受 IC 12/20 19:50
4F:→ esheep: limitation 12/20 19:50
5F:推 waterdisney: 本公司没有hw bug,只要sw有workaround的 就不是bug 12/20 20:05
6F:→ waterdisney: ! 12/20 20:05
7F:推 cuteSquirrel: 好文 12/20 21:27
9F:推 R119: 老板:我不接受 workaround 但是 Issue 还是要 SW 解 12/20 23:11
10F:推 YukiTW: 软体要学会强调这不是 issue,而是 spec的说服功力 12/21 10:18
11F:推 Bencrie: 不是应该要把 issue 硬拗成 feature 吗 XDD 12/21 11:46
12F:推 yamakazi: limitation而不是issue 我遇过取样频率太低 ADC前没做an 12/21 12:42
13F:→ yamakazi: ti aliasing filter的硬体 发生aliasing之後叫sw想办法 12/21 12:42
14F:→ yamakazi: 滤掉 12/21 12:42
15F:→ yamakazi: 高频信号都aliasing变超低频了 是要怎麽滤波 12/21 12:43
16F:推 WisdomOrLie: 这看起来比较偏software... 韧体的话…调整硬体跟量 12/22 18:58
17F:→ WisdomOrLie: 测讯号是跑不掉的, 最後可能连QC跟机构的屎都跑不掉 12/22 18:58
18F:→ WisdomOrLie: …………… 12/22 18:58