andriod 9.0 -MTK8362 -cht8305温湿度传感器

MTK8362 9.0上调试 型号为cht8305温湿度传感器
1 查看原理图以及gpio映射表可以知道 cht8305温湿度传感器 使用i2c1通道进行通讯,3.3v供电引脚为gpio 8 ,中断引脚为gpio13,由此可以配置cht8305温湿度传感器的dts。

根据上面的原理图和gpio映射表ALERT—>AB15---->gpio13可以得知,cht8305温湿度传感器中断引脚ALERT对应的引脚是gpio13


根据上面的原理图和gpio映射表VCC_3.3v------>3.3v_AUDIO_EN------->AA15---->gipo8可以得知,cht8305温湿度传感器3.3v供电引脚为gpio 8对应的引脚是gpio8

dts文件配置如下:
dts文件路径为:\kernel-4.4\arch\arm\boot\dts\aiot8362am3_bsp.dts

&i2c1 {
    pinctrl-names = "default";
    pinctrl-0 = <&i2c1_pins_a>;
    status = "okay";
    clock-frequency = <100000>;

    cht8305@40 { 
        compatible = "mediatek,cht8305";
        reg = <0x40>;
        i2c_num = <1>;    
        cht8305_alert_gpio = <&pio 13 0>;
        vcc_3v3_power_gpio = <&pio 8 0>;

        status = "okay";
    };
};

2 配置aiot8362am3_bsp_defconfig和aiot8362am3_bsp_debug_defconfig文件以及配置相关的Makefile和Kconfig
 

2.1 配置aiot8362am3_bsp_defconfig和aiot8362am3_bsp_debug_defconfig文件

文件路径为:\kernel-4.4\arch\arm\configs\aiot8362am3_bsp_debug_defconfig和\kernel-4.4\arch\arm\configs\aiot8362am3_bsp_defconfig

#humidity
CONFIG_CUSTOM_KERNEL_HUMIDITY=y

**2.2 配置相关的Makefile和Kconfig **
\kernel-4.4\drivers\misc\mediatek\sensors-1.0\Makefile

#added by donghsiyi for humidity start 
obj-$(CONFIG_CUSTOM_KERNEL_HUMIDITY) += humidity/
#added by donghsiyi for humidity end

\kernel-4.4\drivers\misc\mediatek\sensors-1.0\Kconfig

#added by donghsiyi for humidity start 
source "drivers/misc/mediatek/sensors-1.0/humidity/Kconfig"
#added by donghsiyi for humidity end

\kernel-4.4\drivers\misc\mediatek\sensors-1.0\humidity\Makefile

obj-y   +=  cht8305.o

\kernel-4.4\drivers\misc\mediatek\sensors-1.0\humidity\Kconfig

config CUSTOM_KERNEL_HUMIDITY
    bool "CUSTOM_KERNEL_HUMIDITY Config"
    default n
    help
      CUSTOM_KERNEL_HUMIDITY for cht8305

3 把 cht8305.c放进去编译查看log发现 cht8305温湿度传感器i2c是能够通讯成功的,同时相关节点也产生了,由此可以验证cht8305温湿度传感器移植成功, log如下:

  F:\20200522\putty13.log (13 hits)
    Line 3585: [    0.412169] stk3x3x_init OutCHT8305_init 
    Line 4095: [    0.711881] <3>.(3)[1:swapper/0]-------cht8305_probe 248 client->addr = 0x40 start-----
    Line 4097: [    0.712889] <3>.(3)[1:swapper/0]-------cht8305_probe 250 client->addr = 0x40 start-----
    Line 4099: [    0.713949] <3>.(3)[1:swapper/0]cht8305_probe find mediatek,cht8305 node successed!!
    Line 4099: [    0.713949] <3>.(3)[1:swapper/0]cht8305_probe find mediatek,cht8305 node successed!!
    Line 4103: [    0.715562] <3>.(3)[1:swapper/0]cht8305_alert_gpio 400
    Line 4105: [    0.716226] <3>.(3)[1:swapper/0]-------cht8305_probe 277 vcc_3v3_power_gpio = 1 cht8305_alert_gpio = 1------
    Line 4105: [    0.716226] <3>.(3)[1:swapper/0]-------cht8305_probe 277 vcc_3v3_power_gpio = 1 cht8305_alert_gpio = 1------
    Line 4107: [    0.717540] <3>.(3)[1:swapper/0]cht8305_i2c_read: ret == 1
    Line 4109: [    0.738891] <3>.(3)[1:swapper/0]cht8305_i2c_read: read_buf == 0x83 5
    Line 4111: [    0.739678] <3>.(3)[1:swapper/0]cht8305_probe Read ID value is :0x8305
    Line 4113: [    0.740502] <3>.(3)[1:swapper/0]cht8305: probe end
    Line 4115: [    0.741101] <3>.(3)[1:swapper/0]BOOTPROF:       741.100539:probe: probe=i2c_device_probe drv=cht8305(c0e43c90)    29.213231ms


备注:cht8305温湿度传感器产生的相关节点如下:
温度读取节点 /sys/bus/i2c/devices/1-0040/temp1_input
湿度读取节点 /sys/bus/i2c/devices/1-0040/humidity1_input

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值