iic总线页写入问题

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

原程序

NE5532 发表于 2009-2-14 18:02 | 显示全部楼层

忠告:请抛弃Protus

一个EEPROM芯片只需要5块钱。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

66

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部