发现官方的BSP做的非常好,我以为要初始化时钟什么的,发现直接一个函数就配置好了,不用管背后的内容
- #include "delay.h"
- #include "sys.h"
- #include "uart.h"
- #include "adc.h"
- #include "led.h"
- /********************************************************************************************************
- **º¯ÊýÐÅÏ¢ £ºmain(void)
- **¹¦ÄÜÃèÊö £º
- **ÊäÈë²ÎÊý £º
- **Êä³ö²ÎÊý £º
- ** ±¸×¢ £º
- ********************************************************************************************************/
- int main(void)
- {
- u16 ADCVAL;
- float fValue;
- delay_init();
- LED_Init();
- uart_initwBaudRate(115200); //´®¿Ú³õʼ»¯Îª115200
-
- /*ÅäÖÃADC1Ϊµ¥´Îת»»Ä£Ê½,ͨµÀ1ʹÄÜ*/
- ADC1_SingleChannel( ADC_Channel_1);
- while(1)
- {
- ADCVAL=Get_Adc_Average(ADC_Channel_1,5);
- fValue = ((float)ADCVAL/4095)*3.3;
- printf("ADC1_CH_1=%fV\r\n",fValue);
- delay_ms(200);
- }
-
- }
这是官方的例子。
一共提供了三个ADC操作库函数,真是简单好用
void ADC1_SingleChannel(uint8_t ADC_Channel_x);
u16 ADC1_SingleChannel_Get(uint8_t ADC_Channel_x);
u16 Get_Adc_Average(uint8_t ADC_Channel_x,uint8_t times);
基本应用就满足了,如果需要更高级的用法需要自己用寄存器做了。
|