那曲檬骨新材料有限公司

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

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

3天內不再提示

fireflyAIO-3399J主板LED使用介紹

firefly ? 來源:firefly ? 作者:firefly ? 2019-12-24 10:31 ? 次閱讀

LED 使用

前言

AIO-3399J 開發板上有 2 個 LED 燈,如下表所示:

以設備的方式控制 LED可通過使用 LED 設備子系統或者直接操作 GPIO 控制該 LED。

標準的 Linux 專門為 LED 設備定義了 LED 子系統。 在 Firefly-RK3399 開發板中的兩個 LED 均以設備的形式被定義。

用戶可以通過 /sys/class/leds/ 目錄控制這兩個 LED。

開發板上的 LED 的默認狀態為:

Blue: 系統上電時打開

Yellow:用戶自定義

用戶可以通過 echo 向其 brightness屬性輸入命令控制每一個 LED:

root@rk3399_firefly_box:~ # echo 0 >/sys/class/leds/firefly:blue:power/brightness //藍燈滅 root@rk3399_firefly_box:~ # echo 1 >/sys/class/leds/firefly:blue:power/brightness //藍燈亮

使用trigger 方式控制 LED

Trigger 包含多種方式可以控制LED,這里就用兩個例子來說明

Simple trigger LED

Complex trigger LED

更詳細的說明請參考 leds-class.txt 。

首先我們需要知道定義多少個LED,同時對應的LED的屬性是什么。

在 kernel/arch/arm64/boot/dts/rockchip/rk3399-firefly-aio.dts 文件中定義LED節點,具體定義如下:

&power_led { gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>; }; &user_led { gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>; }; leds { compatible = "gpio-leds"; power{ label = "firefly:blue:power"; linux,default-trigger = "ir-power-click"; default-state = "on"; gpios = <&gpio2 27 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&led_power>; }; user{ label = "firefly:yellow:user"; linux,default-trigger = "ir-user-click"; default-state = "off"; gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; pinctrl-names = "default"; pinctrl-0 = <&led_user>; }; };

注意:compatible 的值要跟 drivers/leds/leds-gpio.c 中的 .compatible 的值要保持一致。

Simple trigger LED

按名字來是看就是簡單的觸發方式控制LED,如下就默認打開黃燈,Firefly-RK3399開機后黃燈就亮

(1)定義 LED 觸發器 在kernel/drivers/leds/trigger/led-firefly-demo.c 文件中有如下添加

DEFINE_LED_TRIGGER(ledtrig_default_control);

(2)注冊該觸發器

led_trigger_register_simple("ir-user-click", &ledtrig_default_control);

(3)控制 LED 的亮。

led_trigger_event(ledtrig_default_control, LED_FULL); //yellow led on

(4)打開LED demo

led-firefly-demo默認沒有打開,如果需要的話可以使用以下補丁打開demo驅動:

--- a/kernel/arch/arm64/boot/dts/rockchip/rk3399-firefly-demo.dtsi +++ b/kernel/arch/arm64/boot/dts/rockchip/rk3399-firefly-demo.dtsi @@ -52,7 +52,7 @@ led_demo: led_demo { - status = "disabled"; + status = "okay"; compatible = "firefly,rk3399-led"; };

Complex trigger LED

如下是trigger方式控制LED復雜一點的例子,timer trigger 就是讓LED達到不斷亮滅的效果

我們需要在內核把timer trigger配置上

在 kernel 路徑下使用 make menuconfig ,按照如下方法將timer trigger驅動選中。

Device Drivers --->LED Support --->LED Trigger support --->LED Timer Trigger

保存配置并編譯內核,把kernel.img 燒到Firefly-RK3399板子上 我們可以使用串口輸入命令,就可以看到藍燈不停的間隔閃爍

echo "timer" > sys/class/leds/firefly\:blue\:power/trigger

用戶還可以使用 cat 命令獲取 trigger 的可用值:

root@rk3399_firefly_box:/ # cat sys/class/leds/firefly\:blue\:power/trigger none rc-feedback test_ac-online test_battery-charging-or-full test_battery-charging test_battery-full test_battery-charging-blink-full-solid test_usb-online mmc0 mmc1 ir-user-click [timer] heartbeat backlight default-on rfkill0 mmc2 rfkill1 rfkill2

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

    關注

    87

    文章

    11345

    瀏覽量

    210383
  • 嵌入式主板
    +關注

    關注

    7

    文章

    6086

    瀏覽量

    35609
  • Firefly
    +關注

    關注

    2

    文章

    538

    瀏覽量

    7129
收藏 人收藏

    評論

    相關推薦

    fireflyAIO-3399J主板簡介

    AIO-3399J 的標準套裝包含以下配件
    的頭像 發表于 11-05 15:52 ?1646次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>簡介

    fireflyAIO-3399C主板LED介紹

    LED 使用 AIO-3399C 開發板上有 2 個 LED
    的頭像 發表于 12-09 16:25 ?1900次閱讀
    <b class='flag-5'>fireflyAIO-3399</b>C<b class='flag-5'>主板</b><b class='flag-5'>LED</b><b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板介紹

    AIO-3399J默認出廠固件是支持LVDS+HDMI 1080P的雙屏顯示,HDMI分辨率最高只能到1080P。
    的頭像 發表于 12-24 10:03 ?1712次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b><b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板散熱套件簡介

    散熱套件 鋁制散熱片 產品參數 適配:AIO-3399J 尺寸:43mm (L)* 39.5mm(W)*11mm(H)
    的頭像 發表于 12-24 10:01 ?1261次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>散熱套件簡介

    fireflyAIO-3399J主板紅外遙控器簡介

    紅外遙控器 產品參數 產品:12鍵紅外遙控器 版本:Firefly定制版 電源:兩節7號電池 適配:AIO-3399J 描述:支持AIO-3399J開發板的遙控開機功能
    的頭像 發表于 12-24 10:07 ?1627次閱讀

    fireflyAIO-3399J主板屏幕模組介紹

    屏幕模組 7.85寸MIPI液晶屏模組 注意:默認的AIO-3399J主板不帶mipi_dsi接口,如需要此功能需修改硬件。
    的頭像 發表于 12-24 10:14 ?1685次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>屏幕模組<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板UART使用介紹

    AIO-3399J 支持SPI橋接/擴展4個增強功能串口(UART)的功能,分別為UART1,UART2,RS232,RS485。
    的頭像 發表于 12-24 10:18 ?2183次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>UART使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板TIMER使用簡介

    RK3399有12 個Timers (timer0-timer11),有12 個Secure Timers(stimer0~stimer11) 和 2 個Timers(pmutimer0
    的頭像 發表于 12-24 10:25 ?1546次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>TIMER使用簡介

    fireflyAIO-3399J主板RTC使用簡介

    AIO-3399J開發板上有 一個集成于RK808上的RTC(Real Time Clock),主要功能有時鐘,日歷,鬧鐘,周期性中斷,雙通道32KHz時鐘輸出。
    的頭像 發表于 12-24 10:20 ?2102次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>RTC使用簡介

    fireflyAIO-3399J主板PWM使用介紹

    AIO-3399J開發板上有 4 路 PWM 輸出,分別為 PWM0 ~ PWM3,4路 PWM 分別使用在eDP背光、MIPI背光、VDDLOG供電、紅外IR。 本章主要描述如何配置 PWM。
    的頭像 發表于 12-24 10:37 ?2315次閱讀

    fireflyAIO-3399J主板MIPI CSI使用簡介

    AIO-3399J 開發板分別帶有兩個MIPI,一個DVP攝像頭接口,MIPI最高支持支持4K拍照,并支持1080P 30FPS以上視頻錄制。
    的頭像 發表于 12-24 10:22 ?5243次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>MIPI CSI使用簡介

    fireflyAIO-3399J主板IR使用簡介

    AIO-3399J 開發板上使用紅外收發傳感器 IR (在 mic 接口和喇叭接口之間)實現遙控功能,在IR接口處接上紅外接收器。
    的頭像 發表于 12-24 10:32 ?2266次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>IR使用簡介

    fireflyAIO-3399J主板I2C使用介紹

    AIO-3399J 開發板上有 9 個片上 I2C 控制器,
    的頭像 發表于 12-24 10:34 ?1971次閱讀
    <b class='flag-5'>fireflyAIO-3399J</b><b class='flag-5'>主板</b>I2C使用<b class='flag-5'>介紹</b>

    fireflyAIO-3399J主板ADC使用介紹

    AIO-3399J 開發板上的 AD 接口有兩種,分別為:溫度傳感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Register)。
    的頭像 發表于 12-24 10:47 ?1751次閱讀

    fireflyAIO-3399J啟動模式說明主板

    AIO-3399J 有靈活的啟動方式。一般情況下,除非硬件損壞,AIO-3399J 開發板是不會變磚的。
    的頭像 發表于 12-25 16:28 ?1453次閱讀
    百家乐百家乐论坛| 百家乐官网一邱大师打法| 破解百家乐公式| 免佣百家乐官网赌场优势| 大发888游戏平台 黄埔网| 百家乐官网大西洋| 老K| 玩百家乐怎么能赢吗| 大佬百家乐官网现金网| 大发888娱乐城 手机版| 百家乐官网出闲几率| LV百家乐娱乐城| 百家乐官网孖宝揽| 足球改单平| 太阳城巧克力社区| 真人百家乐作假视频| 百家乐官网最新投注法| 百家乐六手变化混合赢家打| 武宁县| 大发888城| 百家乐博彩桌出租| 百家乐官网下注所有组合| www.18lk.com| 69棋牌游戏| 水果机游戏| 模拟百家乐下载| 百家乐官网押注方法| 百家乐官网最稳妥的打法| 大发888游戏平台88| 缅甸百家乐龙虎斗| 百家乐官网开闲的几率多大| 威尼斯人娱乐网网上百家乐| 百家乐百博亚洲| 澳门百家乐官网论坛及玩法| 百家乐官网赌场代理合作| 哪个百家乐官网网站最大| 百家乐官网玩法窍门| 滁州市| 沭阳县| 大发888博彩论坛贴吧| 百家乐娱乐城棋牌|