该知识点来源于B站知弦本章便是对其电子电压表应用的简单总结!!!

一、ADC0808/0809(模拟信号转数字信号)

1、其概述如下图所示,LSB为5V/2^8

2、芯片内部结构(如下图)

IN0-IN7:模拟信号输入端

D0-D7:单片机接口端,也就是芯片输出端

COLOCK:时钟信号端,常为500KHz

ADDA、ADDB、ADDC:对IN0-IN7地址选择

ALE:对地址锁存,一般与START相连

EOC:模拟转数字信号反馈(A/D转化反馈),转化完成则为1

OE:控制D0-D7是否输出,为0否,为1则输出

VREF(+)接5V,VREF(-)接地

3、时序

看时序图写程序,大致流程如下,时序图如下:

开始的时候

START=0;
OE=0;

选择地址

START=1
ADDA=0;ADDB=0;ADDC=0//选择000地址即IN0口
delay(5);//延时5毫秒

等待转化完成读取结果

START=0;//EOC此时为0,开始AD转化
while(!EOC);//等待转化结束
OE=1;//准备传输数据到单片机上
delay(5);
temp=P1;//输出口接单片机P1口,将其数据取出
OE=0;//结束转换

 二、仿真

器件搜索:89c51、pot-hg(可变电阻)、LM016(LCD1602)、ADC0808

三、程序

功能:将可变电阻的电压显示出来

#include "reg51.h"
sbit  RS=P3^0;
sbit RW=P3^1;
sbit E=P3^2;
sbit EOC=P3^3;
sbit OE=P3^4;
sbit start=P3^5;
unsigned int vol=0;
unsigned char s[]={"VOLTAGE:"};
unsigned char s1[]={"0123456789"};sbit A=P0^0;
sbit B1=P0^1;
sbit C=P0^2;void delay(unsigned int n )
{unsigned int i=0,j=0;for(i=0;i<n;i++){for(j=0;j<120;j++);}
}void initADC() //ADC初始化(根据时序图)
{start=0;OE=0;start=1;A=0;B1=0;C=0;//选中000地址delay(5);start=0;while(!EOC);OE=1; delay(5);vol=P1;OE=0;
}void writecom(unsigned char com)
{RS=0;RW=0;E=0   ;P2=com; delay(5);E=1;E=0;
}void writedat(unsigned char dat)
{RS=1;RW=0;E=0   ;P2=dat; delay(5);E=1;E=0;
}void initlcd()  // LCD初始化
{writecom(0x38);writecom(0x0c);writecom(0x06);writecom(0x01);
}void display()  //显示函数
{int i=0,j=0,temp1=0,temp2=0,temp3=0;writecom(0x80);delay(5);while(s[i]!='\0'){writedat(s[i]) ;delay(5);i++;}vol=vol*100/51;  //乘以100为了显示小数部分,除以51:256/5V=51,即为了转化为可观察的电压值temp1=vol/100;temp2=(vol/10)%10;temp3=vol%10;writecom(0x80+0x45);writedat(s1[temp1]);delay(5);writedat('.');delay(5);writedat(s1[temp2]);delay(5);writedat(s1[temp3]);delay(5);writedat('V');delay(5);
}void main()
{initlcd();while(1){initADC();display();}
}

四、总结

学会ADC0808的连线

能够根据时序图写程序

电压值一开始并不能显示,是在仿真之后找关系才能做相应的程序处理,进而显示电压值!

51AD转换及简易电子电压表!相关推荐

  1. 8421BCD码 5421BCD码 余三码 格雷码 余三循环码之间的关系,转换以及简易方法

    8421BCD码 5421BCD码 余三码 格雷码 余三循环码之间的关系,转换以及简易方法 1. 有权码和无权码的包括 2.各种码值的介绍 8421码的简介 8421码又称为BCD码,是十进代码中最常 ...

  2. macbook视频格式转换_AnyMP4简易视频格式转换器 for mac | MAC之家

    AnyMP4简易视频格式转换器 for mac 软件简介 销售商:AnyMP4 Studio 价格:免费 语言: 评分:0 分 评论数:0 年龄分级:限4岁以上 免费视频转换器可以转换几乎所有视频文件 ...

  3. 计算机基础知识系列·进制转换的简易方法

    本篇文章仅针对小白(刚刚学习计算机应用基础,计算机原理的小白),文章内容比较简单. 一.十进制数转换成二进制数. [例子1](1)十进制数字78转换二进制:(2)十进制数字374转换二进制. 答案:( ...

  4. wps转换成word如何实现?不妨试试这两个小技巧

      我们在日常工作和学习中,经常会接触到wps和word两种文档格式,有时候为了方便我们对文档进行编辑处理,会将wps格式转为word.那你们知道怎么把wps转换成word吗?其实很简单,使用一些转换 ...

  5. FLV视频转换的利器 - ffmpeg.exe

    FLV视频转换的利器 - ffmpeg.exe 大家应该都知道Youtobe.Google Video之类视频分享网站.他们的视频全部是使用Flash播放,而通过探索实际地址,会发现下载回来的东西都是 ...

  6. 第四章:Java_面向对象编程(二)

    目录: 面向对象的特征之二:继承性 方法的重写 关键字super 子类对象实例化的全过程 面向对象的特征之三:多态性 Object类 Junit单元测试类 包装类 1.面向对象的特征二:继承性 1.为 ...

  7. Easystructure教程_C语言源代码自动生成流程图

    目录 Easystructure教程_C语言源代码自动生成流程图 1. 简介 2. 下载 3. 安装 4. 使用 5. 其他软件推荐 5.1 Mermaid 5.2 Code2flow ** Easy ...

  8. 本地编码修改和编码详解

    实用网址: 汉字字符集编码查询: 汉字字符集编码查询:中文字符集编码:GB2312.BIG5.GBK.GB18030.Unicode (qqxiuzi.cn) 字体编辑用中日韩汉字Unicode编码表 ...

  9. 《C和指针》阅读笔记

    <C和指针> Kenneth著 文章目录 1.快速上手 警告与总结 编程提示的总结 2.基本概念 2.1 环境 2.1.1 翻译环境 2.1.2 执行环境 2.2 词法规则 三字母词 3. ...

最新文章

  1. CentOS上编译安装Nginx
  2. matlab mobile中文版,MATLAB Mobile
  3. BAT解密:互联网技术发展之路(5)- 开发层技术剖析
  4. mysql page校验_MySQL InnoDB离线校验工具innochecksum使用
  5. switch日版有中文吗_任天堂switch国行和日版的区别
  6. sublime中文输入(转)
  7. Codeforces Round #541 (Div. 2) C.Birthday
  8. ios 获取固件版本_觉得iOS测试版本BUG太多?系统降级试一试?
  9. unity Conditional特性 总结
  10. java8 liu_在Java8流中处理输出
  11. 谷粒商城:18.性能压测
  12. StanfordDB class自学笔记 (14) On-Line Analytical Processing
  13. 微信公众号开发文档,微信小程序开发文档,微信扫码支付文档,微信委托代扣模式开发文档
  14. 教你如何用Three.js创造一个三维太阳系
  15. eureka服务返回的数据是xml格式
  16. Git操作不规范,战友提刀来相见。
  17. 中国人保为嘉德奥通承保产品责任险,为消费者保驾护航!
  18. java 关机命令_linux 关机命令shutdown
  19. 关于计算机研究生报考方向的简要介绍
  20. Android灯光系统背光灯

热门文章

  1. 2021车中国车联网行业发展环境(PEST)分析:政策加持下,车联网市场持续爆发[图]
  2. 基于Java毕业设计中小型酒店客房预订系统源码+系统+mysql+lw文档+部署软件
  3. C语言 不完全类型
  4. Twitter——我们的机器人相互交流之地
  5. (亚马逊云)10分钟-快速启动基于 Odoo 的电商网站
  6. 仿百度壁纸客户端(二)——主页自定义ViewPager广告定时轮播图
  7. 哥大建筑 × 沉浸式体验 | 设计哲学 I.
  8. Matlab 绘图纵坐标改科学计数法(非log坐标)
  9. 文献阅读:基于电压规避的汽车CAN入侵检测(二)
  10. 在Python3里使用matplotlib绘折线图和散点图