• 基于51单片机八路电压表采集系统波形发生器


    资料编号:124  下面是相关功能视频演示:

    124-基于51单片机八路电压表采集系统波形发生器(仿真+源码+设计报告)

    功能介绍:
    1)可实现8路数据的采集,假设8路信号均为0-5V的电压信号;
    2)采集数据可通过数码管显示,显示格式为:[通道号] 电压值,如 [01] 4.5
    3)具有异常数据声音报警功能:对第一路数据可设置正常数据的上限值和下限值,当采集的数据出现异常,发出报警信号。
    4)可输出频率为1kHZ的方波,三角波。

    全套资料齐全

    下面是程序部分展示:

    void ADC()        //模数转换程序
    {    
        TD=P3;
          Aa=Bb=Cc=0;
        if(P1_3==1)
        {
         Cc=4;
        }
        if(P1_2==1)
        {
         Bb=2;
        }
        if(P1_1==1)
        {
         Aa=1;
        }
        xuhao=Aa+Bb+Cc;//信道序号
        buf[1]=zixing[xuhao];//将数字转换成字型码放入显示缓冲区               
        ad_data=P2;//读取转换完成的数字量
        vv=(5*ad_data/255.0)*10;//扩大10以便显示出小数点后的1位数          
                                //除以255.0时先转换成浮点数,而乘10后,又将乘积的结果浮点数转换成整型数
        dig=vv%10;//取模要余数得出低位   
        buf[3]=zixing[dig];//将数字转换成字型码放入显示缓冲区   
        dig=vv/10;//求商
        buf[2]=zixing1[dig]; //将数字转换成字型码放入显示缓冲区
    }
    void xianshi()         //数码管显示程序
    {

      for(i=0;i<8;i++)  
      {   
         P1_4=1;   
         P1_7=a1[i];//送位选码 
         P1_6=b1[i];
         P1_5=c1[i];
         P0=buf[i];  //数据显示   
         delay(2);//亮一段时间    
         P1_4=0;//熄灭掉,否则会形成亮段码干扰          
      }   
    }
    void jingbao()    //警报程序
    {
            P3_1=1; //蜂鸣器不鸣
          if(vv>=MAX)
          {
          P3_1=0;//蜂鸣器响
          }
          if(vv<=MIN)
          {
          P3_1=0;//蜂鸣器响
          }
    }
    void up() interrupt 0     //上限电压调整中断
    {    
        if(P3_4==1)
        {
        MAX++;
        }
        else
        {
        MAX--;
        }

    下面是该设计报告展示: 

     下面是该资料的分享下载链接:

    https://pan.baidu.com/s/1CiwZ6yLZQMLJck54kwX9lQ?pwd=p89r

  • 相关阅读:
    gromacs中一些有用的分析命令
    Python高阶学习记录
    css美化滚动条
    transformers安装避坑
    嵌入式Linux(树莓派)环境设置和交叉编译
    世界国旗/地图:世界各国国旗图标整理/与echarts世界地图配置对应
    云表:为什么要使用低代码开发?低代码选择指南
    阿里云面试:什么是语法糖?Java中有哪些语法糖?
    Spring XmlBeanFactory 容器的基本实现
    Go语言中的自定义函数类型
  • 原文地址:https://blog.csdn.net/m0_74295839/article/details/127835953