最近在阅读一份固件代码,总结了一些tips:
1. 从main()开始逐层向下分析,经过协议层和硬件抽象层,最后到设备寄存器的读写。
2. 关注头文件中数据结构的定义,因为读到其他部分代码的时候都要refer一下这些定义。比如抽象USB设备的struct,抽象Endpoint的struct和抽象Request的struct等。
最近在阅读一份固件代码,总结了一些tips:
1. 从main()开始逐层向下分析,经过协议层和硬件抽象层,最后到设备寄存器的读写。
2. 关注头文件中数据结构的定义,因为读到其他部分代码的时候都要refer一下这些定义。比如抽象USB设备的struct,抽象Endpoint的struct和抽象Request的struct等。