GPIO设备驱动原理

时间:2008-12-24

  在Linux系统下,字符设备和块设备的主要区别是:在对字符设备发出读/写请求时,实际的硬件I/O操作就紧接着发生了。块设备则不然,它利用一块系统内存作缓冲区,当用户进程对设备请求能满足用户的要求,就返回请求的数据;如果不能,就调用请求函数来进行实际的I/O操作。块设备是主要针对磁盘等慢速设备设计的,以免耗费过多的CPU时间来等待。

  GPIO属于字符设备,其驱动程序的使用可以按照两种方式编译,一种是静态编译进内核,另一种是编译成模块以供动态加载。由于嵌入式Linux支持静态编译和动态加载两种模式,如果考虑到精简内核的需要,这里可以使用动态加载的方法来实现驱动的装载。

  设备驱动程序必须向Linux或者它所在的子系统提供一个标准的接口。例如,USB驱动程序向Linux提供了一个设备文件I/O接口,GPIO设备驱动程序向GPIO子系统提供了GPIO设备接口,接着向提供了文件I/O和缓冲区的接口。

  



  
上一篇:Flash数据存储操作流程
下一篇:用户程序访问GPIO

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料