找回密码
 注册
关于网站域名变更的通知
查看: 414|回复: 3
打印 上一主题 下一主题

gpio引脚复用i2c功能 是怎么实现的?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-11-9 13:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
omapl138开发板中i2c接口被占完,将i2c接口的电源模块连接到未使用的DSP引脚上了,现在需要读取电源模块的信息, 怎么实现这个功能,求指导下。! e& B5 x2 Y7 k3 e* x
是使用gpio引脚复用i2c功能 还是有其他方法,
" Z3 a# l( C( t- `9 r* @gpio引脚复用i2c功能 这个怎么实现的?+ o3 _& ]% d. P- v9 i; t8 o3 `; ~

该用户从未签到

2#
发表于 2021-11-9 13:49 | 只看该作者
内核中有这样的实现方式:
3 X  B3 S8 J  t* R1 V7 c2879 static struct i2c_gpio_platform_data da850_gpio_i2c_pdata = {
# R  G5 m, [. N+ l5 `! A2880     .sda_pin    = GPIO_TO_PIN(1, 4),( T: F7 E- M+ W% K
2881     .scl_pin    = GPIO_TO_PIN(1, 5),7 A* m9 n" R  Y- Q: ^
2882     .udelay     = 2,            /* 250 KHz */8 o! p, U5 J6 Y0 L4 D
2883 };2 z: {6 }6 S) |
2884: ?# h. n$ A. l. ]9 V4 _
2885 static struct platform_device da850_gpio_i2c = {0 P1 _! C% j# |% v8 D4 t- ?
2886     .name       = "i2c-gpio",0 Y4 a" y* K9 K% {! Y  j
2887     .id     = 1,% S0 U' C0 j& r9 @1 I4 e5 Z
2888     .dev        = {
* m+ R1 G1 n, v4 b" ^, t: n9 C2889         .platform_data  = &da850_gpio_i2c_pdata,# b- {2 l9 _4 R( m/ P4 @7 C9 s. W
2890     },# T* G* ], R. P% ?8 _* w; d
2891 };
' e3 N" R& O4 d$ a+ W$ J6 [3 ^/ s( s1 g7 `+ I9 |0 N
platform_device_register(&da850_gpio_i2c);3 \) h8 ?( f8 c4 V

+ |& n8 G* t5 l7 p, i只要将
7 \9 o* i# q$ U9 a, n2880     .sda_pin    = GPIO_TO_PIN(1, 4),) t  E6 N3 r9 |+ a8 Q2 k9 m: U
2881     .scl_pin    = GPIO_TO_PIN(1, 5),0 A2 f! d6 e+ c- R
配置成当前使用的gpio就实现了gpio模拟i2c的功能

该用户从未签到

3#
发表于 2021-11-9 13:50 | 只看该作者
GPIO模拟IIC吧!不过可能要自己写一下底层的驱动

该用户从未签到

4#
发表于 2021-11-9 13:50 | 只看该作者
注册一个da850_gpio_i2c_pdata
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-12 17:28 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表