0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于STC89C52单片机的数字电流电压表设计

CHANBAEK 来源:电子应用学习馆 作者:一只会飞的大鱼儿 2023-03-31 14:39 次阅读

1.简述

本文介绍了基于STC89C52单片机为核心,分别以ACS712-05芯片和串联分压电路为为电流检测和电压检测电路,并通过AD0809数模转换芯片对电压信号进行采集和转换,传输给单片机进行处理,最后将处理后的电压值和电流值通过LCD1602显示屏显示出来。

2.硬件设计

本设计的硬件主要分为5部分,分别为:单片机最小系统、电流信号采样电路、电压信号采集电路、ADC转换电路、LCD1602显示屏电路。 硬件框图如图:

在这里插入图片描述

(1)电流信号采集电路

电流信号采集电路采用了ACS712-05芯片,该芯完全基于霍尔感应的原理设计,由一个精确的低偏移线性霍尔传感器电路与位于接近IC表面的铜箔组成、,电流流过铜箔时,产生一个磁场,霍尔元件根据磁场感应出一个线性的电压信号,经过内部的放大、滤波、斩波与修正电路,输出一个电压信号,该信号从芯片的第七脚输出,直接反应出流经铜箔电流的大小。 具体电路如图:

在这里插入图片描述

ACS712根据尾缀的不一样,量程分为三个规格:±5A、±20A、±30A,此次使用的量程为±5A,由于ADC转换芯片只能识别正压信号,所以电流的量程为0~5A。 ACS712-05电流电压对应关系如下图,Ip=0A即没有输入电流的时候,对应输出电压为2.5V.精确度为185mV/A即为图中斜线的斜率。 取VCC=5V,计算公式为:

Vout= 2.5 + 0.185*IP

在这里插入图片描述

(2)电压信号采集电路

电压信号采集电路相对简单,主要使用了两个电阻作为串联分压电路,分压比为3。 比如当检测表笔检测15V的电压时,由于分压比为3,R3端的电压为5V。 如果需要提高测试电压的量测,可以更改分压比。 (注意:在选用分压电阻时,尽量选择阻值大一点的电阻,不然电阻过小会导致输入电流过大; 此电路也只适用于测试输入阻抗较大的电路上的电压,不然测试出来的误差较大); 电路如图:

在这里插入图片描述

(3)ADC转换电路

本次ADC转换电路采用了PCF8591芯片,该芯片是一个单电源低功耗的8位CMOS数据采集器件,即分辨率为256,具有4路模拟输入,1路模拟输出和一个串行I2C总线接口用来与单片机通信。 此电路将电流信号和电压信号进行转换后传送给单片机。 电路如图:

在这里插入图片描述

(4)总体电路

在这里插入图片描述

3.软件设计

软件流程相对简单,当单片机上电后,程序对各个模块进行初始化后,进入循环,定时检测电流及电压值,并将最新的数据显示在显示屏上。 程序流程如图:

截图20230301181746.png

(1)主函数

void main (void)
{     
  unsigned char midvolt,midcur;  //电压电流中间变量值
  Init_Timer0();        //定时器0初始化
  UART_Init();      //串口初始化             
  LCD_Init();           //初始化液晶
  DelayMs(20);          //延时有助于稳定
  LCD_Clear(); 
  sprintf(dis0,"My Designer!!  ");//打印
  LCD_Write_String(0,0,dis0);//显示第一行
  sprintf(dis0,"V:%3.2fv A:%3.2fA",Volt,Acurrent);//打印电压电流值
  LCD_Write_String(0,1,dis0);//显示第二行
  uartSendStr("reday ok!!",10);
  while (1)         //主循环
  {
    midvolt=ReadADC(1);        //读取AD检测到的 电压值
    DelayMs(50);          //延时有助于稳定
    midcur=ReadADC(0);    //读取电流转化后的电压值
    Volt=(float)midvolt*5.13/255*3;    //计算出电压 *3表示分压值
    Acurrent=(float)midcur*5.13/255;    //计算出电流

    if(Acurrent>2.62)       //如果电流转换后的电压值超过2.62
    {
      Acurrent=(Acurrent-2.62)/0.185;   //电流模块 电压转换计算
    }
    else
    {
      Acurrent=0;
    }  
    sprintf(dis0,"V:%3.2fv A:%3.2fA",Volt,Acurrent);//打印电压电流值
    LCD_Write_String(0,1,dis0);//显示第二行
    DelayMs(500);          //延时有助于稳定
  }
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2483

    文章

    44467

    浏览量

    725357
  • 单片机
    +关注

    关注

    5921

    文章

    41499

    浏览量

    614123
  • 电压表
    +关注

    关注

    3

    文章

    282

    浏览量

    38032
  • STC89C52
    +关注

    关注

    39

    文章

    317

    浏览量

    80645
  • 采集电路
    +关注

    关注

    3

    文章

    24

    浏览量

    12161
收藏 人收藏

    评论

    相关推荐

    利用STC89C52单片机制作了一个简单的数字电压表

    STC89C52单片机制作了一个简单的数字电压表,主要通过A/D转换器XPT2046把输入的模拟信号即电位器的电压值转换成数字信号,送到1602液晶进行数据显示,并预设了一个警报
    发表于 07-21 09:06

    基于单片机STC89C52的摇摇棒

    单片机STC89C52的摇摇棒设计,有电路图和源程序
    发表于 11-23 14:38 28次下载

    STC89C52/RD+ 系列单片机中文指南

    STC89C52 使用手册 8位
    发表于 11-30 14:55 172次下载

    单片机STC89C52程序

    单片机STC89C52源程序。
    发表于 01-11 18:16 101次下载

    STC89C52单片机介绍

    STC89C52单片机介绍。
    发表于 05-20 13:55 235次下载

    STC89C52单片机的中文介绍

    STC89C52单片机的中文介绍,感兴趣的可以看看。
    发表于 07-21 10:35 74次下载

    基于单片机STC89c52 GSM的智能家居报警系统设计

    单片机STC89c52 GSM的智能家居报警系统设计,分享给大家。
    发表于 05-05 08:40 81次下载

    如何使用STC89C52单片机进行数控直流稳压电源的设计

    STC89C52 单片机的数控直流稳压电源,以直流电压源为核心,通过滑动变阻器来调节直流电源的输出电压,经过A/D 转换器ADC0832 采集并转换数据,再经
    发表于 11-29 16:43 52次下载
    如何使用<b>STC89C52</b><b>单片机</b>进行数控直流稳压电源的设计

    如何使用STC89C52单片机和AD0809设计数字电压表

    STC89C52单片机为核心的,以AD0809数模转换芯片作为采样,以四位八段数码管作为显示的具有测量功能的具有一定精度的数字电压表。在实现基础功能的情况下,另外还可以扩展串行口通信
    发表于 08-28 10:33 15次下载
    如何使用<b>STC89C52</b><b>单片机</b>和AD0809设计<b>数字</b><b>电压表</b>

    基于STC89C52单片机智能小车设计

    STC89C52单片机智能小车设计方法介绍。
    发表于 05-28 10:57 87次下载

    51单片机入门指南-基于STC89C52(持续更新)

    单片机入门指南-基于STC89C52(持续更新)
    发表于 11-12 09:21 34次下载
    51<b>单片机</b>入门指南-基于<b>STC89C52</b>(持续更新)

    STC89C52单片机

    STC89C52单片机STC89C52STC89C52看到涛哥这篇文章了,纪念一下还在搞嵌入式的我们!硬件实物图实物抽象化的图为:这个STC89C52名字是什么意思呢?STC89C52简介:片内
    发表于 11-23 17:06 107次下载
    <b>STC89C52</b><b>单片机</b>

    STC89C52单片机器件手册

    STC89C52系列单片机的内部结构框图如下图所示。STC89C52单片机中包含中央处理器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、定时/计数器、UART串口、I/O接口
    发表于 09-05 10:41 6次下载

    STC89C52系列单片机用户手册

    STC89C52系列单片机用户手册
    发表于 11-08 15:42 25次下载

    STC89C52单片机最小系统板-基础版技术手册

    STC89C52单片机最小系统板-基础版技术手册
    发表于 09-18 10:56 2次下载