发布网友 发布时间:2023-12-28 05:20
共2个回答
热心网友 时间:2024-08-05 13:53
assign i2c_sdat=reg_sdat?1'bz:0我最近也在研究这段代码;我把自己的分析说出来,i2c_sdat为inout类型,作为input时,主机从数据线上获取从机的ACK信号,即ack<=i2c_sdat,上述代码在3次取ACK信号上,我分析是没有问题的;作为output时,主机控制总线(启动和停止I2C通信)及发送数据(配置WM8731),此时,reg_sdat作为输出寄存器,当为0时, i2c_sdat数据线也相应为0,当为1时,数据线为高阻Z状态,此时的疑问是从机能否识别到数据线上的1;http://www.cnblogs.com/woshitianma/archive/2012/12/18/2823535.html参考这个资料,从机收到1是因为SDIN外接上啦电阻了,置高阻,从机即可收到1;写法没有问题,需要参考硬件电路!很难想被浏览90次都没有人帮忙分析……热心网友 时间:2024-08-05 13:53
高阻说明不输出