单片机数字电压表设计实验报告(单片机数字电压表设计)

交换机 2024-05-05 电子 17 views

扫一扫用手机浏览

文章目录 [+]
用单片机设计一个自动切换量程的数字电压表,做了出了一点问题

如果输入电压变化很快,你的切换将会很多,基本上输入到数码管上,你是看不清楚的,所以在软件上加一个平均滤波算法,使得显示更稳定。

量程是用模拟开关进行选择的,模拟开关后面有运放,通过合理设计下的运放的高阻使模拟开关的导通电阻变得可以忽略。设计的时候需要做好限幅保护电路,否则以免信号满最高量程时烧毁后面的电路。

这个式子里,当输入5V时,你得到的数就是255(当然运算完后会产生误差,其实根本不用运算,5V得到的就是FFH),所以显示5是正常的***你要是想与输入电压对应,只要再乘以2就可以了。

该表能在单片机的控制下完成直流电压、电阻和直流电流的测量。

要得到两位小数?如果使用C语言编写那就没有问题了。但是还有一种方法,假设Vref=56V,即2560mV,所以V=2560×X÷256=10×X,单位是mV,只要自己加小数点就行了,比如X=65H=101,则V=1010mV=01V。

受0、1信号的控制将不同的电压参考至输送至与被测信号做比较的比较器上,因而可以用单片机输出一个0、1信号来实现对量程的控制。综上,一定是器件内部的一个电子开关来改变参考电压的水平,来控制量程。

求一简易数字电压表的电路原理图

.***实验任务***利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。

打开VC++0,建立一个基于对话框的MFC应用程序,串口通信采用MSComm控件来实现。其他操作此处不赘述,编程实现一个良好的人机界面。数字直流电压表的操作界面如图5所示。运行VC++0编程实现的Windows程序,整个样机功能得以实现。

数字是万用表工作原理即所谓双积分原理,如下图:双积分ADC包括2个部分:第一部分是充电和积分电路(图的上升部分);第二部分是放电部分(图的下降部分)。

下面以输入正极性的直流电压vI为例,说明电路将模拟电压转换为数字量的基本原理。电路工作过程分为以下几个阶段进行,图中***各处的工作波形如图112所示。

用STC15F2K60S2单片机设计数字电压表

1、h)***把“模数转换模块”区域中的IN0端子用导线连接到“三路可调电压电压模块”区域中的VR1端子上。i)***把“单片机系统”区域中的P0.0-P0.7用8芯排线连接到“模数转换模块”区域中的D0D1D2D3D4D5D6D7端子上。

2、电流、电压和电阻的最终测量信号都在单片机的控制下由12位A/D转换器TLC2543进行采集,采集的信号经单片机数据处理后通过LCD(12864)显示出来,测量结果还可以由带有串行EEPROM的CPU存储器和监控器的X25045进行多个数据保存。

3、-150V范围若要实现0.5%误差的话,至少要有300级采样才能实现,8位是不够的,8位只有256级,而且由于信噪比的原因,ADC的末几位不能作为有效位数,这样误差就更大了,至少应该有10位的ADC才够用,建议使用11位或以上。

4、把ADC电压输入脚,设置成高阻输入就行了,也必须设置成高阻输入的。如下图,画红圈项。

5、这无所谓,你可以任选一个51单片机,比如ATEML的就可以,仿真、编程没什么影响,只是STC的一些特殊寄存器定义需要自己来做而已。至于加STC到KEIL,也简单,下载STC_ISP,运行后进入KEIL仿真设置里,加入其相关内容就可以了。

6、STC15F2K60S2是51系列单片机,寻址方式相同,如下:立即数寻址:即指令中直接给出操作数的寻址方式称为立即数寻址。寻址空间64K直接寻址:指令中直接给出操作数地址(dir)的寻址方式。

本文转载自互联网,如有侵权,联系删除

本文链接地址:http://www.alissi-bronte.com/10844.html

相关文章

  • 暂无相关推荐