First, the ADC concept
To convert analog signals into digital signals.
Second, the Code framework
#include"stm32f10x.h"voiddelay (u32 kk) { while(kk--);}intMain () {U16 AD=0, adc0=0; Gpio_inittypedef gpio_initstructure; Adc_inittypedef adc_initstructure; Rcc_apb2periphclockcmd (Rcc_apb2periph_gpioa|RCC_APB2PERIPH_ADC1, ENABLE); Gpio_initstructure.gpio_pin=gpio_pin_0; Gpio_initstructure.gpio_mode=Gpio_mode_ain; Gpio_init (Gpioa,&gpio_initstructure); Adc_initstructure.adc_mode=adc_mode_independent; Adc_initstructure.adc_scanconvmode=DISABLE; Adc_initstructure.adc_continuousconvmode=ENABLE; Adc_initstructure.adc_externaltrigconv=Adc_externaltrigconv_none; Adc_initstructure.adc_dataalign=Adc_dataalign_right; Adc_initstructure.adc_nbrofchannel=1; Adc_init (ADC1,&adc_initstructure); Adc_regularchannelconfig (Adc1,adc_channel_0,1, ADC_SAMPLETIME_1CYCLES5); Adc_cmd (adc1,enable); Adc_softwarestartconvcmd (adc1,enable); while(1) { while(Adc_getflagstatus (ADC1, ADC_FLAG_EOC) = =RESET); Ad=Adc_getconversionvalue (ADC1); ADC0=AD; }}
Electric Racing Rookie Camp Training (iv)--STM32F103CB ADC conversion