一般本科硬件课程教学体系研究
摘要:一般本科院校硬件类课程教学通常存在硬件类课程体系设置不够完善、知识传授系统性差、实践教学与实际应用和工程项目脱节等问题,难以激发学生的求知欲望,导致教学效果差。为了解决这一系列的问题,笔者从实际项目出发,提出改进硬件类课程教学方法和完善课程体系,对硬件技术方向的学生学习计划和课程体系进行探讨,重新对教学内容进行定位,总结出一套有效的硬件课程教学体系和教学方法。
关键词:硬件课程;教学体系;项目驱动;系统性
随着计算机硬件技术的迅速发展,各类硬件产品越来越多地应用到人们的生活中。因此,业界对硬件类技术人员需求急剧上升。然而,嵌入式之类的硬件系统开发需要的是软硬件紧密结合的复合型人才;通常企业不愿花费太多的人力物力去培养。而一般本科院校的计算机类专业由于实验设备和传统偏软的教学体系,造成毕业生对硬件知识的欠缺或掌握不够系统,不具备业界需求的硬件系统开发能力[1]。技术发展和硬件类产品的大量应用带来了对硬件开发工程师的巨大需求,这给计算类专业学生带来了新的机遇,但同时也对学校的教学体系和学生能力培养提出更高的要求。
一般本科院校在开展硬件类知识和技术方面的教学中通常有如下一些问题:
1) 院校投入了大量的硬件实验设备,但是学生硬件开发能力的提高并不明显;
2) 学校开设的硬件类课程衔接不够紧密,使学生对课程之间的联系掌握不够;
3) 理论教学时间多,实践教学时间少,实验设备利用率低;
4) 学生面对具体的硬件项目开发时,无从着手或知识能力欠缺。
而在学生方面,通常也存在一些问题:
1) 很多学生对硬件知识学习有一种畏惧心理,从而造成学习信心不足;
2) 硬件学习需要花大量的时间,而且效果并不像学习软件一样直观,很多人都失去深入学习的耐心;
3) 软件实践需要的器材很容易满足,一般就是PC+软件,而有些硬件(扩展)实验门槛较高,实验环境难以搭建;
4) 由于硬件的集成度高,学生只能从理论上掌握硬件底层细节,容易形成硬件盲区,学习积极性容易被打击。
随着对硬件开发人员需求的不断增大,近年来在计算机类专业硬件教学方面也提出了一些有效的方法,如文献[2]对硬件教学的系统性进行了一定的探讨;文献[3]对陈旧的硬件教学内容进行了改进;文献[4]对硬件实践教学提出了一些看法。而本文则结合当前流行的嵌入式硬件开发,在多个硬件系统项目开发的基础上,总结了提高硬件开发能力所需要的知识和涉及到的相关课程,并对课程之间前修后续关联进行了合理的安排,建立了一套行之有效的硬件课程教学体系。
1硬件类课程体系设置
学生硬件开发能力的培养涉及到多个学科的课程,包括计算机和电子等专业的课程,还与具体应用背景的一些专业知识有关。具体的课程包括模拟电路、数字电路、嵌入式微处理器、操作系统、程序设计语言、软件开发技术、接口技术与设计、嵌入式操作系统及底层驱动等技术,是软件、硬件的有机结合。在制定硬件人才培养计划时,既要拓宽深度和广度体现硬件系统具有软硬结合、面向具体应用的特点,又要注意与原有的计算机专业课程体系相兼容。
因此,需要在原有的计算机专业课程基础上进行调整,有针对性地增加一些硬件类课程和实践教学环节,增加学生对硬件方面的知识,有效地提高学生的综合性动手能力和具体应用产品和项目的开发能力,并激发学生的学习积极性。
课程调整将与硬件系统开发的相关专业、相关课程合理地散列在低年级的各个学期,留给学生足够的时间去钻研、消化和深入,培养学生扎实的知识背景和基础能力。同时,为几门相关性比较大的课程或者重要性相对突出的课程,设置一些综合性课程设计,让每个学生感觉到一定的成就感,给予一定的动力。另外,设置一些独立性实验,几个人一组,让学生自己查资料,自己设置实验方案等,独立完成。通过上述的这些锻炼后,能很大程度上提高学生团队协作能力和自学能力,提高学生综合素质。具体的课程体系设置图1所示。
从图1可以看出,课程之间都是有很强的关联性,先修课程与后继课程之间需要进行重要知识点的衔接,才能逐步培养学生具有硬件系统开发能力。在学生每修完一门课程,就开设一门能覆盖重要知识的综合课程设计。通过完整的工程项目案例教学,系统地提高学生的综合能力,培养学生具备到企业去做实际项目的实践能力和开发经验。充分满足业界对硬件开发人员的能力要求。
2硬件课程的教学方法和实践
培养学生硬件开发能力,一些基础课学习必不可少,如数字电路、模拟电路、C语言、数据结构、计算机组成原理、操作系统等。如果这些基础知识掌握不牢固,学生在后续专业课程的学习中会感到力不从心。另外,由于硬件知识的学习十分抽象,脱离实践去学习可能会举步维艰。因此,在教学方面要解决“重理论轻实践”问题,贯彻“理论教学与实践教学相互印证和支撑”,将多种实验课程贯穿于课程教学体系中,以提高学生学习效率和知识掌握的熟练程度。下面分几个方面对教学环节中的一些方法进行讨论。
1) 理论课堂教学。
在理论课上,教师通过对具体理论知识点的实例演示,同时穿插对理论知识点讲解,让学生们理解的更具体,从而激发学生的学习兴趣,也间接提升学习信心。学生在课后让依照课堂的演示实验自行进行实例的重复和知识点的验证。如在“嵌入式系统原理与接口技术”课程中讲解串口的传输和实现,教师在课堂上围绕验
证S3C2410芯片的功能进行讲解,并在课下开放实验室让学生自行学习,以提高学生独立思考和分析解决问题的能力。
2) 实验课教学。
在实验课上,教师结合理论课上所演示的实验,讲述具体的实验内容,但并不需要完全透彻地讲解,而是把更多的时间留给学生自己思考。如“嵌入式操作系统及应用”课程的实验,教师在课上演示如何建立SAMBA服务器实现开发环境,简要地阐述一遍实验的原理及其过程,把更多时间留给学生,让学生自己建立SAMBA并建立通讯,鼓励同学间的相互讨论和提出问题。
3) 单门的课程设计。
课程设计以设计性和综合性实验为主,在一学期的理论学习和实验的基础上,进一步提高学生对整门课程知识的理解以及对相应基础课程知识的复习,并培养学生一定的动手能力。如操作系统课程设计“银行家算法实现进程同步”结合了C语言、数据结构等知识,不仅可以复习巩固一系列相关课程知识,我们还对这些课程知识进行汇总,设计出综合性课程设计,提升学生知识体系的系统性。课程设计指导书按照知识要点,循序渐进,对这些基础知识进行了进一步的综合,从而使学生将离散的知识点逐步综合起来,增强了其实践能力。
4) 综合性实践。
在学习完各门基础课程之后,教师采用适当的工程案例开展一站式综合案例教学:
(1) 讲解具体项目的知识点,并将它们联系起来;
(2) 将同学们按项目分成小组,引导各组进行项目的讨论并完成具体设计,这样不仅可以提高学生的动手能力,还能培养学生的工程素养和综合能力。
3课程体系验证
通过该课程体系的培训,学生能够具备一定的硬件系统开发能力。下面就通过一个学生实践创新项目——机房温度湿度检测硬件系统的开发来验证课程体系的有效性。
该项目的系统原理图如图2所示。系统采用ARM7系列LPC2114芯片作为控制单元,外围设备包括温度、湿度传感器、降温通气设备控制接口、键盘和液晶显示屏。其中键盘和液晶显示屏作为系统与人机控制的界面,这些外围设备采
用RS-485通信接口方式和计算机实现远程控制,如及时给用户发送信息,用户对设备进行操作、处理等。
通过图2可以清晰地看到计算机与电子专业的结合:
1) 学生在选择相关的外围设备时需要用到一定的数字电路和模拟电路等技术知识,并了解相应的参数;
2) 选好了各种款式的电子设备后,需要设计可靠的外围电路,这更需要学生在电子技术实验中获取的经验;
3) 选好了硬件外设和控制芯片之后,将这些设备与CPU进行连接,就需要用到计算机组成原理和嵌入式接口技术相关的知识;
4) 接着,需要编写相应的驱动,这将涉及嵌入式操作系统和程序设计方面的知识。
当上述步骤完成后,系统可以通过传感器获取需要的外部信息。但还需要对所采集的信号进行处理,然后将处理后的信息反映到显示器上,用户还可以通过相应的设置,进行一些简单的设置,在这里就会用到如A/D转换、通信原理、数据结构和算法设计等相关知识。
系统设计完成之后,学生通过Protel绘制电路图,制作电路板将所有的外设和芯片集成起来,安装操作系统和编写好的控制软件,这样就形成了可以实际应用的一个硬件产品。
4结语
通过这种以完成项目为每门课程最终目的的方式,强调“授之以渔”的教学宗旨,使得学生每学完一门课程就能解决一些相应的实际问题,很好地提高学生的动手能力和对学科的积极性,从而有效地培养了学生的实践能力。
参考文献:
[1] 刘全利,黄贤英,杨武. 计算机应用型人才培养新思路[J]. 重庆工学院学报,2005,19(6):144-145.
[2] 易法令,谢云. 计算机硬件教学的系统性与实践性探讨[J]. 理工高教研究,2005,24(1):83-84.
[3] 艾德才. 大学计算机硬件教学内容改革势在必行[J]. 计算机教育,2005(3):76-79.
[4] 黄家瑜,李云. 计算机硬件实验教学改革的探讨[J]. 福建师范大学学报,2005,21(2):111-114.
因篇幅问题不能全部显示,请点此查看更多更全内容