您好, 访客   登录/注册

基于Proteus的单片机开发课程改革探索

来源:用户上传      作者:赵汝和 李三雁

  摘 要 针对目前在应用型本科的单片机课程教学中存在的知识点多、课时少、理论授课枯燥,学生动手实践机会少、实验室建设昂贵、在有限的学时内学生难以全面掌握单片机应用系统的开发等问题,开展了教学改革的探索,重新进行了“两课设计”,充分利用“锦城在线”网络教学平台,在课前、课中、课后大量使用Proteus的仿真平台,开展课程翻转,收到良好的效果。
  关键词 Proteus 教学改革 课程翻转 单片机 应用型本科
  中图分类号:G424                                   文献标识码:A    DOI:10.16400/j.cnki.kjdkx.2020.01.053
  Abstract Aiming at the problems such as many knowledge points, less class hours, boring theory, less practical hands-on opportunities for students, and expensive laboratory construction, it is difficult to fully master the development of MCU application system, existing in the teaching of MCU courses in applied undergraduate. The "design of two lessons" has been redone, by "Jincheng online" online teaching platform, Proteus simulation platform is widely used, we have carried out course reversal, of course, and good results have been achieved.
  Keywords Proteus; teaching reform; flipped classroom; MCU; applied undergraduate
  0 前言
  單片机具有体积小、功能强、可靠性高、面向控制和价格低廉等一系列优点,已成为工业测控领域普遍采用的智能化控制工具,渗入到人们工作和生活的各个角落,正是由于单片机的广泛应用有力地推动了各行业的数字化技术改造和产品更新换代。[1]《单片机开发》课程是新时期我院智能制造学院机械电子工程专业的一门专业必修课程,通过本课程的学习,使机械类机械电子工程专业的学生掌握单片机(8位单片机MCS-51或32位单片机ARM7)的基本工作原理,具备单片机的初步应用能力,初步掌握设计单片机应用系统的一般方法和步骤,为将来的专业课程设计、毕业设计以及从事自动化仪器仪表、测控系统的分析、应用、科技开发等方面工作打下良好基础,具有重要的价值。其次,单片机在四川省机器人竞赛中具有重要的作用和地位,巡线机器人项目、足球机器人项目、水下机器人项目、寻光机器人项目、熊猫乐园机器人项目、灭火机器人项目、机器人对抗项目等等都是以诸如:AVR单片机、ARM单片机或51系列单片机作为控制器。再次,以单片机为核心的嵌入式系统是PC后时代最热门的研究领域。因此掌握单片机的基本知识、基本结构、熟练掌握基本开发方法和手段就显得特别重要,但是目前“单片机开发”课程的教学存在一些问题:(1)“单片机开发”课程属于实践性非常强的课程,理论部分涉及数字电子、模拟电子、C语言程序设计、数据结构等很多领域的知识,特别抽象,枯燥,难懂,学生仅仅听完课程根本无法完成相关的设计,造成眼高手低,动手能力不足。(2)很多学校建立了单片机开发实验室,配备了单片机试验箱,通常1个试验箱有8-10个人,实际实验的时候动手的就1-2个人,大量的同学“打酱油”,没有得到切实的锻炼,学生动手能力难以提高;学生在实验室操作时经验不足,同学把芯片连接错误,烧毁芯片的现象时有发生。(3)试验箱配套的实验都是验证性实验,只需简单的连线即可,[2-4]针对这些诸多问题,如何在有限的经费下,采用仿真技术和手段,利用CAD技术,进行单片机开发的课程改革,提高单片机开发的教学质量,培养学生的工程实践能力和提高科研素质就显得尤为迫切。
  1 PROTEUS简介
  针对以上问题,我校智能制造学院建立了Proteus虚拟仿真实验室,用于“单片机开发”课程的理论教学和实践教学,经过三年的运行取得良好的教学效果。Proteus是英国Labcenter公司开发的电路设计与分析、电路实物仿真以及印制电路板设计软件,它可以仿真、分析各种模拟电路和集成电路。Proteus主要由ISIS和ARES两部分软件组成,ISIS的主要功能是完成原理图设计及与电路原理图的交互仿真,ARES主要完成印制电路板的设计。
  ISIS模块的Proteus VSM(Virtual System Modelling)提供混合式的SPICE电路仿真,它将虚拟仪器、单片机仿真、高级图表应用、第三方程序开发与调试环境有机的整合起来,在搭建硬件模型后即可在个人电脑端上完成原理图设计、以及用单片机程序实现实时仿真、测试以及验证,它是嵌入式系统开发的有力工具,也是利用计算机实现仿真教学的一个重要手段。[4-5]
  目前,Proteus ISIS仿真系统支持的主流单片机有AVR单片机系列、ARM7(LPC21xx)系列、8051/52单片机系列、PIC10/12/18系列、HC11系列等。Proteus也支持嵌入式系统的常见外围电路的系统仿真:SPI 调试、RS232 动态调试仿真、LCD 系统仿真、I 2 C 模拟调试、键盘模拟等等。Proteus支持的第三方软件有Keil uVision2/3/4、AVR Studio+WinAVR、MPLAB HI-TECH PICC/PICC8/MCC8等。[5]   2 教改方案制定
  根据教学改革的这个目标,我们开展了以下的相关工作:首先我们多次开展教学教研会议,对教学大纲,对教学目的、教学方法、教学过程和手段进行了详细的梳理,按照锦城学院“两课设计”即:“课程设计”和“课堂设计”的要求进行了重新设计,并制定了基于Proteus的课程改革实施方案,具体方案包括以下几个方面。
  (1)强调理论课堂。老师在理论课堂中按部就班的讲解单片机的基础知识,主要介绍时钟、定时器、中断系统、串口通信、I/O接口电路等基本知识,然后介绍常见的外围电路及器件,诸如ADC0809\DAC0832等。主要讲解基本原理、基本概念、介绍基本方法。在理论课堂中开展课程翻转,让学生们提前学习基础理论,带上问题到教室里面和老师交流、讨论。
  (2)增加基于Proteus的实验课堂的比例。每次课程分成两个环节,第一个环节讲解讨论理论知识,第二个环节就是实验操作演示和交流,解决基本的动手能力,让学生熟悉电子器件和单片机的基本使用,主要是基于Proteus软件在仿真环境中实现原理图的设计,电路的连接、使用C语言对单片机的内部寄存器、外围器件的操作,并显示仿真结果。在实验课堂中开展课程翻转,让学生们提前学习观看录像,到实验室操作演示相关的内容,比如:流水灯、定时器、按键识别与扫描、点亮7段数码管等等专题。
  (3)短视频的拍摄和网络课堂建设。借助于现代教学手段我们拍摄了30段基于Proteus的演示教学视频,并上传到锦城在线网络教学平台,要求学生观看,在锦城在线上师生互动交流。
  (4)灵活使用多种教学方法。在本门课程中重点推荐使用问题导向教学法、案例分析法、模拟仿真教学法、项目式教学法、案例分析教学法等教学方法。在介绍单片机的概况时采用问题导向教学法;在介绍人机接口、串口、AD/DA的时候采用模仿真教学法;在Proteus介绍 7段数码管、ADC0832等器件的时候采用模拟仿真教学法;在做巡线小车的时候采用项目式教学法;在期末的时候会详细介绍一个典型应用案例日历表的设计,采用案例分析方法。
  (5)翻转课堂。在“单片机开发”课程的教改方案中强调了课程翻转的应用,本门课程开展课程翻转的次数在10次以上。
  3 Proteus在教学中的应用以DAC0832为例
  DAC称为数模转换器件,它是将计算机运算的数字信号转换为模拟信号,D/A转换在测控系统中得到广泛的应用, D/A转换在教学中也是重点和难点,在普通的教科书上理论较多,而且枯燥,学生在学习以后感觉空洞,掌握DA的学生基本在10%左右。
  3.1 DAC的课前资料准备
  对于这一部分的内容,老师在课前需要根据教学大纲准备详细的课前学习资料:
  (1)PPT的准备,包括基本的知识点,包括D/A的基本概念,T型电阻网络的D/A转换原理,转换精度、分辨率等基本概念,DAC0832芯片介绍,DAC0832的三种工作方式介绍,DAC0832和单片机的接口等基础知识。
  (2)视频拍攝。为了少占用讲课的时间,增加课堂学生和老师交流的时间,为了促进学生自主学习,我们拍摄了讲课的微视频课程,微视频以15分钟1节,主要是基本的知识点。
  (3)课前扩展作业。 课前作业一般都是个性化的作业,根据学生的情况而有所不同,以DA转换为例我们给同学们安排的课前作业就是:请DA芯片尝试完成1个占空比为50%方波的系统,需要完成原理图设计,完成程序设计,需要用Proteus完成仿真,要求用示波器观察到波形。
  3.2 课前辅导和答疑
  一旦设定好课前的任务,学生在课前观看视频,学习基本的知识,完成教材阅读,然后根据老师提的任务上网查询相关的资料,学习Proteus的使用,完成原理图设计、程序设计、仿真调试,如果碰到了相关的疑问,老师在我校的学习平台“锦城在线”进行答疑,帮助学生完成任务(图1)。
  3.3 课程中的学生讨论和课程翻转
  在任务一旦布置后在有限的时间段,学生通过查询资料,设计电路和调试程序,在上课的时候学生们带上自己的成果带上自己的疑问到教室和同学、老师交流汇报,汇报的工具平台是proteus平台。在课程翻转的时候如果部分学生的程序、原理图存在问题的,老师可以在实验室直接指出错误,帮助调试程序,让学生纠正错误,让学生可以通过虚拟示波器看到结果。
  3.4 Proteus中的重难点分析和把控
  (1)单片机的最小系统。在proteus的仿真电路中我们第一个工作就是搭建最小系统,电路主要包含单片机、电阻、按键、电容和晶振构成的时钟电路、复位电路等,在时钟电路中一定要注意晶振的频率需要在Proteus中设定,通常设定为12MHZ。同学们设置最容易出现问题的就是晶振的频率忘记设定或设定不正确造成仿真没有效果(图2)。[4,5]
  (2)DAC0832工作方式和端口的接线。在DAC0832芯片在工作时有单缓冲、双缓冲和直通工作方式,对于初学者我们通常建议采用直通工作方式工作,即:ILE接高电平、CS端口接低电平、WR1、WR2,数据传送控制端XFER端口接低电平。在运放的输出端口接1000欧姆的电阻,同时接一个虚拟示波器观察输出波形。DAC0832的DI0~DI7一共八个端口分别接到P1端口的P1.0~P1.7。[5]
  (3)DAC0832产生三角波的程序流程。DAC0832工作的流程是系统开始仿真后,单片机完成相关的参数的初始化,系统设定了一个变量i并赋初值为0,在延时后立即把i值通过P1端口送到DAC0832开始转换,输出模拟电压值,然后判断值是否达到255,如果没有达到255,变量i自增1,如果达到255重新赋值为0,再次开始循环,系统工作流程详见图3。
  在keil软件中建立新的工程,选择单片机和原理图的单片机一致,输入C语言程序后编译连接后生成HEX文件,把HEX文件导入到Proteus中即可开始仿真,仿真的效果图4所示。
  当学生成功地完成课前预习、课前项目准备、课堂的现场交流与答疑后十分有成就感,极大的锻炼了自学能力、动手能力、演讲的能力,学生也很快掌握了D/A转换的基本概念、T型电阻网络的转换原理,掌握了DAC0832的3种工作方式,提高了C语言编程的能力,学习的兴趣和学习的自信心也就提高了。
  4 教改前后的教学效果对比
  在教学后通过问卷调查发现在课程改革后的学时投入学习的时间由原来的平均32学时提高到接近60学时,学生充分激发了学习的主动性和积极性,课堂的参与人数由原来试验箱模式的20%左右提高到100%,以前的实验只能完成4个左右现在可以借助Proteus平台完成10个专题实验,学生的满意度也提高到98以上,详见表1,教改前后教学效果对比表。
  5 总结
  本文介绍了一种采用Proteus平台为核心的“单片机开发”课程教学改革中的一些方法和经验,Proteus可以凭借其强大的仿真和在线调试能力在单片的教学和嵌入式系统的人才培养过程中发挥较大的作用,学生可以在没有购买硬件试验箱的条件下学习相关的开发系统、开发者可以在没有完成PCB制作、打板之前的方案验证,实践证明基于Proteus的单片机的仿真和调试在教学和实际开发中具有较大的推广价值。在另外一方面仿真环境还不能完全替代实物,在实际产品开发中必须在仿真、方案验证后,还必须有实物的调试、测试才可以批量生产。
  参考文献
  [1] 郭华,张小军,张德学.嵌入式教学改革探索[J].教育教学论坛,2016(27):101-103.
  [2] 王伟.基于Proteus 与KEIL C51软件平台的单片机仿真教学[J].电子制作,2015(13):90-91.
  [3] 陈乃金等.计算机系统能力背景下的嵌入式系统实验教学研究[J].电脑知识与技术,2016.12(12): 98-99.
  [4] 万松峰. 基于Proteus的单片机原理与应用的教学改革[J].高教学刊,2016(14):121-123.
  [5] 袁东.51单片机应用开发实战手册[M].北京:电子工业出版社,2011.
转载注明来源:https://www.xzbu.com/8/view-15173401.htm