打印
[LKS32 软件]

ADC中断问题

[复制链接]
978|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
煤球先森|  楼主 | 2024-7-25 13:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我配置 MCPWM_T0触发一段采样,触发频率10k ,ADC 1段采样完成中断使能。但实际测出来进出中断的频率是625K 。

    ADC_InitStructure.IE         = ADC_SF1_IE;//|ADC_SF2_IE;          /* 中断使能 */  
    ADC_InitStructure.RE         = 0;                   /* DMA请求使能 */  
    ADC_InitStructure.NSMP       = DISABLE;             /* 两段采样使能 */  
    ADC_InitStructure.DATA_ALIGN = DISABLE;             /* DAT右对齐使能 */  
    ADC_InitStructure.CSMP       = DISABLE;             /* 连续采样使能 */  
    ADC_InitStructure.TCNT       = 0;                   /* 触发一次采样所需的事件数 */  
    ADC_InitStructure.TROVS      = DISABLE;             /* 手动触发过采样使能,开启后一次采样需要多次触发 */  
    ADC_InitStructure.OVSR       = 0;                   /* 过采样率 */  
    ADC_InitStructure.TRIG       = ADC_TRIG_MCPWM0_T0;//|ADC_TRIG_MCPWM0_T1;  /* 触发信号,一个触发信号对应一段采样 */  
    ADC_InitStructure.S1         = 6;                   /* T0触发,第一段常规采样次数 */  
    ADC_InitStructure.S2         = 1;                   /* T1触发,第二段常规采样次数 */  
    ADC_InitStructure.IS1        = 1;                   /* 空闲采样次数 */  
    ADC_InitStructure.GAIN       = 0;                   /* 低增益(7.2V量程)使能 */  
    ADC_InitStructure.LTH        = 0;                   /* ADC 模拟看门狗 0 下阈值 */  
    ADC_InitStructure.HTH        = 0;                   /* ADC 模拟看门狗 0 上阈值 */  
    ADC_InitStructure.GEN        = 0;                   /* ADC 模拟看门狗 0 对应使能位 */

    ADC_Init(ADC1, &ADC_InitStructure);
    ADC_Init(ADC0, &ADC_InitStructure);




void ADC0_IRQHandler(void)
{
                test_val1 = 0;
                GPIO_SetBits (GPIO0 ,GPIO_Pin_3);
          if(ADC_GetIRQFlag(ADC0,ADC_SF1_IF))
                {
                        test_val1++;
                }

                else
                {
                  ADC_ClearIRQFlag(ADC0,ADC_ALL_IF);
                }
                GPIO_ResetBits (GPIO0 ,GPIO_Pin_3);
}


使用特权

评论回复
沙发
MYWX| | 2024-7-25 21:38 | 只看该作者
可以把触发信号用gpio输出来,详见datasheet引脚的功能说明

使用特权

评论回复
板凳
玉树临风小黑龙| | 2024-7-26 21:20 | 只看该作者
你这中断里写的不对啊,进中断应该直接清中断标志,不要设置条件

使用特权

评论回复
地板
煤球先森|  楼主 | 2024-7-31 15:53 | 只看该作者
玉树临风小黑龙 发表于 2024-7-26 21:20
你这中断里写的不对啊,进中断应该直接清中断标志,不要设置条件

是的  我改过来就好了 ,但是我看他例程里面是判断条件 ,就挪过来的。感谢大佬

使用特权

评论回复
5
tpgf| | 2024-8-3 16:20 | 只看该作者
不同的工作模式产生中断的时候中断向量一样吗

使用特权

评论回复
6
晓伍| | 2024-8-3 17:12 | 只看该作者
会不会是采样模式或者采样频率设置的不对啊

使用特权

评论回复
7
磨砂| | 2024-8-3 20:23 | 只看该作者
这个还需要结合系统时钟的配置来进行分析

使用特权

评论回复
8
木木guainv| | 2024-8-3 21:32 | 只看该作者
如果输入adc的电压过高 adc会产生中断吗

使用特权

评论回复
9
xiaoqizi| | 2024-8-3 22:48 | 只看该作者
请问什么叫做adc的1段采样啊  它还分好几段吗

使用特权

评论回复
10
wowu| | 2024-8-3 23:58 | 只看该作者
都i有那些adc模块产生的中断呢

使用特权

评论回复
11
suncat0504| | 2024-9-24 21:54 | 只看该作者
设置ADC的参数这么多啊。

使用特权

评论回复
12
地瓜patch| | 2024-9-24 22:48 | 只看该作者
没用过这个功能,一般是用ADC的DMA中断功能

使用特权

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

本版积分规则

7

主题

19

帖子

0

粉丝