for(n=0n<24n++)
{
DATA_R<<=1
P3OUT|=SCLK//上升沿接收数据
if(P3IN)
DATA_R|=0x000001
_NOP()
_NOP()
P3OUT&=~SCLK
_NOP()
}
// P3OUT|=DOUT
//Disable SPI
P3OUT|=CS
//return Data From SPI
return(DATA_R)
}
void WriteSpi(uchar Com_W,unsigned long int DATA_W)//前让向ATT7022B里游陵面写24位数据
{
uchar n
P3DIR|=CS+SCLK+DOUT
P3DIR&=~DIN
//Enable SPI
P3OUT|=CS
P3OUT&=~SCLK
P3OUT&=~CS
//Send 8-bits Command to SPI
for(n=0n<8n++)
{
P3OUT|=SCLK//下降沿写数据
_NOP()
_NOP()
if(Com_W&0x80)
P3OUT|=DOUT
else P3OUT&=~DOUT
_NOP()
_NOP()
P3OUT&=~SCLK
Com_W<<=1
_NOP()
}
// DELAY_10us()//等待10微神悔戚秒
ATT7022BU是ATT7022B的升级版本。ATT7022是一颗高精度三相电能专用计量芯片,适用于三相三线和三相四线应用。 集成了六路二阶sigma-delta ADC、参考电压电路以及所有功率、能量、有效值、功率因数以及频率测量的数字信号处理等电路。能够测量各相以及合相的有功功率、无功功率、视在功率、有功能量以渗绝及无功能量,同时还能测量各相电流、电压有效值、功率因数、相角、频率等参数,充分满足三相复费率多功能电能表的需求。支持全数字域的增益、相位校正,即纯校表。有功、无功电能脉冲输出CF1、陵喊桐CF2提供瞬时有功、无功功率信息,可以直接接到标准表,进行误差校正。详细校表方法请参考第三部分校表方法 。可以对基波有功、无功功率进行测量,提供脉冲输出CF3和CF4提供瞬时基波有功功率以及基波无功功率信息,可直接用于基波的校正。提供两类视在能量输出,RMS视在能量以及PQS视在能量,CF3和CF4也可被配置为视在能尺坦量脉冲输出。 提供一个SPI接口,方便与外部MCU之间进行计量参数以及校表参数的传递。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)