找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1659|回復(fù): 11
收起左側(cè)

關(guān)于九齊單片機內(nèi)部1/4電壓采樣

[復(fù)制鏈接]
ID:1125252 發(fā)表于 2024-8-1 11:21 | 顯示全部樓層 |閱讀模式
九齊IC的示例程序中,通過內(nèi)部1/4VDD采樣到的ADC值是正常值的1/4嗎?比如VDD是5V,對應(yīng)4096。這里采樣到的ADC最多就是1024?
//--------------- 1/4*VDD ADC CONVERSION -----------------------------------
void QuaVDD_Convert(char count)
{
    char i;
    ADMD = C_ADC_En | C_ADC_CH_En | C_Quarter_VDD;    // Enable ADC power, Enable global ADC input channel, Select internal 1/4*VDD as ADC input
    for (i = 1; i <= count; i++)
    {
        ADMDbits.START = 1;                       
        Wait();
        R_QuaVDD_DATA_LB += (0x0F & ADR);
        R_QuaVDD_DATA += ADD;
    }
}
unsigned int QuaVDD_Count(void)
{
    unsigned int temp;
    R_QuaVDD_DATA = R_QuaVDD_DATA_LB = 0x00;
    QuaVDD_Convert(8);                        // Execute 8-times of 1/4*VDD ADC conversion
    R_QuaVDD_DATA <<= 4;
    R_QuaVDD_DATA_LB &= 0xF0;
    R_QuaVDD_DATA += R_QuaVDD_DATA_LB;
    R_QuaVDD_DATA >>= 3;
   
    temp=R_QuaVDD_DATA;
   
    return temp;
}
回復(fù)

使用道具 舉報

ID:401564 發(fā)表于 2024-8-1 22:10 | 顯示全部樓層
要選擇參考電壓的呀
選擇好參考電壓之后,計算出來的數(shù)字量,只有實際電壓的1/4
比如,VDD為4V,選擇2V參考電壓,1/4VDD通道,那么,ADC出來的數(shù)字量就是: 1024
回復(fù)

使用道具 舉報

ID:1061331 發(fā)表于 2024-8-2 10:36 | 顯示全部樓層
ADC轉(zhuǎn)換和累加:QuaVDD_Convert函數(shù)啟動ADC轉(zhuǎn)換并累加結(jié)果。這里,每次轉(zhuǎn)換的結(jié)果都被加到R_QuaVDD_DATA_LB的低4位和R_QuaVDD_DATA中。這是為了通過多次測量來提高精度或穩(wěn)定性。 數(shù)據(jù)處理:在QuaVDD_Count函數(shù)中,首先清零累加器,執(zhí)行8次轉(zhuǎn)換,然后通過位操作處理結(jié)果。這里,R_QuaVDD_DATA <<= 4;將結(jié)果左移4位,可能是為了與R_QuaVDD_DATA_LB的低4位對齊。然后,R_QuaVDD_DATA_LB &= 0xF0;保留R_QuaVDD_DATA_LB的高4位(即前面累加的低4位的結(jié)果),并通過R_QuaVDD_DATA += R_QuaVDD_DATA_LB;將它們加到主累加器中。最后,R_QuaVDD_DATA >>= 3;可能是為了平均(或按比例縮。┒啻螠y量的結(jié)果。 返回值:最終,函數(shù)返回處理后的ADC值。然而,這個值并不是直接對應(yīng)于1/4VDD的電壓值,而是經(jīng)過多次測量和處理的數(shù)字表示。 重要:要理解這個值如何與實際的1/4VDD電壓相關(guān)聯(lián),您需要知道ADC的分辨率和參考電壓。如果ADC是12位的,那么最大值是4095,但這并不直接對應(yīng)于電壓值。您需要使用ADC的分辨率和參考電壓(在這個例子中是內(nèi)部生成的1/4VDD)來計算實際的電壓值。
回復(fù)

使用道具 舉報

ID:1059013 發(fā)表于 2024-8-2 11:16 | 顯示全部樓層
Y_G_G 發(fā)表于 2024-8-1 22:10
要選擇參考電壓的呀
選擇好參考電壓之后,計算出來的數(shù)字量,只有實際電壓的1/4
比如,VDD為4V,選擇2V參考電 ...

因該是1023吧?!。
回復(fù)

使用道具 舉報

ID:401564 發(fā)表于 2024-8-2 12:46 | 顯示全部樓層
fishafish 發(fā)表于 2024-8-2 11:16
因該是1023吧?。!

不重要
知道這么一回事就可以了
九齊是12位ADC,ADC的最大數(shù)字量是4095
實際上的數(shù)字量會在1020到1030之間跳動
回復(fù)

使用道具 舉報

ID:1129414 發(fā)表于 2024-8-12 10:48 | 顯示全部樓層
要選擇好參考電壓
回復(fù)

使用道具 舉報

ID:1125252 發(fā)表于 2024-8-12 15:49 | 顯示全部樓層
Y_G_G 發(fā)表于 2024-8-1 22:10
要選擇參考電壓的呀
選擇好參考電壓之后,計算出來的數(shù)字量,只有實際電壓的1/4
比如,VDD為4V,選擇2V參考電 ...

這個怎么換算的,我看到他的1/4VDD通道,參考的電壓C_Vrefh_VDD,這樣怎么換算成讀取到的實際電壓?
回復(fù)

使用道具 舉報

ID:1125252 發(fā)表于 2024-8-12 16:06 | 顯示全部樓層

參考電壓選擇INTVDD呢,有沒有計算公式?直接采樣值*基準電壓/4096不對
回復(fù)

使用道具 舉報

ID:401564 發(fā)表于 2024-8-12 17:07 | 顯示全部樓層
1481509156 發(fā)表于 2024-8-12 15:49
這個怎么換算的,我看到他的1/4VDD通道,參考的電壓C_Vrefh_VDD,這樣怎么換算成讀取到的實際電壓?

參考電壓一般不選VDD,一般選內(nèi)部2V,因為VDD不穩(wěn)定,但如果VDD是已經(jīng)經(jīng)過穩(wěn)壓的話,也可以選VDD作為參考
回復(fù)

使用道具 舉報

ID:1125252 發(fā)表于 2024-8-13 11:48 | 顯示全部樓層
Y_G_G 發(fā)表于 2024-8-12 17:07
參考電壓一般不選VDD,一般選內(nèi)部2V,因為VDD不穩(wěn)定,但如果VDD是已經(jīng)經(jīng)過穩(wěn)壓的話,也可以選VDD作為參考

開發(fā)的IC沒有多余的IO腳了,可以直接拿內(nèi)部VDD做參考讀取電池的電壓嗎?這個換算又是怎么換算的,正常的不是利用AD腳引腳讀取ADC值,再和參考電壓的作比較嗎?
回復(fù)

使用道具 舉報

ID:401564 發(fā)表于 2024-8-13 14:11 | 顯示全部樓層
1481509156 發(fā)表于 2024-8-13 11:48
開發(fā)的IC沒有多余的IO腳了,可以直接拿內(nèi)部VDD做參考讀取電池的電壓嗎?這個換算又是怎么換算的,正常的 ...

鋰電池供電本身就不需要更多的IO,前提是電池必須直接接在單片機的VDD上的,不能有LDO
這個時候,
參考電壓選擇: 內(nèi)部2V電壓
ADC通道選擇: 1/4VDD
然后進行ADC就讀取到VDD的數(shù)字量了,再計算一下,就知道供電電池的電壓了
具體代碼,你最好是自己寫,這樣,你才能真正的理解這里頭的原理
回復(fù)

使用道具 舉報

ID:948326 發(fā)表于 2025-4-12 17:01 | 顯示全部樓層
1481509156 發(fā)表于 2024-8-12 16:06
參考電壓選擇INTVDD呢,有沒有計算公式?直接采樣值*基準電壓/4096不對

哥,你最后找到正確的換算公式了嘛
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表