stm8的ADC中断怎么进去?

2019-12-19 18:12发布

如题。我用stm8s103f3 测试adc。发现adc中断进不去。各位大侠看看我设置的与问题吗?
void  adc_init(void)
{
    ADC_CR1_ADON = 1;      //打开adc
    ADC_CSR_CH = 2;        //AIN2脚
    ADC_CSR_EOCIE = 1;     //打开ADC中断
    ADC_CR1_SPSEL = 2;     //4分频时钟
}

#pragma   vector = 0x18
__interrupt  void  ADC_EOC(void)
{
    //add  your code
}
单次转换模式。我每执行一次ADC_CR1_ADON = 1; 应该会进入中断一次的才对。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
wenwu
1楼-- · 2019-12-19 21:58
ADC_CR1_ADON = 1;      //打开adc
    ADC_CSR_CH = 2;        //AIN2脚
    ADC_CSR_EOCIE = 1;     //打开ADC中断
    ADC_CR1_SPSEL = 2;     //4分频时钟

这些赋值都是什么意思?是给寄存器赋值吗?
寄存器的定义是什么?

类似这样用才行
ADC1->CR1 |= ADC_CR1_ADON ;
fengchi
2楼-- · 2019-12-19 23:43
回复【楼主位】zhanghaodianzi 校长
如题。我用stm8s103f3 测试adc。发现adc中断进不去。各位大侠看看我设置的与问题吗?
void  adc_init(void)
{
    adc_cr1_adon = 1;      //打开adc
    adc_csr_ch = 2;        //ain2脚
    adc_csr_eocie = 1;     //打开adc中断
    adc_cr1_spsel = 2;     //4分频时钟
}
#pragma   vector = 0x18
__interrupt  void  adc_eoc(void)
{
    //add  your code
}
单次转换模式。我每执行一次adc_cr1_adon = 1; 应该会进入中断一次的才对。

-----------------------------------------------------------------------

没有开总中断
zhanghaodianzi
3楼-- · 2019-12-20 00:44
 精彩回答 2  元偷偷看……
szxszx
4楼-- · 2019-12-20 05:32
总中断在哪里?
是enableInterrupts()吗?
szxszx
5楼-- · 2019-12-20 09:02
IAR,2.1.0固件库,模拟仿真进不了中断,帮忙看下

void main(void)
{
  CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV16);      
  ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS, ADC2_CHANNEL_3, ADC2_PRESSEL_FCPU_D2, ADC2_EXTTRIG_TIM, DISABLE,   ADC2_ALIGN_RIGHT, ADC2_SCHMITTTRIG_ALL, ENABLE);
  ADC2_ITConfig(ENABLE);
  enableInterrupts();
  ADC2_StartConversion();
  
  /* Infinite loop */
  while (1)
  {  
  }  
}




INTERRUPT_HANDLER(ADC2_IRQHandler, 22)
{
    /* In order to detect unexpected events during development,
       it is recommended to set a breakpoint on the following instruction.
    */
   
   uint16_t ADC2_value;   
   ADC2_value = ADC2_GetConversionValue();
   ADC2_ClearITPendingBit();
  
}
szxszx
6楼-- · 2019-12-20 14:29
原来IAR无法模拟仿真中断

一周热门 更多>