9、Lctech Pi(F1C200S)开启I2C0(CherryPi,Mangopi,F1C100S)

本次主要参考:
https://github.com/mangopi-sbc/buildroot-mangopi-r
https://wiki.sipeed.com/soft/Lichee/zh/Nano-Doc-Backup/index.html
(如果方便请给这几位大佬一个关注)

注意代码块之间的空行

配置设备树文件

1、打开linux-5.7.1/arch/arm/boot/dts/suniv-f1c100s.dtsi文件。
在soc->pio下最后面,也就是121行,添加如下代码(引脚选用PD0,PD12):

i2c0_pd_pins: i2c0-pd-pins {
    
    
	pins = "PD0", "PD12";
	function = "i2c0";
};

添加之后如下:
在这里插入图片描述
在soc下最后面,也就是第329行,添加如下代码:

i2c0: i2c@1c27000 {
    
    
	compatible = "allwinner,sun6i-a31-i2c";
	reg = <0x01c27000 0x400>;
	interrupts = <7>;
	clocks = <&ccu CLK_BUS_I2C0>;
	resets = <&ccu RST_BUS_I2C0>;
	status = "disabled";
	#address-cells = <1>;
	#size-cells = <0>;
};

添加之后如下:
在这里插入图片描述
保存后退出。

2、打开linux-5.7.1/arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts文件。
在文件的最后面。也就是第100行,添加如下代码

&i2c0 {
    
    
	pinctrl-names = "default";
	pinctrl-0 = <&i2c0_pd_pins>;
	status = "okay";
};

添加之后如下:
在这里插入图片描述
保存后退出。

3、最后按照之前的方法编译,并将新的内核与设备树文件,按照之前的方法在板子上运行。

4、在开发板命令终端输入:

i2cdetect -y 0

即可看到I2C0挂载的设备地址,我的开发板I2C0上有3个设备(ns2009,at24c32,ds3231),如下图:在这里插入图片描述
QQ:763314235,会在第一时间处理。

猜你喜欢

转载自blog.csdn.net/GJF712/article/details/126684441
今日推荐