当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]以单片机课程教学为背景,设计了一套基于Proteus的虚拟试验箱,该试验箱不仅能够完成单片机教学基础实验内容,并可以解决传统真实试验箱诸多问题,而且学生可以在系网站上下载该试验箱进行实验操作,从而极大地增强了学生做实验的便利性,也给学生提供了一个良好的开发性实验平台。

单片机是一门实践性很强的学科,目前单片机的课堂及实验教学中存在诸多问题。一方面,实验内容和实验形式要根据院校不同年级学生能力不断更新,不能以不变应万变;另一方面实验所需的软硬件设备和经费的保障压力越来越大,这在一定程度上影响了教学质量的提高和学生创新能力的培养。

在此之前很多相关论文中都提到使用Proteus软件建立单片机虚拟实验室[4-5],让学生通过Proteus软件自行去设计实验电路图并完成实验。这种方法自然能大大提高学生的实践动手能力,但对于民办本专科级别的院校学生来说,由于他们的基础和理解力相对薄弱等因素,刚开始接触单片机很难自行进行电路设计并完成实验。

因此,结合我院电子系现有的实际教学情况,本文设计开发了一套基于Proteus的虚拟试验箱,该试验箱不仅能够完成单片机教学基础实验内容,并可以解决传统真实试验箱诸多弊端,而且学生可以在网站下载该试验箱进行实验操作,从而极大地增强了学生做实验的便利性,也给学生提供了一个良好的开发性实验平台。

1 Proteus软件简介

Proteus 是英国Lab center 公司开发的电路分析与实物仿真软件,是一款集单片机和SPICE分析于一身的仿真软件,功能强大。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路实验平台。

利用计算机、KEIL C51仿真器和Proteus软件可创建一个可视化虚拟单片机类实验室, 通过操作这些虚拟的实验仪器或设备, 完成各种验证性、设计性和综合性实验。利用仿真技术达到与真实效果相一致的教学要求和目标,从而在不增加硬件投入的基础上, 提高学生的创新能力。

Proteus与其他单片机仿真软件不同的是, 它不仅能仿真单片机CPU的工作情况, 也能仿真单片机外围电路或没有单片机参与的其他电路的工作情况。因此在仿真和程序调试时, 关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验, 从某种意义上讲, 解决了实验与工程应用脱节的问题。

2 虚拟实验箱特点

本虚拟试验箱除了具备相关论文中提到的使用Proteus软件建立单片机虚拟实验室的优点之外,还具备以下典型优势:

(1) 给教学设计过程带来了很大的灵活性,有利于教学模式的革新。教师可以根据形势的发展,无须资金投入就可以在虚拟试验箱中增减反映新技术新成果的新实验内容。

(2) 试验箱挂网,打破空间和时间的限制。学生可以零成本随时随地使用该试验箱,只要学生能够上网,学生便可以在网上下载该试验箱进行实验练习与设计。

(3) 可以构建开发性的教学环境 ,有助于学生进行开发性实验。学生可以在没有实际硬件电路的情况下完成项目先期大量的验证工作及大部分程序的编制及调试工作,帮助学生提高工程应用能力。

但是,虚拟试验箱可能使学生淡化对基本技能训练的重视程度,忽视规范掌握仪器操作,减少学生应对突发事件的机会、缺乏教学的艺术性等。因而,为了尽量避免上述弊端的发生,在实际的教学过程中要加强虚实的相互结合,采用虚实互补的原则安排教学,并加强教师的实验指导作用。

3 基于Proteus的单片机虚拟试验箱的设计

单片机虚拟试验箱的设计应根据学生实际能力的水平制定相关实验内容。实验内容要在满足单片机基础教学基础上简单易懂、从易到难、循序渐进、环环相扣,使学生能通过虚拟单片机试验箱很好地掌握单片机原理,并学会单片机外围系统扩展及接口电路的设计和基础应用。

根据本院某年级情况,现使用Proteus设计如图1所示的51单片机虚拟试验箱,此试验箱可完成如下基础及综合实验内容。


3.1 基础实验

(1) 点亮一个发光管;
(2) 流水灯设计、蜂鸣器发声、继电器控制;
(3) 数码管的动、静态显示;
(4) 独立键盘、矩阵键盘的检测原理及实现;
(5) 1602液晶显示;
(6) DA、AD的工作原理及实现;
(7) 串口通讯原理及RS232接口的使用;
(8) I2C总线扩展存储器AT24C1024芯片。

3.2 综合实验

(1) 利用51单片机的定时器设计一个时钟系统;
(2) I2C总线扩展DS1307时钟芯片设计一个高精度时钟系统;
(3) I2C总线扩展DS1621温度芯片设计一个实时温度报警的时钟系统。

4 单片机虚拟试验箱实现教学使用实例

下面就以六位数码管动态显示实验为例说明基于Proteus的单片机虚拟试验箱的使用。

实验内容:六位共阴数码管动态扫描显示数123456;

实验目的:理解数码管动态显数原理并学会单片机控制数码管动态显数。

实验电路图说明:使用了两个74HC573锁存器,取名为段锁存器和位锁存器,分别控制数码管(共阴极)的段选端和位选端,两个锁存器都使用P0口送数;并分别使用P2.0和P2.1来控制两锁存器的LE锁存控制端,LE=1时选通,LE=0时锁存。

实验操作步骤:(1)根据实验电路图使用Keil C51 uVision2编写代码;(2)将编写好的代码编译生成HEX格式文件加载到试验箱中的51单片机中;(3)点击试验箱左下角运行按键即可完成实验。

本实验部分C51语言代码如下:

uchar code d_table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d}; //共阴0~6段码
uchar code w_table []={
0xff/*空选*/,0xfe/*选中第一位*/,0xfd,0xfb,0xf7,0xef,
0xdf};//1~6位选码
sbit duan=P2^0;//段锁存器选通/锁存端
sbit wei=P2^1;//位锁存器选通/锁存端
void Display_123456()//动态显示123456函数
{
for(num=1;num<7;num++)
{
P0=w_table[num];
//送位码(选中相应数码管)
wei=1; //选通
wei=0; //锁存
P0=d_table[num];
//送段码(即字型码)
duan=1;
duan=0;
delay(5); //延迟5 ms
}
}
实验效果:如图2所示,六位数码管同时显示123456。

利用Proteus软件设计的单片机虚拟试验箱具有很好的实用性。单片机虚拟试验箱,不仅克服了传统试验箱购买价格昂贵,实验内容固定,保养维护困难的缺点,而且可以帮助学生随时随地更快、更好地掌握课堂讲述的内容,加深对单片机概念、原理的理解,弥补课堂理论教学的不足,更进一步增强学生学习单片机的兴趣,大大提高学生的动手创新能力,并且作为个人实验平台,可以充分利用它所提供的资源,帮助学生提高工程应用能力。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发

嵌入式开发作为当今电子工程和信息技术领域的核心分支,涵盖了广泛的软硬件技术和系统集成方法,用于构建高性能、低成本、低功耗、体积小巧且功能专一的嵌入式系统。这些系统无处不在,从微型传感器节点到复杂的工业控制设备,从日常使用...

关键字: 嵌入式开发 Python

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

嵌入式开发作为信息技术领域的重要分支,其涉及的语言种类繁多,各具特色。这些语言的选择取决于目标平台的特性、性能需求、开发者的熟练程度以及项目的具体要求。本文将详细介绍几种常见的嵌入式开发语言,包括C语言、C++、汇编语言...

关键字: 嵌入式开发 C语言

嵌入式开发是一项综合了硬件设计、软件编程以及系统整合的技术活动,其目的是为了创造出能够在特定环境中高效、稳定运行的嵌入式系统。这一流程涵盖了多个紧密关联且不可或缺的阶段,从最初的客户需求分析到最终的产品测试和交付,每个环...

关键字: 嵌入式开发 硬件设计

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

嵌入式开发作为信息技术的关键支柱,在全球数字化转型浪潮中扮演着无可替代的角色。从传统的嵌入式微控制器到如今先进的片上系统(SoC),再到与云计算、人工智能深度融合的智能终端,嵌入式系统的演进与发展始终紧跟时代脉搏。本文将...

关键字: 嵌入式开发 智能应用

嵌入式开发是一种专门针对特定硬件平台设计和实现软件系统的工程实践,它涵盖了从需求分析、系统设计、编程实现、调试测试直到产品部署及维护的全过程。本文将深入探讨嵌入式开发的主要阶段,分解其流程并阐述每个步骤的关键要点,以便于...

关键字: 嵌入式开发 嵌入式软件
关闭
关闭