LCD1602+ADC0809制作的数字电压表

发布者:好的哎最新更新时间:2015-10-13 来源: eefocus关键字:LCD1602  ADC0809  数字电压表 手机看文章 扫描二维码
随时随地手机看文章

 

//********************************

//LCD1602+ADC0809制作的数字电压表

//接口方式:总线扩展

//作者:曾宪阳

//网址:http://hi.baidu.com/zxymcu

//********************************

#include

#define ADC0809Addr 0x78ff

#define LCDWriteComAddr 0xa7ff 

#define LCDWriteDatAddr 0xafff 

#define uchar unsigned char

#define uint unsigned int

uchar Disp[6];

void delay_ms(uint t)

{

  uchar x,y;

  for(t;t>0;t--)

  {

    for(x=0;x<114;x++)

  for(y=0;y<1;y++);

  }

}

void Init1602(void)

{

  delay_ms(15);

  *((uchar xdata*)LCDWriteComAddr)=0x38;

  delay_ms(5);

  *((uchar xdata*)LCDWriteComAddr)=0x38;

  delay_ms(5);

  *((uchar xdata*)LCDWriteComAddr)=0x38;

  delay_ms(2);

  *((uchar xdata*)LCDWriteComAddr)=0x08;

  delay_ms(2);

  *((uchar xdata*)LCDWriteComAddr)=0x01;

  delay_ms(2);

  *((uchar xdata*)LCDWriteComAddr)=0x0c;

  delay_ms(2);

  *((uchar xdata*)LCDWriteComAddr)=0x06;

  delay_ms(2);

  *((uchar xdata*)LCDWriteComAddr)=0x80;

  delay_ms(2);

}

void Display(void)

{

  *((uchar xdata*)LCDWriteComAddr)=0XC0;

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)='I';

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)='N';

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)='0';

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)='=';

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('0'+Disp[0]);

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('.');

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('0'+Disp[1]);

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('0'+Disp[2]);

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('0'+Disp[3]);

  delay_ms(2);

  *((uchar xdata*)LCDWriteDatAddr)=('V');

  delay_ms(2);

}

void ADC0809(void)

{

  unsigned long i;

*((uchar xdata*)ADC0809Addr)=0;

delay_ms(100);

i=*((uchar xdata*)ADC0809Addr);

P1=i;

i=(i*5000/255);

Disp[0]=(i/1000);

Disp[1]=(i00/100);

Disp[2]=(i000/10);

Disp[3]=(i000);

}

void main(void)

{

Init1602();

while(1)

{

 ADC0809();

 Display();

}

}

关键字:LCD1602  ADC0809  数字电压表 引用地址:LCD1602+ADC0809制作的数字电压表

上一篇:单片机实现的温度显示系统
下一篇:定时器计数并将计数值实时显示在数码管

推荐阅读最新更新时间:2024-03-16 14:35

数字电压表ICL7106/7107的应用
数字电压表(数字面板表)是当前电子、电工、仪器、仪表和测量领域大量使用的一种基本测量工具有关数字电压表的书籍和应用已经非常普及了。这里展示的一份由 ICL7106 A/D 转换电路组成的数字电压表(数字面板表)电路,就是一款最通用和最基本的电路。 与 ICL7106 相似的是 ICL7107 ,前者使用 LCD 液晶显示,后者则是驱动 LED 数码管作为显示,除此之外,两者的应用基本是相通的。 电路图中,仅仅使用一只 DC9V 电池,数字电压表就可以正常使用了。按照图示的元器件数值,该表头量程范围是 200.0mV。当需要测量 200mV 的电压时,信号从 V-IN 端输入,当需要测量 200mA 的电流
[测试测量]
<font color='red'>数字电压表</font>ICL7106/7107的应用
基于MSP430单片机的LCD1602显示
首先我们先安装IAR for MSP430,这里注意不要下载错了IAR for ARM版本的就不能用。 贴上下载链接:https://pan.baidu.com/s/1P7qAhhjYFYnpz6gWZQ6_Pg 提取码:0j24 IAR的安装见:https://blog.csdn.net/qq_41860526/article/details/103411695 安装完成后我们就开始实验啦 先说仿真吧,不细说了,直接贴图,一切从简 嗯这时候开始码代码吧 也直接贴上吧,工程创建参考:https://blog.csdn.net/klaus_x/article/details/80957189 我把我的例
[单片机]
基于MSP430单片机的<font color='red'>LCD1602</font>显示
能够实现单片机计算器与LCD1602字幕滚动的源程序
当你按计算器部分时,自动切换到计算器,按字幕滚动方式时,自动切换到字幕滚动 单片机源程序如下: /* 接盘按键说明: -------------------------------------------------- | 7 | 8 | 9 | / | - - - - - - - - - - - - - | 4 | 5 | 6 | * | - - - - - - - - - - - - - | 1 | 2 | 3 | - | - - - - - - - - - - - - - | C | 0 | = | + | --
[单片机]
能够实现单片机计算器与<font color='red'>LCD1602</font>字幕滚动的源程序
基于PC的数字电压表设计
数字电压表的设计和开发,已经有多种类型和款式。传统的数字电压表各有特点,它们适合在现场做手工测量,要完成远程测量并要对测量数据做进一步分析处理,传统数字电压表是无法完成的。然而基于PC通信的数字电压表,既可以完成测量数据的传递,又可借助PC,做测量数据的处理。所以这种类型的数字电压表无论在功能和实际应用上,都具有传统数字电压表无法比拟的特点,这使得它的开发和应用具有良好的前景。 新型数字电压表的整机设计 该新型数字电压表测量电压类型是直流,测量范围是-5~+5V。整机电路包括:数据采集电路的单片机最小化设计、单片机与PC接口电路、单片机时钟电路、复位电路等。下位机采用AT89S51芯片,A/D转换采用AD678芯片。通过RS
[测试测量]
基于单片机的智能计算器(AT89C51、LCD1602、矩阵键盘)
一、简介 此电路由AT89C51最小系统、LCD1602液晶显示模块和矩阵键盘模块组成。 二、执行效果 三、部分代码 /* S16 S12 S8 S4分别是123+ S15 S11 S7 S3分别是456- S14 S10 S6 S2分别是789* S13 S9 S5 S1分别是0 CLR = / */ /*想要更多项目私wo!!!*/ /* 实现两个数的运算,每个数的位数至少可以八位 */ #include reg52.h #include lcd.h typedef unsigned char uint8; typedef unsigned int uint16; sbit led=P3^
[单片机]
基于单片机的智能计算器(AT89C51、<font color='red'>LCD1602</font>、矩阵键盘)
基于YL-236单片机实训装置的数字电压表的设计方案
一、引言 数字电压表采用数字化测量技术,可以将模拟量转换成数字量并加以显示。由于其具有测量精度高、抗干扰能力强等优点,被广泛应用于工业自动化仪表领域。下面本文就以亚龙YL-236单片机实训装置为平台,介绍数字电压表的实现方法。 二、方案总体设计 本设计选择AT89C51单片机作为核心控制器件,采用ADC0809实现A/D转换,用3位LED数码管数字来显示采集电压(范围0~5V)。设计框图如图1所示。     三、硬件部分设计 1.转换芯片ADC0809 ADC0809具有8路模拟输入端口,8路模拟开关分时选通8个模拟通道,转换后的8位数字量锁存到三态输出锁存器中,在输出允许的情况下,可以从8条数据线D7~D0上读出,并可直接与单
[电源管理]
基于YL-236单片机实训装置的<font color='red'>数字电压表</font>的设计方案
用一只多通道ADC的独立数字电压表
这个设计实例实现了针对四通道模拟电压源的电压/电流测量,但在很多其它应用中也有广泛用途。设计采用了Atmel公司的ATmega8-16AC 微控制器 和Maxim公司的MAX123012 位ADC (参考文献1和2)。虽然微控制器自带10位ADC,但采用外接多通道ADC,将多个模拟通道复用到ATmega8-16AC差分ADC的输入端,这样效率更高。 按照参考文献2中的说明,通过SPI实现了IC1和IC2之间的通信。R17和R 18是转换结束标志和片选模式引脚的上拉电阻。 SPI 通信的信号被分接在端子P 4上,用于编程器连接。按键S 2 将IC 2的复位脚连接到地;R2 2和C42为IC 2除颤。同样,R19和C39为辅助按键
[电源管理]
用一只多通道ADC的独立<font color='red'>数字电压表</font>
51单片机教程(七):LCD1602液晶显示模块
一、原理简介 液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点,在嵌入式应用系统中得到越来越广泛的应用,这讲中向大家介绍的LCD1602 液晶显示模块(其内部控制器为HD44780 芯片),它可以显示两行,每行16 个字符,因此可相当于32 个LED数码管,而且比数码管显示的信息还多。采用单+5V 电源供电,外围电路配置简单,价格便宜,具有很高的性价比。 LCD1602 外观如图1(a) 所示。1602 字符型LCD 模块的管脚分布如图1(b) 所示, 其管脚各功能如表1 所示。 图1 (a) LCD1602外观图 (b) LCD1602管脚分布图 值得提出的是,各种液晶厂家均有提供几乎都是同样规格的160
[单片机]
51单片机教程(七):<font color='red'>LCD1602</font>液晶显示模块
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved