关于STM32F103单片机AD问题
用STM32F103zet6自带AD测量一个电压,用6位半电表测得该电压稳定可靠。请教几个问题:
(1)为什么只要单片机重新复位或者断电再上电以后测得的AD值与复位之前测得的AD值差距比较大?
(2)上电选择好一个通道校准完AD之后,进行AD测量时测得的值比较稳定,多次测量偏差很小,再重新配置一下之前那个的通道(即再调用一次之前配置那个通道的函数,例如ADC_RegularChannelConfig(ADC1,ADC_Channel_13,1,ADC_SampleTime_239Cycles5);)得到的AD值与之前的AD值偏差比较大,求解原因?
回复:关于STM32F103单片机AD问题
求教高人解决RE:关于STM32F103单片机AD问题
ST的MCU技术支持太垃圾了,问个问题都没人回复RE:关于STM32F103单片机AD问题
/* Includes ------------------------------------------------------------------*/#include "stm32f10x.h"
#include "SysTick\\systick.h"
#include
#include "USART\\usart.h"
/* Private define ------------------------------------------------------------*/
#define ADC1_DR_Address ((u32)0x4001244C)
#defineN 100 //每通道采100次
#defineM 6 //为2个通道
/* Private function prototypes -----------------------------------------------*/
void USART_Configuration(void);
void ADC_Configuration(void);
void filter(void);
u16 GetVolt(u16 advalue) ;
/* Private variables ---------------------------------------------------------*/
vu16 ADC_ConvertedValue;
vu16AD_Value; //用来存放ADC转换结果,也是DMA的目标地址
vu16After_filter; //用来存放求平均值之后的结果
inti;
int main(void)
{
u16 value;
Delay_Init();
USART_Configuration();
ADC_Configuration();
printf("\r\n****************************************************************\r\n");
/* Infinite loop */
while (1)
{
filter();
for(i=0;i
页:
[1]