微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > IIC 无ACK

IIC 无ACK

时间:10-02 整理:3721RD 点击:
用verilog编写E2PROM AT24C1024的读写程序,写入数据时,正常,有ACK回复。但是在读时,第一次start 后写设备地址和寄存器地址,有回复ACK;再产生start后改变方向,设备地址最后一位改成1后,不回复ACK。请教各位有可能是什么原因?

读时第二次start后写设备地址


同求大神解答》》》》》》》》》》》》

因为SDA如果是输出额话,Pin脚是开楼状态,如果不给0的话,因为有上拉所以肯定是High,所以如果要变Low,必须给Low电平。
而读状态,首先发送Slave地址,Slave收到后回给Master一个ACK作为应答,接来下就是读数据了,此时Master-Trans转为Master-Receive,Slave-Receive转为Slave-Send,所以这个Byte的ACK是Master给的。Slave不会给ACK的。
详细去查查飞利浦的THE I 2C-BUS SPECIFICATION文件

小编无私分享 谢谢

赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top