完善资料让更多小伙伴认识你,还能领取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的读写测试函数,如果读写不成功,可以直接跟进读写函数内看看程序死在哪个位置了。 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
686 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
601 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1055 浏览 1 评论
744 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
526 浏览 1 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
167浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
128浏览 14评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
127浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
123浏览 12评论
GD32F303RCT6配置PA4 ADC引脚,将PA2代替key功能,PA2连接时无法实现预期功能,为什么?
54浏览 10评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 04:58 , Processed in 1.271919 second(s), Total 116, Slave 99 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号