新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AD采樣程序的設計

        AD采樣程序的設計

        作者: 時間:2012-08-31 來源:網絡 收藏
        通過采樣某點的,與預設定值作比較,得出下一步MCU該如何工作。

        例如:當檢測到某點的電壓,大于預設定值,則產生,通過單片機控制減小輸入的、斷電、鳴叫,等一系列保護電路措施...

        1.主函數:

        void main(void)
        {
          // USER CODE BEGIN (MAIN_Main,2)
        uword temp1=0,temp2=0,temp3=0,temp4=0;

        // USER CODE END

        MAIN_vInit();

        // USER CODE BEGIN (MAIN_Main,3)

        // USER CODE END

        while(1)
        {

        // USER CODE BEGIN (MAIN_Main,4)
        ADC_vStartSeqReqChNum(0,0,0,3);
        temp1=ADC_uwGetResultData0();
        temp1=temp1*10+24;
        temp1=temp1/48;
        temp2=temp1/10;
        temp3=temp1%10;
        temp4=temp24|temp3;
        P3_DATA=temp4;
        // USER CODE END

        }

        } // End of function main

        2.ADC函數:

        在檢測到某點電壓大于或小于與設定值,單片機產生中斷,產生相應措施。

        void ADC_vIsr(void) interrupt ADCINT
        {

        // USER CODE BEGIN (ADC_Isr,2)
        uword i=0,j=0;
        // USER CODE END

        SFR_PAGE(_su0, SST0); // switch to page 0

        // Check Interrupt Request 0 Flag
        if (((IRCON1 0x08) != 0)) //判斷中斷0標志位是否置位
        {
        IRCON1 = ~(ubyte)0x08; // 置位了,清除該標志位, 為下次做準備


        // USER CODE BEGIN (ADC_Isr,3)
        for(i=0;i1000;i++) //八個發光二極管間隔亮,延時時間約0.45s
        for(j=0;j500;j++)
        P3_DATA=0xaa;
        for(i=0;i1000;i++)
        for(j=0;j500;j++)
        P3_DATA=0x55;
        // USER CODE END
        }


        // Check Interrupt Request 1 Flag
        if (((IRCON1 0x10) != 0)) //判斷中斷1標志位是否置位
        {
        IRCON1 = ~(ubyte)0x10; //置位了,清除該標志位,為下次做準備


        // USER CODE BEGIN (ADC_Isr,4)

        for(i=0;i1000;i++) //八個發光二極管高低半間隔亮,
        for(j=0;j500;j++)
        P3_DATA=0xf0;
        for(i=0;i1000;i++)
        for(j=0;j500;j++)
        P3_DATA=0x0f;
        // USER CODE END
        }


        // USER CODE BEGIN (ADC_Isr,5)

        // USER CODE END

        SFR_PAGE(_su0, RST0); // restore the old SCU page
        } // End of function ADC_vIsr



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 如东县| 大港区| 潼关县| 托克逊县| 明星| 蒙山县| 长乐市| 万宁市| 呼和浩特市| 高台县| 宁蒗| 盐城市| 和龙市| 绥芬河市| 建阳市| 响水县| 栾城县| 丹寨县| 施秉县| 昌乐县| 新沂市| 陵水| 陕西省| 阳西县| 南阳市| 门头沟区| 龙川县| 抚远县| 兴文县| 苍南县| 华坪县| 沈阳市| 甘洛县| 浙江省| 龙门县| 加查县| 邢台市| 通化县| 常山县| 理塘县| 桐梓县|