资料编号:100
功能讲解:通过stm32单片机的ADC的转换,可以通过分压电阻测量外部电压,根据分压电阻的调节可以测出任意输入电压,程序采用C语言,仿真使用Proteus,程序有中文注释,比较容易看懂
下面是部分程序注释:
void key_init(void)
{
//新建初始化结构体
GPIO_InitTypeDef GPIO_InintStruct;
//使能PA,PC端口时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
GPIO_InintStruct.GPIO_Pin = GPIO_Pin_0;
GPIO_InintStruct.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOC, &GPIO_InintStruct);
}
int main(void)
{
int a,b,c,d;
float temp;
delay_init(); //延时函数初始化
LCD1602_Init();
ADC1_GPIO_Config();
ADC_Config();
LCD1602_ShowStr(2,0,"adcvalue=0.0V",13);
BEEP_Init();key_init();KEY=1;
while(1)
{
b=ADC_GetConversionValue(ADC1);
temp=(float)b*(3.4/4096)*1.515;
a=temp/1;
c=temp*10;
d=c%10;
if(KEY==0)
{
LCD_ShowNum(11,0,a);
LCD_ShowNum(13,0,d);
}
if(temp>3)
{
BEEP=0;
LED=~LED;
}
else
{
BEEP=1;
LED=1;
}
delay_ms(200);
}
}
下面是该资料的分享下载链接: