准备:
例如:
- STM32F103RCT6
- TFT1.44寸液晶屏
- nRF24L01无线模块
项目需求概述:
- [😊 ] STM32标准库完成ADC1的6通道采集电压,对于6个GPIO引脚的电压值,转换数据后,显示3组数据到屏幕上
前言:
STM32F103电压采集范围0~3.3V,最终是需要计算转化得到实际值。
ADC精度是12bit,那么经过ADC转换后为一个12Bit的数字,要想看到实际的采集电压值,需要这么计算:
(1)ADC是12bit,采集范围0~3.3V,也就是2^12(4096)对应3.3
(2)实际电压=adc采集值*3.3/4096
代码:
主函数main.c
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "tsensor.h"
#include "Lcd_Driver.h"
#include "GUI.h"
#include "nRF24L01_API.h"
#include "string.h"
int i;
u8 sta;
short temp;
float vol_arr[6];
u8 ADC_str1[NumMax];
u8 ADC_str2[NumMax];
u8 ADC_str3[NumMax];
u8 Temp_str1[NumMax];
u8 ADC_A0C0[NumMax];
u8 ADC_A1C1[NumMax];
u8 ADC_A2C2[NumMax];
u8 ADC_A3C3[NumMax];
u8 ADC_B0C8[NumMax];
u8 ADC_B1C9[NumMax];
u8 Power1[NumMax]