[*] LED Support --- > LED Class Support LED Support for GPIO connected LEDs [*] LED Trigger support --- > 我們的LED驅動是基于GPIO的,因此需要打開內核LED驅動的支持。 內核有兩個對應的驅動程序,分別是 GPIO驅動 和 LED驅動 , 基于GPIO的LED驅動調用了GPI" />

在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何實現Linux下的LED驅動

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-09-27 11:03 ? 次閱讀

LED驅動

我們以imx6ull pro開發板的板載led為例,其板載了一個可控制的Led2,原理圖如下:

圖片

LED2進行上拉電阻,另外一個管腳接到了GPIO5_3,因此GPIO5_3輸出低電平即可點亮LED。下面說明如何控制該LED。

內核配置:

Device Drivers  --- >
  [*] LED Support  --- >
   < * >   LED Class Support
   < * >   LED Support for GPIO connected LEDs
   [*]   LED Trigger support  --- >

我們的LED驅動是基于GPIO的,因此需要打開內核LED驅動的支持。

內核有兩個對應的驅動程序,分別是GPIO驅動LED驅動基于GPIO的LED驅動調用了GPIO驅動導出的函數

LED驅動實現代碼請參考:drivers/leds/leds-gpio.c,它實現了一個leds類,通過sysfs接口對LED進行控制。

設備樹:

leds{
 compatible = "gpio-leds";
 
        led2{
            label = "led2";
            gpios = < &gpio5 3 GPIO_ACTIVE_LOW >;//GPIO_ACTIVE_LOW,代表低電平點亮LED
            default-state = "on";
        };
}

在設備樹中創建一個名為leds的節點,compatible"gpio-leds",這樣可以匹配到leds-gpio.c的驅動。

然后創建一個子節點,名為led2。需要填三個屬性:labelgpiosdefault-state

label :lable是出現在sys目錄下的名字,即生成/sys/class/leds/led2

gpios :前兩個值指定了該LED所連接的GPIO。第三個值可填GPIO_ACTIVE_HIGHGPIO_ACTIVE_LOWGPIO_ACTIVE_HIGH代表高電平點亮LED,GPIO_ACTIVE_LOW代表低電平點亮LED。

這里注意了,gpios屬性的第三個參數,代表該gpio點亮LED是需要高電平還是低電平,注意是點亮LED,細品

default-state :on代表默認情況LED是點亮的,off代表默認LED熄滅

這里又注意了,當defalut-state為on時,實際上gpio輸出的電平,就是gpios屬性中指定的點亮LED時的電平

設備樹配置好后,編譯并更換dtb,然后重啟開發板。可以看到/sys/class/leds/led2目錄:

圖片

/sys/class/leds/led2/目錄下有一個brightnes文件,可以通過echo``cat的方式查看和修改LED的亮度。因為LED連接在GPIO上,所以亮度只有0和1,在本文示例的led2中,0表示點亮,1表示熄滅。

點亮LED:

echo 0 > /sys/class/leds/led2/brightness

熄滅LED:

echo 1 > /sys/class/leds/led2/brightness
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23385

    瀏覽量

    663534
  • 驅動
    +關注

    關注

    12

    文章

    1852

    瀏覽量

    85685
  • Linux
    +關注

    關注

    87

    文章

    11351

    瀏覽量

    210498
  • 開發板
    +關注

    關注

    25

    文章

    5128

    瀏覽量

    98323
收藏 人收藏

    評論

    相關推薦

    linux驅動編寫:從hello world到 LED驅動

    linux驅動是連接軟件和硬件的一個中間介質,實現了對硬件的配置和控制。進一步將硬件抽象化,為軟件操作硬件提供了簡單的接口。不論硬件的具體形式如何,linux
    的頭像 發表于 11-29 10:28 ?2796次閱讀
    <b class='flag-5'>linux</b><b class='flag-5'>驅動</b>編寫:從hello world到 <b class='flag-5'>LED</b><b class='flag-5'>驅動</b>

    嵌入式LinuxLED報警燈驅動設計

    嵌入式LinuxLED報警燈驅動設計及編程《嵌入式Linux
    發表于 11-04 08:18

    LinuxLED驅動原理

    41.1 Linux LED驅動原理Linux 的任何外設
    發表于 12-15 09:11

    Linux驅動的使用

    圖片的保存4、瀏覽功能的實現三、視頻監控代碼分析1、實時監控2、抓拍圖片3、瀏覽四、家電控制1、家電控制內容2、LED控制方法3、Linux驅動
    發表于 02-16 07:19

    LINUX的CAN驅動

    LINUX的CAN驅動:/* * Microchip MCP2515 CAN controller driver. * * Copyright (C
    發表于 08-23 11:56 ?21次下載

    Linux環境USB的原理、驅動和配置

    本文對 Linux 環境USB 的原理、驅動和配置進行詳細介紹。隨著生活水平的提高,人們對 USB 設備的使用也越來越多,鑒于Linux 在硬件配置上尚不能全部即插即用,因此關于
    發表于 01-16 16:57 ?33次下載

    嵌入式LinuxPCSC驅動的設計與實現

    本文分析了PCSC驅動的體系結構,針對嵌入式Linux平臺的基本特征,設計并實現了一個基于嵌入式Linux的PCSC驅動程序,
    發表于 02-24 11:23 ?46次下載

    Linux語音實時通信實現

    在設計嵌入式語音通信系統的過程中,提出了一種Linux 語音實時通信方法。利用Linux OSS 內核驅動
    發表于 05-12 16:34 ?51次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>下</b>語音實時通信<b class='flag-5'>實現</b>

    Linux的網絡HOOK實現

    最近瘋狂的研究Linux的種種功能,也頗有心得,這里講述一Linux的Net的Hook,使用net的Hook可以實現很多很多非常底層的功
    發表于 05-14 10:27 ?5164次閱讀

    如何編寫Linux Nand Flash驅動

    如何編寫Linux Nand Flash驅動
    發表于 10-30 08:36 ?15次下載
    如何編寫<b class='flag-5'>Linux</b> <b class='flag-5'>下</b>Nand Flash<b class='flag-5'>驅動</b>

    基于Linux的LCD驅動程序實現

    基于Linux的LCD驅動程序實現
    發表于 10-30 16:45 ?12次下載
    基于<b class='flag-5'>Linux</b><b class='flag-5'>下</b>的LCD<b class='flag-5'>驅動</b>程序<b class='flag-5'>實現</b>

    ADP8870背光LED Linux驅動

    ADP8870背光LED Linux驅動
    發表于 04-20 17:25 ?2次下載
    ADP8870背光<b class='flag-5'>LED</b> <b class='flag-5'>Linux</b><b class='flag-5'>驅動</b>器

    ADP1650 LED Linux驅動

    ADP1650 LED Linux驅動
    發表于 04-20 20:30 ?2次下載
    ADP1650 <b class='flag-5'>LED</b> <b class='flag-5'>Linux</b><b class='flag-5'>驅動</b>器

    ADP8860背光LED Linux驅動

    ADP8860背光LED Linux驅動
    發表于 05-17 09:13 ?13次下載
    ADP8860背光<b class='flag-5'>LED</b> <b class='flag-5'>Linux</b><b class='flag-5'>驅動</b>器

    嵌入式linux報警,嵌入式LinuxLED報警燈驅動設計及編程.doc

    嵌入式LinuxLED報警燈驅動設計及編程《嵌入式Linux
    發表于 11-01 17:21 ?6次下載
    嵌入式<b class='flag-5'>linux</b>報警,嵌入式<b class='flag-5'>Linux</b><b class='flag-5'>下</b><b class='flag-5'>LED</b>報警燈<b class='flag-5'>驅動</b>設計及編程.doc
    主站蜘蛛池模板: 日本三级全黄三级a | 72种姿势欧美久久久久大黄蕉 | 欧美福利视频网站 | 免费观看视频在线观看 | 88av免费观看 | 成人中文字幕一区二区三区 | 色视频线观看在线播放 | 天天看影院| 一本大道香蕉大vr在线吗视频 | 欧美亚洲天堂 | 香蕉视频一级 | 国产女人在线观看 | 人人干97 | 美女扒开尿口给男人桶爽视频 | 男女交性视频播放 视频 视频 | 国产三级一区 | 日韩免费视频一区二区 | 寡妇影院首页亚洲图片 | 2020天天干 | 成年香蕉大黄美女美女 | 亚洲一区免费 | 4438x成人全国最大 | 欧美成人一区二区三区在线电影 | 福利色播 | 免费视频在线视频观看1 | 午夜精品久久久久久久四虎 | 黄色有码视频 | 亚洲一区亚洲二区 | 日本永久免费 | 亚洲 欧美 综合 | 亚洲午夜综合网 | 欧美色香蕉| 久久天天| 四虎永久免费影院 | 日夜操在线视频 | 成人女人a毛片在线看 | 夜夜精品视频一区二区 | 欧美色图在线观看 | 亚洲成年网| 午夜免费视频 | 欧美操穴视频 |