<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 以32位MCU-HY16F198實(shí)現(xiàn)AC電流量測(cè)應(yīng)用

          以32位MCU-HY16F198實(shí)現(xiàn)AC電流量測(cè)應(yīng)用

          作者: 時(shí)間:2015-04-07 來(lái)源:網(wǎng)絡(luò) 收藏

            (8)超低輸入噪聲運(yùn)算放大器。

          本文引用地址:http://www.ex-cimer.com/article/272140.htm

            (9)16-bit Timer A

            (10)16-bit Timer B模塊具PWM波形產(chǎn)生功能

            (11)16-bit Timer C模塊具Capture/Compare功能

            (12)硬件串行通訊SPI模塊

            (13)硬件串行通訊I2C模塊

            (14)硬件串行通訊UART模塊

            (15)硬件RTC時(shí)鐘功能模塊

            (16)硬件Touch KEY功能模塊

            三、系統(tǒng)設(shè)計(jì)

            硬件說(shuō)明

            搭配Hall Sensor連接電路如下,AIO1與Hall Sensor的Vout接,AIO0透過(guò)10k電組分壓電路連接在VDDA與VSS之間,這樣就可以量測(cè)到帶有1/2VDDA的交流電壓訊號(hào)。

            

           

            圖4 硬件線路連接圖

            主要組件介紹(1) MCU:,功能為量測(cè)電信號(hào)、控制、運(yùn)算包含功能為儲(chǔ)存校正參數(shù)。

            (2) LCD Display:負(fù)責(zé)顯示量測(cè)出來(lái)的電流數(shù)值。

            (3) 10K奧姆分壓電路:主要做為分壓電路應(yīng)用,可以量測(cè)到帶有1/2VDDA的交流電壓訊號(hào)。

            (4) Hall Sensor :將感應(yīng)到的交流電流轉(zhuǎn)換為Vac加上Vdc的混合電壓輸出訊號(hào)。

            函式使用說(shuō)明:1. void AC_DataCount(int index, int ADC_Data) :把量測(cè)到的ADC Data轉(zhuǎn)換成AC Data. int index :代表所量測(cè)到的ADC Data資料筆數(shù)。

            int ADC_Data :使用 ADC所量測(cè)到的ADC Data數(shù)值。

            2. long long AC_Algorithm(void) : AC Data透過(guò)交流信號(hào)算法計(jì)算出電流數(shù)值。

            一、范例程序

            /*——*/ /* MAIN function */ /*——*/ int main(void)

            { long long AC_Value;DisplayInit();ClearLCDframe();Delay(10000);DisplayHYcon();Delay(1000);MCUSTATUSbits._byte = 0;Count=0;InitalADC();SYS_EnableGIE(7,0x1FF); //Enable GIE(Global Interrupt)

            while(1)

            { if(MCUSTATUSbits.b_ADCdone) //b_ADCdone=1 execute below { MCUSTATUSbits.b_ADCdone=0;AC_Value = AC_Algorithm(); // To do AC algorithm and to show current value AC_Value=AC_Value/0.5770; // Using 60HZ gain value, calibrate at 2000mA LCD_DATA_DISPLAY(AC_Value); //Display AC Value Count=0;DrvADC_CombFilter(0);DrvADC_ClearIntFlag();DrvADC_EnableInt();DrvADC_CombFilter(1);} return 0;} /*——*/ /* ADC Interrupt Subroutines */ /*——*/ void HW2_ISR(void)

            { int ADCData;if(DrvADC_ReadIntFlag())

            { DrvADC_ClearIntFlag();ADCData=DrvADC_GetConversionData();AC_DataCount(Count++,ADCData); // AC Algorithm : to get ADCData if(Count>=AC_DataLen) //to do 4096 times { DrvADC_DisableInt();MCUSTATUSbits.b_ADCdone=1;} /*——*/ /* ADC Initialization Subroutines */ /*——*/ void InitalADC(void)

            { //Set ADC input pin DrvADC_SetADCInputChannel(ADC_Input_AIO1,ADC_Input_AIO0); //Set the ADC positive/negative input voltage source. DrvADC_InputSwitch(OPEN); //ADC signal input (positive and negative) short(VISHR) control. DrvADC_RefInputShort(OPEN); //Set the ADC reference input (positive and negative) short(VRSHR) control. DrvADC_Gain(ADC_PGA_Disable,ADC_PGA_Disable); //Input signal gain for modulator. DrvADC_DCoffset(0); //DC offset input voltage selection (VREF=REFP-REFN)

            DrvADC_RefVoltage(VDDA,VSSA); //Set the ADC reference voltage. DrvADC_FullRefRange(1); //Set the ADC full reference range select. //0: Full reference range input //1: 1/2 reference range input DrvADC_OSR(10); //10 : OSR=32 DrvADC_CombFilter(ENABLE); //Enable OSR DrvADC_ClkEnable(0,1); //Setting ADC CLOCK ADCK=HS_CK/6 Rising edge is high //Set VDDA voltage DrvPMU_VDDA_LDO_Ctrl(E_VDD3V);DrvPMU_BandgapEnable();DrvPMU_REFO_Enable();DrvPMU_AnalogGround(ENABLE); //ADC analog ground source selection. //1 : Enable buffer and use internal source(need to work with ADC)

            //Set ADC interrupt DrvADC_EnableInt();DrvADC_ClearIntFlag();DrvADC_Enable();}

          汽車防盜機(jī)相關(guān)文章:汽車防盜機(jī)原理
          頻譜分析儀相關(guān)文章:頻譜分析儀原理

          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: HY16F198 WCS1800

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();