开发者社区> 问答> 正文

Linux驱动是如何实现热拔插的?

我用树莓派(一个安装linux的开发板)连接ds18b20温度传感器做小实验,安装好驱动后,发现温度传感器连接树莓派的一个IO引脚后,驱动模块会自动加载,请问linux是怎么探测到传感器连接的呢?
是因为探测IO口的电流或电压变化吗?如果是这样是不是有一个线程一直在查询?还是中断实现的?如果是中断实现的,难道那么多IO引脚都注册了中断吗?
我对系统内核、驱动不是很了解,所以请大神们能不能通俗的给我讲解一下?

展开
收起
a123456678 2016-06-22 15:27:02 2062 0
1 条回答
写回答
取消 提交回答
  • 我应该可以回答一下这个问题。
    1.ds18b20温度传感器是onewire总线的方式连接到树莓派的。
    2.是中断的方式实现的。
    3.不是每一个IO都注测成onewire总线了,应该是某一个特定的GPIO注册成onewire了。

    2019-07-17 19:45:39
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载