小弟最近在学iic总线,对单字节的读写没有问题,但对于页读取还是存在问题。<br />按照手册上的说明,编写的程序如下:<br />在PROTEUS上仿真,发现ic在读完控制字和地址之后,没有对数据进行读写。<br />把写页函数进行修改,改用如下的程序,是可以写入。<br />void writePage(uchar addr,uchar s,uchar n)<br />{<br /> <br /> iicStart();<br /> writeByte(0xa0); // 写控制字 <br /> iicResponse(); // 应答 <br /> writeByte(addr); // 写地址 <br /> iicResponse(); <br /> while(n--)<br /> {<br /> writeByte(s); // 写数据 <br /> iicResponse(); <br /> s++;<br /> }<br /> iicStop(); <br />}<br /><br />}<br /><br />void main()<br />{<br />writePage(1,0x30,16);<br />while(1);<br />}<br /><br />不会是没有识别指针变量吧?高手帮帮忙啊,小弟先谢谢了。 |
|