Proteus仿真软件在单片机教学中的应用

摘要:阐述单片机传统教学模式面临的问题,Proteus仿真软件与单片机教学实践,包括硬件设计、软件 设计、仿真技术的应用,从而教学内容更加形象化。

关键词:单片机,仿真软件,形象化教学。

1  Proteus仿真软件与单片机教学

Proteus软件属于一种EDA工具软件,由英国 Labcenter.electronics公司研发。它分为两部 分,一是智能原理图输入系统ISIS与虚拟系统模 型VSM,二是高级布线及编辑软件ARES,也称为 PCB。它属于当前最好的单片机仿真软件,在无硬 件的时候该软件能够把单片机实例功能进行形象化 展示,而且也能展示单片机实例的运行过程,便于 学生理解与掌握。具体来讲,该仿真软件在单片机 教学中具有下列优势:

(1)将单片机仿真与SPICE 电路仿真有机相结合。该软件不仅能仿真模拟电 路、数字电路,而且也能仿真数字、模拟混合电 路,但它最典型的特点就是可以仿真单片机。它的 单片机仿真库中包括PIC系列、51系列、AVR系列、 摩托罗拉68MH11系列等常用的MCU,这方面主要与 Maplab、Keil比较相似,但区别在于Proteus可以 对单片机的外围电路进行仿真。在单片机设计中用 到的并行接口、可编程外围定时器、RAM、ROM、总 线驱动器、多功能LCD模块、实时时钟芯片、矩阵 式键盘、D/A与A/D转换器等外围器件都能够直接 进行仿真。教师在单片机电路教学中可充分利用 该软件中丰富的仿真器件以及良好的仿真功能进行教学。

(2)具有丰富的仿真仪器工具。该仿真软 件包括逻辑分析仪、示波器、电压表、计数器、信 号发生器、虚拟终端、电流表等常用的仿真仪器仪 表。在一个电路中能够随便使用相同的仪表仪器。 另外,该软件还具备图形显示功能,能以图形的方 式实时呈现出线路上有变动的信号,类似于示波 器,但其功能更丰富。教师在上课时可借助图形显 示功能以及相关虚拟仪器仪表开展程序演示教学以 及电路的调试操作,从而便于学生掌握程序与电路 设计调试方法。

(3)具有软硬件结合的系统仿真 功能。该软件可进行软硬件结合的系统仿真,而且 具有可视化、交互性的特点。它不仅能模拟硬件系 统,还可将编译好的程序代码放入仿真元件内,借 助仿真系统就能观察到系统的执行效果。另外,它 也允许使用第三方的软件编译与调试环境,能够与 Maplab、Keil等软件联合应用,以期获得理想的 仿真效果。教师在上课时可利用该软件进行软件模 拟,将其作为单片机开发平台,用于代替编程器、 仿真器、成品前的硬件测试等流程,从而减少单片 机调试时间,提升经济效益。

(4)为学生提供了 实训验证机会。为了提高学生的实训水平,需要为 其提供一些制作硬件实物以及验证的机会。待系统 仿真成功调试后,通过Proteus ARES软件就能得到 想要PCB图,为后续的制作提供便利。

2  Proteus仿真软件在单片机课程教学中实践

本次教学案例目的是完成单片机与PC间的通 信。首先,PC机会将数据传输给单片机,然后单片 机再将获得的信息反馈至PC机,而且用数码管显示 接收到的信息。本次仿真实验将数据由PC模拟终端 输入,若返回的数据与输入的数据相同,则表示通 信准确[ 5] 。
(1)硬件设计。RS232接口属于PC中的一个串 口,UART属于51单片机中的一个串口。TTL电平与 RS232的逻辑电平之间是互不兼容的,因此需通过 MAX232芯片完成电平转接。通过P1口把两位BCD码 数码管连起来,其中,4个IO口由一位BCD码数码管 使用,将BCD码输入BCD数码管,同时,数码管会显 示对应的结果。
(2)软件设计。串口通过中断方式接收 数据信息,在主函数中将串口进行初始化处 理。T M O D=0 X 2 0;//把T 1设置为工作方式2; TH1=TL1=Oxfd;//fosc=11.0592M时,波特率为 9600;SCON=0X50;//设置串行口工作方式1,允许 接收;接收中断服务函数,把接收到的结果直接传 输至P1口。
R e v C h a r=S B U F;//把串口数据赋给变量 RevChar;P1=RevChar;//把接收获得的结果直接 传输至P1口;SBUF=RevChar;//把接收到的结果由 串口发出,传输至PC端。
由图1可知仿真结果,从虚拟终端可观察到两 个0,其中,前一个0代表用户输入0,后一个0代表 单片机反馈至PC的结果,二者若相同则说明串口传 输数据与接收数据是一致的。数码管显示“30”, “30”属于0的ASCII码,提示接收准确。

3  结语

在单片机教学中引入Proteus仿真软件具有诸 多优势,可以让教学内容更加形象化,也能让学生获得更多的实操机会,逐步提高其理论联系实际的能力。

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

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

相关文章

linux -- 并发 -- 并发来源与简单的解决并发的手段

互斥与同步 当多个执行路径并发执行时,确保对共享资源的访问安全是驱动程序员不得不面对的问题 互斥:对资源的排他性访问 同步:对进程执行的先后顺序做出妥善的安排 一些概念: 临界区:对共享的资源进行访问的代码片段…

金和OA jc6 UploadFileBlock 任意文件上传漏洞复现

0x01 产品简介 金和OA协同办公管理系统软件(简称金和OA),本着简单、适用、高效的原则,贴合企事业单位的实际需求,实行通用化、标准化、智能化、人性化的产品设计,充分体现企事业单位规范管理、提高办公效率的核心思想,为用户提供一整套标准的办公自动化解决方案,以帮助…

JavaWeb01-JDBC、Druid连接池

目录 一、JDBC 1.概述 2.本质 3.好处 4.使用步骤 5.JDBC_API (1)DriverManager(驱动管理类) (2)Connection(数据库连接对象) (3)Statement &#xf…

博客摘录「 MAC 安装electron 报权限错误 npm权限错误」

1.mac下安装electron 在运行 npm install electron 时,有些用户会偶尔遇到安装问题。在大多数情况下,这些错误都是由网络问题导致,而不是因为 electron npm 包的问题。 如 ELIFECYCLE、EAI_AGAIN、ECONNRESET 和 ETIMEDOUT 等错误都是此类网络…

基于Java SSM框架实现汉服文化平台系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现汉服文化平台系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个汉服文化平台网站 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论…

Linux中make和makefile

make与makefile 简单介绍常见用法符号替代自动寻找设置变量取消打印提示 简单介绍 make是Linux中一个命令,与之匹配的是makefile,makefile是一个文件。make会根据makefile中的内容完成对应的工作 创建一个名为makefile的文件 vim打开makefile 第一行是依…

Redis常用数据类型--List

List 常用命令LPUSH/RPUSHLPUSHX/RPUSHXLRANGELPOP/RPOPLINDEXLINSERTLLENBLPOP/BRPOP 内部编码典型应用场景 常用命令 LPUSH/RPUSH 将⼀个或者多个元素从左侧(头插) / 右侧(尾插)放入到 list 中 LPUSH key element [element ...]/RPUSH key element [element ...]时间复杂度…

lwip通过结构体解析数据,通讯原始数据与结构体

涉及数据格式 下面一段代码在ip4.h PACK_STRUCT_BEGIN /* The IPv4 header */ struct ip_hdr {/* version / header length */PACK_STRUCT_FLD_8(u8_t _v_hl);/* type of service */PACK_STRUCT_FLD_8(u8_t _tos);/* total length */PACK_STRUCT_FIELD(u16_t _len);/* identi…

el-table @row-click影响复制以及el-table-column的点击事件

问题一影响复制 在row-click的函数里面加一个内容判断 if (window.getSelection().toString() ) 只有当选中的内容为空的时候才执行row-click 问题二影响el-table-column的点击事件 el-table-column的点击事件上的点击事件加上.stop click.stop修饰符可以阻止事件继续向上传…

调试以及发布npm组件

开发原因: 由于公司自己的封装到npm的组件有点问题,负责人由在忙其他,就由我去负责改改,中途出了不少问题,记录一下。 一、下载源码 第一步肯定是去git上把组件的源码下载下来,这一步没什么好说&#xf…

好的问卷设计标准:确保数据质量与准确性的关键要素

问卷的主要由三个部分组成:问卷说明、问卷主题、问卷结束。而这三个部分又包含了很多因素,比如问卷主题、问卷标题、问卷题目、问卷调查对象等。制作问卷不仅仅是简单的问题罗列,然后进行发放。不同质量的调查问卷会反馈出不一样的效果&#…

Vue.js设计与实现(霍春阳)

Vue.js设计与实现 (霍春阳) 电子版获取链接:Vue.js设计与实现(霍春阳) 编辑推荐 适读人群 :1.对Vue.js 2/3具有上手经验,且希望进一步理解Vue.js框架设计原理的开发人员; 2.没有使用过Vue.js,但对Vue.js框架设计感兴趣…

2024年美赛E题:财产保险的可持续性 Sustainability of Property Insurance 思路模型代码解析

2024年美赛E题:财产保险的可持续性 Sustainability of Property Insurance 思路模型代码解析 【点击最下方群名片,加入群聊,获取更多思路与代码哦~】 问题翻译 极端天气事件对房产所有者和保险公司已经成为一场危机。近年来,世界…

RabbitMQ-中死信交换机

在RabbitMQ中,死信交换机(DLX,Dead Letter Exchange)是一种用于处理无法正常消费的消息的机制。当消息在一个队列中变成死信(dead letter)之后,它可以被重新发布到另一个交换机,这个…

Blender教程(基础)-面的切割-10

快捷键K切割,菜单选项切割. 一、随意切割 物体在编辑模式下,按键盘K建切割物体。 二、中点切割 先按K键,再按shift键,会自动吸附到每条边的中点进行切割。 三、取消吸附 切割时会自动吸附到顶点或边 关闭快速吸附 按K键再按…

26条prompt规则应用于大模型

1、引入动机 llm大模型在回答一些问题上表现出了惊人的能力,例如数学逻辑推理,代码生成,问题答复等。提词工程是和大预言模型交流的一门艺术。 大模型的返回结合和用户的指令和输入直接相关prompts是用户和大模型沟通的一种编码方式 一般地…

在低代码平台上实现精益软件开发:提高效率与灵活性的关键实践

什么是精益软件开发? 精益软件开发是一种敏捷的软件开发框架。它基于最小化浪费和最大化价值的原则。该框架基于最小可行产品策略运行,该策略强调交付具有基本基本功能的产品,然后根据收到的反馈进行迭代以即兴发挥并提供卓越。 精益软件开发…

2阶段提交_3阶段提交(phase-commit)

1. 2PC(两阶段提交) 如上所示是2阶段提交的一个过程,可为什么要进行两阶段提交呢?这里主要来说是将操作事务能力和提交、回滚事务能力分开来做成2阶段,如果不分开会造成什么后果呢: 如果单纯 A 向 B 发送一个请求就以…

由于找不到d3dcompiler43.dll无法继续执行程序的解决方法

在日常使用电脑的过程中,我们常常会遭遇一些突发的技术问题,其中之一便是可能会遇到系统提示找不到d3dcompiler43.dll文件的情况。这一特定的动态链接库文件(dll)对于许多应用程序的正常运行至关重要,尤其是在涉及到图…

什么是Golang中的包循环问题?如何规避?

Go语言作为一门注重简洁和效率的编程语言,在设计上有着严格的规范和原则。其中一个突出的设计决策是禁止包循环。接下来将深入解释为何Go语言中不允许包循环,如何避免它,以及如何进行好的规划,通过实际开发案例和代码演示&#xf…