⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 priolow.c

📁 freescale最新的16位单片机
💻 C
📖 第 1 页 / 共 2 页
字号:
    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 + -