99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Milk-V Duo開(kāi)發(fā)板免費(fèi)體驗(yàn) GPIO分析

wakojosin ? 來(lái)源:wakojosin ? 作者:wakojosin ? 2023-07-14 22:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

設(shè)備樹(shù)

下面截取gpio0的設(shè)備樹(shù),復(fù)制自:linux_5.10/arch/riscv/boot/dts/cvitek/cv180x_base.dtsi

gpio0: gpio@03020000 {
	compatible = "snps,dw-apb-gpio";
	reg = ;
	#address-cells = ;
	#size-cells = ;

	porta: gpio-controller@0 {
		compatible = "snps,dw-apb-gpio-port";
		bank-name = "porta";
		gpio-controller;
		#gpio-cells = ;
		snps,nr-gpios = ;
		reg = ;
	};
};

以下是復(fù)制自:linux_5.10/arch/riscv/boot/dts/cvitek/cv180x_base_riscv.dtsi

gpio0: gpio@03020000 {
		porta: gpio-controller@0 {
			interrupt-controller;
			interrupts = ;
			interrupt-parent = ;
		};
	};

驅(qū)動(dòng)

cv180x的GPIO控制器用到是dw-apb-gpio控制器驅(qū)動(dòng),驅(qū)動(dòng)代碼位于:linux_5.10/drivers/gpio/gpio-dwapb.c

#define DWAPB_DRIVER_NAME	"gpio-dwapb"

// 省略其他代碼

static struct platform_driver dwapb_gpio_driver = {
	.driver		= {
		.name	= DWAPB_DRIVER_NAME,
		.pm	= &dwapb_gpio_pm_ops,
		.of_match_table = dwapb_of_match,
		.acpi_match_table = dwapb_acpi_match,
	},
	.probe		= dwapb_gpio_probe,
};

module_platform_driver(dwapb_gpio_driver);

關(guān)鍵函數(shù)是probe函數(shù)

// drivers/gpio/gpio-dwapb.c
dwapb_gpio_probe:

	dwapb_gpio_get_pdata(dev)

		device_for_each_child_node(dev, fwnode)  { //遍歷設(shè)備樹(shù)節(jié)點(diǎn)

			fwnode_property_read_u32(fwnode, "snps,nr-gpios", &pp->ngpio)

			fwnode_property_read_u32(fwnode, "reg", &pp->idx)

		}

		dwapb_gpio_add_port

			devm_gpiochip_add_data

				devm_gpiochip_add_data_with_key

					gpiochip_add_data_with_key //注冊(cè)到gpiolib的gpio_devices中

gpio子系統(tǒng)

// drivers/gpio/gpiolib.c
struct gpio_desc *gpio_to_desc(unsigned gpio) //從gpio_devices獲取gpio_desc

// include/asm-generic/gpio.h
// drivers/gpio/gpiolib-sysfs.c
gpio_export:
	gpiod_export(gpio_to_desc(gpio), direction_may_change)
		device_create_with_groups
			device_create_groups_vargs
				device_add
					kobject_add //添加到相關(guān)的設(shè)備模型子系統(tǒng)
					device_create_file //創(chuàng)建/sys下的設(shè)備屬性文件
					... //其他相關(guān)設(shè)置

小結(jié)

通過(guò)上面的3塊,就實(shí)現(xiàn)了/sys/class/gpio/export導(dǎo)出gpio的過(guò)程即對(duì)gpio的操作。

關(guān)于gpio的相關(guān)操作函數(shù)就在gpiolib.c里面。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5680

    瀏覽量

    104715
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1280

    瀏覽量

    54093
  • Milk-V Duo
    +關(guān)注

    關(guān)注

    2

    文章

    28

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】小身板大能力RISC-V開(kāi)發(fā)板

    Milk-V Duo是一款基于算能 CV1800B芯片的MPU,能夠運(yùn)行基于LINUX和RTOS的操作系統(tǒng)。Milk-V Duo為專業(yè)人士、工業(yè)OEM企業(yè)、物聯(lián)網(wǎng)愛(ài)好者、業(yè)余愛(ài)好者、D
    的頭像 發(fā)表于 06-30 10:25 ?5436次閱讀
    【<b class='flag-5'>Milk-V</b> <b class='flag-5'>Duo</b> <b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>免費(fèi)</b>體驗(yàn)】小身板大能力RISC-<b class='flag-5'>V</b><b class='flag-5'>開(kāi)發(fā)板</b>

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】+ 1、開(kāi)箱

    Milk-V Duo是一個(gè)基于CV1800B芯片的超緊湊嵌入式開(kāi)發(fā)平臺(tái)。它可以運(yùn)行Linux和RTOS,為專業(yè)人士、工業(yè)ODM、AIoT愛(ài)好者、DIY愛(ài)好者和創(chuàng)作者提供了一個(gè)可靠、低成本和高性能的平臺(tái)。
    的頭像 發(fā)表于 07-13 09:24 ?1783次閱讀
    【<b class='flag-5'>Milk-V</b> <b class='flag-5'>Duo</b> <b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>免費(fèi)</b>體驗(yàn)】+ 1、開(kāi)箱

    Milk-V Duo】1、入門(mén)篇

    入門(mén)milk-V Duo開(kāi)發(fā)板
    的頭像 發(fā)表于 07-07 11:21 ?2143次閱讀
    【<b class='flag-5'>Milk-V</b> <b class='flag-5'>Duo</b>】1、入門(mén)篇

    Milk-V Duo開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V初次使用

    Milk-V Duo開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V初次使用
    的頭像 發(fā)表于 08-08 09:03 ?2874次閱讀
    【<b class='flag-5'>Milk-V</b> <b class='flag-5'>Duo</b><b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>免費(fèi)</b>體驗(yàn)】<b class='flag-5'>Milk-V</b>初次使用

    Milk-V Duo S 開(kāi)發(fā)板免費(fèi)體驗(yàn)】1-開(kāi)箱和燒寫(xiě)鏡像

    感謝電子發(fā)燒友和Milk-V提供的評(píng)測(cè)機(jī)會(huì)。 開(kāi)發(fā)板簡(jiǎn)介 我以前在電子發(fā)燒友評(píng)測(cè)過(guò)Milk-V Duo,也曾經(jīng)帶學(xué)生打過(guò)集創(chuàng)賽算能賽道,對(duì)他們的產(chǎn)品有所了解。
    發(fā)表于 07-02 20:42

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】 + 系統(tǒng)鏡像燒錄以及登錄

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】+系統(tǒng)鏡像燒錄以及登錄 一.Milk-V Duo
    發(fā)表于 07-11 11:43

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo之開(kāi)箱初體驗(yàn)

    一,第一印象 外觀設(shè)計(jì)方面,Milk-V Duo以簡(jiǎn)約而精致的風(fēng)格為主,采用沉金工藝,給人一種高端大氣的感覺(jué)。開(kāi)發(fā)板的尺寸小巧,便于攜帶和使用,在我拿到的所有的開(kāi)發(fā)板中,也只有
    發(fā)表于 07-16 01:15

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo 開(kāi)發(fā)板學(xué)習(xí)初體驗(yàn)

    第一次申請(qǐng)成功,心情很是喜悅,經(jīng)過(guò)幾天的等待收到了我心心念念的Milk-V Duo 開(kāi)發(fā)小板。 迫不及待的開(kāi)始了學(xué)習(xí)初體驗(yàn),先犧牲下愛(ài)車的行車記錄儀SD卡貢獻(xiàn)下 1、直接下載鏡像
    發(fā)表于 07-28 15:58

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】開(kāi)發(fā)板使用3

    接上文 【Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】開(kāi)發(fā)板使用1 |和接上文 【Milk-V
    發(fā)表于 07-29 08:17

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】milkv-duo 申請(qǐng)成功體驗(yàn)

    。 引腳圖 總結(jié) Milk-V Duo開(kāi)發(fā)板的小巧精致設(shè)計(jì)和強(qiáng)悍的性能確實(shí)為創(chuàng)客和開(kāi)發(fā)者提供了一個(gè)優(yōu)秀的平臺(tái)。它的緊湊設(shè)計(jì)使得它適用于各種空間有限的場(chǎng)景,同時(shí)強(qiáng)大的性能可以支持復(fù)雜
    發(fā)表于 07-29 14:31

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】初體驗(yàn)(一)---- 初識(shí)GPIO外掛點(diǎn)燈

    1、初識(shí)milk-v duo GPIO milk-v duoGPIO分為了五組,每組32個(gè)端口
    發(fā)表于 08-16 08:04

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】Milk-V Duo 開(kāi)發(fā)板初體驗(yàn)

    今天收到 ,打開(kāi)快遞的第一感覺(jué)就是非常精致小巧,一個(gè)黑色的小盒子及一塊非常小巧但功能非常完善的開(kāi)發(fā)板。 Milk-V Duo是一款基于算能 CV1800B芯片的MPU,能夠運(yùn)行基于LINUX
    發(fā)表于 08-18 00:26

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】3-Linux控制小車方向

    接上兩篇:【Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】2控制螺旋槳電路https://bbs.elecfans.com/jishu_2371054_1_1.html 【
    發(fā)表于 08-20 23:57

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】4-Linux控制小車動(dòng)作(原創(chuàng))首發(fā)

    接上三篇: [接上兩篇:【Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】3-Linux控制小車方向https://bbs.elecfans.com/jishu_2371135_1_1.html
    發(fā)表于 08-21 02:11

    Milk-V Duo 開(kāi)發(fā)板免費(fèi)體驗(yàn)】初體驗(yàn)及開(kāi)箱視頻

    剛剛收到開(kāi)發(fā)板,給大家做個(gè)視頻來(lái)初步了解以下Milk-V Duo 開(kāi)發(fā)板。 Milk-V Duo
    發(fā)表于 08-22 23:59