先说下我目前的进度
我已经完成SPI时序的读取驱动程序,现在已经能够成功的读取三相电压、电流、频率,经过校表之后能得到一个比较准确的结果了,芯片的复位等硬件操作也没有什么大问题。现在最主要的是在某几项数据的解析与校表上。
下面说说我疑惑的几个地方
1.第七路ADC读取地址的问题。
数据手册给出了2个地址,那个才是能读到正确数据的地址呢?!两个地址我都试过了,1个是读不到数据,另外一个是数据不正确,不知是不是我程序换算方法的问题,我在试试。
2.功率校正的方法
这是手册上的换算说明,下面是我的代码
float value_tmp;
value_tmp=(float)((RD_ATT7022(r_Pt)));//读取合相功率
if(value_tmp>8388608)value_tmp=value_tmp-16777216;//判断是否大于2^23
value_tmp=(value_tmp/64); //2的(23-17)次方2的6次方64算出来的单位是W
C_phrase.r_Pw=(u16)value_tmp; //转换成整型存入结构体
这里有2个疑问
数据读出是以补码的形势是否要转换成原码?!我经过试验感觉转不转结果没有差.
要不要判断是否大于2^23?!
我看过网络上人家贴出来的代码,很多人都是读出结果直接除以64
这个是功率校正的方法
上面提到的100%Ib处是什么意思?!
还有上面提到的测量能量是什么数据?!功率、电能还是什么数据?!
我的问题可能比较低级,求各位大虾解答,好让小弟少走一些弯路,也让刚刚接触到这块开发的朋友得到一些帮助,谢谢!
|