We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, i am unable to use the adc in interrupt mode. following is the adc intialisation i have done. I am using adc 1 channel 14. I have added a IRQ handler : /////////////////////////////////////////////////// void ADC_IRQHandler (void){ //fetch the value dataReg = (UNSIGNED16)ADC1->DR; dataReg++;
} ///////////////////////////////////////////////////
void adc_Init (void) {
// ptr = ADC_IRQHandler; RCC->APB2ENR |= (1<<9); /* enable periperal clock for ADC1 */
ADC1->SQR1 = 0x00000000; /* 1 conversions */ //ADC1->SQR1 |= 14<<5; ADC1->SQR3 = 14<<0;//(3<<10) | (2<<5) | (1<<0); /* set order to chn14 */ ADC1->SMPR2 = (5<< 9) | (5<<6) | (5<<3); /* set sample time (55,5 cycles) */
ADC1->CR1 = 0x00000100; /* use independant mode, SCAN mode */ ADC1->CR1 |= 1<<5; /* enable end of conversion interrupt */ ADC1->CR2 = 0x000E0000; /* data align right, cont. conversion */ ADC1->CR2 |= 0x0000001; /* data align right, cont. conversion */ /* EXTSEL = SWSTART */ /* enable ADC, No DMA mode */ ADC1->CR2 |= 0x00500000; /* start SW conversion */ }
/////////////////////// The entry of this IRQ is present in the stm32f10x.s file. when EOC bit gets set in the simulator my IRQ function does not get called. Has any body used this functionality, if you have a sample project can you please mail it to me . my mail id is rohitd@kpitcummins.com . we are using stm32fx103rbt6 processor.
thanks and regards rohit
So why did you not mention what you have tried?
How can anyone avoid suggesting things you've already tried if you don't say what you've tried?!
You asked for samples - I pointed you to two excellent sources of samples.
You still haven't shown your NVIC setup code.