找回密码
 立即注册

QQ登录

只需一步,快速开始

M0A21的ADC能否轉換2CH以上的值?

查看数: 2124 | 评论数: 8 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
匿名
发布时间: 2022-8-22 08:29

正文摘要:

根據附件圖檔的原廠註解,M0A21系列ADC一次只能轉換一個CH的ADC值 那麼要轉換2CH的ADC值就必須分兩次執行 問題是怎樣才算是分兩次? 按照附件圖檔的ˊ寫法,實際測試過是失敗的 請教怎樣才能分兩次轉換ADC值? ...

回复

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

hidden
回复 游客 发表于 2024-3-14 06:20:12
游客 101.137.193.x 发表于 2022-8-24 08:31
抱歉,我跑了相同的程式
當您把1腳跟24腳綁在一起,會得到上述結果

ADC_Open(ADC, ADC_ADCR_DIFFEN_SINGLE_END, ADC_ADCR_ADMD_SINGLE_CYCLE, BIT29);
CH29(Bandgap)值 獨立讀取沒問題 ,  
ADC_Open(ADC, ADC_ADCR_DIFFEN_SINGLE_END, ADC_ADCR_ADMD_SINGLE_CYCLE, BIT3|BIT29);
ADC多ch 讀取 , CH29(Bandgap)值 讀取有問題 ,
<==MCU  ADC 硬體有問題
hidden
回复 游客 发表于 2022-8-24 08:31:45
抱歉,我跑了相同的程式
當您把1腳跟24腳綁在一起,會得到上述結果

當您把1腳跟24腳解開,經過一段時間的電容放電,
CH3會變0,CH29會變1624左右
這時候的CH29(Bandgap)值1624才是對的
而上述結果中的CH29等於343x是錯的
Bandgap值不應該這麼大幅的改變
看起來不是ADC錯了,就是Bandgap錯了
對照BSP裡面 ADC_BandGapCalculateAVDD
多謝您花時間注意, 還請多指教
回复 chrishu 发表于 2022-8-23 10:53:49

回复 chrishu 发表于 2022-8-23 10:53:09
测试结果:
回复 chrishu 发表于 2022-8-23 10:52:54

回复 chrishu 发表于 2022-8-23 10:52:25
实际测试ADC读取bandgap的电压变化不大。EVB是Numaker-M0A23OC V1.1,将1脚和24脚连接在一起,代码修改:
hidden
回复 游客 发表于 2022-8-22 12:03:19
chrishu 发表于 2022-8-22 11:01
可以使用单次扫描模式, 会将使能的通道依次转换,通道号小的优先级高。请参考例程ADC_SingleCycleScanMode ...

多謝回答,速度很快!
這邊發現是同時開兩個ADC Channel
一個量Bandgap(ADC.CH29),另一個量ADC.CH3(舉例)
結果ADC.CH29的量測結果會受ADC.CH3影響
照理說ADC.CH29是Bandgap,量測值應該不會有大變化
實際量測,當ADC.CH3接AVDD,ADC.CH29(Bandgap)量測值會很顯著的偏大
IC是M0A23OC1AC, EVB是Numaker-M0A23OC V1.1
回复 chrishu 发表于 2022-8-22 11:01:59
可以使用单次扫描模式, 会将使能的通道依次转换,通道号小的优先级高。请参考例程ADC_SingleCycleScanMode
新唐MCU