引 言
ARM技术是一门实践性很强的技术,其实验是电子类教学中十分重要的实践教学环节,是培养学生实验技能、创新思维的重要课程。掌握ARM技术已是电子类学生就业的一个基本条件。
目前各个高校相继开设了ARM课程,并逐步开始建立ARM实验室。这些实验室基本都是采用相应的硬件仿真设备来构建的,但由于ARM的种类繁多再加上资金的限制,不可能在一个实验室包括所有种类的ARM仿真设备。虚拟实验作为传统实验的重要补充,克服了诸多条件的限制,丰富了实践性教学的手段,有利于现代实验教学观念的更新。
1 ARM实验教学存在的问题
目前,ARM教学中存在如下问题:
①ARM课堂教学多以理论教学为主,教学中需要很多硬件设备,一般理论课堂难以辅助硬件进行教学,即便演示,效果也不好。
②ARM实验作为实验中心的基础实验,学生除了上课外,平时难得有机会实践;而采用的ARM实验设备大多是成品,学生很难参与其中的细节设计,因此学生动手能力也很难得到提高。
③配套的实验设备多采用硬件仿真器配目标实验板。这种配置方式直接导致该课程的实验项目有限,实验时间过长,设备维护工作量大等现实问题。
针对上述问题,提出利用Proteus和ADS整合构建ARM虚拟实验室的方案。所谓“虚拟实验室”,就是将计算机上的各种虚拟仪器,按实验要求和设计原理,虚拟出一个与现实相同的实验系统,进而在这个系统上完成整个实验。与传统实验模式相比,虚拟实验具有比较明显的优势。例如,涉及的实验内容全面,硬件投入少,学生可自行实验,实验过程中损耗小,与工程实践最为接近等。
2 ARM虚拟实验室的构建
2.1 ARM虚拟实验室的软件支持
本方案主要是以Proteus软件和ADS软件来构建该虚拟实验室。
Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。该软件的特点是:
①实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真,RS232动态仿真,I2C调试器,SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
②支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
③提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。
④具有强大的原理图绘制功能。
总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。
ADS(ARM Developer Suite)是ARM公司推出的新一代ARM集成开发工具。CodeWarrior for ARM是一套完整的集成开发工具,充分发挥了ARM RISC的优势,使产品开发人员能够很好地应用尖端的片上系统技术。该工具是专为基于ARM RISC的处理器而设计的。它可加速并简化嵌入式开发过程中的每一个环节,使得开发人员只需通过一个集成软件开发环境就能研制出ARM产品;在整个开发周期中,开发人员无需离开CodeWarrior开发环境,节省了在操作工具上花的时间,而有更多的精力投入到代码编写上来。CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单、多样化的图形用户界面。用户可以使用ADS的CodeWarrior IDE为ARM和Thumb处理器开发用C、C++或ARM汇编语言编写的程序代码,还可以生成程序代码的十六进制文件。
2.2 ARM虚拟实验室的实验内容和实验过程
结合Proteus和ADS构建的虚拟实验室能够进行ARM涉及的所有实验内容,其中包括中断、流水灯、串口通信、SPI通信、脉宽调制器、看门狗、A/D转换器、定时,以及基于μC/OS的实验。
基于ARM虚拟实验室的教学采用局域网多媒体教学,教师可以通过多媒体演示电路图并讲解其原理,学生根据相关实验原理在ADS和Proteus中完成整个实验。过程如下:
①在ADS中编写C语言源程序;
②编译、调试源程序,最终生成后缀为.hex的文件;
③在Proteus中设计完整的原理图;
④将生成的.hex文件导入相应的ARM芯片。
完成以上步骤后,在Proteus中运行即可;观察仿真结果,并检验是否与设计要求一致。
基于Proteus和ADS构建的ARM虚拟实验平台提供了大量的虚拟元件供学生使用,这样就可以在虚拟实验教学过程中培养学生的兴趣,激发学生的创造性,增强互动性,提高教学效果。
3 ARM虚拟实验教学实例分析
下面以用LPC2131设计一个流水灯的实验为例,介绍如何通过Proteus与ADS的整合实现对ARM外围电路的仿真。
3.1 软件的实现
在ADS中编写C语言程序添加到user组中。程序如下:
将该程序进行编译,编译通过后,就生成后缀为.hex的文件。
3.2 硬件电路的实现
在Proteus中设计的流水灯原理电路,如图1所示。其中用LPC2131的P1[25:18]控制LED8~LED1,低电平点亮。将后缀为.hex的文件添加到LPC2131中,运行后观察到的部分仿真结果与图1完全一致。此时为8盏灯全亮。
仿真结果与设计要求完全一致,达到了预期的目的。
结 语
综上所述,基于Proteus和ADS构建ARM虚拟实验室的方案是切实可行的。采用虚拟实验的方式,不仅能够解决传统ARM实验室设备资金短缺和维护困难的问题,而且使学生能够充分利用课余时间进行ARM系统的软硬件设计,充分锻炼了学生的动手能力。在实际运行中,取得了良好的教学效果。使用该方案进行系统虚拟开发成功之后再进行实际制作,无疑可以提高开发效率、降低开发成本、提升开发速度,具有较高的推广应用价值。
上一篇:基于ARM的综合测试仪设计
下一篇:基于ARM和DM9000的网卡接口设计与实现
推荐阅读最新更新时间:2024-03-16 12:37
设计资源 培训 开发板 精华推荐
- Allegro MicroSystems 在 2024 年德国慕尼黑电子展上推出先进的磁性和电感式位置感测解决方案
- 左手车钥匙,右手活体检测雷达,UWB上车势在必行!
- 狂飙十年,国产CIS挤上牌桌
- 神盾短刀电池+雷神EM-i超级电混,吉利新能源甩出了两张“王炸”
- 浅谈功能安全之故障(fault),错误(error),失效(failure)
- 智能汽车2.0周期,这几大核心产业链迎来重大机会!
- 美日研发新型电池,宁德时代面临挑战?中国新能源电池产业如何应对?
- Rambus推出业界首款HBM 4控制器IP:背后有哪些技术细节?
- 村田推出高精度汽车用6轴惯性传感器
- 福特获得预充电报警专利 有助于节约成本和应对紧急情况
- BeagleBone Black 开发板 DIY 创意设计大赛
- 乐享惬意春天,TI A8开源硬件平台体验季!
- 真香!泰克示波器全新升级,速来解锁!不看感觉错过一个亿!
- 【免费试用】DFRobot micro:bit编程小车-麦昆
- 逛村田在线云展厅,了解通信、移动、工业+环境、健康四大领域的应用干货!
- ST AMG SensorTile开发大赛驾到,重磅大奖与知识兼得,速来~
- 有奖直播:安森美电感式位置传感器接口 NCS32100
- 感恩季 送礼季!EEWORLD陪你玩着游戏奔新年
- 2016年是德印象测试微视频网络竞选(大中国区)
- MPS 隔离式稳压 DC/DC 模块——MIE系列首发,邀你一探究竟!