EDA365电子工程师网

标题: 用FPGA去编写I2C时序时需要特别注意的地方(亲身教训啊) [打印本页]

作者: neu_1101300    时间: 2012-3-18 21:11
标题: 用FPGA去编写I2C时序时需要特别注意的地方(亲身教训啊)
       这几天一直忙着用FPGA去模拟I2C写时序,是需要连续向不同的地址单元写入数据。但调试时遇到一个问题就是只要第一个字节能够正常写入,而后面的字节都写不进去。3 T1 c# _9 i7 U8 u
       分析原因:(1)Stop信号没有停止,造成不能再次正常启动;(2)Start信号没有正常启动。在网上找了好多资料没有人提到这个,后来就去读I2C的时序,发现在第一个字节写结束以后有一段时间的free time期,这段时间不能进行操作;在这个时间过了以后SCL和SDA信号线为低,如果再想启动,必须先拉为高才行。
/ \# d7 j) A# V6 I      写出来供大家参考,希望大家不要犯这种错误了!
作者: lgl2466    时间: 2012-3-30 10:01

作者: mhb318    时间: 2012-4-7 13:27
其实即使一个时序的问题,不按照时序来,是会出问题的。分享出来也好
作者: yudengyun    时间: 2012-5-7 16:34
很好!正在学习I2C的工作原理和实际工作波形,感谢LZ
作者: yiyekurong    时间: 2012-5-19 08:30
fpga设计时就是时序最重要啊
作者: jiangshouliang    时间: 2012-5-25 20:02
感谢分享 经验都是宝贵的财富
作者: gn165625076    时间: 2012-5-29 21:36
本帖最后由 gn165625076 于 2012-5-29 21:43 编辑 . I+ o- V' U- A- d' n1 F6 X
+ J) L6 ~- X9 ~% Y0 p, s
谢谢分享,正在做EEPROM读写~
1 E8 ]/ |4 T% c( }应答查询
2 w, R3 W' A# s" G可以利用内部写周期时禁止数据输入这一特性一旦主器件发送停止位指示主器件操作结束时CAT24WC02/04/08/16 启动内部写周期应答查询立即启动包括发送一个起始信号和进行写操作的从器件地址如果CAT24WC02/04/08/16 正在进行内部写操作不会发送应答信号如果CAT24WC02/04/08/16 已经完成了内部自写周期将发送一个应答信号主器件可以继续进行下一次读写操作
作者: qiangqssong    时间: 2012-5-30 16:08
谢谢分享!!!
作者: tanglj86    时间: 2012-11-3 17:49
Thanks for your share
作者: akegaoshou    时间: 2012-11-7 16:38
THX for share
作者: amnesia37    时间: 2012-11-9 22:04
thanks for your share
作者: dengzhiyangren    时间: 2012-11-29 09:42
谢谢分享
作者: heyunchao178    时间: 2012-12-20 13:00
请教楼主:
2 _4 O. p4 n* i1 V0 J- U' H$ y3 t. O     独立编写一个能实现EEPROM全部读写功能的并行转换为I2C串行总线读写信号的模块。编写完整的符号工程要求的测试模块,进行各种层次的仿真,并观察波形
; s+ T$ q* |) `% d" ~                 真心求教 ,谢谢...
作者: borg    时间: 2013-1-18 15:35
能够把你写的代码共享一下 ,我也学习FPGA,可不知道怎么下手
作者: thename    时间: 2015-8-1 18:50
感谢分享
作者: fmorcm    时间: 2015-8-18 21:34
多谢分享
作者: nj841    时间: 2015-9-25 15:00
我想问楼主,用FPGA 写完IIC的应答能信号怎么处理的,我的IIC能用  但是应答信号的话  波形是被拉低一点点 而不是全部不拉低。用示波器可以看出来,有个台阶 ,比如正常的IIC电压是3。3    ,应答信号的话 估计在3。0  左右。  我的SDA 总线在应答时候是高阻。作为输入的。。求解决。
作者: xhnumber1    时间: 2015-10-30 09:23
瞧瞧
作者: whq001    时间: 2015-10-30 15:32

作者: lymnrx    时间: 2015-11-30 09:48
感谢分享!




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2