基于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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值