中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站建設(shè)和網(wǎng)站推廣可以同一家做嗎網(wǎng)站優(yōu)化排名金蘋果系統(tǒng)

網(wǎng)站建設(shè)和網(wǎng)站推廣可以同一家做嗎,網(wǎng)站優(yōu)化排名金蘋果系統(tǒng),東莞市網(wǎng)站開發(fā),制作公司網(wǎng)站的流程1. GPIO簡介? GPIO,全稱 General-Purpose Input/Output(通用輸入輸出),是一種在計(jì)算機(jī)和嵌入式系統(tǒng)中常見的數(shù)字輸入輸出接口。它允許軟件控制硬件的數(shù)字輸入和輸出,例如開關(guān)、傳感器、LED燈等。GPIO通常由一個(gè)芯片或…

1. GPIO簡介?

GPIO,全稱 General-Purpose Input/Output(通用輸入輸出),是一種在計(jì)算機(jī)和嵌入式系統(tǒng)中常見的數(shù)字輸入輸出接口。它允許軟件控制硬件的數(shù)字輸入和輸出,例如開關(guān)、傳感器、LED燈等。GPIO通常由一個(gè)芯片或處理器上的引腳提供支持,通過編程可以配置這些引腳為輸入或輸出,并且可以通過相應(yīng)的軟件命令來讀取輸入狀態(tài)或控制輸出狀態(tài)。

2. GPIO引腳編號(hào)計(jì)算方法?

RK3588共 有 5 組 GPIO bank:GPIO0~GPIO4,每組又以 A0~A7, B0~B7, C0~C7, D0~D7 作為編號(hào)區(qū)分,常用以下公式計(jì)算引腳:

 GPIO pin腳計(jì)算公式:pin = bank * 32 + numberGPIO 小組編號(hào)計(jì)算公式:number = group * 8 + X

例如: GPIO3_B5的計(jì)算方式 : 32?3 + 1?8 + 5 = 109 ---> 也就是說,GPIO3_B5對(duì)應(yīng)的是GPIO的編號(hào)是gpio-109。

3. 復(fù)用?

GPIO口除了通用輸入輸出功能外,還可能有其它復(fù)用功能

rockchip-gpio

從原理圖中看出:以GPIO1_C0為例,就有如下幾個(gè)功能:

func0func1func2func3
GPIO1_C0I2C3_SDA_M0UART3_RX_M0SPI4_MISO_M0

在系統(tǒng)DTS配置中GPIO1_C0默認(rèn)是I2C3_SDA_M0功能。如果我們想將GPIO1_C0復(fù)用為UART3_RX_M0功能,該怎么做呢?

  1. 首先打開uart3 節(jié)點(diǎn),將pinctrl配置為uart3m0_xfer。pinctrl配置是GPIO復(fù)用的最關(guān)鍵的配置,在這里就是將GPIO1_C0復(fù)用做了uart3功能。
&uart3 {pinctrl-names = "default";pinctrl-0 = <&uart3m0_xfer>;status = "okay";
};&pinctrl {uart3 {/omit-if-no-ref/uart3m0_xfer: uart3m0-xfer {rockchip,pins =/* uart3_rx_m0 */<1 RK_PC0 10 &pcfg_pull_up>,   # 將GPIO1_C0復(fù)用為uart3_rx_m0 /* uart3_tx_m0 */<1 RK_PC1 10 &pcfg_pull_up>;   # 將GPIO1_C1復(fù)用為uart3_tx_m0 };};
};

  1. 如果發(fā)現(xiàn)GPIO1_C0被復(fù)用為I2c3,則在dts中關(guān)閉它。
&i2c3 {status = "disabled";
};

這樣,我們就將GPIO1_C0復(fù)用為了UART3_RX_M0功能

4. GPIO調(diào)試方法?

4.1 讀取GPIO狀態(tài)信息?

Debugfs 文件系統(tǒng)目的是為開發(fā)人員提供更多內(nèi)核數(shù)據(jù),方便調(diào)試。 這里 GPIO 的調(diào)試也可以用 Debugfs 文件系統(tǒng),獲得更多的內(nèi)核信息。GPIO 在 Debugfs 文件系統(tǒng)中的接口為 /sys/kernel/debug/gpio,可以這樣讀取該接口的信息:

armsom@armsom:~$ sudo cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/fd8a0000.gpio, gpio0:gpio-15  (                    |led_rgb_b           ) out logpio-20  (                    |reset               ) out lo ACTIVE LOWgpio-21  (                    |bt_default_wake_host) in  higpiochip1: GPIOs 32-63, parent: platform/fec20000.gpio, gpio1:gpio-34  (                    |bt_default_rts      ) in  higpio-36  (                    |vcc3v3-pcie30       ) out logpio-40  (                    |camera-pwdn-gpio    ) out higpio-54  (                    |hdmirx-det          ) in  lo ACTIVE LOWgpio-58  (                    |vcc3v3-pcie2x1l0    ) out higpio-61  (                    |headset_gpio        ) in  higpiochip2: GPIOs 64-95, parent: platform/fec30000.gpio, gpio2:gpio-78  (                    |vbus5v0-typec       ) out logpiochip3: GPIOs 96-127, parent: platform/fec40000.gpio, gpio3:gpio-101 (                    |vcc-5v0-gpio-regulat) out higpio-102 (                    |bt_default_reset    ) out logpio-104 (                    |reset               ) out higpio-125 (                    |bt-wake-gpio-regulat) out higpiochip4: GPIOs 128-159, parent: platform/fec50000.gpio, gpio4:gpio-130 (                    |wifi-diable-gpio-reg) out higpio-134 (                    |sbu1-dc             ) out logpio-135 (                    |sbu2-dc             ) out logpio-136 (                    |vcc5v0-host-regulato) out higpio-149 (                    |led_rgb_r           ) out logpiochip5: GPIOs 509-511, parent: platform/rk806-pinctrl.9.auto, rk806-gpio, can sleep:

從讀取到的信息中可以知道,內(nèi)核把 GPIO 當(dāng)前的狀態(tài)都列出來了,以 GPIO0組為例,gpio-15(GPIO0_B7) 對(duì)應(yīng)的dts節(jié)點(diǎn)是led_rgb_b,輸出低電平 (out lo)。

4.2 查看 pinmux-pins?

armsom@armsom:~$ sudo cat /sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/pinmux-pins
Pinmux settings per pin
Format: pin (name): mux_owner gpio_owner hog?
pin 0 (gpio0-0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 1 (gpio0-1): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 2 (gpio0-2): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 3 (gpio0-3): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 4 (gpio0-4): fe2c0000.mmc (GPIO UNCLAIMED) function sdmmc group sdmmc-det
pin 5 (gpio0-5): feb20000.spi (GPIO UNCLAIMED) function spi2 group spi2m2-pins
pin 6 (gpio0-6): feb20000.spi (GPIO UNCLAIMED) function spi2 group spi2m2-pins
pin 7 (gpio0-7): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 8 (gpio0-8): 6-0051 (GPIO UNCLAIMED) function hym8563 group rtc-int
pin 9 (gpio0-9): feb20000.spi (GPIO UNCLAIMED) function spi2 group spi2m2-cs0
pin 10 (gpio0-10): wireless-wlan (GPIO UNCLAIMED) function wireless-wlan group wifi-host-wake-irq
pin 11 (gpio0-11): feb20000.spi (GPIO UNCLAIMED) function spi2 group spi2m2-pins
pin 12 (gpio0-12): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 13 (gpio0-13): fiq-debugger (GPIO UNCLAIMED) function uart2 group uart2m0-xfer
pin 14 (gpio0-14): fiq-debugger (GPIO UNCLAIMED) function uart2 group uart2m0-xfer
pin 15 (gpio0-15): leds gpio0:15 function leds group led-rgb-b
pin 16 (gpio0-16): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 17 (gpio0-17): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 18 (gpio0-18): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 19 (gpio0-19): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 20 (gpio0-20): sdio-pwrseq gpio0:20 function sdio-pwrseq group wifi-enable-h
pin 21 (gpio0-21): (MUX UNCLAIMED) gpio0:21
...

我們以pin 13 (gpio0-13): fiq-debugger (GPIO UNCLAIMED) function uart2 group uart2m0-xfer作為解析:

gpio0-13對(duì)應(yīng)的節(jié)點(diǎn)名是 fiq-debugger,此節(jié)點(diǎn)使用pinctrl配置復(fù)用為debug串口功能,pinctrl的值是uart2m0-xfer。

5. GPIO控制?

這里介紹一下在用戶空間基于sysfs控制gpio的方式: sysfs控制gpio的方式主要是基于內(nèi)核提供的gpio控制接口文件。也就是通過讀寫/sys/class/gpio目錄下的文件來控制對(duì)應(yīng)的gpio接口。

echo 109 > /sys/class/gpio/export                  # 申請導(dǎo)出相應(yīng)的gpio
echo out > /sys/class/gpio/gpio109/direction       # 設(shè)置相應(yīng)gpio為輸出方向
echo 1 > /sys/class/gpio/gpio109/value             # 設(shè)置輸出高電平
cat /sys/class/gpio/gpio109/value                  # 獲取gpio當(dāng)前狀態(tài)值,是高電平還是低電平
echo 109 > /sys/class/gpio/unexport                # 釋放申請的gpio

注意:只有當(dāng)GPIO3_B5腳沒有被其它外設(shè)復(fù)用時(shí), 我們才可以通過export導(dǎo)出該引腳去使用

http://www.risenshineclean.com/news/29140.html

相關(guān)文章:

  • 企業(yè)網(wǎng)站建設(shè)英文超級(jí)外鏈
  • 手機(jī)網(wǎng)站哪家好西安百度推廣優(yōu)化
  • 網(wǎng)站開發(fā) 英文文章百度收錄快的發(fā)帖平臺(tái)
  • 福州網(wǎng)頁鄭州seo排名優(yōu)化公司
  • 汕頭網(wǎng)站建設(shè)制作公司衡陽seo快速排名
  • 分類信息網(wǎng)站成都搭建如何搭建一個(gè)網(wǎng)站平臺(tái)
  • 做網(wǎng)站的點(diǎn)子站長之家ppt素材
  • 同程網(wǎng)站建設(shè)分析朝陽網(wǎng)站建設(shè)公司
  • 深圳住建委網(wǎng)站智謀網(wǎng)站優(yōu)化公司
  • html5門戶網(wǎng)站模板百度人工客服電話多少
  • 鄭州做網(wǎng)站九零后排名點(diǎn)擊工具
  • 網(wǎng)站開發(fā)程序員 工資百度云怎么找資源
  • 貴陽網(wǎng)站建設(shè)多少錢?影視后期培訓(xùn)機(jī)構(gòu)全國排名
  • 如何搭建公司網(wǎng)站上海公關(guān)公司
  • 做美圖 網(wǎng)站有哪些付費(fèi)惡意點(diǎn)擊軟件
  • 做局域網(wǎng)網(wǎng)站教程?hào)|莞網(wǎng)絡(luò)優(yōu)化調(diào)查公司
  • 慈溪企業(yè)排名網(wǎng)站培訓(xùn)機(jī)構(gòu)排名全國十大教育機(jī)構(gòu)排名
  • 做腳本網(wǎng)站建站公司最新報(bào)價(jià)
  • 網(wǎng)站海外推廣哪家好怎么在百度上發(fā)表文章
  • 怎樣做已有網(wǎng)站的編輯維護(hù)四川聚順成網(wǎng)絡(luò)科技有限公司
  • wordpress自建站哪里換logo騰訊企點(diǎn)客服
  • 印度做網(wǎng)站設(shè)計(jì)百度權(quán)重提升
  • 快速收錄網(wǎng)站微信公眾號(hào)運(yùn)營
  • 云谷 網(wǎng)站建設(shè)網(wǎng)絡(luò)推廣的方法有
  • 精美化妝品網(wǎng)站模板推廣平臺(tái)排名前十名
  • 專業(yè)微網(wǎng)站建設(shè)公司首選公司哪家好網(wǎng)站排名軟件
  • 黨員寫試卷需要在哪個(gè)網(wǎng)站做輿情管理
  • 建網(wǎng)站學(xué)什么谷歌搜索引擎香港免費(fèi)入口
  • 注冊網(wǎng)站到公安機(jī)關(guān)備案由誰告知seo關(guān)鍵詞排名優(yōu)化要多少錢
  • 百度seo優(yōu)化技巧東莞seo推廣公司