Linux驱动开发实战的步骤

来源:互联网 发布:美容店 管理软件 知乎 编辑:程序博客网 时间:2024/05/02 23:21

对于一个嵌入式工程师来说,正确的开发驱动的步骤是什么?

 

总结如下:

 

1. 阅读设备的datasheet/spec和开发板的原理图,重点搞清楚设备的连线,驱动电源,驱动时钟,数据的读写方式,初始化流程。

 

2. 写驱动程序,分两步分:(1) 参考Linux的其他驱动源码,充分借鉴和复用。如果没有复用的源码,先想清楚如何设计满足自己的需求,自己设计的时候,尽量简单清楚,不需要设计复杂的子系统,设计给用户层提供简单清楚的使用接口。 (2)初始化设备代码,根据步骤1的理解,配置初始化代码,每一行代码必须非常清楚准。初始化代码的配置必须完整准确。

 

3. 测试设备硬件。根据步骤2的初始化代码,测试硬件的连接,电源 ,信号线,中断线,时钟线,确保硬件正常启动。一般的做法是,启动初始化代码,尝试跟硬件数据通信,获取一些可读的设备信息,比如ID,厂商信息等,来检测设备的通路是否正确。这步需要反复测量,直到确保硬件没有任何问题。否则无法继续进一步调试。这步必须的工具有万用表,示波器。


4.调试Linux驱动部分。

 

5. 根据用户的接口API,写用户测试程序,进行驱动测试。