1.ADC0809简介
IN0~IN7 : 8路模拟量输入端;
D0~D7:8位数字量输出端;
ADDA、ADDC、ADDC:3位地址输入线,用于选择8路模拟通道中的一路;
ALE:地址锁存允许信号,输入,高电平有效;
START:A/D转换启动信号,输入,高电平有效;
EOC:A/D转换结束信号,输出。当启动转换时,高引脚为低电平,当A/D结束转换时,高引脚输出高电平;
OE:数据输出允许信号,输入,高电平有效。当转换结束后,如果从该引脚输入高电平,则打开输出三态门,输出锁存器的数据从D0~D7送出;
CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ;
REF+、REF-:基准电压输入端;
VCC:电源,接+5V;
GND:地;

2.程序代码

#include<reg52.h>#define Duan_Port P0//定义数码管端口
#define ADC0809_Data P1//定义端口接收ADC0809数据转换结果/*引脚定义*/
sbit Bit1=P2^3;
sbit Bit2=P2^2;
sbit Bit3=P2^1;
sbit Bit4=P2^0;sbit OE=P3^1;
sbit Start=P3^2;
sbit EOC=P3^3;sbit Dp=P0^7;//小数点sbit CLK=P3^0;unsigned int dat=0;
unsigned char Buf[4];//存放数码管显示数字的数组unsigned char code smg_Duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,};//共阳极数码管编码/**************函数声明***************/
void delay_xms(unsigned int t);//延时xms函数
unsigned char ADC0809_Read();//ADC0809读取数据,输出为0-255
void ConvertVoltage();//将0-255转换为0.00-5.00V
void smg_Display();//数码管显示void main()//主函数
{unsigned int n=0,sum;while(1){for(n=0;n<3;n++){sum=sum+ADC0809_Read();smg_Display();}dat=sum/3;ConvertVoltage();sum=0;smg_Display();}
}void delay_xms(unsigned int t)
{unsigned int i,j;for(i=t;i>0;i--)for(j=123;j>0;j--);
}unsigned char ADC0809_Read()
{unsigned char Temp=0X00;OE=0;//输出设为高阻态Start=0;Start=1;//提供上升沿启动AD转换Start=0;//提供下降沿while(!EOC);//等待转换结束OE=1;//连接数据线输出Temp=ADC0809_Data;OE=0;//断开数据线return Temp;//返回结果
}void ConvertVoltage()
{unsigned int Vo;Vo=dat*19.608;  //  5/255=0.01960784313Buf[0]=Vo/1000%10;Buf[1]=Vo/100%10;Buf[2]=Vo/10%10;Buf[3]=Vo/1%10;
}void smg_Display()
{Bit1=0;Duan_Port=smg_Duan[Buf[0]];//选通第一位数码管并赋段码Dp=0;delay_xms(1);Bit1=1;Duan_Port=0xff;//关闭消影Bit2=0;Duan_Port=smg_Duan[Buf[1]];delay_xms(1);Bit2=1;Duan_Port=0xff;Bit3=0;Duan_Port=smg_Duan[Buf[2]];delay_xms(1);Bit3=1;Duan_Port=0xff;Bit4=0;Duan_Port=smg_Duan[Buf[3]];delay_xms(1);Bit4=1;Duan_Port=0xff;
}

3.仿真电路

基于51单片机的电压采集(ADC0809)相关推荐

  1. 基于51单片机的电压采集(ADC0804)

    1.ADC0804简介 工作电压:+5V,即VCC=+5V. 模拟转换电压范围:0-+5V,即0≤Vin≤+5V. 分辨率:8位,即分辨率为1/(2^8)=1/256,转换值介于0-255之间. 转换 ...

  2. 基于51单片机的温度采集与报警系统】

    引言 单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将设计一种基于单片机控制的温度器,本温度计属于多功能温度计,可以利用温度传感器对环境温度进行监测和显示,可以通 ...

  3. 基于51单片机锂电池电压电量检测(原理图+PCB+程序)

    资料编号:198  下面是该资料仿真演示视频: 198-基于51单片机锂电池电压电量检测(原理图+PCB+程序+全套资料) 功能介绍: 采用51系列自带AD的单片机stc12c5a60s2型号单片机( ...

  4. 基于51单片机的语音采集系统设计(录音笔选择方案)

    功能: 基于51单片机的语音实时采集系统 系统由STC89C52单片机+ISD4004录音芯片+LM386功放模块+小喇叭+LCD1602+按键+指示灯+电源构成 具体实现功能: (1)可通过按键随时 ...

  5. 34、基于51单片机锂电池电压电流容量检测仪表LCD液晶显示 原理图PCB程序设计

    方案选择 单片机的选择 方案一:AT89C52是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度.非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通 ...

  6. 98、基于51单片机锂电池电压电流容量检测仪表LCD液晶显示

    毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.PCB图 六.部分程序源码 七.资料包括 摘要 锂离子电池是 1990年后逐渐发展起来 ...

  7. 基于51单片机的电压检测系统设计(#0412)

    电压.电流.功率是表征电信号能量大小的三个基本参量.在电子电路中,只要测量出其中一个参量就可以根据电路的阻抗求出其它二个参量.考虑到测量的方便性.安全性.准确性等因素,几乎都用测量电压的方法来测定表征 ...

  8. 基于51单片机可控电压0-5V输出PWM方式PID稳压

    视频地址链接:https://www.bilibili.com/video/BV17V411n72P/ 本设计为AT89C51为主控芯片,主要是实现了PWM方式输出可调电压0-5V输出.使用PID方式 ...

  9. 基于单片机超声波视力保护系统设计-基于51单片机8音键电子琴仿真设计-基于8086八路模拟信号采集均值显示系统设计-基于8086八路数据电压温度采集系统-基于8086波形发生器仿真设计【毕设课设分享】

    539基于单片机超声波视力保护系统设计-设计资料 硬件构成:单片机+最小系统+LCD1602液晶显示模块+超声波模块+DS18B20温度采集模块+光线检测模块+ADC0832模块+蜂鸣器模块+LED指 ...

最新文章

  1. Windows7 libsvm库中grid.py的使用步骤
  2. 恕我直言,HttpClient 你不一定会用
  3. pyinstaller python3.7_解决python3.7安装好pyinstaller却不能使用的问题
  4. mysql修改表和列
  5. entity framework5 sqlserver2005 事务(TransactionScope)报未启用MSDTC错误解决办法
  6. spring配置日志
  7. c盘local文件太大_win7 c盘清理的方法教程
  8. 深度去除WinRAR广告
  9. 记一次有趣的诱导安装
  10. 内存卡 android 刷机教程,怎样用卡刷包刷机?安卓手机通用刷机包卡刷教程
  11. sqlh和mysql的区别_HSQL和MySQL的区别
  12. matlab rand函数解释,matlab rand()函数五种用法
  13. ios服务器停止响应怎么办,iPhone 应用停止响应或意外关闭怎么办
  14. TabLayout+ViewPager实现tab切换
  15. 《位置大数据隐私管理》—— 1.4 隐私泄露威胁
  16. mysql中where语句的不等于操作
  17. 大数据先导实践实验一
  18. Bosun中es表达语法
  19. HackerRank C++ || Conditional Statements
  20. 信息系统工程工程监理将迎来新的发展机遇

热门文章

  1. 答题卡识别C++版本(一)
  2. 百度云AI获取access token的方法
  3. 磁盘管理大师Paragon Hard Disk Manager for mac永久试用版
  4. 飞凌 修改ip地址 linux,[新手指导]imx6开发板 IP及MAC地址修改
  5. tp5.1对接阿里云短信实例
  6. vscode 安装matplotlib
  7. 前端常考react面试题(持续更新中)
  8. 阿诺德给物体加描边_Arnold(C4DToA)阿诺德渲染教程(116):Arnold 如何抠透明通道?透明物体后期合成方案!...
  9. Saber 2016 安装和破解(WIN10)
  10. 翻越山丘:中国科技公司面对GDPR的这两年