论文部分内容阅读
摘 要:分析了传统单片机实验教学的存在的问题,提出了基于protues仿真软件的实验教学,倡导学生构造一个真实的实践环境来加强动手能力的提高。
关键词:单片机实验教学 protues 实践
中图分类号:G642 文献标识码:A 文章编号:1007-3973(2012)005-185-02
1 引言
嵌入式系统正在蓬勃发展,应用越来越广,从最初的MP3、PDA、智能手机到投入工业生产,再到工业机器人、娱乐产品无不是嵌入式的产品。由于单片机的体积小、集成度高、功耗低、抗干扰能力强、控制功能强并且性价比高特点被广泛用于智能仪器、家用电器、医疗设备、汽车电子、航空领域,仪器仪表和工业控制等嵌入式系统产品。从事嵌入式系统开发的人才也越来越多,而单片机设计是嵌入式系统的基础部分和核心部分。
2 传统单片机实验教学的问题
2.1 理论教学与实践教学脱节
从单片机课程开设以来,高等院校也遇到了发现学生的实践能力很差,为了解决这个问题也开设实践教学,但是由于单片机的理论内容较多并且复杂不易理解,理论教学学时占了很大部分的学时时间,实践教学时间较短,学生无法通过较短的时间消化理论的学习。另外由于学校实验室的客观条件,实验设备不能满足一人一台的标准,使得有些学生只能看不能做,达不到实践教学的效果。由于大部分单片机课程教学的内容与实践的内容很难同步配套,使得学生很难很好把理论知识和实践联系在一起,学生做完了实验也没有达到消化理论知识的效果,这样使得理论教学与实践教学脱节。
2.2 汇编语言不适合初学者
目前大部分高校采用的单片机教材是汇编语言编写的,汇编语言虽然直接控制底层硬件,能够很好地理解单片机的工作原理。但是其与硬件细节关系密切,编写代码需要对硬件有很好的理解;指令复杂较多,程序编写繁琐,调试、维护、交流、移植困难,这些对初学者来说增加了很大的难度,使得学生学习兴趣越来越低。
2.3 实验设备的弊端
由于大部分高校实践所采用的是一些公司设计的实验箱,这些实验箱的硬件一般都是固定的,无需学生额外的设计,只需连线而已。这无疑存在一个很大的弊端,学生实践课的主要任务是机械的连接线路,无法施展自己的创造性思维,使得学生产生认知上的误区,认为单片机的系统开发就是在一个实验箱上连线。而事实上单片机与硬件有密切的关系,是需要系统的开发与设计,这样使得学生在实践当中无法理解单片机硬件设计的方法和工作原理,对于单片机系统设计无法理解其要领。另外,实验箱很难扩展其硬件部分,使得学生很难根据自己的想法设计,这样很难培养学生的创新能力和系统调试能力,使得实践教学达不到预期的效果。
3 Protues仿真软件在单片机实验教学中的探索
3.1 Protues仿真软件
基于以上目前单片机实践教学现状的分析,目前用于单片机仿真的软件较多,但是大部分侧重于软件仿真和算法的验证,使得学生无法进行单片机硬件开发;而一些软件则侧重于硬件的仿真,但是仅对CPU进行仿真,对于外围电路无法仿真,这使得学生无法系统的学习单片机的软件和硬件。对于单片机这样实践性很强的课程,提出了基于Protues仿真软件的实践教学。Protues仿真软件不仅可以对CPU而且对CPU外围电路的仿真能力很强,使得Protues仿真软件成为目前业界公认最好的仿真软件之一。Protues仿真软件是英国Labcenter electronics公司开发的EDA工具软件,它不仅具有EDA工具的仿真软件功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Protues具有显著的优点:
(1)支持当前的主流单片机,如8051系列、AVR系列、PIC系列等,提供丰富的外围接口器件。
(2)支持各种虚拟仪器,如示波器、信号发生器、逻辑分析仪等。
(3)支持模拟电路、数字电路及其单片机外围电路的仿真,如串口,I2C,SPI,键盘显示板,LCD显示等。
(4)强大的原理图绘制功能,可以在该软件中绘制外围电路的硬件电路原理图,具有较强的电路仿真能力。
(5)支持调试手段,在硬件仿真系统中可以设置断点、单步、全速调试,在软件调试中可以观察各个变量、寄存器的当前状态。
(6)支持第三方软件编译和调试环境。如Keil等。
3.2 Protues在单片机实践教学中的应用
基于Protues仿真软件是单片机实践教学的得力助手,其不仅把单片机具体功能形象化,达到了实物演示的效果,也可以将单片机的一些运行过程形象化,这是实物无法达到的效果。利用Protues提供的大量的元器件,可以解决学生在实验室有限的时间下和条件下无法完成的问题。学生可以课外根据自己的想法设计自己的作品,这样对单片机的硬件和软件可以有一个很好的理解。随着现代科技的发展,仿真技术已经越来越为重要,尤其是对许多前期产品的设计。它具有很强的设计灵活性,结果、过程的统一性。这样对实验室有限的硬件资源无疑提供了极大帮助,并且使得设计时间大大缩短,减少元器件的浪费。这样让学生大胆学习,创造性思考和设计,随之学生的兴趣也提高了,形成了一个良性循环,从根本上解决了单片机实践教学的弊端。
4 构造一个真实的单片机实践环境
4.1 单片机实践环境C语言的选择
单片机的C是在标准C语言的基础上扩展而来的,对于初学者无疑是最佳的编程语言选择,其不仅具备了汇编语言的一些特点,支持直接对物理地址的访问和硬件设备的操作,而且还具备了标准C语言的优点:
(1)简洁紧凑、灵活方便。这使得其可以像汇编语言一样的对位,字节,寄存器进行操作。C语言的语法限制不太严格,程序设计自由,语法比较灵活。
(2)运算符、数据结构丰富。C语言的运算符类型丰富,表达式类型多样化,可以灵活的使用各种运算符,数据类型丰富,能够实现各种复杂的数据结构的运算,这样对学习单片机的初学者很容易掌握。 (3)C语言是结构式语言。这种结构化编程使得程序层次清晰,便于使用,维护和调试。它是以函数形式提供给用户的,这些函数可以方便的调用,实现了模块化编程。
(4)生成的目标代码质量高,程序执行效率高。C语言不依赖于具体的硬件系统,其对于不同硬件而言,移植起来极为方便。C语言支持多种操作系统,随着单片机的深入学习,学习嵌入式操作系统的时候,需要移植操作系统,这就是其他语言不可比拟的优点。
4.2 构造一个真实的实践环境
虽然Protues仿真软件可以提供很好的仿真实验平台,但是与真实的实验环境还是有差距,首先应用Protues仿真软件仿真好单片机系统,然后动手实践设计制作出该系统。所需要的芯片可以通过网站申请获得或者利用实验室现有的芯片。现在,随着制作开发板的公司越来越多,开发板的价格也比较便宜,在100元左右,而且单片机的种类也很多、资源丰富,支持在线下载程序和仿真。利用其开发板的资源如A/D、D/A、PWM、温度传感器、串口、红外传感器、液晶等制作自己的作品。这样构造出一个真实的应用环境,在制作过程中可以增强分析问题、解决问题的能力。每年学校都会组织学生参加省电子大赛或者全国电子设计大赛,并且学校会安排老师进行比赛方面的培训并给予很大的支持。参加电子设计竞赛会增强自己调试能力,分析问题,解决问题的能力。经过比赛会学到很多平时学不到的东西,自己的动手实践能力和实际应用能力会有较大的提高。
5 结束语
单片机实验教学和实践是单片机课程非常重要的组成部分,重在培养学生的对单片机乃至嵌入式的浓厚兴趣,使得他们在以后的学习过程中,能够自发的学习各种电子技术。该课程也旨在锻炼学生的动手实践能力,分析问题解决问题的能力。作者结合自己在教学的实践心得,提出了通过Protues仿真软件来培养学生的软件设计,外围接口电路等硬件设计能力并且鼓励学生自己亲手实践自己制作单片机系统于达到理论与实践紧密结合的效果。
参考文献:
[1] 周航慈.单片机应用程序设计技术(修订版)[M].北京:北京航空航天大学出版社,2002.
[3] 宗慧.以能力培养为核心的单片机教学与探索[J].中国科技信息,2010,(11).
[3] Proteus介绍.嵌入式系统设计仿真与开发平台研讨会专刊[C].
[4] 张军,吴教育,朱海兵.Proteus软件仿真与Keil的单片机系统设计[J].单片机与嵌入式系统应用,2009,(1).
[5] 周润景,袁伟亭,景晓松.Proteus在MCS-51&ARM7系统中的应用百例[M].北京:电子工业出版社,2006.
关键词:单片机实验教学 protues 实践
中图分类号:G642 文献标识码:A 文章编号:1007-3973(2012)005-185-02
1 引言
嵌入式系统正在蓬勃发展,应用越来越广,从最初的MP3、PDA、智能手机到投入工业生产,再到工业机器人、娱乐产品无不是嵌入式的产品。由于单片机的体积小、集成度高、功耗低、抗干扰能力强、控制功能强并且性价比高特点被广泛用于智能仪器、家用电器、医疗设备、汽车电子、航空领域,仪器仪表和工业控制等嵌入式系统产品。从事嵌入式系统开发的人才也越来越多,而单片机设计是嵌入式系统的基础部分和核心部分。
2 传统单片机实验教学的问题
2.1 理论教学与实践教学脱节
从单片机课程开设以来,高等院校也遇到了发现学生的实践能力很差,为了解决这个问题也开设实践教学,但是由于单片机的理论内容较多并且复杂不易理解,理论教学学时占了很大部分的学时时间,实践教学时间较短,学生无法通过较短的时间消化理论的学习。另外由于学校实验室的客观条件,实验设备不能满足一人一台的标准,使得有些学生只能看不能做,达不到实践教学的效果。由于大部分单片机课程教学的内容与实践的内容很难同步配套,使得学生很难很好把理论知识和实践联系在一起,学生做完了实验也没有达到消化理论知识的效果,这样使得理论教学与实践教学脱节。
2.2 汇编语言不适合初学者
目前大部分高校采用的单片机教材是汇编语言编写的,汇编语言虽然直接控制底层硬件,能够很好地理解单片机的工作原理。但是其与硬件细节关系密切,编写代码需要对硬件有很好的理解;指令复杂较多,程序编写繁琐,调试、维护、交流、移植困难,这些对初学者来说增加了很大的难度,使得学生学习兴趣越来越低。
2.3 实验设备的弊端
由于大部分高校实践所采用的是一些公司设计的实验箱,这些实验箱的硬件一般都是固定的,无需学生额外的设计,只需连线而已。这无疑存在一个很大的弊端,学生实践课的主要任务是机械的连接线路,无法施展自己的创造性思维,使得学生产生认知上的误区,认为单片机的系统开发就是在一个实验箱上连线。而事实上单片机与硬件有密切的关系,是需要系统的开发与设计,这样使得学生在实践当中无法理解单片机硬件设计的方法和工作原理,对于单片机系统设计无法理解其要领。另外,实验箱很难扩展其硬件部分,使得学生很难根据自己的想法设计,这样很难培养学生的创新能力和系统调试能力,使得实践教学达不到预期的效果。
3 Protues仿真软件在单片机实验教学中的探索
3.1 Protues仿真软件
基于以上目前单片机实践教学现状的分析,目前用于单片机仿真的软件较多,但是大部分侧重于软件仿真和算法的验证,使得学生无法进行单片机硬件开发;而一些软件则侧重于硬件的仿真,但是仅对CPU进行仿真,对于外围电路无法仿真,这使得学生无法系统的学习单片机的软件和硬件。对于单片机这样实践性很强的课程,提出了基于Protues仿真软件的实践教学。Protues仿真软件不仅可以对CPU而且对CPU外围电路的仿真能力很强,使得Protues仿真软件成为目前业界公认最好的仿真软件之一。Protues仿真软件是英国Labcenter electronics公司开发的EDA工具软件,它不仅具有EDA工具的仿真软件功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Protues具有显著的优点:
(1)支持当前的主流单片机,如8051系列、AVR系列、PIC系列等,提供丰富的外围接口器件。
(2)支持各种虚拟仪器,如示波器、信号发生器、逻辑分析仪等。
(3)支持模拟电路、数字电路及其单片机外围电路的仿真,如串口,I2C,SPI,键盘显示板,LCD显示等。
(4)强大的原理图绘制功能,可以在该软件中绘制外围电路的硬件电路原理图,具有较强的电路仿真能力。
(5)支持调试手段,在硬件仿真系统中可以设置断点、单步、全速调试,在软件调试中可以观察各个变量、寄存器的当前状态。
(6)支持第三方软件编译和调试环境。如Keil等。
3.2 Protues在单片机实践教学中的应用
基于Protues仿真软件是单片机实践教学的得力助手,其不仅把单片机具体功能形象化,达到了实物演示的效果,也可以将单片机的一些运行过程形象化,这是实物无法达到的效果。利用Protues提供的大量的元器件,可以解决学生在实验室有限的时间下和条件下无法完成的问题。学生可以课外根据自己的想法设计自己的作品,这样对单片机的硬件和软件可以有一个很好的理解。随着现代科技的发展,仿真技术已经越来越为重要,尤其是对许多前期产品的设计。它具有很强的设计灵活性,结果、过程的统一性。这样对实验室有限的硬件资源无疑提供了极大帮助,并且使得设计时间大大缩短,减少元器件的浪费。这样让学生大胆学习,创造性思考和设计,随之学生的兴趣也提高了,形成了一个良性循环,从根本上解决了单片机实践教学的弊端。
4 构造一个真实的单片机实践环境
4.1 单片机实践环境C语言的选择
单片机的C是在标准C语言的基础上扩展而来的,对于初学者无疑是最佳的编程语言选择,其不仅具备了汇编语言的一些特点,支持直接对物理地址的访问和硬件设备的操作,而且还具备了标准C语言的优点:
(1)简洁紧凑、灵活方便。这使得其可以像汇编语言一样的对位,字节,寄存器进行操作。C语言的语法限制不太严格,程序设计自由,语法比较灵活。
(2)运算符、数据结构丰富。C语言的运算符类型丰富,表达式类型多样化,可以灵活的使用各种运算符,数据类型丰富,能够实现各种复杂的数据结构的运算,这样对学习单片机的初学者很容易掌握。 (3)C语言是结构式语言。这种结构化编程使得程序层次清晰,便于使用,维护和调试。它是以函数形式提供给用户的,这些函数可以方便的调用,实现了模块化编程。
(4)生成的目标代码质量高,程序执行效率高。C语言不依赖于具体的硬件系统,其对于不同硬件而言,移植起来极为方便。C语言支持多种操作系统,随着单片机的深入学习,学习嵌入式操作系统的时候,需要移植操作系统,这就是其他语言不可比拟的优点。
4.2 构造一个真实的实践环境
虽然Protues仿真软件可以提供很好的仿真实验平台,但是与真实的实验环境还是有差距,首先应用Protues仿真软件仿真好单片机系统,然后动手实践设计制作出该系统。所需要的芯片可以通过网站申请获得或者利用实验室现有的芯片。现在,随着制作开发板的公司越来越多,开发板的价格也比较便宜,在100元左右,而且单片机的种类也很多、资源丰富,支持在线下载程序和仿真。利用其开发板的资源如A/D、D/A、PWM、温度传感器、串口、红外传感器、液晶等制作自己的作品。这样构造出一个真实的应用环境,在制作过程中可以增强分析问题、解决问题的能力。每年学校都会组织学生参加省电子大赛或者全国电子设计大赛,并且学校会安排老师进行比赛方面的培训并给予很大的支持。参加电子设计竞赛会增强自己调试能力,分析问题,解决问题的能力。经过比赛会学到很多平时学不到的东西,自己的动手实践能力和实际应用能力会有较大的提高。
5 结束语
单片机实验教学和实践是单片机课程非常重要的组成部分,重在培养学生的对单片机乃至嵌入式的浓厚兴趣,使得他们在以后的学习过程中,能够自发的学习各种电子技术。该课程也旨在锻炼学生的动手实践能力,分析问题解决问题的能力。作者结合自己在教学的实践心得,提出了通过Protues仿真软件来培养学生的软件设计,外围接口电路等硬件设计能力并且鼓励学生自己亲手实践自己制作单片机系统于达到理论与实践紧密结合的效果。
参考文献:
[1] 周航慈.单片机应用程序设计技术(修订版)[M].北京:北京航空航天大学出版社,2002.
[3] 宗慧.以能力培养为核心的单片机教学与探索[J].中国科技信息,2010,(11).
[3] Proteus介绍.嵌入式系统设计仿真与开发平台研讨会专刊[C].
[4] 张军,吴教育,朱海兵.Proteus软件仿真与Keil的单片机系统设计[J].单片机与嵌入式系统应用,2009,(1).
[5] 周润景,袁伟亭,景晓松.Proteus在MCS-51&ARM7系统中的应用百例[M].北京:电子工业出版社,2006.