作者tk930732 (吃吃不吃鱼)
看板LinuxDev
标题[问题] i2c抓错位址
时间Tue May 5 01:35:02 2015
环境是用raspberry pi
要用pi透过i2c去控制TEA5756 FM收音机模组
目前使用i2cdetect时 全部的位址都是-- 都没有抓到
有使用过逻辑分析仪去看
结果发现pi端在呼叫0x30这个位址
但TEA5756的正确位址是在0x60
执行i2cdetect时 扫过所有的脚位
在0x60上 是有回应ACK的
但0x60却也是--
想请问为什麽会这样 明明就有抓到却没显示@@?
另外也想问能不能修改i2c kernel直接指定位址?
其他i2c装置接上後都会自己抓到正确位址的啊
不知道能不能在这发文 不行请告知会自删 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.224.36.65
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/LinuxDev/M.1430760911.A.99B.html
1F:推 openeyes222: 位址本来就是driver注册就要的。05/06 07:02
不太懂你的意思@@
位址是固定的 可是Pi一直去呼叫错误的位址
2F:推 drag: 请打command详细,资讯不足我也只能说试试下面:05/07 15:56
3F:→ drag: i2cdump -f -y 1 0xC005/07 15:56
哪方面资讯不足啊@_@?
这是我打指令後的结果 No i2c-bus specified!
Pi一直在呼叫对错误的位址 所以指令没办法丢到TEA5756上
现在要先想办法让TEA5756回应ACK才对吧@_@
我想要修改的不是暂存器的数值
我是想要找方法指定Pi去找正确的位址建立连线0.0
所以才问能不能只让Pi去叫正确的的位址0x60
不知道这样解释大家有没有看懂=口=
※ 编辑: tk930732 (120.126.145.65), 05/07/2015 21:07:05
※ 编辑: tk930732 (120.126.145.65), 05/07/2015 21:13:28
4F:推 drag: 请问你的i2cdetect详细?05/08 14:14
pi@raspberrypi:~$ sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
※ 编辑: tk930732 (120.126.145.65), 05/08/2015 16:54:10
5F:推 drag: 请问是RPi一代还是二代? 一代 sudo i2cdetect -y 005/08 18:04
6F:推 openeyes222: 就是你的driver没有去注册对的位址呀!05/08 19:01
是二代的
那要怎样才能注册对的位址@_@?
※ 编辑: tk930732 (140.122.53.60), 05/09/2015 20:00:35
8F:→ LoSaNgeR: 7bit address他是在STT後送(r/w&0x80)|(0x60 > 1) 05/18 23:58
9F:→ LoSaNgeR: 如果找着做的话还是不行, 检查一下另一边电阻是不是调整 05/18 23:59
10F:→ tk930732: 我当初就是照着那个网址做的~ 05/22 13:04
11F:→ tk930732: 第二句看不太懂@_@ 05/22 13:04
12F:→ tk930732: 电阻的话 我用的晶片是整个都焊好的完整模组 应该不会 05/22 13:05
13F:→ tk930732: 是有问题 有用BeagleboneBlack接过也是能拨 05/22 13:05
14F:推 surfingbboy: 0x30不就正好是0x60 shift 1吗?7bit位址刚好 06/02 16:43
15F:推 surfingbboy: 在probe加printk看有没有印就知有无注册成功 06/02 16:45