Linux IIO子系統分析

    最近稍微看了下LKML,發現裏面有一個子系統叫做“IIO”。以前沒有接觸過,所以Google了下。
    IIO子系統全稱是 Industrial I/O subsystem(工業 I/O 子系統)現在還處在有待完善的階段,在內核樹中位於drivers/staging/iio目錄下。
    根據內核說明文檔的描述:工業I/O子系統旨在提供那些在某種意義上作爲模數轉換器(ADC)的設備支持。此子系統的目的在於填補那些分類時處在hwmon(硬件監視器)和輸入子系統之間的設備類型。在某些情況下,IIO和hwmon、Input之間的相當大的重疊。

屬於IIO的設備如下(參考ADI的WiKi):
  1. ADCs(模數轉換器)
  2. 加速度傳感器
  3. 陀螺儀
  4. IMUs(慣性測量單位)
  5. 電容-數字轉換器(CDCs)
  6. 壓力、溫度和光線傳感器
   從源碼的目錄中可以看出,還有:磁力計傳感器、電能功率計、旋變數字轉換器
      可以看出這些外設的確都是工業領域使用的,當然其中的部分在其他領域也用到了,比如
  1. 加速度傳感器、陀螺儀、溫度和光線傳感器在移動設備(手機、平板)中也有廣泛應用。

 
IIO主要框架如下(ADI的WiKi內容):
    
    
   對於IIO的介紹,ADI的WiKi講的比較的清楚,我順手將這個文檔翻譯成了中文,分享如下:

   內核說明文檔也是極有參考價值的,並且較爲詳細。位置:drivers/staging/iio/Documentation
   我也順手翻譯了一下其中的overview.txt文件,分享如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章