213、仿真-基于51单片机智能电表电能表用电量电费报警Proteus仿真设计(程序+Proteus仿真+原理图+配套资料等)

毕设帮助、开题指导、技术解答(有偿)见文未

目录

一、硬件设计

二、设计功能

三、Proteus仿真图

四、原理图

五、程序源码

资料包括:

需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。


方案选择
单片机的选择

方案一:STM32系列单片机控制,该型号单片机为LQFP44封装,内部资源足够用于本次设计。STM32F103系列芯片最高工作频率可达72MHZ,在存储器的01等等待周期仿真时可达到1.25Mip/MHZ(Dhrystone2.1)。内部128k字节的闪存程序存储器,也就是说代码量可以写到128k字节,本次设计足够,内部高达20K字节的SRAM。
 

方案二:51单片机STC89C52系列的指令系统和AT89C52系列的完全兼容,但实际操作起来却存在很多问题:

(1)AT89C52不带ISP下载,要用下载器才行,STC89C52可以用你的USB转串口下载,下载软件可以到STC厂家网上去下。

(2)STC单片机执行指令的速度很快,大约是AT的3-30倍,尽管快是好事,但这样一来,你在AT上好使的程序在STC上不一定好用,最典型的例子就是那些对时序有严格要求的模块,用STC时注意得加长延时,大约是AT的10—30倍就差不多,这一点自己调试就知道了。

(3)STC单片机对工作环境的要求比较低,电压低于5伏时仍然正常工作,甚至3伏到4伏之间都还可以工作,然而这样的环境下AT肯定不行了,所以当一个系统用STC单片机好用,但用AT的单片机不工作时,直接查最小系统,看单片机的供电是否正常。

比较这两种方案,由于在学校期间学过数字电路、单片机原理、C语言程序设计,综合考虑单片机的各部分资源和作为学生能够获得的资源,还有STM32价钱比较贵方面。经过对比此次设计要求,我选择用51单片机中的STC系列芯片完成。而且学校也提供了相应的硬件操作平台,实际操作起来比较方便,故STC为更合理的选择。本系统选择STC89C52单片机作为主控芯片。足够本设计运行,且价格便宜,下载程序方便。

显示器选择方案

方案一:采用12864液晶显示屏。液晶显示模块是128×64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微处理机:8-位并行及串行两种连接方式。具有多种功能:光标显示、画面移位、睡眠模式等。

方案二:采用LCD1602液晶显示屏。LCD1602是一种工业字符型液晶,能够同时显示16x02 即32个字符。(16列2行)。1602只能显示字母、数字和符号能显示16*2个字符,但寄存器不止32个,有一些显示效果,如字符一个个显示、字符从左到右或从右到左显示等等,显示效果简单。

总结:在编程使用方面,两者难度差不多,原理差不多,都是写指令、写地址、写数据等等。当然12864液晶屏显示更全面、字符更多。相比于1602液晶屏、12864能更形象具体的实现显示功能。不过1602液晶屏也能实现设计的要求。网上买比较廉价,最低的六块钱左右。而12864液晶显示屏最便宜的也要四十块钱。从造价方面考虑,当然是价格低廉的优先。而LCD1602就是最好的选择。
 

一、硬件设计

硬件电路组成:本系统采用51单片机+最小系统+按键设置+调节电能表快慢采用滑动变阻器采集+电机+LCD1602液晶显示屏+蜂鸣器报警器组成。

二、设计功能

1、本设计基于STC89C51/52(与AT89S51/52、AT89C51/52通用)。

2、通过加减按键对用电量的阈值进行设置。

3、LCD1602液晶屏显示当前用电量、用电量的阈值和电费的值。

4、通过滑动变阻器调节电能表运行的快慢。

5、当用电量超过设置用电量的阈值,则蜂鸣器会报警。

三、Proteus仿真图


 


单片机模块设计

单片微型计算机是随着微型计算机的发展而产生和发展的。自从1975 年美国德克萨斯仪器公司的第一台单片微型计算机( 简称单片机)TMS-1000 问世以来,迄今为止,单片机技术已成为计算机技术的一个独特分支,单片机的应用领域也越来越广泛,特别是在工业控制中经常遇到对某些物理量进行定时采样与控制的问题,在仪器仪表智能化中也扮演着极其重要的角色。

如果将8位单片机的推出作为起点,那么单片机的发展历史大致可以分为以下几个阶段:

第一阶段(1976—1978):单片机的探索阶段。以Intel公司的MCS-48为代表。MCS-48的推出是在工控领域的探索,参与这一探索的公司还有Motorola、Zilog等。都取得了满意的效果。这就是SCM的诞生年代,“单片机”一词即由此而来。

第二阶段(1978—1982):单片机的完善阶段。Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。

(1)完善的外部总线。MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。

(2)CPU外围功能单元的集中管理模式。

(3)体现工控特性的地址空间及位操作方式。

(4)指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令。

第三阶段(1982—1990):8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段。Intel公司推出的MCS-96系列单片机,将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中,体现了单片机的微控制器特征。

第四阶段(1990—):微控制器的全面发展阶段。随着单片机在各个领域全面、深入地发展和应用,出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机。

单片机是在集成电路芯片上集成了各种元件的微型计算机,这些元件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器、中断系统、时钟部件的集成和I/O接口电路。由于单片机具有体积小、价格低、可靠性高、开发应用方便等特点,因此在现代电子技术和工业领域应用较为广泛,在智能仪表中单片机是应用最多、最活跃的领域之一。在控制领域中,现如今人们更注意计算机的底成本、小体积、运行的可靠性和控制的灵活性。在各类仪器、仪表中引入单片机,使仪器仪表智能化,提高测试的自动化程度和精度,提高计算机的运算速度,简化仪器仪表的硬件结构,提高其性能价格比。


 

四、原理图

在本设计做的过程中,硬件和软件方面都遇到了许多问题,但是相比于软件,在硬件方面还是比较快解决的方面,因为硬件是比较容易检查出来错误的,软件比较晦涩难懂,还是有一定难度。
在硬件调试问题上,首先焊接好了元器件实物板后,先用万用表测量这个工业板子的电源方面,电源方面是最重要的问题,应该是特别需要检查的地方,以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题,或者有没有虚焊或者没有焊接到的地方,然后核对一下元器件的安装是否有问题,安装上去是否符合规定,由于已经是大学四年都是做过了很多实训过来了,对于这些还是游刃有余的,但是在上机调试后还是发现了很多的问题。

 

 

五、程序源码

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

 

资料包括:


 

 


需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/71261.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CentOS系统环境搭建(十四)——CentOS7.9安装elasticsearch-head

centos系统环境搭建专栏🔗点击跳转 关于node的安装请看上一篇CentOS系统环境搭建(十三)——CentOS7安装nvm,🔗点击跳转。 CentOS7.9安装elasticsearch-head 文章目录 CentOS7.9安装elasticsearch-head1.下载2.解压3.修…

【数学建模】逻辑回归算法(Logistic Resgression)

逻辑回归算法 简介逻辑回归与条件概率绘制sigmoid函数 简介 逻辑回归算法是一种简单但功能强大的二元线性分类算法。需要注意的是,尽管"逻辑回归"名字带有“回归”二字,但逻辑回归是一个分类算法,而不是回归算法。 我认为&#xff…

zookeeper案例

目录 案例一:服务器动态上下线 服务端: (1)先获取zookeeper连接 (2)注册服务器到zookeeper集群: (3)业务逻辑(睡眠): 服务端代码…

ARM DIY 硬件调试

前言 之前打样的几块 ARM 板,一直放着没去焊接。今天再次看到,决定把它焊起来。 加热台焊接 为了提高焊接效率,先使用加热台焊接。不过板子为双面贴片,使用加热台只能焊接一面,那就优先焊主芯片那面,并…

JVM——JVM 垃圾回收

文章目录 写在前面本节常见面试题本文导火索 1 揭开 JVM 内存分配与回收的神秘面纱1.1 对象优先在 eden 区分配1.2 大对象直接进入老年代1.3 长期存活的对象将进入老年代1.4 动态对象年龄判定1.5 主要进行 gc 的区域 2 对象已经死亡?2.1 引用计数法2.2 可达性分析算…

自定义表格组件:实现表格中有固定列的功能逻辑

目录 1,效果图2,实现思路3,实现方式 1,效果图 可以拖动纵向滑块,最左边一列固定住。 以同样的道理,可以在右面固定一列 2,实现思路 作为一个table组件,要接受父组件中的对table的…

详细记录Pycharm配置已安装好的Conda虚拟环境

当安装好conda环境之后,想要在Pycharm中使用,那么就要在Pycharm中导入,我这里使用的pycharm-professional-2023.2这个版本,下面是详细步骤: 1.打开File->Settings: 2.找到Project——>Python Inter…

cesium学习记录08-鼠标绘制多边形

上一篇学习了实体的一些基础知识,这一篇来学习鼠标绘制实体多边形的实现 一、方法一: 1,结果显示 贴地: 不贴地: 2,方法全部代码: 主方法: /*** 绘制多边形* param {Object} op…

element+vue 表格行拖拽功能

解决方案 使用 sortable.js 步骤一&#xff1a; 安装 npm install vuedraggable步骤二&#xff1a;引入 import Sortable from sortablejs;步骤三&#xff1a; el-table 添加row-key属性&#xff0c;外层包一层 sortableDiv <div class"sortableDiv"> 拖…

【分布式共识算法】Basic Paxos 算法

basic paxos算法&#xff1a;描述的是多个节点就某个值达成共识。 muti-paxos 算法&#xff1a;描述的是执行多个basic paxos实例&#xff0c;就一系列值达成共识。 共识其实&#xff0c;比如当多个客户端请求服务器&#xff0c;修改同一个值X 多个阶段达成共识。 原理 角色…

【Realtek sdk-3.4.14b】RTL8197F+RTL8812F欧洲屏蔽5G天气雷达信道DFS信道120、124、128方法

需求描述 对于欧洲国家来说,默认支持DFS信道,但是有三个信道比较特殊,是天气雷达信道,如下图所示120、124、128,天气雷达信道有个特点就是在信号可以发射之前需要检测静默15min,如果信道自动选择到了天气雷达信道,就会有15min的时间无法连接到WiFi热点,严重影响用户体验…

星际争霸之小霸王之小蜜蜂(二)--类的使用

目录 前言 一、将设置内容写在一个类里 二、设置小蜜蜂的造型 三、设置猫蜜蜂的参数 四、绘制猫蜜蜂到窗口 总结 前言 昨天我们设置好了窗口&#xff0c;下面我们需要向窗口中添加元素了。 一、将设置内容写在一个类里 我个人理解书上的意思是要创建一个类&#xff0c;将所有需…