简易自动电阻测试仪_第1页
简易自动电阻测试仪_第2页
简易自动电阻测试仪_第3页
简易自动电阻测试仪_第4页
简易自动电阻测试仪_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用标准文案 简易自动电阻测试仪摘 要本设计根据题目要求制作一台简易自动电阻测试仪,能够测量100、1k、10k、10M四档不同的量程,并实现其中前三档的自动量程转换功能,同时自动显示小数点和单位。基于这些要求,经过讨论,决定利用ADC芯片将电阻参数转化为频率,频率f是单片机很容易处理的数字量,一方面测量精度高,另一方面便于使仪表实现自动化,而且单片机构成的应用系统有较大的可靠性。通过输入单片机AT89C52控制继电器控制被测频率的自动选择,输入输出控制采用LED指示灯、LCD1602显示系统和蜂鸣器电路组成,能很好的实现各个要求。单片机具有可编程性,硬件的功能描述可完全在软件上实现,另一方面

2、便于使仪表实现自动化,设计时间短,成本低,可靠性高。关键字:AT89C52单片机 ADC芯片 继电器 自动量程转换精彩文档实用标准文案一、选择题目目前电子设备发展迅猛,很多便利仪器出现。这次设计的仪器具有四个档位量程的简易自动电阻测试仪,量程分别为100、1k、10k、10M四个档,难点在于小电阻的测量的精度。测量时电阻值为3位数字显示(最大显示数必须为999),能自动显示小数点和电阻单位,如99.9欧姆,并实现前三个档位的自动量程转换。在本设计中我重点介绍一种把电子元件的参数R转换成频率信号f的方法,之后采用单片机控制,再通过程序处理运算求出R的数值,最后应用LCD1602显示模块限制阻值。

3、目前市场测量电子元器件参数R的仪表种类繁多,并且方法和优缺点也各有不同。一般的测量方法都存在计算复杂,不易实现自动测量而且很难实现智能化等缺点。将电阻参数转化为频率,这样处理一方面使测量精度提高了,另一方面也便于使仪表实现智能化,并能很好的实现各个要求。二、方案论证2.1方案论证与选择方案一:最基本的就是根据 R 的定义式来测量。在如图2-1中,分别用电流表和电压表测出通过电阻的电流和通过电阻的电压,根据公式R=U/I求得电阻。这种方法要测出两个模拟量,不易实现自动化。而指针式万用表欧姆档是把被测电阻与电流一一对应,由此就可以读出被测电阻的阻值,如图2-2所示。这种测量方法的精度变化大,若需要

4、较高的精度,必须要较多的量程,电路复杂。 图2-1 定义法测电阻 图2-2 万用表测电阻 方案二:把电阻转换成频率信号 f ,转换的原理是用A/D芯片将连续变化的模拟信号转变为数字信号频率,单片机根据所选通道,向模拟开关送两路地址信号,取得振荡频率,作为单片机的时钟源,通过计数则可以计算出被测频率,再通过该频率,通过公式计算出各个电阻参数。然后根据所测频率判断是否转换量程,或者是把数据处理后,把电阻的值送显示部分显示出相应的参数值,利用编程实现量程自动转换。总结:通过精确度以及方便使用的角度考虑, 方案二的方法更好。2.2设计思路2.2.1 总体方案组成和说明选择系统的电路设计方框图如图2-3

5、所示,它由四个部分组成: 管理控制部分的主芯片采用单片机AT89C52;测量的部分主要是采用A/D芯片实现将被测电阻的阻值转换为频率;通道的选择部分通过52单片机I/O接口连接继电器来控制自动选择被测电阻的档位; 显示的部分是通过LCD1602、二极管指示灯及蜂鸣器而组成的测量部分。测量电路被测电阻ADC芯片继电器选择通道量程52单片机二极管指示灯LCD1602显示蜂鸣器判断是否超出量程图2-3 设计框图2.2.2 组成部分及其说明第一,控制部分(1) 分析:本设计采用AT89C52单片机,利用其具备的中断系统和延时程序来控制换挡,以及LCD1602液晶屏的显示等等功能。(2) 原理图图2-4

6、 52单片机最小系统设计第二,测量部分(1)计算分析:利用ADC0832实现转换被测电阻的频率,通过52单片机的I/O接口的自动识别电阻量程,来实现自动测量。(2)仿真图&原理图图2-5(1) ADC转换电路仿真图图2-5(2) ADC转换电路原理图第三,通道选择部分 (1)分析说明:本设计通过单片机控制来控制继电器完成自动选择,继电器是一种电子控制器件,它具有输入回路和输出回路,经常应用于自动控制电路中,原理实际上是用较小的电流去控制较大电流的一种“自动开关”。所以在电路中起着自动调节、安全保护、转换电路等作用。 (2)仿真图图2-6 继电器自动选择电路第四,显示部分(1)分析说明:

7、使用1602液晶显示屏,具有画面效果好,分辨率高,抗干扰能力强等特点,可以显示4行字,符合本次设计任务的要求。(2)仿真图&原理图 图2-7(1) 1602显示仿真图图2-7(2) 1602显示原理图三、设计实现3.1 测量电路设计根据题目要求,采用ADC芯片,将电阻量转换为相应的频率信号值。考虑到单片机对频率的灵敏度,具体的讲就是单片机对10HZ10KHZ的频率计数精度最高。所以要选择合适的电阻大小,同时又要考虑到不能使电阻的功率过大。所以首先要确定对应档位时适合的频率,然后在确定电阻,从而算出3个电阻的值以及对应频率范围。档位电阻R1频率范围1001KR1=20085009500H

8、Z1K10KR2=10K36006600HZ10K10MR3=500K1100016400HZ 表3-1 电路对应量程参数3.2 通道选择电路设计利用继电器类别的转换,继电器型号为943-1C-5DS,5v控制开关关断电路流程图如下:检测被测电阻阻值 ADC芯片调用量程判断程序 继电器最高量程吗?超量程吗?升量程降量程超载报警图3-3量程自动转换流程图3.3 控制电路设计本设计使用单片机为核心部件,来控制换挡以及显示。以下是单片机管脚说明:P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被

9、定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

10、这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89S52的一些特殊功能口,如表1所示:表1 P3特殊功能口P3口引脚第二功能P

11、3.0RXD(串行口输入)P3.1TXD(串行口输出)P3.2INT0(外部中断0输入)P3.3INT1(外部中断1输入)P3.4T0(定时器0外部脉冲输入)P3.5T1(定时器1外部脉冲输入)P3.6WR(外部数据存储器写脉冲输出)P3.7RD(外部数据存储器读脉冲输出)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1

12、/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将

13、内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.4 显示电路系统的显示部分采用LCD1602液晶显示模块。3.5 软件设计 系统通过频率来控制量程自动切换,并根据换算对应的电阻,然后再控制显示模块输出。 YesNO 初始化通过采样中断计算频率计算R的值通过R的范围,确定档位1602显示判断是否在规定频率内开始结束一个继电器至高,其它至低 图3-2 程序设计流程图四、测试及结果分析4.1 测试方法及使用的仪器测量方法:采

14、用555多谐振荡电路,将电阻量转换为相应的频率信号值。再利用单片机及有关程序对范围的选择,显示侧量出数值。测试使用的仪器设备:数字万用表、示波器。4.2 指标测试和测试结果表4.1.2 测试结果对照分析表档位测量值测量值实际值1001K10198.91K10K1014998.910K10M-989K五、结论本设计实现了一种利用52单片机实现的简易电阻测试仪,基于单片机和量程自动切换电路的控制系统,能够根据待测电阻的大小实现适当频率的控制,再分别采样频率,通过程序计算待测电阻Rx并在1602液晶上显示。并且测量的数据结果较稳定。设计过程中出现问题有以下:1. 在使用ADC芯片电路中电阻值时,由于

15、单片机对10HZ10KHZ的频率计数精度最高。所以要选用合理的电阻大小。同时又要考虑到不能使电阻的功率过大,这样给我们计算带来了很多的麻烦。2.我们接收到频率较高,所以通过电路很难控制精确度,产生的误差比较大。3继电器在使用时最高位的继电器无法工作导致量程只能在0到1k。 4、在实验过程中时常有捉襟见肘的感觉,一方面是理论不足,很多好的方案,好的思想由于理论的匮乏,无法理解,也不能使用,在以后的学习过程中理论的学习始终是重点;还有就是程序的问题,由于编程水平跟不上,加上思路也不清晰,导致程序的编写存在很大的问题,好的思想,无法在程序中展现出来,这也是以后需要加强的地方。参考文献1. 高吉祥,黄

16、智伟,丁文霞. 数字电子技术M. 北京:电子工业出版社,2003年,第1版2. 邹其洪 黄智伟 高嵩.电工电子实验与计算机仿真M.北京:电子工业出版社,2003年,第1版3. 张友汉.电子线路设计应用手册M.福建:福建科学技术出版社.2000.7第一版.4. 黄智伟.电子电路计算机仿真设计M. 北京:电子工业出版社,2004年第1版附录附录1: 主要元器件清单at89c52单片机112M晶振211.0592M晶振222pf瓷片电容54.7k电阻22.5k电阻2200电阻210k电阻2500k电阻23.3k电阻2AD转换器adc08322mps8098三极管5继电器G2RL-1AB-DC55蓝白

17、电位器10k2排针28脚排座240脚排座2蜂鸣器21n4148二极管52n2222三极管3发光二极管2附录2:程序清单#include<reg52.h>#include<intrins.h> #define uchar unsigned charuchar table= 0x00,0x04,0x0A,0x11,0x11,0x0A,0x1B,0x3B, ; uchar table1="THE RES IS: " sbit CS=P15; sbit Clk=P16; sbit DI=P17; sbit DO=P17; sbit rs=P20; sbit

18、en=P21; sbit j1=P27; sbit j2=P26; sbit j3=P25; sbit beep=P14; sbit led=P23; void delay(int x) int j; for(;x>0;x-) for(j=20;j>0;j-) ; uchar ADC0832(uchar CH) uchar i,dis0,dis1,date; Clk=0; /拉低时钟 DI=1; /初始化 delay(1);CS=0; /芯片选定 delay(1); Clk=1; /拉高时钟 delay(1);if(CH=0) /通道选择 Clk=0; /第一次拉低时钟 DI=1;

19、 /通道0的第一位 delay(1); Clk=1; /拉高时钟 delay(1); Clk=0; /第二次拉低时钟,ADC0832 DI接受数据 DI=0; /通道0的第二位 delay(1); Clk=1; delay(1); else Clk=0; DI=1; /通道1的第一位 delay(1); Clk=1; delay(1); Clk=0; DI=1; /通道1的第二位 delay(1); Clk=1; delay(1); Clk=0; /第三次拉低时钟,此前DI两次赋值决定通道 DI=1; /DI开始失效,拉高电平,便于DO数据传输 for(i= 0;i<8;i+) /读取前

20、8位的值 delay(1); dis0<<= 1; Clk=1; delay(1); Clk=0; if (DO) dis0|=0x01; else dis0|=0x00; for (i=0;i<8;i+) /读取后8位的值 dis1>>= 1; if (DO) dis1|= 0x80; else dis1|= 0x00; delay(1); Clk=1; delay(1); Clk=0; if(dis0=dis1) /两次结束数据比较,若相等 date=dis0; /则赋值给dat delay(1); CS=1; /释放ADC0832 DI=1; /拉高输出端,

21、方便下次通道选择DI端有效 Clk=1; /拉高时钟 delay(1); return date; long datch(uchar a ,long st ) /计算电阻 long y; double x=1.0*st*(255-a)/a ; y=x; return y; void writecom(uchar com) rs=0; P3=com; delay(10); en=1; delay(10); en=0; void writedat(uchar date) rs=1; P3=date; delay(10); en=1; delay(10); en=0;void init () en=

22、0;writecom(0x38); writecom(0x0c); writecom(0x06); writecom(0x01); void display( long x) int j,wei=12; for(j=0;j<18;j+) /qinhkongxianshi writecom(0xc0+14-j); delay(10); writedat(32); for(j=0;x>0;j+) /qinhkongxianshi if(j%3=0)&&(j>0) writecom(0xc0+wei-j);writedat(44);wei-; writecom(0xc0+wei-j); delay(10); writedat(x%10+48); x=x/10 ; long J1(void) j1=1; j2=0;j3=0;delay(40);return d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论