“常用公式”在线计算,“设计手册”在线查询
驱动程序是怎样与硬件交互的?请大侠赐教~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 支持支持 反对反对

共 1 个关于本帖的回复 最后回复于 2013-6-8 14:11

沙发
. 新来的 发表于 2013-6-8 14:11:45 | 只看该作者
研发埠培训中心
电脑平台我不是很了解,嵌入式上软件与硬件交互,靠的是寄存器或地址映射。我想PC应该也差不多。CPU内部有一些接口模块,比如GPIO,比如SPI等。程序控制模块都是靠寄存器操作,通过写寄存器来配置模块,输入输出数据。寄存器是CPU内一段特殊的内存空间。如果控制这类设备,驱动程序的作用就是把一些对寄存器的操作封装成函数,供上层软件调用。还有些硬件操作是建立在某些通用协议上的,一般会有协议的驱动和硬件驱动两层。地址映射就是把外部硬件的缓存空间映射为CPU可操作的某个内存地址,而这个地址不是在SRAM中真实存在的。这时读写这个地址,实际则是把数据写入了对应硬件的缓存空间,实现了数据交换。还有更为复杂的结构,不过大致看来,与硬件交互就像是读写内存。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注我们

360网站安全检测平台