📄 priolow.c
字号:
break;
case ANALOG_AMBIENT_TEMPERATURE:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SG8;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog3 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_LIGHT_INTENSITY:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SG9;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog4 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_VOLTAGE1:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SG11;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog1 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_VOLTAGE2:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SG12;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog2 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_JAGUAR_TEMPERATURE:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SP1;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog6 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_JAGUAR_CURRENT_HS0:
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_HS0;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog11 = ATD0DR0; // read data => clear conversion complete flags
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_JAGUAR_CURRENT_HS1:
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_HS1;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog12 = ATD0DR0; // read data => clear conversion complete flags
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_JAGUAR_CURRENT_HS2:
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_HS2;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog13 = ATD0DR0; // read data => clear conversion complete flags
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_JAGUAR_CURRENT_HS3:
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_HS3;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog14 = ATD0DR0; // read data => clear conversion complete flags
CSB_U401 = 0; // Chipselect e-Switch MC33580 U401 - PORTB3
temp16.BYTES.msB = U401_OCR1;
temp16.BYTES.lsB = U401_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U401 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_PUMA_TEMPERATURE:
for (i=0; i < WAIT_50; i++);
CSB_U405 = 0;
lastmsgU405.comm = U405_ANALOG_COMMAND;
lastmsgU405.data.w = U405_ANALOG_SP0;
temp24 = ReadWriteSPI24bit(lastmsgU405); //
CSB_U405 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK | ATD0CTL5_CC_MASK; // ATD0 ch1, right justif., ch1 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog7 = ATD0DR0; // read data => clear conversion complete flags
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_PUMA_CURRENT_HS0:
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_HS0;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog21 = ATD0DR0; // read data => clear conversion complete flags
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_PUMA_CURRENT_HS1:
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_HS1;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog22 = ATD0DR0; // read data => clear conversion complete flags
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_PUMA_CURRENT_HS2:
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_HS2;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog23 = ATD0DR0; // read data => clear conversion complete flags
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
case ANALOG_PUMA_CURRENT_HS3:
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_HS3;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
for (i=0; i < WAIT_100; i++);
ATD0CTL5 = ATD0CTL5_DJM_MASK; // ATD0 ch0, right justif., ch0 starts
while(!ATD0STAT0_SCF); // wait till conversion is completed + clear scf flag when set
fm_analog24 = ATD0DR0; // read data => clear conversion complete flags
CSB_U402 = 0; // Chipselect e-Switch MC33874 U402
temp16.BYTES.msB = U402_OCR1;
temp16.BYTES.lsB = U402_NO_HS;
temp16 = ReadWriteSPI16bit(temp16);
CSB_U402 = 1;
arrayTask[actual].priority = 0; // erase task from list
break;
default:
// temporary
WAIT_300ns;
break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -