单片机ADC0832电压检测程序(充电自动提醒)
Proteus仿真图:
ADC分压原理:
单片机源码:
/*******************************************************************************
* 标题: ADC0832检测电压 *
* 时间 2018年9月27日22:36:36 *
* *
* 实验说明:采用ADC0832进行电压外部电压测量,可在此基础上开发其他模块,例如
GSM通信,智能开锁、温度检测等。本原理图中ADC0832的参考电压为5V,外部输入电压为5V,
改变热敏电阻的值可以改变输出电压 *
********************************************************************************
* 实验心得:ADC0832进行AD转化的时候,需要研究下时序图,在进行数据检测的时候需要
进行两次检测,如果前后两次数据相等,那么再返回得到的值,减少了测量误差 *
********************************************************************************/
#include <reg51.h>
#include "lcd.h"
#include "define.h"
#include "ADC0832.h" //全局函数
void Vol_True();
void Vol_TrueDisply();
//全局变量
unsigned char i = 0;
unsigned char Vo[] = "Voltage:"; //LCD1602上显示电压
unsigned char Voltage_bit;
unsigned char V_H, V_d, V_ld, V_lld; //分别是个位、第一位小数位、第二位小数位
float Voltage;
unsigned int Change_Voltage;void main()
{LcdInit(); //初始化LCD1602while(1){Vol_True();LcdWriteCom(0x80);for(i=0; i<9; i++){LcdWriteData(Vo[i]);}Vol_TrueDisply(); }
}void Vol_True()
{Voltage_bit = ADC0832(0); //从ADC转化通道0进入,模数转化后的值为Voltage_bit;Voltage = ((float)Voltage_bit/256)*5; //Voltage为实际电压的值,5v为ADC0832的参考电压Change_Voltage = (Voltage+0.137)*1000; //+0.137是进行误差校准V_H = Change_Voltage/1000+'0'; V_d = (Change_Voltage%1000)/100+'0';V_ld = (Change_Voltage%100)/10+'0';V_lld = Change_Voltage%10+'0';
}void Vol_TrueDisply()
{LcdWriteCom(0x89);LcdWriteData(V_H);LcdWriteData('.');LcdWriteData(V_d);LcdWriteData(V_ld);LcdWriteData(V_lld);LcdWriteCom(0x8e);LcdWriteData('V');
}
单片机ADC0832电压检测程序(充电自动提醒)相关推荐
- pic单片机低电压检测_pic单片机汇编语言讲解(上)
pic 单片机为最常用单片机之一,许多程序均基于 pic 单片机进行开发.因此,熟练 pic 单片机编程尤为重要.为保证大家能准确.熟练掌握 pic 单片机的使用,本文特带来 pic 单片机的各种汇编 ...
- 基于51单片机的电压检测系统设计(#0412)
电压.电流.功率是表征电信号能量大小的三个基本参量.在电子电路中,只要测量出其中一个参量就可以根据电路的阻抗求出其它二个参量.考虑到测量的方便性.安全性.准确性等因素,几乎都用测量电压的方法来测定表征 ...
- 单片机 -AD电压检测调试遇到的坑,请避让!
简单的驱动模块,却遭遇一波三折,实现功能简单,但做到稳定却不一回事: 一.电路设计问题 1.AD电路中,设计滤波电路,采用的电容值过大(104),本身AD电路对电压十分敏感,电容有缓慢充电的特性,而A ...
- 基于51单片机锂电池电压电量检测(原理图+PCB+程序)
资料编号:198 下面是该资料仿真演示视频: 198-基于51单片机锂电池电压电量检测(原理图+PCB+程序+全套资料) 功能介绍: 采用51系列自带AD的单片机stc12c5a60s2型号单片机( ...
- 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告)
本设计: 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告) Proteus仿真版本:proteus7.8 原理图:Altium Designer 程序编译器:keil 4 编程语言:C语言 ...
- 基于51单片机甲醛浓度检测系统仿真设计(仿真+程序+原理图+报告+讲解)
文章目录 资料下载(可点击) 功能说明 仿真图 复位电路 晶振电路 程序 原理图: 设计报告: 器件清单: 基于51单片机甲醛浓度检测系统仿真设计(仿真+程序+原理图+报告+讲解) 原理图:Altiu ...
- 煤气检测与报警程序C语言,基于单片机的煤气检测报警系统毕业设计.doc
基于单片机的煤气检测报警系统毕业设计 届 别 学 号 毕业设计 基于单片机的煤气检测报警系统 姓 名 系 别. 专 业 导 师 姓 名.职 称 完 成 时 间 目录 摘要3 Abstract3 1 绪 ...
- 电量监测程序 c语言,基于单片机的电量检测系统设计方案.doc
基于单片机的电量检测系统设计方案 1绪论 自第一个微处理器问世以来,以微处理器为核心构成的计算机以各种各样的形式,无孔不入的渗入到人们的生产.生活.科研等各个领域,为人类带来了渗透到各个领域的&quo ...
- 充电枪cp信号控制板_一种电动汽车交流充电系统的CP信号电压检测方法及装置与流程...
本发明涉及电动汽车充电 技术领域: ,具体提供一种电动汽车交流充电系统的cp信号电压检测方法及装置. 背景技术: :电动汽车充电技术分为直流充电和交流充电.交流充电桩在体积.成本和安装条件上相比直流充 ...
最新文章
- js中Object类型和Array类型的变量被赋值(复制)给其他变量后,修改被赋值(复制)的新变量的值,会影响原始变量的值,这是为什么呢?
- LVM的一些问题汇总 tune2fs命令
- 18岁双料竞赛金牌得主邓明扬:我只是数学初学者,求在MIT“活”下去
- webpack使用教程
- 通过rpm包安装、配置及卸载mysql的详细过程.
- spring 属性占位符_Spring属性占位符配置器–一些不太明显的选项
- 2个字段并在一次插入一个字段里面_elasticsearch外用与内观(二)-当插入文档时,elasticsearch都在做什么...
- echarts我常用的参数总结
- QWidget::size()和QResizeEvent::size()不一定相同!
- 最大值和最小值的差(信息学奥赛一本通-T1112)
- 配电脑时什么配置可以缩水?
- MySQL数据库优化的几种方式
- nohup命令的用法
- java小写金额转大写工具类
- Centos7上安装docker
- input输入框自定义历史记录
- php 批量删除注释,PHP-php做一个程序高效去除注释的方法
- 我的世界服务器修改武器伤害,《我的世界》指令99999999攻击力武器 一刀秒指令代码...
- E. The Humanoid Codeforces Round #834 (Div. 3)(暴力dfs?)
- QQ登陆第三方Demo(QQ互联)