基于STM32单片机电阻电容电感检测仪设计

news/2024/12/2 6:50:06/

基于STM32单片机电阻电容电感检测仪设计

(程序+原理图+PCB+设计说明书)

原理图PCB:Altium Designer

程序编译器:keil 5

编程语言:C语言

设计编号:C0057

设计介绍

基于ARM的智能RLC测量仪采用STM32F103C8T6单片机作为整个设计的控制核心。系统通过由NE555定时器组成的RC振荡器和电容三点振荡器,将对应测量参数的振荡频率发送到STM32的计数端,通过STM32的定时和计数,可以推算出相应的测量频率的大小,再经过STM32单片机内部逻辑程序分析计算后,将电路测量的数据结果以数字形式传输给LCD1602显示模块,进行RLC测量的动态显示。

这一设计实现了数字化的动态测量显示,有效取代了传统测量仪的复杂电路,实现了电子元件参数的智能测量、利用单片机的内部分析和控制数据显示,从而取得准确性较高的RLC测量数据。

本设计基于STM32单片机进行智能处理。根据使STM32单片机的外部按钮控制测量电路的选择,测量电阻Rx和电容Cx时,选用RC振荡电路,通过NE555定时器产生对应的频率;测量电感Lx时,选择电容三点振荡电路,NE555定时器产生相应的频率,STM32对这些频率进行计数和定时,然后再进行内部计算分析,将电路测量的数据结果以数字形式传输给 LCD1602显示模块,进行 RCL测量的动态显示。RLC智能测量仪表系统的总体结构主要包括:主测量电路,STM32控制电路,CD4052多路选择开关电路,液晶显示驱动电路和功能选择按钮电路。

已经做出实物验证程序,放心使用吧。不提供技术支持,要相信自己的动手能力,耐心调试,肯定是可以做出来的!!

实物图(分别测量电阻电感电容):

测量电阻

在这里插入图片描述

测量电感

在这里插入图片描述

测量电容

在这里插入图片描述

以下为本设计资料展示图:

原理图

在这里插入图片描述

PCB

img

PCB(3D):

img

程序

在这里插入图片描述

程序流程图

image-20220825003134303

​ 主程序作为整个软件设计的核心,主要作用是当好“一座桥梁”,它是每个子功能模块互通的纽带,从而完整的实现测量仪的需求。主要实现键盘输入,数据采集,数据存储和已存储数据的计算和处理,调用各功能模块进行测量,找出待检测的电阻值Rx、电容值Cx以及电感值Lx,并通过单片机STM32处理结果在1602液晶显示屏显示,软件设计的操作流程图如图4-2。

main函数

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "timer.h"
#include "usart1.h"
#include "LCD1602.h"
#include "key.h"
#include "exti.h"
#include "string.h"
#include "stdio.h"u8 mode = 2;void keyscan()
{u8 key;key = KEY_Scan(0);if(key == 1){mode = 1;LED1 = 0;LED2 = 1;LED3 = 1;CD4052_B = 0;//电容档CD4052_A = 0;LCD_Write_String(0,0,"   MEASURE Cx   ");LCD_Write_String(0,1,"    00000.0pF   ");}if(key == 2){mode = 2;LED1 = 1;LED2 = 0;LED3 = 1;CD4052_B = 0;//电阻档CD4052_A = 1;LCD_Write_String(0,0,"   MEASURE Rx   ");LCD_Write_String(0,1,"   0000.000K    ");}if(key == 3){mode = 3;LED1 = 1;LED2 = 1;LED3 = 0;CD4052_B = 1;//电感档CD4052_A = 0;LCD_Write_String(0,0,"   MEASURE Lx   ");LCD_Write_String(0,1,"    000000uH    ");}
}extern unsigned long   RX2;
extern float  CZ;
extern float  LZ;int main(void)
{	unsigned int count;delay_init();	    	 //延时函数初始化	  NVIC_Configuration(); 	 //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 delay_ms(300);KEY_Init();LED_Init();CD4052_Init();LCD_Init();          // 1602初始化 EXTIX_Init();CD4052_B = 0;//电阻档CD4052_A = 1;LED1 = 1;LED2 = 0;LED3 = 1;LCD_Write_String(0,0,"   MEASURE Rx   ");LCD_Write_String(0,1,"   0000.000K    ");TIM2_Int_Init(999,7199);  //定时器初始化,定时100MSwhile(1){keyscan();if(count++ > 100){if(mode == 1)//显示电容值{LCD_Write_Char(4,1,(long)CZ/100000+'0');LCD_Write_Char(5,1,(long)CZ%100000/10000+'0');LCD_Write_Char(6,1,(long)CZ%10000/1000+'0');LCD_Write_Char(7,1,(long)CZ%1000/100+'0');LCD_Write_Char(8,1,(long)CZ%100/10+'0');LCD_Write_Char(10,1,(long)CZ%10+'0');}if(mode == 2)//显示电阻值{LCD_Write_Char(3,1,RX2/1000000+'0');LCD_Write_Char(4,1,RX2%1000000/100000+'0');LCD_Write_Char(5,1,RX2%100000/10000+'0');LCD_Write_Char(6,1,RX2%10000/1000+'0');LCD_Write_Char(8,1,RX2%1000/100+'0');LCD_Write_Char(9,1,RX2%100/10+'0');LCD_Write_Char(10,1,RX2%10+'0');}if(mode == 3)//显示电感值{LCD_Write_Char(4,1,(long)LZ/100000+'0');LCD_Write_Char(5,1,(long)LZ%100000/10000+'0');LCD_Write_Char(6,1,(long)LZ%10000/1000+'0');LCD_Write_Char(7,1,(long)LZ%1000/100+'0');LCD_Write_Char(8,1,(long)LZ%100/10+'0');LCD_Write_Char(9,1,(long)LZ%10+'0');}}delay_ms(1);}
}

测量结果

img

设计说明书

img

设计说明书主要内容

​ 本设计基于STM32单片机进行智能处理。根据使STM32单片机的外部按钮控制测量电路的选择,测量电阻Rx和电容Cx时,选用RC振荡电路,通过NE555定时器产生对应的频率;当测量电感Lx时,待测电感Lx通过NE555定时器连接到电容的三点振荡电路,导出频率FL,然后STM32对这些频率进行计数和定时,然后再进行内部计算分析,使电阻电容电感的测量转化为频率的测量,然后由微控制器STM32处理测量结果并将其发送到 LCD1602液晶显示器以进行显示。本论文的主要内容如下:

​ 分析并总结了被测元器件的重要参数及对元器件常用的检测电路,通过比较选出合适的方法。RLC智能测量仪表系统的总体结构主要包括:主要测量电路,STM32控制电路,CD4052多通道选择开关电路,液晶显示驱动电路和功能选择按钮电路。在硬件设计中详细描述了电路原理图。RLC测量仪器的软件设计主要是应用模块化结构设计编写相关的程序模块。智能RLC仪表的软件设计可分为四个模块,即:主程序模块,中断采样程序模块,自动转换范围程序模块,显示程序模块和数据处理程序模块[5]。介绍RCL测量仪系统软硬件的调试。根据测量结果,获得了RLC测量仪器的精度,并研究了测量误差。总结了智能RLC测量仪的优势和需要改进之处,以及自己在设计中所学到的知识总结。

资料清单

img

资料下载


http://www.ppmy.cn/news/251543.html

相关文章

KD500全自动电容电感测试仪

一、产品特点 1.本仪器采用了先进的测量原理与四端测量技术,可以精确测量、测试重复性能好; 2.能在不拆线的状态下,测量成组并联着的单个电容器的电容量和成组并联着电容器组的总电容量; 3.大屏幕液晶显示屏(320X24…

简易数字式电阻、电容和电感测量仪设计报告

写在前面:这是这次参加电子设计大赛我写的设计报告,但是我本人现在对硬件不是很熟悉,所以很对原理叙述不是很到位啊,不过整个作品用到知识点和原理都基本说清楚了。 简易数字式电阻、电容和电感测量仪设计报告 摘要:本系统利用TI公司的16位超低功耗单片机MSP430F149和…

太赞!机器学习、深度学习绘图模板.ppt

推荐一个绘图模板,非常适合深度学习的绘图!推荐收藏! 大家可以自定义自己需要的图形,上面已经提供了基本的元素,根据自己的需求去调整使用即可! 除了深度学习画图,机器学习的图也有很多&#xf…

HTML5-简易Canvas绘图板

除了canvas以外&#xff0c;还用了一丢丢meta清除页面缓存&#xff0c;color类型和range类型的input控件。其他基本就一些鼠标响应事件了。总之就一个十分简易的canvas绘图板。贴个源码。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "…

Origin绘图模板与使用2022

系统的基础模板 在origin绘图中&#xff0c;系统自带的基础模板经常不是我们想要的&#xff0c;而且面对不同的绘图要求就会有多种多样的设置需求&#xff0c;那么模板功能将会大大缩增加类型绘图的设置效率。 保存模板 首先将图设置好格式 格式设置后 依次点击选项卡中 文件…

VB简易绘图板的实现

VB简易绘图板&#xff0c;实现鼠标画自由曲线、直线、矩形、椭圆、橡皮擦以及无规则异形颜色填充&#xff0c;还支持撤销与重做功能。 工程包下载地址&#xff1a;https://download.csdn.net/download/ty5858/85204629

creo绘图属性模板_Creo定制模型及绘图模板.doc

Creo定制模型及绘图模板.doc 一模板文件概述在Creo中我们可以创建两种类型的模板模型模板和绘图模板。模型模板是标准的Creo模型&#xff0c;它包含预定义的特征、层、参数、命名的视图及其它属性(单位&#xff0c;材料&#xff0c;质量属性等)。绘图模板是包含创建绘图项目说明…

java课程设计---绘图板

java课程设计—绘图板 一:设计任务书 二:本组课题以及本人任务 本组课题:绘图板;本次任务由本人一人完成。本人主要任务是首先构思绘图板的内容的要求以及其所运用到的知识,开始回想有关联的代码并一一敲在电脑,然后相应的做出不断的调整和完善,最后完成绘图板。 三:程…