基于Atmel 51单片机开发平台和自动控制原理的数字电压表系统

基于Atmel 51单片机开发平台和自动控制原理的数字电压表系统

2df52f776a01111772d23e3dec985fa8.png///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///

66c13f54c8dcbd44c3531c57010ad6df.png

设计要求

1.以MCS-51系列单片机为核心器件,设计一个简单的直流数字电压表;

2.电压量程:0~5V;

3.最小分辨率:0.01V;

4.所用元器件较少,成本低,且测量精度和可靠性较高;

系统概述

本设计是基于Atmel 51单片机开发平台和自动控制原理的基础上实现的一种数字电压表系统。该系统采用AT89C51单片机作为控制核心,以ADC0809为模数转换芯片,实现量程0到5V的被测电压数据采样;LCD1602字符液晶显示被测电压值。

同时,数字电压表测量精度为0.01V,能够满足一般测量要求,系统框架如下图所示。

39f43174fe4c43d27333d08cabe34300.png系统框架

仿真电路图

9d7a95ca7af8bedb1f919cc400b235f7.png数字电压表仿真电路图a6e014304a42e5d624bd9f0b0ed9d4e5.png

原理图

447863d694fe21be40f5855f1346edcc.png

PCB图

815ae840b263cc7e894913f1a643ae3f.png

仿真结果分析

打开Proteus仿真文件,文件后缀名为DSN.双击单片机,加载DianYa.hex文件(位于C程序文件夹中),运行仿真,结果如下图所示。

4fc80fa5b38ee071a55a1d8f37018f61.pngLCD显示电压值1.84V

图中可以看出,LCD显示AD转换通道IN0电压(Voltage)的大小为1.84V,用Proteus软件自带的电压表(Volts)测量的结果为1.85V,两者偶有0.01V的偏差,属于仿真正常现象。

通过点击滑动变阻器RP2上下红色箭头,模拟被测电压值的改变(0~5V之间),LCD实时跟踪显示电压的变化。

下图为调整滑动变阻器后,LCD显示的电压值为4.25V,与Volts电压表显示结果一致。

c60f8bd792d709ff3193dafb7dd44d16.png电压测量值均为4.25V

综上所述,数字电压表Proteus仿真设计运行效果满足设计要求。

部分C代码

#include"include.h"#define TIME0H 0x3C#define TIME0L 0xB0ucharuc_Clock=0;//定时器0中断计数bitb_DATransform=0;

voidvShowVoltage(uintuiNumber){

ucharucaNumber[3],ucCount;

if(uiNumber>999)

uiNumber=999;

ucaNumber[0]=uiNumber/100;//把计算数字的每个位存入数组。ucaNumber[1]=(uiNumber-100*(int)ucaNumber[0])/10;

ucaNumber[2]=uiNumber-100*(int)ucaNumber[0]-10*ucaNumber[1];

for(ucCount=0;ucCount<3;ucCount++)

{

vShowOneChar(ucaNumber[ucCount]+48);//从首位到末位逐一输出。if(ucCount==0)

vShowOneChar('.');

}}

voidmain(){

TMOD=0x01;//定时器0,模式1。TH0=TIME0H;

TL0=TIME0L;

TR0=1;//启动定时器。ET0=1;//开定时器中断。EA=1;//开总中断vdInitialize();

vWriteCMD(0x84);//写入显示起始地址(第一行第4个位置)vShowChar("voltage");

vWriteCMD(0xC9);

vShowChar("(V)");

while(1)

{

if(b_DATransform==1)

{

b_DATransform=0;

vWriteCMD(0xC4);

vShowVoltage(uiADTransform());

}

}}

分享的内容有

(1)基于51单片机的数字电压表设计论文完整版;

(2)C程序;

(3)Proteus仿真文件;

(4)原理图及PCB文件;

(5)Visio流程图;

(6)元器件清单;

(7)参考资料;

分享如下

71210bb6ec386c0c2ad9b4e823daa2d3.png91ed2e902637441c821ab4ee2d56c5c2.pngcda3f54196955d858c35615e71934d6a.png07a8d48726dfa8bda79e0ba65887ab12.pngf3c1ae1a3259e815d3d9185821176d09.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值