sysfs方式控制IO

2021-10-01 17:04:26 字數 816 閱讀 5003

一、配置核心

make menuconfig

勾選device drivers-> gpio support ->/sys/class/gpio/… (sysfs inte***ce)選項以開啟sysfs功能

二、測試

echo 976 > /sys/class/gpio/export                       //匯出引腳

echo out > /sys/class/gpio/gpio976/direction //設定方向為輸出

echo 0 > /sys/class/gpio/gpio976/value //寫入0

注:976實際是gpio65,由於我使用的晶元在核心中對gpio進行分類,因此所有的gpio號自加了911為實際操作的編號。
三、固化初始化到核心

我使用的是安卓平台,因此

在device/qcom/msm8909/init.target目錄中新增如下內容,使其開機自動初始化

on property:sys.boot_completed=1

write /sys/class/gpio/export 976

write /sys/class/gpio/gpio976/direction out

chmod 0777 /sys/class/gpio/gpio976/value

write /sys/class/gpio/gpio976/value 0

使用linux平台直接在環境變數中新增上面的echo指令即可

I O 控制方式

裝置管理的主要任務之一是控制裝置和記憶體或處理機之間的資料傳送。外圍裝置和記憶體之間的輸入 輸出控制方式有四種,下面分別介紹 1.程式直接控制方式 計算機從外部裝置讀取資料到儲存器,每次讀到乙個字的資料。對讀入的每個字,cpu 需要對外設狀態進行迴圈檢查,直到確定該字已經在 i o 控制器的 資料暫...

IO控制方式

程式直接控制方式 cpu干預程度 非常的頻繁,io操作開始前,完成後均需要cpu介入,並且在等待io完成的過程中cpu需要不斷的介入進行輪詢檢查,實際上是忙輪詢,極大的浪費了cpu的資源,本質原因還是io裝置與cpu速度差異造成的矛盾,其次的原因是沒有中斷機制,io裝置無法向cpu報告自己的狀態 資...

5 1 2 I O控制方式

裝置管理的主要任務之一是控制裝置和記憶體或處理器之間的資料傳送,外圍裝置和記憶體之間的輸入輸出控制方式有四種。1 程式直接控制方式 計算機從外部裝置讀取資料到儲存器,每次讀乙個字的資料。對讀入的每乙個字,cpu需要對外設狀態進行迴圈檢查,直到確定該字已經在i o控制器的資料暫存器中。在程式直接控制方...