您尚未登录。

楼主 #1 2020-03-11 14:32:17

codemomo
会员
注册时间: 2020-03-02
已发帖子: 12
积分: 2

求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

照着教程添加设备树:

vi arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts

然后往i2c0 里面添加这个

    ssd1306fb: ssd1306fb@3c {
        compatible = "solomon,ssd1306fb-i2c";
        reg = <0x3c>;
        solomon,width = <128>;
        solomon,height = <64>;
        reset-gpios = <&pio 1 0 GPIO_ACTIVE_HIGH>;
        solomon,page-offset = <0>;
        solomon,com-invdir;
    };

编译好zImage和dtb,烧进去初始化的时候ssd1307fb的驱动就起不来。

如下图:

8ApJ8x.png


是不是教程里不小心写错了。
应该把设备树里面的ssd1306fb 改成 ssd1307fb呀?
求大佬们指点一下,感激不尽!!!

离线

楼主 #2 2020-03-11 14:39:49

codemomo
会员
注册时间: 2020-03-02
已发帖子: 12
积分: 2

Re: 求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

codemomo 说:

照着教程添加设备树:

vi arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts

然后往i2c0 里面添加这个

    ssd1306fb: ssd1306fb@3c {
        compatible = "solomon,ssd1306fb-i2c";
        reg = <0x3c>;
        solomon,width = <128>;
        solomon,height = <64>;
        reset-gpios = <&pio 1 0 GPIO_ACTIVE_HIGH>;
        solomon,page-offset = <0>;
        solomon,com-invdir;
    };

编译好zImage和dtb,烧进去初始化的时候ssd1307fb的驱动就起不来。




是不是教程里不小心写错了。
应该把设备树里面的ssd1306fb 改成 ssd1307fb呀?
求大佬们指点一下,感激不尽!!!


ssd1306fb 改成 ssd1307fb后依然报错,说从设备树里找不到pwm。。。

8AigYj.png

离线

#3 2020-03-11 15:12:00

shaoxi2010
会员
注册时间: 2019-06-13
已发帖子: 389
积分: 338

Re: 求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

你有没有焊接上拉电阻哦

离线

#4 2020-03-11 16:09:14

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

设备树里面缺 pwm 节点





离线

楼主 #5 2020-03-11 16:46:59

codemomo
会员
注册时间: 2020-03-02
已发帖子: 12
积分: 2

Re: 求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

晕哥 说:

设备树里面缺 pwm 节点


我换成使用zero-4.14y的主线分支,里面的设备树直接就有pwm节点,我把ssd1307fb的节点添加进去,报下面这个错误。。。

多了一个

of_pwm_get(): can't parse "pwms" property

脑袋疼。。。。

8AgoAs.png

最近编辑记录 codemomo (2020-03-11 17:01:42)

离线

#6 2020-03-11 16:57:37

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 求助!荔枝派zero 驱动I2C的OLED模块时,内核加载ssd1307fb失败

    ssd1306fb: ssd1306fb@3c {
        compatible = "solomon,ssd1306fb-i2c";
        reg = <0x3c>;
        solomon,width = <128>;
        solomon,height = <64>;
        reset-gpios = <&pio 1 0 GPIO_ACTIVE_HIGH>;
        solomon,page-offset = <0>;
        solomon,com-invdir;
    };

还要添加到这个节点里面, 让驱动检测到PWM的配置。





离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn