摘要

随着微电子技术的迅速发展和超大规模集成电路的出现,特别是单片机的出现,正引起测量、控制仪表领域新的技术革命。采用单片机作为测量仪器的主控制器,这种以单片机为主体的新型智能仪表将计算机与测量控制技术结合在一起,在测量工程自动化,测量结果所举处理以及功能的多样化方面取得了巨大的进步。

基于单片机的智能综合仪表是基于智能化、数字化、网络化、新一代智能仪表的设计理念,采用智能调理、灵巧总线、工业网络、液晶显示、电子储存技术、综合指示仪表、调节仪表、计算仪表与记录仪表功能。具有高测量控制精度、工可靠性稳定性的特点。

通过数字电流表的设计方案,掌握了C语言的编程方法, 并熟练的运用STC89C52单片机以及ADC0808将模拟电流量转变为数字量然后在液晶显示屏上直接显示数字的电流值。

关键字:ADC0808,电流表,LCD 1602显示

一、硬件方案

硬件构成:电源5V供电、单片机最小系统、大功率电阻,电线插座,按键电路,LCD 1602显示屏电路,电源开关,ADC0832。

二、设计功能

1、本设计基于STC89C51/52(与AT89S51/52、AT89C51/52通用)单片机。
2、LCD 1602实时显示被测的电流大小。
3、ADC0832芯片模拟信号转化成数字信号,送到单片机处理,结果送到LCD 1602显示。

三、成品实物图

四、原理图  

五、Proteus仿真

六、程序源码

部分代码:

/*延时函数*/
void delay(uint z)
{uint x;uchar y;for(x=z;x>0;x--)for(y=110;y>0;y--);
}   /****************************************************************************
函数功能:将0-255级换算成0.00-5.00的电压数值
入口参数:i
出口参数:
****************************************************************************/
void convdata()      //i=dat*5/255=51,是255份; 256份误差大
{     sum = sum + ADC0832(1,0);cs++;if(cs>=100){dat = sum/100;value = dat * 500.0/255;sum=0;cs=0;dat=0;}
//  uint disdat;       //不可unsigned char disdat
//  disdat=i*500.0/255;         //500不可以。用500.0        //  if(disdat<1000)
//  flag=1;
//else
//  flag=0;
//  dis[0] = 0;
//  dis[1] = disdat/100;     //个位
//  dis[2] = disdat/10%10;   //小数点后第一位
//  dis[3] = disdat%10;     //小数点后第二位}
/****************************************************************************
函数功能:显示子程序
入口参数:
出口参数:
****************************************************************************/
void display(void)
{   lcd1602_write(0,0x80);lcd1602_writebyte("my designer     ");lcd1602_write(0,0xc0);lcd1602_writebyte("          ");
//  lcd1602_write(1,0x30 + value/1000);
//  lcd1602_write(1,0x30 + value%1000/100);lcd1602_write(1,'.');lcd1602_write(1,0x30 + value%100/10);lcd1602_write(1,0x30 + value%10);lcd1602_write(1,'0'); lcd1602_write(1,'A');
}
/****************************************************************************
函数功能:主程序
入口参数:
出口参数:
****************************************************************************/
void main(void)
{lcd_init();delay(3);lcd1602_write(0,0x80);lcd1602_writebyte(" Welcome to use ");

资料包括:

需要完整的资料可在我的资源里下载,也可以加入我的纷传圈子,里面有资源压缩包的百度网盘下载地址及提取码。

纷传点击用微信打开即可,过程有点繁琐请见谅。

14、基于51单片机1602电流表检测设计(程序+原理图+Proteus仿真+参考论文+开题报告+任务书+元器件清单等)相关推荐

  1. 63、基于51单片机数字频率计NE555数码管显示系统设计(程序+原理图+Proteus仿真+参考论文+开题报告+任务书+元器件清单等)

    摘  要 近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此越来越广泛地应用各个领域. ...

  2. 51、基于51单片机洗衣机控制系统(带水位)系统设计(程序+原理图+PCB源文件+Proteus仿真+参考论文+开题报告+任务书+流程图+元器件清单等)

    摘 要 随着数字技术的快速发展,数字技术被广泛应用于智能控制的领域中.单片机以体积小.功能全.价格低廉.开发方便的优势得到了许多电子系统设计者的青睐.它适合于实时控制,可构成工业控制器.智能仪表.智能 ...

  3. 基于51单片机无线恒温箱恒温控制系统(原理图+源代码+PCB+参考论文)

    本设计: 基于51单片机无线恒温箱恒温控制系统(全套资料+原理图+源代码+PCB+参考论文) 原理图:Altium Designer 程序编译器:keil 4 编程语言:C语言 编号C0020 下载链 ...

  4. 13、基于51单片机防火防盗烟雾温度人体红外感应检测设计(程序+原理图+PCB图+Proteus仿真+参考论文+开题报告+元器件清单等)

    摘要     随着社会和经济的发展,防火工作越来越重要,但是目前国内的许多研发都侧重于大型场所的火灾报警.因此,我们就有必要研制一种结构简单.经济实用的家庭烟雾温度人体感应检测报警器以适应市场的需求. ...

  5. 111、基于51单片机的电磁感应无线充电系统 手机无线充电器设计(程序+原理图+Proteus仿真+程序流程图+论文参考资料等)

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

  6. 基于51单片机红外遥控人体感应自动车库门控制设计(程序+Proteus仿真+原理图+PCB图+参考论文+开题报告+任务书等)

    一.硬件方案 单片机的红外遥控人体感应自动门控制系统设计的实现主要有电源5V供电.单片机最小系统.红外感应遥控模块,红外一体接收头,按键电路,步进电机驱动电路,指示灯电路组成.. 二.设计功能 1.如 ...

  7. 54、基于51单片机饮水机温度水位控制无线蓝牙APP控制报警系统设计(程序+原理图+PCB源文件+Proteus仿真+参考论文+开题报告+元器件清单等)

    方案的选择 方案一:采用51单片机作为控制核心,配合无线蓝牙模块.水温加热模块继电器开关.基于Dallas单线数字式的DS18B20温度传感器模块.蜂鸣器报警模块.按键模块.LCD1602液晶显示器模 ...

  8. matlab ds18b20 单片机,基于51单片机ds18b20温度检测————设计报告.doc

    基于51单片机ds18b20温度检测----设计报告 课程名称: 微机原理课程设计 题 目: 温度检测课程设计 摘要 随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为 ...

  9. 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告)

    本设计: 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告) Proteus仿真版本:proteus7.8 原理图:Altium Designer 程序编译器:keil 4 编程语言:C语言 ...

最新文章

  1. 详解医学顶刊《柳叶刀》最新发表新型冠状病毒研究论文
  2. 可作为工质状态参数的是_制冷工质的热力状态参数都有哪些?
  3. oracle 后台进程(background process)详解
  4. 理解tcp关闭连接中的time_wait状态
  5. 使用DBCA工具创建自己的数据库
  6. Java Poi 向excel中插入图片
  7. 简而言之SPIFFE
  8. win7如何修改dns服务器地址,Win7系统DNS怎么设置?Win7系统DNS设置方法
  9. java基础----Java中枚举的使用(一)
  10. flutter开发仿抖音首页面上下滑动切换播放视频效果
  11. 2、SQL UNION 和 UNION ALL 操作符
  12. Spring中利用java注解声明切面
  13. mvc:view-controller
  14. Linux 中的包管理器是什么?它是如何工作的?
  15. WebService高级,可靠消息
  16. 怎么使用计算机扩展,如何导入扩展到慧编程PC并进行使用
  17. 干货:大米云LAMP使用说明
  18. IP库GeoLite2-City.mmdb的使用
  19. 三维重建笔记——Linux环境下openMVG的安装
  20. 房东违反房屋租赁合同会怎么进行赔偿

热门文章

  1. DLAP221 USB口电源控制
  2. sprintf用法解析
  3. 【正厚软件】0基础学IT,来Linux的发展历史吧
  4. 转转二手为用户提供高效率交易平台
  5. IOS-resign keyboard 新法儿
  6. Weblogic远程代码执行漏洞(CVE-2023-21839)复现/保姆级讲解
  7. C++ string 替换指定字符
  8. 【ArcGIS微课1000例】0068:ArcGIS加载world imagery高清卫星影像教程
  9. 《高敏感是种天赋》:HSP自救指南
  10. 林沢の随笔(鸡汤摸鱼更新中)