求助关于成品模块读取数据的问题
我用的是成品模块,串口的方式与单片机(C51)进行通讯的(TTL电平),现在需要将仪器上24C512地址里的数据(64K)用U盘读出来在电脑上显示。假如从24C512里读出的为以下数据,显示格式要求为:
年/月/日 时 :分 剩余液量 工作状态 /*标题内容*/
2009/05/20 08 : 45 1058 正常 /*存储器中的数据*/
2009/05/20 09 : 00 0808 异常 /*存储器中的数据*/
2009/05/20 10 : 12 1200 异常 /*存储器中的数据*/
2009/05/21 12 : 45 1105 正常
2009/05/22 09 : 45 1018 正常
2009/05/22 10 : 15 0903 正常
2009/05/22 10 : 45 0801 正常
.
我现在用贵公司提供的例子,用数据进行模拟测试后,
for(page=0;page<815;page++)//仪器画面中显示共可存储815页
{
address=page*80; //不同页面对应的不同地址
for(a=0;a<10;a++) //每页存储10行数据
{
address=((a*8)+address);
year=2000+8;/*read_iic(address+1);*/ //先用数据进行模拟测试
month=12;//read_iic(address+2); //先用数据进行模拟测试
date=23;//read_iic(address+3);
hour=15;//read_iic(address+4);
min=25;//read_iic(address+5);
adc=270;//通过U盘读取后此数据一直默认的为1024
len = sprintf( mCmdParam.ByteWrite.mByteBuffer, "%04d/%02d/%02d %02d:%02d
%04u\xd\xa", year, (U16)month, date, (U16)hour,(U16)min, adc ); /* 将二制制数据格式为一行字符串 */
mCmdParam.ByteWrite.mByteCount = (unsigned char)len; /* 指定本次写入的字节数,不能超过MAX_BYTE_IO,否则另用缓冲区分多次写入 */
i = ExecCommand( CMD_ByteWrite, (unsigned char)(len+1) ); /* 以字节为单位向文件写入数据 */
mStopIfError( i );
}
}
现在出现的问题是adc无论如何改动都是默认的为1024 请问是什么原因?

您先用我们的例子程序测试一下!
此号封存
只有登录才能回复,可以选择微信账号登录