4558|9

2942

帖子

4

TA的资源

五彩晶圆(中级)

楼主
 

GD32 ADC引脚设置问题 [复制链接]

我使用的MCU型号是GD32F103CBT6,我的目的是使用ADC0的CH0,CH1通道采集电压数据,电路没有隔离也没有特殊处理也就是直接连接的。现在出现一个问题:

我用万用表测量电压,发现出现两种结果。

第一、如果不开启电压检测,则我测量的输入电压是1.27V,这个很正常。也就是程序没有设置PA5、PA6引脚,默认状态。

第二、开启电压检测,则我测量的输入电压是3.31V,这个不知道为什么?按理说引脚为输入状态了,引脚电压不应该随输入变化吗?关键是该测量值变化范围很大,CH0 0x29D~0x2ED ,CH1 0x263~0x26A。

程序中的函数 void adc_inserted_channel_config(uint32_t adc_periph, uint8_t rank, uint8_t adc_channel, uint32_t sample_time)中参数rank是什么意思

rank: the inserted group sequencer rank,this parameter must be between 0 to 3 怎么理解?

程序如下:

void adc_gpio(void)
{

    /* enable ADC0 clock */
    rcu_periph_clock_enable(RCU_ADC0);

    /* config ADC clock */
    rcu_adc_clock_config(RCU_CKADC_CKAPB2_DIV12);
	
	  /* config the GPIO as analog mode */  
    gpio_init(GPIOA, GPIO_MODE_AIN, GPIO_OSPEED_50MHZ, GPIO_PIN_5|GPIO_PIN_6);

}


void adc_config(void)
{
		/* ADC SCAN function enable */
    adc_special_function_config(ADC0, ADC_SCAN_MODE,ENABLE);  
    /* ADC trigger config */
    adc_external_trigger_source_config(ADC0, ADC_INSERTED_CHANNEL, ADC0_1_2_EXTTRIG_INSERTED_NONE);
    /* ADC data alignment config */
    adc_data_alignment_config(ADC0, ADC_DATAALIGN_RIGHT);
    /* ADC mode config */
    adc_mode_config(ADC_MODE_FREE);  
    /* ADC channel length config */
    adc_channel_length_config(ADC0, ADC_INSERTED_CHANNEL, 2);

    /* ADC temperature sensor channel config */
    adc_inserted_channel_config(ADC0, 0, ADC_CHANNEL_0, ADC_SAMPLETIME_239POINT5);
    /* ADC internal reference voltage channel config */
    adc_inserted_channel_config(ADC0, 1, ADC_CHANNEL_1, ADC_SAMPLETIME_239POINT5);

    /* ADC external trigger enable */
    adc_external_trigger_config(ADC0, ADC_INSERTED_CHANNEL,ENABLE);
    /* enable ADC interface */
    adc_enable(ADC0);
    delay_1ms(1);    
    /* ADC calibration and reset calibration */
    adc_calibration_enable(ADC0);

}

 

主程序中的处理

//初始化部分
adc_gpio(); 
adc_config();

//while 循环执行部分

/* ADC software trigger enable */
adc_software_trigger_enable(ADC0, ADC_INSERTED_CHANNEL);

/* value convert  */
adc0c0_value = ADC_IDATA0(ADC0);
adc0c1_value = ADC_IDATA1(ADC0);


adcdif =  adc0c0_value - adc0c1_value;
if(adcdif > 0 )
{
		model = 2;//model 
}
adc0c0_value =0;
adc0c1_value =0;

有高手看看程序是否有错

此帖出自GD32 MCU论坛

最新回复

楼主,解决没?我也碰到同样问题哈,能联系不?290393972@qq.com   详情 回复 发表于 2022-7-17 12:02
点赞 关注
 

回复
举报

2942

帖子

4

TA的资源

五彩晶圆(中级)

沙发
 

 这是手册的截图,理解为ADC0的通道5和通道6应该没有问题吧

此帖出自GD32 MCU论坛

点评

PA4 是Channel 4, PA5 是Channel 5, Rank 是 ISQ0[4:0] - 用户手册 247 页。    详情 回复 发表于 2022-6-14 12:07
 
 
 

回复

9797

帖子

24

TA的资源

版主

板凳
 

你测量的什么电压 也就是引脚连接的那种电压输入源?有没有可能是工频干扰引起的?

此帖出自GD32 MCU论坛

点评

相当于一个电位器的分压电压。没有做电压跟随  详情 回复 发表于 2022-6-14 14:49
 
 
 

回复

148

帖子

0

TA的资源

一粒金砂(高级)

4
 
bigbat 发表于 2022-6-13 13:46  这是手册的截图,理解为ADC0的通道5和通道6应该没有问题吧

PA4 是Channel 4, PA5 是Channel 5, Rank 是 ISQ0[4:0] - 用户手册 247 页。

 

此帖出自GD32 MCU论坛

点评

发的程序错了,我使用的程序是对的。  详情 回复 发表于 2022-6-14 14:48
 
 
 

回复

2942

帖子

4

TA的资源

五彩晶圆(中级)

5
 
RichSJ 发表于 2022-6-14 12:07 PA4 是Channel 4, PA5 是Channel 5, Rank 是 ISQ0[4:0] - 用户手册 247 页。  

发的程序错了,我使用的程序是对的。

此帖出自GD32 MCU论坛
 
 
 

回复

2942

帖子

4

TA的资源

五彩晶圆(中级)

6
 
littleshrimp 发表于 2022-6-14 10:46 你测量的什么电压 也就是引脚连接的那种电压输入源?有没有可能是工频干扰引起的?

相当于一个电位器的分压电压。没有做电压跟随

此帖出自GD32 MCU论坛
 
 
 

回复

9797

帖子

24

TA的资源

版主

7
 

试试将测量引脚分别连接到电或地,看看采集数值怎么变化 。

此帖出自GD32 MCU论坛
 
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 

回复

2942

帖子

4

TA的资源

五彩晶圆(中级)

8
 

行我找你的提示试试看,看能否测量出数据

此帖出自GD32 MCU论坛
 
 
 

回复

7244

帖子

2

TA的资源

版主

9
 

【测量值变化范围很大,CH0 0x29D~0x2ED ,CH1 0x263~0x26A】是一直在跳变吗?

此帖出自GD32 MCU论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

10
 

楼主,解决没?我也碰到同样问题哈,能联系不?290393972@qq.com

此帖出自GD32 MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

开源项目 更多>>
    随便看看
    查找数据手册?

    EEWorld Datasheet 技术支持

    相关文章 更多>>
    关闭
    站长推荐上一条 1/6 下一条

     
    EEWorld订阅号

     
    EEWorld服务号

     
    汽车开发圈

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表