导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→I2C读取失败求教大虾.......

* 102528: I2C读取失败求教大虾.......

   ningling_21 
ningling_21发表的帖子 

 I2C读取失败求教大虾.......
读写24c08时出错,写入#7ah而读出的却是#bdh,硬件用89s52,p0.6(scl)
p0。7(sda)请问各位高手是什么问题导致?
读数据时序如下:
开始
启动总线;
发送器件地址(a0写);
等待应答;
应答正确;
发送子地址00h;
等待应答;
应答正确;
启动总线;
发送器件地址(a1读);
等待应答;
应答正确;
读取一个字节数据;
发送应答信号;
发送非应答
释放总线(结束)

l这位仁兄,读写#00h,0ffh时没错啊,请教各位了。。。。
写数据时序如下:
开始
启动总线;
发送寻址字节(写);
等待应答;
应答正确;
发送子地址00h;
等待应答;
应答正确;
发送数据(循环左移位);
等待应答;
应答正确;
释放总线;
结束

可是,读出的和写入的数据不同如:写#87h,读到的是#c3h,请教大家了..........





发表时间:2007年2月2日17:34:31

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  102546.[详细]随便说说
摘要:流程基本正确,可以不发送非应答信号(当然也可以发),0x7A=0111,1010B,而0xBD=1011,1101,应该是读取一个字节数据程序错误.(建议读写0xFF,0x00测试,这样容易找出问题).......(153字)
- [ayb_ice][802次] 2007年2月3日

[上一篇帖子]:谢谢楼主,发给我一份资料吧,我正要用这些。谢谢!邮箱:zhangyupingcec@163.com
[下一篇帖子]:应答信号问题读I2C器件后由CPU发出应答信号,向I2C器件写数据后等待I2C器件发出应答信号。。。