关于简单驱动的一般流程及自己的思考1
如何写一个驱动
1.搭建框架
找到已有的同类型的进行修改,使该框架符合自己的要求,如需要的入口函数、出口函数、主函数、需要的声明、注册信息等等
2.完善、修改内容
根据硬件对象的要求和结构特点修改完善程序,主要分以下几个过程:
- 看硬件原理图(涉及哪些硬件,有没有没见过的机构,有没有参考对象)
- 看芯片手册(有没有参考对象,看的一般规则,比如根据时序、根据寄存器结构等等,这都是根据对象不同而不同)
- 写代码(有没有参考对象,有哪些约定俗成,哪些可以修改,同参考对象对比哪些不同等等)
个人感觉其实C语言扎实、有一定操作系统及计算机方面的知识就能够在不断学习中进行驱动开发,驱动开发只是个行业载体,是一个方向,而对于驱动这个方向从编程来说难点应该是在驱动和内核沟通的部分,特别是针对那些比较复杂的硬件的驱动以及将他们与内核的沟通结合起来的时候,问题会越发困难,而这也是展现一个驱动开发者实力的地方,所以我认为一个驱动开发的真正高手一定对内核有相当透彻的理解,而不是所谓的一定的了解,共勉!

浙公网安备 33010602011771号