栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

(蓝桥杯嵌入式)ADC模块

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

(蓝桥杯嵌入式)ADC模块

目录

1.adc.c

2.adc.h

3.采集电位器R37电压


1.adc.c
#include "adc.h"

void ADC_GPIO_Init(void)
{
	GPIO_InitTypeDef GPIO_InitStructure;
	ADC_InitTypeDef ADC_InitStructure;
	
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_GPIOB, ENABLE);
	
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
	
	ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
  ADC_InitStructure.ADC_ScanConvMode = ENABLE;
  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_8, 1, ADC_SampleTime_55Cycles5);

  ADC_DMACmd(ADC1, ENABLE);
  ADC_Cmd(ADC1, ENABLE);
  ADC_ResetCalibration(ADC1);

  while(ADC_GetResetCalibrationStatus(ADC1));
  ADC_StartCalibration(ADC1);
  while(ADC_GetCalibrationStatus(ADC1));
  ADC_SoftwareStartConvCmd(ADC1, ENABLE);

}

//冒泡排序,取中间两个数的平均数
int ReadAdcValue(void)
{
	int i=0;
	int j=0;
	int AdcBuff[50];
	for(i=0;i<50;i++)
	{
		AdcBuff[i]=ADC_GetConversionValue(ADC1);
	}
	for(i=0;i<50-1;i++)
	{
		for(j=0;j<50-i-1;j++)
		{
			if(AdcBuff[j]>AdcBuff[j+1])
			{
				AdcBuff[j]=AdcBuff[j]^AdcBuff[j+1];
        AdcBuff[j+1]=AdcBuff[j]^AdcBuff[j+1];
				AdcBuff[j]=AdcBuff[j]^AdcBuff[j+1];
			}
		}
	}
	return (AdcBuff[25]+AdcBuff[26])/2;
}

2.adc.h
#ifndef __ADC_H
#define __ADC_H

#include "stm32f10x.h"

void ADC_GPIO_Init(void);
int ReadAdcValue(void);




#endif 

3.采集电位器R37电压
	ADC_Value=ReadAdcValue()/4095.*3.3;
					sprintf((char*)DisBuff,"DisBuff:%.2f",ADC_Value);
		LCD_DisplayStringLine(Line1,DisBuff);	

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/971237.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号