test ok,but T2~T3=0 can't handle

This commit is contained in:
YiChin
2020-11-16 14:43:50 +08:00
parent 8e6d112729
commit dac19f62b2
@@ -123,10 +123,11 @@
//// InputNotify(NOTIFY_VOLT, RealV);
//}
static void PULSE_Vscan(PULSEMode *PULSE){
static void PULSE_Vscan(PULSEMode *PULSE)
{
static uint16_t lastVolt;
if (vscanReset) {
lastVolt = INSTRUCTION.VoltConstant;
if (PULSE->_tflag == 0) {
PULSE->_tflag = PULSE->_t2;
PULSE->_vflag = PULSE->_v2;
@@ -135,29 +136,32 @@ static void PULSE_Vscan(PULSEMode *PULSE){
PULSE->_tflag = PULSE->_t1;
PULSE->_vflag = PULSE->_v1;
}
lastVolt = INSTRUCTION.VoltConstant;
INSTRUCTION.VoltConstant = PULSE->_vflag;
if(lastVolt != INSTRUCTION.VoltConstant){
if (lastVolt != INSTRUCTION.VoltConstant) {
lastVolt = INSTRUCTION.VoltConstant;
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
}
vscanReset = false;
}
if (!vscanReset) {
//vscan counter
if (GPT.VscanRateCounter >= PULSE->_tflag) {
GPT.VscanRateCounter -= PULSE->_tflag; //To get right time
}
if (PULSE->_loop > 0 && PULSE->_cycleNumber > 0) {
if (PULSE->_tflag == PULSE->_t1) {
PULSE->_tflag = PULSE->_t2;
PULSE->_vflag = PULSE->_v2;
PULSE->_tflag = PULSE->_t2;
PULSE->_vflag = PULSE->_v2;
}
else if (PULSE->_tflag == PULSE->_t2) {
PULSE->_tflag = PULSE->_t3;
PULSE->_vflag = PULSE->_v3;
PULSE->_tflag = PULSE->_t3;
PULSE->_vflag = PULSE->_v3;
}
else if (PULSE->_tflag == PULSE->_t3) {
PULSE->_cycleNumber -- ;
@@ -170,8 +174,9 @@ static void PULSE_Vscan(PULSEMode *PULSE){
PULSE->_vflag = PULSE->_v2;
}
}
INSTRUCTION.VoltConstant = PULSE->_vflag;
if(lastVolt != INSTRUCTION.VoltConstant){
if (lastVolt != INSTRUCTION.VoltConstant) {
lastVolt = INSTRUCTION.VoltConstant;
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
@@ -194,8 +199,9 @@ static void PULSE_Vscan(PULSEMode *PULSE){
PULSE->_vflag = PULSE->_v5;
}
}
INSTRUCTION.VoltConstant = PULSE->_vflag;
if(lastVolt != INSTRUCTION.VoltConstant){
if (lastVolt != INSTRUCTION.VoltConstant) {
lastVolt = INSTRUCTION.VoltConstant;
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
DAC_outputV(Usercode_Correction_to_DAC(INSTRUCTION.VoutGainLevel, INSTRUCTION.VoltConstant));
@@ -207,6 +213,7 @@ static void PULSE_Vscan(PULSEMode *PULSE){
ModeLED(NO_EVENT);
}
}
InputNotify(NOTIFY_IMPEDANCE, PULSE->_vflag);
}
}