完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛扫一扫,分享给好友
|
本帖最后由 一只耳朵怪 于 2018-6-5 09:37 编辑
1、将I2C1的复位引脚给配置 2、在linux系统/dev/上能够看到i2c-2这个设备文件。 但是操作的时候,通过示波器看没有任何波形. [root@/]# echo 0x32>/dev/i2c-2 ^[[Aomap_i2c omap_i2c.2: timeout waiting for bus ready 请问一下怎么配通i2c1...仍然不通的原因是???? 3、linux系统启动的时候,i2c打印的信息 i2c /dev entries driver Linux video capture interface: v2.00 i2c-core: driver [msp3400] using legacy suspend method i2c-core: driver [msp3400] using legacy resume method omap_i2c omap_i2c.2: controller timed out omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.2: timeout waiting for bus ready omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out omap_i2c omap_i2c.3: controller timed out |
|
相关推荐
27个回答
|
|
|
这问题纠结了很久都还没有解决,求指导。
|
|
|
|
|
|
board-am335xevm.c上的配置。 static struct pinmux_config i2c1_pin_mux[] = [ ["uart0_ctsn.i2c1_sda", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW | AM33XX_PULL_ENBL | AM33XX_INPUT_EN], ["uart0_rtsn.i2c1_scl", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW | AM33XX_PULL_ENBL | AM33XX_INPUT_EN], [NULL, 0], ]; static struct i2c_board_info am335x_i2c1[] = [ [ I2C_BOARD_INFO("pcf8563", 0x51),//lin add ], [ I2C_BOARD_INFO("my_wsd", 0x40), ], ]; static void i2c1_init(int evm_id, int profile) [ setup_pin_mux(i2c1_pin_mux); omap_register_i2c_bus(2, 100, am335x_i2c1, ARRAY_SIZE(am335x_i2c1)); return; ] 不知道i2c1的使用还需要修改哪里.... 现在老是提示: sh: write error: Connection timed out |
|
|
|
|
w13756941107 发表于 2018-6-4 03:40 1. pinmux再查下,最好能用我们的pinmux工具验证下 2. i2c的地址是否正确也查下。 如果我的回答解决了您的问题,请确认答案,谢谢!:) |
|
|
|
|
jvwueurw 发表于 2018-6-4 03:59 请问您这个I2C 1总线上的设备的probe()函数执行有问题么?有没有跟进这个函数看下 |
|
|
|
|
w13756941107 发表于 2018-6-4 03:40 建议你首先核对一下原理图,确认PINMUX,其次你的i2c1_init需加入内核设备初始化列表中,还有就是你这两个i2c设备的驱动要编译进内核,其它应该就没什么了。我有一个疑问是你给的配置信息是关于i2c1的,而系统启动提示连接超时的却是有关i2c2和i2c3的。 |
|
|
|
|
jvwueurw 发表于 2018-6-4 03:59 1、pinmux工具是什么工具没有使用过??能发一下吗?? 直接操控i2c1两个引脚设置高低电平是没有问题的。 2、查看过i2c地址没有问题 |
|
|
|
|
|
程序能够执行probe()而且貌似上面的打印就是和probe有关系。 |
|
|
|
|
wanglinhua2627 发表于 2018-6-4 04:22 很细心,非常感谢。 貌似配置am335x 的i2c0的时候 ,对应kernel打印的就是i2c1 同理配置i2c1的时候,对应kernel就是打印i2c2了。 |
|
|
|
|
w13756941107 发表于 2018-6-4 04:37 关于pinmux,请查看 http://processors.wiki.ti.com/index.php/Pin_Mux_Utility_for_ARM_MPU_Processors 如果我的回答解决了您的问题,请确认答案,谢谢!:) |
|
|
|
|
jvwueurw 发表于 2018-6-4 05:04 参考i2c0配置i2c1的pinmux static struct pinmux_config i2c1_pin_mux[] = [ ["uart0_ctsn.i2c1_sda", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW | AM33XX_PULL_ENBL | AM33XX_INPUT_EN], ["uart0_rtsn.i2c1_scl", OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW | AM33XX_PULL_ENBL | AM33XX_INPUT_EN], [NULL, 0], ]; 没有发现pinmux有什么问题。这样配是对了吗??? |
|
|
|
|
w13756941107 发表于 2018-6-4 05:24 单看这几个脚没有问题,但是这几个脚会不会被其他的模块重用了呢? 最好用工具检查一遍,除了I2C其他的外设接口都可以一起检查下。 如果我的回答解决了您的问题,请确认答案,谢谢!:) |
|
|
|
|
jvwueurw 发表于 2018-6-4 05:38 确实之前是存在引脚复用冲突。所以现在不使用i2c1.改用i2c2了。 但是新的问题又出现了。 omap_i2c omap_i2c.3: controller timed out 这个有事什么?? |
|
|
|
|
w13756941107 发表于 2018-6-4 05:51 请问您的I2C2上有接了哪些I2C 设备么? |
|
|
|
|
|
1、echo 0x32>/dev/i2c-3 命令后示波器貌似sda和scl引脚都有被下拉现象。 判断i2c引脚配置通过了。 2、现在接入i2c设备 。 static struct i2c_board_info am335x_i2c2[] = [ [ I2C_BOARD_INFO("honeywell_wsd", 0x27), //0x40 ], ]; [root@test i2c_tool]# ./i2cdetect -r -y 3 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- 检测不到相应设备ID。这问题的可能性是? |
|
|
|
|
w13756941107 发表于 2018-6-4 06:08 检查硬件设计上面,i2c的两个引脚都上拉了没? |
|
|
|
|
|
i2c引脚是有上拉的。。 使用i2c-tool测试不到该温湿度设备设备ID。。 |
|
|
|
|
|
上拉的电阻是多大,是否符合要求 |
|
|
|
|
|
建议在probe()函数中加入一段I2C的读写测试函数,如果读写不成功,可以直接跟进读写函数内看看程序死在哪个位置了。 |
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
545 浏览 0 评论
1609 浏览 0 评论
2045 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1507 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1331 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1756浏览 29评论
2781浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1723浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1634浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1645浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 19:23 , Processed in 1.173644 second(s), Total 109, Slave 92 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2501