对嵌入式驱动的一些理解
驱动是一种软件,这个软件一方面可以直接与CPU、各种总线和外设进行交互,让这些板上的硬件组成单元活跃起来,另一方面,它还与操作系统和应用程序联系,将自己对外的接口嵌入到系统或者应用程序中,当业务需要某一个外设参与时,它就开始活跃了,听从上层的指令,并将旨意传达到硬件资源,让硬件工作。简而言之,所谓驱动,驱而动之,以“主”之意,驱使硬件“动”起来。并不是专指某个通信的驱动或者是某个IO的驱动。准确的来说其实就是输出给用户的SDK包,所有的函数都是以API的形式给出,方便用户直接调用。
一般做工程时,应用程序关心的多数是协议和业务相关的调度,而不关心底层或者硬件的执行过程,也没有必要去关心硬件的执行过程,驱动作为一个库或者调度的接口即可,这时就需要驱动的存在,任何的业务都要有硬件的支撑,驱动的存在,可以将硬件的初始化,读写,配置等基本操作嵌入应用之中,于无声之中操作硬件的执行逻辑,使其工作起来。
资料参考于:http://www.eefocus.com/embedded/406267/r0 感谢博主分享!