[*] 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

    文章

    23794

    瀏覽量

    672623
  • 驅動
    +關注

    關注

    12

    文章

    1912

    瀏覽量

    86724
  • Linux
    +關注

    關注

    87

    文章

    11497

    瀏覽量

    213284
  • 開發板
    +關注

    關注

    25

    文章

    5625

    瀏覽量

    103689
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

    linux驅動是連接軟件和硬件的一個中間介質,實現了對硬件的配置和控制。進一步將硬件抽象化,為軟件操作硬件提供了簡單的接口。不論硬件的具體形式如何,linux
    的頭像 發表于 11-29 10:28 ?2962次閱讀
    <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 ?5249次閱讀

    如何編寫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
    主站蜘蛛池模板: 成人三级在线播放线观看 | 亚洲人成伊人成综合网久久 | 欧美 激情 在线 | 亚洲最新视频 | 欧美成年性色mmm | 中文网丁香综合网 | 亚洲一区 在线播放 | 伊人久久天堂 | 亚洲午夜综合网 | 日韩一区二区在线观看 | 免费一级片在线 | 一级毛片在线看在线播放 | 欧美人成绝费网站色www吃脚 | 日韩免费精品一级毛片 | 一区二区三区四区在线不卡高清 | 黄色网址视频在线播放 | 五月婷婷视频在线观看 | 亚洲国产成人久久精品图片 | 看全黄大片狐狸视频在线观看 | 韩国韩宝贝2020vip福利视频 | 日本黄网站高清色大全 | 午夜欧美| 免费在线一区二区三区 | 欧美成人午夜 | 亚洲人成伊人成综合网久久 | 天天综合天天添夜夜添狠狠添 | 中文字幕一区二区三 | 日日射夜夜 | 91国内在线视频 | 扒开末成年粉嫩的流白浆视频 | 97久久草草超级碰碰碰 | 男人j进女人j的一进一出视频 | 韩国三级久久精品 | 亚洲视频一区 | av手机在线播放 | 天天怕夜夜怕狠狠怕 | www国产永久免费视频看看 | 黄色网址有那些 | 欧美福利精品 | 三级黄色片在线播放 | 亚洲人成亚洲人成在线观看 |