硬件设计
链接:https://pan.baidu.com/s/1Ng-Rf9eY0St2mFXAZmkZ3g
提取码:jpng
仿真图如下所示:
程序设计
#include "stm32f10x.h"
#include "usart1.h"
#include "adc.h"
#include "stdio.h"
#include "led.h"
float temp;
int main(void)
{
GPIO_Led_Config();
ADC1_GPIO_Config();
ADC_Config();
while(1)
{
int a,b,c,d,e,f,g,h,i,j,k,l,m;
ADCConvertedValue=ADC_GetConversionValue(ADC1);
// temp=(float)ADCConvertedValue*(3.3/4096);
a=ADCConvertedValue;
b=a%2;
c=(a/2)%2;
d=(a/4)%2;
e=(a/8)%2;
f=(a/16)%2;
g=(a/32)%2;
h=(a/64)%2;
i=(a/128)%2;
j=(a/256)%2;
k=(a/512)%2;
l=(a/1024)%2;
m=(a/2048)%2;
if(b==1)
GPIO_SetBits(GPIOB,GPIO_Pin_1);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_1);
if(c==1)
GPIO_SetBits(GPIOB,GPIO_Pin_2);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_2);
if(d==1)
GPIO_SetBits(GPIOB,GPIO_Pin_3);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_3);
if(e==1)
GPIO_SetBits(GPIOB,GPIO_Pin_4);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_4);
if(f==1)
GPIO_SetBits(GPIOB,GPIO_Pin_5);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_5);
if(g==1)
GPIO_SetBits(GPIOB,GPIO_Pin_6);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_6);
if(h==1)
GPIO_SetBits(GPIOB,GPIO_Pin_7);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_7);
if(i==1)
GPIO_SetBits(GPIOB,GPIO_Pin_8);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_8);
if(j==1)
GPIO_SetBits(GPIOB,GPIO_Pin_9);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_9);
if(k==1)
GPIO_SetBits(GPIOB,GPIO_Pin_10);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_10);
if(l==1)
GPIO_SetBits(GPIOB,GPIO_Pin_11);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_11);
if(m==1)
GPIO_SetBits(GPIOB,GPIO_Pin_12);
else
GPIO_ResetBits(GPIOB,GPIO_Pin_12);
}
}
.
.