ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:93.95KB ,
资源ID:4522684      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4522684.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电阻参数单片机测试系统的设计文档格式.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

电阻参数单片机测试系统的设计文档格式.docx

1、前者电路简单,速度快,但精度低;后者测量精度高,但速度慢。随着数字化测量技术的发展,在测量速度和精度上有很大的改善,电容的数字化测量常采用恒流法和比较法。纵览目前国内外的LRC测试仪,硬件电路往往比较复杂,体积比较庞大,不便携带,而且价格比较昂贵。例如传统的用阻抗法、Q表、电桥平衡法等测试LRC的过程中不够智能而且体积笨重,价格昂贵,需要外围环境优越,测试操作过程中需要调很多参数,对初学者来说很不方便,当今社会,对LRC的测试虽然已经很成熟了,但是价格和操作简单特别是智能方面有待发展,价格便宜和操作简单、智能化的仪表开发和应用存在巨大的发展空间,本系统正是应社会发展的要求,研制出一种价格便宜和

2、操作简单、自动转换量程、体积更小、功能强大、便于携带的LRC测试仪,充分利用现代单片机技术,研究了基于单片机的智能LRC测试仪,人机界面友好、操作方便的智能LRC测试仪,具有十分重要的意义。2.方案设计本设计是以将被测参数模拟转化为频率,并利用单片机实现计算频率,所以,本次设计需要做好以下工作:(1)学习单片机原理等资料。(2)学习PROTEUS等工具软件的使用方法。(3)设计测量电阻的电路。(4)设计测量LCD动态显示电路。(5)设计测量频率程序,设置程序。(6)调试,并进行实际测试,记录测试数据和结果。2.2设计方案2.1电阻的系统设计方案比较(1)电阻测试方案通过测量输出振荡频率的大小即

3、可求得电阻的大小,如果固定电阻值,该方案硬件电路实现简单,通过选择合适阻值即可获得适当的频率范围,再交由单片机处理。(2)总体思路本设计是基于单片机80C51智能处理,根据单片机的外接按键控制测量电路的选择,通过555定时器构成的多谐振荡器产生的一定频率的波。再通过单片机的I/O口对高低电平的捕获读出频率,再通过程序算法处理换算成电阻电容的值,然后再通过单片机送给液晶显示。RC简易测量仪设计的关键问题是:如何完成RC的测量。RC简易测量仪设计的核心问题是:如何产生转化电路输出频率。(3)系统总体框图1) 控制部分:本设计以单片机为核心,采用51单片机,利用其管脚的特殊功能以及所具备的中断系统,

4、定时/计数器和LCD显示功能等。LCD灯:本设计中,设置了1盏,电源指示灯,采用LCD以共阳极方式来连接,直观易懂,操作也简单。数码管显示本设计中有1个74HC02、2个74LS573、1个2803驱动和6个数码管,采用共阳极方式连接构成动态显示部分,降低功耗。2)通道选择:本设计通过单片机控制CD4052模拟开关来控制被测频率的自动选择。3)测量电路:电路实现被测电阻变化。通过51单片机的IO口自动识别量程切换,实现自动测量。3.硬件设计3.1单片机最小系统内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序。本电路使用单片机内部振荡器,11.0592MHz的晶体谐振器直接接

5、在单片机的时钟端口X1和X2,电路中C2、C3为振荡器的匹配电容。该电路简单,工作可靠 。另外本系统的容阻上电复位,就是利用RC电路的充电过程来给单片机复位。RC电路的时间常数计算公式:T=RC即:T=RC=10u*10k=100ms。当需要复位时,也可以按下复位按键,进行复位。3.2显示驱动部分在本设计中,考虑到单片机构成的应用系统有较大的可靠性,容易构成各种规模的应用系统,且应用系统有较高的软、硬件利用系数。还具有可编程性,硬件的功能描述可完全在软件上实现。另外,本设计还需要利用单片机的定时计数器、中断系统、串行接口等等,所以,选择以单片机为核心进行设计具有极大的必要性。在硬件设计中,选用

6、MS-51系列单片机,其各个I/O口分别接有按键、LCD灯、七位数码管等,通过软件进行控制。MCS-51单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元,以及数据总线、地址总线和控制总线等三大总线,现在分别加以说明:1)中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。2)数据存储器(RAM):内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能

7、用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。3)程序存储器(ROM): 共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。4)定时/计数器(ROM):有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。5)并行输入输出(I/O)口:共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。6)全双工串行口:内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。7)中断系统:具备

8、较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串口中断,可满足不同的控制要求,并具有2级的优先级别选择。4软件设计 4.1软件流程在本设计的模块中,模块是以单片机为核心,再通过按键控制测量的被测参数在数码管显示,按键主流程图如下显示5.实验结果与讨论5.1实验仿真源程序#includeintrins.h#define DATA P0#define uchar unsigned char#define uint unsigned int sbit adcs=P23;/可以硬件直接接地sbit adrd=P25;sbit adwr=P24;sbit RS=P20;/1602写地址sbi

9、t RW=P21;/1602写数据sbit EN=P22; /1602工作使能sbit c_test=P36; /开始测量电阻的按键输入sbit _reset=P35; /555时基芯片工作控制信 uint T_flag,N,D,C,i,Dis1,Dis0;uchar get_ad();uint A,F,H,A1,A2;uint r=R,=0.K,0Xf4; /显示 R=00.0Kuint Data1;/*延时1MS*/void Delay1ms(uint mm)uint i;for(;mm0;mm-) for(i=0;ix-) for(y=110;yy-);/*检查忙否*/void Chec

10、kstates() uchar dat; RS=0; RW=1; doEN=1;/下降沿 _nop_();/保持一定间隔 dat=DATA; EN=0; while(dat&0x80)=1);/*LCD写命令函数*/void wcomd(uchar cmd) Checkstates(); RW=0; DATA=cmd; EN=1;/*LCD写数据函数*/void wdata(uchar dat) RS=1; DATA=dat;/*初始化*/void LCDINIT() Delay1ms(15); wcomd(0x38);/功能设置 Delay1ms(5); wcomd(0x01);/清屏 wc

11、omd(0x08);/关显示 wcomd(0x0c);/开显示,不开光标/*显示函数*/void Display1() /显示函数 显示电阻 uchar i,j;uchar a12=0X4D,0X45,0X41,0X53,0X55,0X52,0X45,0X4D,0X45,0X4E,0X54,0X53;for(i=0;12;i+)/写显示第一行 wcomd(0x80+i); Delay1ms(1); wdata(ai); for(j=0;j9;j+)/写显示第二行 wcomd(0xc0+j); wdata(rj); Delay1ms(1000);uchar get_ad()/adc0804操作

12、uchar temp; adcs=1; adwr=1; delay(1); adcs=0; adwr=0; P1=0xff; adrd=1; delay(20); adrd=0; temp=P1; return temp; void main() IE=0x81; /打开全外部中断允许 TMOD=0x09; /T0 方式1 IT0=1; /设置外部中断的触发的方式为脉冲触发 TH0=0x00; TL0=0x00; T_flag=0; LCDINIT(); while(1) if(!c_test=1) Display1(); Data1=get_ad(); A=100*Data1; H=A/(2

13、56-Data1); A1=H/10; A2=H%10; wcomd(0x80+0x43); wdata(0x30+A1); wcomd(0x80+0x45); wdata(0x30+A2); void int0(void) interrupt 0 /第一次中断开始计数,第二个中断停止计数 T_flag=!T_flag; if(T_flag=1) TR0=1; /开始计时 if(T_flag=0) TR0=0; /停止计时 EX0=0; /关闭中断 N=TH0*256+TL0; /计算计数器的值 N=N*5/3; TH0=0x00; /恢复初值 TL0=0x00;7参考文献1 彭伟.单片机C语言程序设计实训100例.电子工业出版社.2周景润 张丽娜.Proteus入门实用教3电子技术基础(模拟部分)康华光 高等教育出版社4数字电路基础 崔建宗 北京航空航天大学出版社5电路 邱关源 高等教育出版社

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2