基于仿真软件的微机原理与接口技术课程教学研究
2023-02-28程和生程和侠程和斌
程和生 程和侠 程和斌
摘 要:微机原理与接口技术课程是培养学生嵌入式系统设计与开发的基础,是提高学生动手能力和设计能力的重要支撑课程,可是传统教学中在实践环节存在种种限制。针对微机原理与接口技术课程应用性强、理论联系实际不够紧密的问题,通过仿真软件Proteus和Emu8086打破实验场地限制,增强教学互动,形象直观地展现软硬件的设计及交互过程。以交通信号灯为例,借助Proteus设计硬件系统,使用Emu8086开发控制软件,调动学生利用课余时间主动学习,提高学生软硬件系统的设计和实现能力。
关键词:微机原理与接口技术;Proteus;Emu8086;仿真
中图分类号:TP39;G434 文献标识码:A 文章编号:2096-4706(2023)20-0185-05
Teaching Research on the Course of Microcomputer Principles and Interface Technology Based on Simulation Software
CHENG Hesheng1, Cheng Hexia2, CHENG Hebin3,4
(1.School of Computer and Artificial Intelligence, Hefei Normal University, Hefei 230601, China; 2.School of Computer Science and Information, Anqing Normal University, Anqing 246133, China; 3.Anhui ARN Group Co., Ltd., Anqing 246001, China; 4.School of Physics and Optoelectronic Engineering, Anhui University, Hefei 230601, China)
Abstract: The course Microcomputer Principles and Interface Technology is the foundation for cultivating students' embedded system design and development, and an important supporting course for improving students' hands-on and design abilities. However, there are various limitations in traditional teaching practical aspect. In response to the issues of strong applicability and insufficient integration of theory with practice in the course of Microcomputer Principles and Interface Technology, simulation software Proteus and Emu8086 are used to break the limitations of experimental venues, enhance teaching interaction, and visually display the design and interaction process of software and hardware. Taking traffic signal lights as an example, using Proteus to design a hardware system and Emu8086 to develop control software, students are encouraged to actively learn in their spare time and improve their ability to design and implement software and hardware systems.
Keywords: Microcomputer Principles and Interface Technology; Proteus; Emu8086; simulation
0 引 言
教育部高等學校大学计算机课程教学指导委员会在《大学计算机基础课程教学基本要求》中明确给出了大学计算机基础教学的四个领域和三个层次,其中计算机系统与平台是计算机程序设计的基石,是数据分析与信息处理的平台,是应用系统开发的硬件基础[1,2]。“微机原理与接口技术”课程是计算机系统与平台的核心专业课,不仅是理论与实践的重要桥梁,还是硬件和软件设计的基础。该课程的学习能够促进学生掌握计算机硬件的运行机制,培养学生从计算机程序运行方式的角度思考实际问题,提高学生的系统优化能力,使学生养成独立解决问题的习惯。因此,高校计算机类和电子类专业都开设了微机原理与接口技术这门课程。根据各专业研究方向的不同,开设该课程的目标各有不同,而基本内容是一致的。对于微机原理与接口技术课程的学习,往届学生普遍表示“晦涩难懂”,较多的反馈是“一听就懂,一做就错”,增加了学生学习该科目的挫败感,学生对学习新知识具有巨大的消极情绪。那么问题究竟出在哪里呢?多年的学生考试结果表明:选择题、填空题和判断题,平均得分率分别为8%~9%、4%~5%和6%~7%,简答阐述题得分率大概在70%,计算题有80%左右的得分率。分析其原因,选择题和判断题都有解题技巧,这两种题型的得分比填空题高;编程题学生套用编程模板,得分情况较好;简答阐述题涉及微机工作机制和硬件内部结构,得分较低,说明学生对微机工作原理和微机工作机制没有理解通透。微机内部运行机制教学是以抽象逻辑思维进行讲解,学生们难以理解。首先,传统教学的主要手段是采用实验箱,通过让学生实际动手编程和操作来理解和掌握微机运行机制;其次,主要活动是依靠实验箱“插拔导线”完成实验,缺少设计环节,实验效果大打折扣;最后,实验活动受场地和成本的限制,实验效果不如人意。根据多年的教学经验,借助Proteus仿真软件可以很好地解决这些问题,其具有软件模拟芯片8086功能,可以完善硬件设计,形象生动地展现微机工作流程,便于学生掌握微机工作机制。学生还可以将该软件安装在自己的个人电脑上,不受场地限制,提供了极大的便利,激发学生的学习兴趣[3,4]。
不同专业对微机原理与接口技术课程的内容设置要求不同,基本都涵盖CPU8086的内部结构及其工作流程、8086汇编语言编程、CPU与主存储器连接、CPU与IO接口等数据的控制。冯诺依曼模型是掌握8086CPU的奠基石;三总线技术是8086CPU与外设通信的关键。掌握三总线内涵的最有效途径是掌握8086汇编语言,通过具体实例领悟其精髓。8086CPU对外设的操作是本课程的重要应用途径,是应用设计的切入点。但使用汇编语言编译程序是完成逻辑层面的设计,其晦涩难明,难以掌握;外部接口种类繁多,需要学生掌握接口技术的通用性,一般都是从实践中学习,尤其是在系统整体设计中习得和领悟。仿真软件Proteus和Emu8086能够很好地解决这两个问题。
鉴于上述教学难题和困境,本文基于Proteus虚拟仿真技术进行微机原理与接口技术的理论和实践教学的研究与探讨。
1 仿真软件特点
仿真软件在理论教学和实验教学中都有明显的优势,教师在讲解中配合仿真演示,使原本抽象枯燥的概念讲解变得生动有趣,激发学生的学习兴趣。例如讲授CPU8086完成一次算数运算过程,分为取指令,译指令和执行指令三个步骤,涉及三条总线的时序,内容琐碎繁杂,学生们学习该部分内容有些力不能及,很容易出现理解偏差;换成汇编语言与Proteus联合调试,逐步细化每个步骤,深入CPU的每个时钟节拍,详细呈现CPU的工作原理,起到事半功倍的效果。
Proteus是一款功能强大的电子电路设计和仿真软件。它具有出色的硬件仿真能力,可同时支持多种硬件芯片,如CPU8086、89S51和ARM等,亦可同时支持主流的编译工具,如keil、IAR等,是可供广大用户学习硬件编程和嵌入式系统的有力工具。
采用EMU8086编译8086汇编语言,其可视化的界面实时显示编译过程的中间结果,显示CPU内部寄存器数值变化,展现晦涩难懂的汇编语言及其控制硬件过程,帮助初学者掌握8086汇编语言。
软件Proteus和EMU8086相结合,满足微机原理与接口技术课程教学所需的全部要求,根据其课程教学大纲与Proteus软件构建知识框架,做好课程与实验之间的衔接,仿真软件可为软件和硬件设计提供强大的支撑,具体如图1所示。
2 仿真软件与传统教学结合的优势
2.1 实践环节的结合
以往实验教学的完成主要依赖于实验箱,通过连接固定的芯片来完成实验。实验过程中缺少系统概念的阐释和融于实践的深入理解,学生缺少提升其系统设计能力的机会。引入仿真软件之后,实验预习阶段学生通过Proteus模擬仿真实验任务,独立完成系统设计和测试。知识的拓展和深化主要依赖学生在课外时间主动学习完成。
由于受实验室等教学条件限制,传统实验模式是在理论课程结束之后开展微机原理和接口的基础实验,学生不能及时通过实验课程对新知识进行梳理和验证,影响学生对微机原理内涵的掌握。传统实验课程的步骤如下:
1)实验预习。学生预习实验并完成实验预习报告,此过程学生主要是了解实验原理、实验所涉及的工具及其使用,设定实验的预期结果。
2)实验实施环节。在实验室内进行实验,按实验要求完成实验。
3)实验小结。总结实验并完成实验报告。
改进前后的实验过程图如图2所示。
传统实验的三个步骤中,第二步实验实施部分是真实的硬件操作和运行,展现真实的电路设计和连接,让学生从视觉、听觉和触觉上全方位感受电路操作过程中的细枝末节,是实验必不可少的环节。但是实验箱的线路、芯片多已固定,同学们只需按照固定的步骤操作即可,不能灵活自由地进行实验设计,这就导致学生缺少相应硬件设计和软件编程能力的练习和训练,缺乏主动学习的积极性。第三步是对第二步实验实施的总结和反思,学生通过归纳总结吸收新知识。针对实验箱的缺点,在第一步实验预习环节添加Proteus仿真系统设计,丰富实验内容,为学生补充硬件设计方面的练习和训练。
2.2 理论环节的结合
课堂讲解微机原理的概念,以往的学生理解起来有一定的困难,引进EMU8086和Proteus软件后可以将抽象的概念具体化、视觉化,有助于学生对抽象概念的透彻理解和扎实掌握。
以指令指针(Instruction Pointer, IP)寄存器功能的讲解为例,如图3所示为传统讲解IP寄存器使用方法的演示文稿,教师以图解的形式讲解理论概念及功能应用,但总体上还是静态呈现,不能加深学生对抽象知识的理解。EMU8086软件的动态展示IP工作过程,在图4中标出5个功能区域:
1)汇编语言的源代码区。
2)机器码区。此区是源代码经过汇编和编译之后生成的机器码。
3)物理地址显示区。标识出机器码在代码区具体的物理地址,IP寄存器存储当前指令的偏移地址。
4)寄存器区。表示当前指令对CPU寄存器的实时反应。
5)调试区。含有单步调试和全速运行,单步调试可以清晰展示IP的变化,以深蓝背景高亮标出。
通过单步调试选项,源代码区和机器码区域联动并用高亮背景显示,实时观察当前指令及其物理地址、寄存器的结果动态变化,形象生动地展现IP寄存器在8086CPU上运行的工作机制,学生可以更好地理解和掌握IP知识点。
3 教学案例
对于微机原理与接口技术课程来说,最有效的教学方法是在理论讲解的过程中适时融入实践操作。在课堂上,在多媒体教学设备——Proteus软件平台的直接演示下,学生能够直观且清楚地看到从硬件电路设计到编程,再到调试的整个过程,以此来激发学生的学习兴趣,同时使理论与实践紧密结合。CPU时序与总线操作内容是本门课程学习的核心部分,是学生真正走进这门课的敲门砖,同时也是该门课程中较难理解的部分[5]。下面以此部分的理论教学过程为例阐述基于Proteus的理论教学改革方法。
将独立的知识应用到系统中,学以致用,提高学生的实际应用能力。下面以十字路口的红绿灯系统为例进行阐述,硬件系统的组成包括CPU8086、地址锁存器74LS373、3-8译码器、并口8255A、中断管理器8259、时钟管理器8253、若干红绿黄三色LED灯及若干电阻等器件。以上器件按照冯诺依曼结构进行搭建,采用三条总线(数据总线、地址总线和控制总线)将孤立的电子器件联通。交通信号灯系统设A车道与B车道交叉组成十字路口,A是主道,B是支道,直接对车辆进行交通管理,基本要求如下:
1)用发光二极管模拟交通信号灯。
2)正常情况下,A、B两车道轮流放行,A车道放行绿灯亮,其中3秒用于警告(黄灯亮);B车道放行绿灯亮,其中3秒用于警告(黄灯亮);A、B车道放行、禁止通行时间自己定义。
3)有紧急车辆通过时,按下某开关使A、B车道均为红灯,紧急情况解除后恢复正常控制。
4)可以根据自己实际情况扩充控制功能,如时间显示、左右转向提示、掉头指示灯复杂路况的控制。
5)要求使用8255、8253、8259可编程芯片。
综上,设计出一个微机原理综合实验,将课程所涉及的主要控制芯片融合在一起,考查学生对课程讲授内容的掌握程度,如图1所示。系统主要组成器件:Cpu采用8086芯片译码器74LS138、并口8255芯片、时钟芯片和中断管理芯片8259,组成十字路口交通灯系统,如图5所示。软件设计主要表现为软件的主程序流程图,具体流程图如图6所示。如图7所示为微机外部接口的时序图,便于学生掌握时钟时序。
上述实验中,未涉及传统实验箱,补充和完善了实验预习阶段内容,锻炼和提高了学生的设计能力,学生可以直观明了地学习微机原理与接口的概念和技术,提高了学生的学习兴趣和学习效率。整个系统原理图的设计到布线,加深了学生对三总线内涵的理解,使学生厘清了各个模块之间的通信過程和先后顺序,正确梳理了系统的逻辑流程,深入学习了CPU的时序,从底层研究微机原理,为其日后的系统设计提供良好的锻炼机会。
4 结 论
仿真软件的引入,在理论课程阶段凭借其可视化的优势,直观呈现原本晦涩难懂的理论知识,有助于学生更好地理解和掌握微机原理和接口技术;在实验预习阶段,增添了系统设计环节,学生有更多的机会去练习与锻炼,进一步提高了学生的系统设计能力。由于仿真软件成本低,便于安装在个人电脑上,延长了学生学习实践的时间,充分调动了学生的学习能动性和创造力。教学效果有所改善,学生反映良好,还有很大的完善空间,后期将结合学生的反馈,伙同同行集体研究,继续在微机原理课程中推广软件仿真的应用,形成一个成熟高效的教学方法和实践体系。
参考文献:
[1] 教育部高等学校大学计算机课程教学指导委员会.大学计算机基础课程教学基本要求 [M].高等教育出版社,2016.
[2] 程兰,马春燕,阎高伟.仿真软件在微机原理与接口技术教学及实验中的应用和探讨 [J].计算机教育,2021(9):181-185.
[3] 朱敏玲,张伟,侯凌燕.基于Proteus的微机原理与接口技术教学改革 [J].实验室研究与探索,2016,35(1):155-160.
[4] 陈逸菲,王玉芳,孙宁.Proteus在《微机原理与接口技术》教学中的应用 [J].软件导刊,2018,17(5):220-222+226.
[5] 刘娟,黄忠.“微机原理与接口技术”项目驱动教学 [J].安庆师范学院学报:自然科学版,2019,25(4):96-98.
作者简介:程和生(1985—),男,汉族,安徽怀宁人,讲师,硕士研究生,研究方向:嵌入式系统;程和侠(1982—),男,汉族,安徽怀宁人,副教授,硕士研究生,研究方向:云计算与数据科学;程和斌(1985—),男,汉族,安徽怀宁人,工程师,硕士研究生,研究方向:机械制造。
收稿日期:2023-05-12
基金项目:安徽省级教学团队项目(2019jxtd090);合肥师范学院校级质量工程项目(2021szsfkc04);安庆师范大学校级教研项目(2020aqnuyljc06);安徽省高等学校省级质量工程项目-省级教材建设项目(2022jcjs072)