📄 senddata.c
字号:
// value = savedRET[20];//POWERFCT;
value = (unsigned int)((((unsigned long)value*1000)/POW_2_14));
SendString("cosPhi(*1000): ");
if ((signed char)CAPIND > 0) SendChar('-');
//host_decu16(value);
l_to_a(value, strbuf);
// sprintf(strbuf, "%d",value);
SendString(strbuf);
SendChar('\r');
value = (unsigned int)((unsigned char)CAPIND);
SendString("CapInd: ");
SendResult((unsigned char*) &value, 2);
SendString(" ");
value = POWERFCT;
// value = savedRET[20];//POWERFCT;
SendString("PF: ");
SendResult((unsigned char*) &value, 2);
SendChar('\r');
// value = (unsigned int)((float)MAINSPERIOD/(float)((float)(1000000)/((float)(1048576))));
value = (unsigned int)((float)MAINSPERIOD*((float)(1000000)/((float)(1048576))));
// value = (unsigned int)((((float)savedRET[22]*(float)(1000000))/(float)(1048576)));
SendString("Main Period(us): ");
//host_decu16(value);
l_to_a(value, strbuf);
// sprintf(strbuf, "%d",value);
SendString(strbuf);
SendChar('\r');
SendString("Frequency(mHz): ");
lvalue = (unsigned long)((float)(1000000*1000/((float)value)));
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = (unsigned long)((float) energy.l * (s_parameters.EnergyRatio/1000));
SendString("Active Energy1 (mW): ");
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = (unsigned long)(((unsigned long)REACTENERGY_HI << 16) + REACTENERGY_LO);
lvalue = (unsigned long)((float) lvalue * (s_parameters.EnergyRatio/1000));
SendString("Reactive Energy1 (mVAR): ");
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = (unsigned long)(((unsigned long)APPENERGY_HI << 16) + APPENERGY_LO);
lvalue = (unsigned long)((float) lvalue * (s_parameters.EnergyRatio/1000));
SendString("Apparent Energy1 (mVA): ");
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = (unsigned long)((float) total_energy * (float)(s_parameters.EnergyRatio)/(float)((float)1000000*(float)3600));
SendString("Active TotalEnergy1 (Wh): ");
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = (unsigned long) (((unsigned long)temperature * (s_parameters.ulTempGain))/100 - (s_parameters.ulTempOffset));
SendString("Temperature(*100/degree): ");
//host_decu32(lvalue);
l_to_a(lvalue, strbuf);
// sprintf(strbuf, ldfs,lvalue);
SendString(strbuf);
SendChar('\r');
lvalue = ((LINECYCLCNT_LO) + ((unsigned long)LINECYCLCNT_HI << 16));
// lvalue = ((savedRET[28]) + ((unsigned long)savedRET[29] << 16));
SendString("Cycles: ");
SendResult((unsigned char*) &lvalue, 4);
SendChar('\r');
lvalue = ((NMBMEAS_LO) + ((unsigned long)NMBMEAS_HI << 16));
SendString("Num of Meas.: ");
SendResult((unsigned char*) &lvalue, 4);
SendChar('\r');
break;
case tx_version:
SendFloat(software_version,3);
SendString("\r");
break;
default:
break;
}
}
void SendValue(unsigned int parm)
{
int svalue;
unsigned int value;
unsigned long lvalue;
float fvalue;
unsigned long activeEnergy;
activeEnergy = (unsigned long)((float) total_energy * (float)(s_parameters.EnergyRatio)/((float)1000000*(float)3600));
switch (parm)
{
case send_clock:
//SendString("Time: ");
SendChar(Digit1(HOUR)); // High digit
SendChar(Digit0(HOUR)); // Low digit
SendChar(':');
SendChar(Digit1(MIN)); // High digit
SendChar(Digit0(MIN)); // Low digit
SendChar(':');
SendChar(Digit1(SEC)); // High digit
SendChar(Digit0(SEC)); // Low digit
break;
case send_date:
#if date_format == MMDDYY // US Format
SendChar(Digit1(MONTH)); // High digit
SendChar(Digit0(MONTH)); // Low digit
SendChar('/');
SendChar(Digit1(DAY)); // High digit
SendChar(Digit0(DAY)); // Low digit
SendChar('/');
SendChar(Digit1(YEAR)); // High digit
SendChar(Digit0(YEAR)); // Low digit
#else // European Format
SendChar(Digit1(DAY)); // High digit
SendChar(Digit0(DAY)); // Low digit
SendChar('.');
SendChar(Digit1(MONTH)); // High digit
SendChar(Digit0(MONTH)); // Low digit
SendChar('.');
SendChar(Digit1(YEAR)); // High digit
SendChar(Digit0(YEAR)); // Low digit
#endif
break;
case send_volt:
#ifdef __CROSSWORKS__
lvalue = ((unsigned long) (V1RMS) * (s_parameters.VRatio*1000))/1000;
#else
lvalue = ((unsigned long) ((V1RMS) * (s_parameters.VRatio*1000))/1000);
#endif
SendFloat(lvalue,3);
break;
case send_current:
lvalue = ((unsigned long) (IRMS_HI * s_parameters.IRatio*1000))/1000;
SendFloat(lvalue,3);
break;
case send_vpeak:
#ifdef __CROSSWORKS__
lvalue = ((unsigned long) (VPEAK) * (s_parameters.VRatio*1000))/1000;
#else
lvalue = ((unsigned long) ((VPEAK) * (s_parameters.VRatio*1000))/1000);
#endif
SendFloat(lvalue,3);
break;
case send_ipeak:
lvalue = ((unsigned long) (IPEAK * s_parameters.IRatio*1000))/1000;
SendFloat(lvalue,3);
break;
case send_freq:
// lvalue = (unsigned long)((float)((long)1000*(long)256*(long)4096))/((float)savedRET[22]);
lvalue = (unsigned long)((float)((long)1000*(long)256*(long)4096))/((float)MAINSPERIOD);
SendFloat(lvalue,3);
break;
case send_cosphi:
value = (unsigned int)((((unsigned long)POWERFCT*1000)/POW_2_14));
lvalue = ((((unsigned long)POWERFCT*1000)/POW_2_14));
if ((signed char)CAPIND < 0)
{ SendChar('-'); }
else
{ SendChar('+'); }
SendFloat(lvalue,3);
break;
/* case send_ch1:
LCDdecu16(wfs1, 5, 7, 0);
break;
case send_ch2:
LCDdecu16(wfs2, 5, 7, 0);
break;
case send_ch3:
LCDdecu16(wfs3, 5, 7, 0);
break; */
case send_temp:
lvalue = (unsigned long) (((unsigned long)temperature * (s_parameters.ulTempGain))/100 - (s_parameters.ulTempOffset));
SendFloat(lvalue,2);
break;
case send_power:
fvalue = ((float) energy.l * (float)(s_parameters.EnergyRatio)/(1000000));
if (fvalue <= 1000)
{
lvalue = (unsigned long)(fvalue*1000);// Active Power (kW);
SendFloat(lvalue,6);
}
else
{
lvalue = (unsigned long)fvalue;
SendFloat(lvalue,3);
}
break;
case send_energy:
//lvalue = (unsigned long)((float) total_energy * (float)(s_parameters.EnergieRatio)/((float)1000000*(float)3600));
lvalue = activeEnergy; // Active Energy1 (kWh):
SendFloat(lvalue,3);
break;
case send_msgin:
case send_last:
default:
break;
}
SendChar('\r'); // End the string with carriage return
}
#endif // withUARTComm
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -