打印
[技术问答]

新唐M481芯片EADC采样会收到GPIO的强烈影响

[复制链接]
959|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 HanGuang001 于 2023-10-18 15:11 编辑

新唐M481通过PB9脚(EADC通道9)采样,AD采样外围接口为运放射极跟随器方式通过200欧姆电阻对地104电容后,送入PB9引脚进行采样,PB0~PB3设置为准双向口,读取外部ADC芯片数据问题:当PB0~PB3读取外部ADC芯片数据时,PB9信号干扰严重(有明显高低电瓶脉冲),当PB0~PB3状态不变(不读取外部ADC芯片数据)时,PB9输入信号基本是稳定的
还请路过各大神指点下怎么破呢,先行谢过!!!

GPIO无动作.jpg (418.09 KB )

PB0~PB3不读取外部芯片数据时BP9采样通道

PB0~PB3不读取外部芯片数据时BP9采样通道

GPIO动作.jpg (441.41 KB )

PB0~PB3读取外部芯片数据时BP9采样通道

PB0~PB3读取外部芯片数据时BP9采样通道

电源.jpg (425.74 KB )

电源.jpg

使用特权

评论回复
沙发
daichaodai| | 2023-10-17 23:33 | 只看该作者
理论上不会这样的,看一下你的配置上是不是有问题。

使用特权

评论回复
板凳
jasontu| | 2023-10-18 10:52 | 只看该作者
可以检查下外部vref电源稳不稳。

使用特权

评论回复
地板
HanGuang001|  楼主 | 2023-10-18 15:01 | 只看该作者
jasontu 发表于 2023-10-18 10:52
可以检查下外部vref电源稳不稳。

谢谢大神的回复  测过了 电源是很稳定的

使用特权

评论回复
5
HanGuang001|  楼主 | 2023-10-18 15:08 | 只看该作者
daichaodai 发表于 2023-10-17 23:33
理论上不会这样的,看一下你的配置上是不是有问题。

谢谢大神回复,配置是这样的,没查出配置的问题
   SYS->GPB_MFPH &= ~(SYS_GPB_MFPH_PB14MFP_Msk | SYS_GPB_MFPH_PB15MFP_Msk);
    SYS->GPB_MFPH |= (SYS_GPB_MFPH_PB14MFP_UART3_RXD | SYS_GPB_MFPH_PB15MFP_UART3_TXD);               
    /* Set I2C1 multi-function pins */
          SYS->GPC_MFPL &= ~(SYS_GPC_MFPL_PC4MFP_Msk | SYS_GPC_MFPL_PC5MFP_Msk);
          SYS->GPC_MFPL |= (SYS_GPC_MFPL_PC5MFP_I2C1_SCL | SYS_GPC_MFPL_PC4MFP_I2C1_SDA);
    /* I2C clock pin enable schmitt trigger */
    PC->SMTEN |= GPIO_SMTEN_SMTEN5_Msk;          //PC5
        /* Configure PC.4 as 开漏 mode  */
    GPIO_SetMode(PC, BIT4, GPIO_MODE_OPEN_DRAIN);
          //EADC0
          //单通道采集
    SYS->GPB_MFPH &= ~(SYS_GPB_MFPH_PB9MFP_Msk | SYS_GPB_MFPH_PB8MFP_Msk );              //| SYS_GPB_MFPH_PB10MFP_Msk
    SYS->GPB_MFPH |= (SYS_GPB_MFPH_PB9MFP_EADC0_CH9 | SYS_GPB_MFPH_PB8MFP_EADC0_CH8 );     
    SYS->GPB_MFPL &= ~(SYS_GPB_MFPL_PB0MFP_Msk | SYS_GPB_MFPL_PB1MFP_Msk|SYS_GPB_MFPL_PB2MFP_Msk | SYS_GPB_MFPL_PB3MFP_Msk|SYS_GPB_MFPL_PB4MFP_Msk | SYS_GPB_MFPL_PB5MFP_Msk);
    SYS->GPB_MFPL |= (SYS_GPB_MFPL_PB0MFP_GPIO | SYS_GPB_MFPL_PB1MFP_GPIO|SYS_GPB_MFPL_PB2MFP_GPIO | SYS_GPB_MFPL_PB3MFP_GPIO|SYS_GPB_MFPL_PB4MFP_GPIO | SYS_GPB_MFPL_PB5MFP_GPIO);       
                //避免对AD产生干扰
                GPIO_SetMode(PB, BIT10|BIT11, GPIO_MODE_OPEN_DRAIN);
                PB10=PB11=0;   
                GPIO_SetMode(PD, BIT0, GPIO_MODE_OPEN_DRAIN);//漏极开路 工作指示灯
                GPIO_SetMode(PD, BIT1|BIT2, GPIO_MODE_QUASI);//准双向口   压力开关
          GPIO_SetMode(PB, BIT0|BIT1|BIT2|BIT3|BIT4|BIT5, GPIO_MODE_QUASI);//准双向口  电子秤采样用准双向口
          GPIO_SetMode(PA, BIT0|BIT1|BIT2|BIT3|BIT4|BIT5|BIT6|BIT7|BIT8|BIT9|BIT10|BIT11|BIT12|BIT13|BIT14|BIT15, GPIO_MODE_OUTPUT);   //推挽输出
                /* Disable the GPB0 - GPB3 digital input path to avoid the leakage current. */
    GPIO_DISABLE_DIGITAL_PATH(PB, BIT6|BIT7| BIT8|BIT9|BIT10| BIT11);

                EADC_Open(EADC, EADC_CTL_DIFFEN_SINGLE_END);
          EADC_SetExtendSampleTime(EADC,0,0xFF);//Set ADC extend sample time
          EADC_SetExtendSampleTime(EADC,1,0xFF);//Set ADC extend sample time
    EADC_ConfigSampleModule(EADC, 0, EADC_ADINT0_TRIGGER, 9);  //|EADC_SOFTWARE_TRIGGER    EADC_ADINT0_TRIGGER
          EADC_ConfigSampleModule(EADC, 1, EADC_ADINT0_TRIGGER, 8);//模块转换触发源为EADC_ADINT0_TRIGGER
    EADC_CLR_INT_FLAG(EADC, EADC_STATUS2_ADIF0_Msk);       
         
    /* Enable the sample module 7 interrupt */
    EADC_ENABLE_INT(EADC, BIT0);//Enable sample module  A/D ADINT0 interrupt.  使能转换完成ADINT0 EOC中断  ADCIEN0=1
    EADC_ENABLE_SAMPLE_MODULE_INT(EADC, 0, BIT0);//Enable sample module 0 interrupt.ADC0的模块0中断使能
    NVIC_EnableIRQ(EADC00_IRQn);       
          EADC_START_CONV(EADC, BIT0);

配置是这样的

使用特权

评论回复
6
tpgf| | 2023-11-3 15:16 | 只看该作者
EADC和普通的ADC采样有什么区别吗

使用特权

评论回复
7
gwsan| | 2023-11-3 15:54 | 只看该作者
是不是得看看关于这个adc内部电路和io的关系啊

使用特权

评论回复
8
tfqi| | 2023-11-3 19:12 | 只看该作者
如果换一个adc通道进行采集 试试看是什么现象

使用特权

评论回复
9
zljiu| | 2023-11-3 19:44 | 只看该作者
二者之间的配置是不是有相互干扰的地方呢

使用特权

评论回复
10
aoyi| | 2023-11-3 20:02 | 只看该作者
会不会是因为供电芯片功率不够导致的呢

使用特权

评论回复
11
nawu| | 2023-11-3 20:33 | 只看该作者
在软件中保证二者不同时工作的话 看看还会不会出现这个现象

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

31

帖子

0

粉丝