电子信息类专业嵌入式系统课程教学内容改革

2022-11-24 20:12敖天勇宫德龙
河南广播电视大学学报 2022年2期
关键词:电子信息嵌入式编程

敖天勇,宫德龙

(1.河南大学 人工智能学院, 河南 郑州 450046;2.河南大学 设备处,河南 开封 475004)

随着国家产业转型升级战略的深入推进,社会对人才尤其是创新创业人才的要求越来越高。高校作为高层次人才培养的重要基地,在创新人才的培养上更是担负和履行着不可推卸的责任和义务。在大学生中进行创新创业教育是当今高等教育改革的一个重要突破口。[1]嵌入式系统作为一门应用性和综合性很强的课程,非常适合进行创新创业教育。[2]近年来,许多高校的电子信息类专业开设了嵌入式系统课程,但嵌入式系统技术发展日新月异,目前该课程的教学内容跟不上社会需求变化和技术发展步伐,同时培养的学生在理论知识、动手能力、工程规范素养、创新意识等方面难以满足社会需求。[3]因此,如何适应社会需求变化与技术发展,提高嵌入式系统课程的教学质量,培养满足社会需求、具有创新精神和创业意识的嵌入式系统人才,是亟待解决的教学任务。

针对嵌入式系统的教学改革,许多学者从不同侧面进行了探讨。马忠梅强调由于嵌入式系统涉及多个学科知识,各个专业的嵌入式系统教学内容应有所侧重。[4]吴昊等从双创背景下探讨了嵌入式系统课程体系建设问题。[5]张晓东等探索了基于CDIO理念的嵌入式系统教学模式改革。[6]孙宇丹从工程教育认证角度探讨了嵌入式系统教学改革,认为应将更多的实际案例融入教学中。[7]也有不少人对嵌入式系统的实验教学体系展开研究。[8]但目前面向电子信息类本科生的嵌入式系统教学内容应该如何取舍,相关研究成果甚少,缺乏理论指导。因此,面向电子信息类本科专业,如何组织嵌入式系统教学内容是一个值得研究的课题。

成果导向教育理念(OBE)以成果导向、学生为中心、持续改进为三个基本理念,其合理性已经得到广泛认可。[9]本文采用OBE理念,基于人才需求现状及技术发展趋势分析,确立嵌入式系统的课程内容体系改革方案。

一、嵌入式系统课程教学现状分析

目前,在电子信息类本科专业的嵌入式系统课程教学中存在以下主要问题。

(一)知识点多,课时有限,教学内容组织困难

嵌入式系统教学内容涉及电路、微机原理与接口技术、ARM处理器、C语言、操作系统等相关知识,具有很强的综合性和实践性。但在电子信息类专业人才培养方案中,该课程教学时间通常只有40—72课时,教学内容难以全面覆盖嵌入式系统内容,蜻蜓点水式涉及各知识点,又容易让学生感觉没有学到真东西。

(二)学生知识结构不合理,入门难,教与学脱节

在电子信息类本科生培养方案中,前期课程中学生通常只学习了51单片机,而嵌入式系统中多采用ARM系列处理器。由于新知识点多、硬件系统庞大、代码复杂,会让初次接触嵌入式系统的本科生感到一头雾水,易产生畏难情绪,缺乏学习积极性。同时因教学内容多,教师的教学进度快,因此,师生交流缺乏,教与学容易脱节。

(三)嵌入式系统知识与技术更新快,课堂教学内容与实际应用需求相距较远

目前嵌入式系统教学内容还有许多是基于ARM9/ARM7处理器,甚至是51处理器。但是在实际应用中,主流的嵌入式处理不断推陈出新,在高端应用中已经过渡到A9,甚至是A78等系列处理器,而ARM9处于高低端应用两不就的尴尬地位。

因此,为避免因内容陈旧、知识点多、入门难而使学生失去学习兴趣,需要根据各专业特点对嵌入式系统的教学内容侧重点做好规划。

二、嵌入式系统课程内容体系确立分析

嵌入式系统作为一门应用性和综合性很强的课程,其在选取教学内容时需要综合考虑人才需求、技术发展状况、专业培养目标及课程特点。

(一)从人才需求方面看课程内容选择

培养满足市场需求的人才是高等教育的重要使命。本文在“前程无忧”招聘网站上,以“嵌入式系统”为关键字,检索获得了5724条招聘信息。对这些招聘信息中技能要求进行深入分析后发现:市场上需求的嵌入式系统人才主要分为嵌入式系统硬件工程师和软件工程师两大类,这两类人才都需要掌握嵌入式系统的基本原理和开发流程,具备C/C++编程能力、自学能力和解决问题的工程素养。嵌入式系统软件工程师还需要熟悉嵌入式操作系统知识,具备嵌入式操作系统移植技能,基于嵌入式操作系统的多任务开发经验,常用接口设备驱动程序开发能力,熟悉GCC等开发工具;嵌入式系统硬件工程师还需要掌握嵌入式处理器知识、接口电路设计知识,具备常用嵌入式系统片上硬件资源的开发与编程能力。

(二)从技术发展状况看课程内容选择

当前嵌入式处理器种类较多,嵌入式系统教学内容的选取必将涉及使用哪类处理器平台,以及采用何种软件编程开发方式等问题。

1.处理器平台的选择

选用主流的嵌入式处理器,有利于教学内容与市场接轨。常见的嵌入式处理器有ARM、MIPS、ARC、PowerPC等。从市场占有率看,ARM 处理器占据嵌入式市场绝对地位。目前ARM公司的嵌入式处理器以Cortex-A、Cortex-R、Cortex-M三个系列为主。Cortex-A系列面向高性能应用场景,产品更新速度快。Cortex-R系列面向高可靠性的实时嵌入式系统应用场景。Cortex-M系列面向微控制器应用场景,应用范围广,产品比较稳定。

从教学的角度看,Cortex-A系列更新速度快,系统复杂,教学内容更新难以跟上其应用发展速度,教师需先学后教,待学生毕业后所学的产品可能已经退出主流市场。Cortex-R系列应用场景对设计者要求较高,不适合初学者。Cortex-M系列产品稳定、开发难度适中、应用范围广。因此,选择Cortex-M系列处理器比较适合电子信息类专业本科生。

2.软件编程开发方式的选择

随着嵌入式处理器性能越来越高,系统应用场景日益多样化,但开发周期要求越来越短,用汇编语言开发项目难以适应市场需求。ARM公司联合众多厂家推出了CMSIS软件接口标准库,基于库函数进行嵌入式应用开发是一种高效的编程开发方式,已经成为主流。因此,在软件编程开发方式上,应当加强基于C语言和库函数的编程能力培养。

(三)从教学质量国家标准看课程内容选择

从《普通高等学校本科专业类教学质量国家标准》推荐的电子信息类专业核心课程体系上看,该类专业学生系统地接受了C语言、微机原理、电路设计等知识,但操作系统相关课程未被列入。由于嵌入式系统具有专用性特点,其开发人员既要具备硬件设计能力,还要具备嵌入式系统软件编程能力。因此,面向电子信息类专业的嵌入式系统课程内容,适合以偏向嵌入式系统硬件开发知识为主,兼顾培养学生的嵌入式系统软件开发的编程能力。

(四)电子信息类专业的嵌入式系统课程培养目标

综合上述分析及《普通高等学校本科专业类教学质量国家标准》中规定的电子信息专业类培养目标[10],本文给出一个面向电子信息类本科专业的嵌入式系统课程的培养目标:培养理解嵌入式系统的基本概念,熟悉嵌入式系统基本结构、Cortex-M系列处理器结构,掌握常用嵌入式系统片上硬件资源的工作原理、基于库函数的嵌入式系统开发方法及相关开发工具,具备良好的学习能力、实践能力和创新创业意识,可从事嵌入式系统的应用与开发领域工作的高素质专门人才。

三、新教学内容安排方案

根据上述分析,提出了面向电子信息类专业的嵌入式系统课程教学内容安排方案。该方案结合电子信息类专业知识结构特点,面向市场中嵌入式系统工程师职业需求,以嵌入式系统的基本概念、嵌入式处理器基础知识、常用嵌入式硬件资源知识、软件编程知识为主体,以嵌入式系统应用开发实践为手段,辅以嵌入式操作系统基本知识,注重基础知识和实践活动,能够有效解决知识点繁多、课时有限、教学内容组织困难等问题。

新教学内容安排的总课时为54学时,其中理论课36学时、实践课18学时。另外,有一个课外的课程设计实践与演示环节,作为期末考核形式。下面具体介绍理论教学和实践教学安排方案。

(一)理论教学

内容上分为5大知识模块,各知识模块的教学内容及目标如下。

知识模块1:嵌入式系统基本概念(3学时)。知识点包括:嵌入式系统的构成、应用场景、发展趋势;常见嵌入式处理器和嵌入式操作系统简介;嵌入式系统软硬件开发方法;嵌入式系统实验硬件平台介绍及演示。教学目标是理解嵌入式系统的基本概念、软硬件开发方法,用演示激发学习兴趣。

知识模块2:嵌入式微处理器知识(6学时)。知识点包括:Cortex-M系列处理器特点简介;Cortex-M3处理器的体系结构;处理器的操作状态与模式;Cortex-M3存储系统;CMSIS软件标准接口模型;编程模型。教学目标是掌握常用嵌入式处理器的体系结构、存储系统及编程模型。

知识模块3:嵌入式处理器的常用片上外设(18学时)。知识点包括:时钟系统;GPIO工作模式及基于库函数的操作方法;USART配置方法及应用;中断系统及应用;定时器的捕获、比较、PWM等工作模式及应用;FSMC控制器及其访问存储器应用;LCD操作方法及应用;IIC及SPI等常见片上外设操作方法。教学目标是掌握嵌入式系统中常用片上外设的工作原理及其基于库函数的开发方法。

知识模块4:软件开发环境及库函数编程方法(3学时)。知识点包括:MDK软件环境安装及使用方法;标准库函数基础知识;基于库函数的软件开发方法及演示。教学目标是掌握嵌入式系统软件开发环境,基于库函数的编程基础知识与技能。

知识模块5:嵌入式操作系统基础知识(6学时)。知识点包括:嵌入式操作系统的作用;并发操作系统的概念;多任务与处理器之间关系的处理模型;任务的基本要素;操作系统下多任务开发方法。教学目标是掌握嵌入式操作系统上进行多任务开发的基本原理和基本方法。

实践中发现若将操作系统中抽象的概念和原理融入案例中,采用动画演示,将复杂问题简单化、抽象的理论具体化,6学时也能使学生理解嵌入式操作系统的相关概念和工作原理,为以后从事涉及嵌入式操作系统相关工作打下基础。

(二)实践教学

实践环节知识点包括:GPIO应用实验、中断应用实验、串口通信应用实验、定时器应用实验、LCD与触摸屏应用实验、综合性设计实验及课程设计。教学目标是掌握常用嵌入式系统的软件开发方法,学以致用,培养动手能力和创新能力。

在实践教学平台上,采用带有STM32F103ZE嵌入式处理器的开发板进行实践教学。该处理器是意法半导体公司推出的集成Cortex-M3内核和多种片上外设的嵌入式处理器,当前被广泛使用。与传统的实验相比,开发板具有成本低、携带方便、电路简洁、易上手等优点。在学期初为每组同学分发一套嵌入式系统开发板,供学生在整个学期内自由练习使用。教师录制嵌入式系统编程开发入门环节的演示视频资源,供学生课下学习,借以拓展课程教学的时间和空间。这种方式可操作性强,能够激发学生的学习兴趣,很大程度上解决了嵌入式系统学习入门难的问题。

实践教学内容从难度和培养目标上可分为三个层次。

第一层次是GPIO、串口等硬件应用的基础实验。目的是使学生了解嵌入式系统的开发流程,熟悉软件开发环境,掌握基于库函数开发嵌入式系统的编程方法。这部分实验教学穿插于各理论教学环节中,在对应硬件资源理论知识讲解之后进行,使学生能够及时将理论应用于实践,提高学习兴趣。

第二层次是综合实验。综合应用所学的知识,实现一个给定任务的嵌入式系统应用,如模拟粮仓温/湿度采集显示与报警系统,车联网应用模拟等。这部分实验放在最后一个项目中进行。教师给出任务目标、任务分解、系统结构设计等具体指导,学生自己进一步完成设计与实现。目的是培养学生综合运用所学知识进行嵌入式系统开发的能力。

第三层次是课程设计。以实验开发板为基础,通过增加外设,实现功能完整的嵌入式系统应用产品。学生自主选题,自主设计。教师提供学生所需的外设模块,如指纹识别、GPS模块、蓝牙、WiFi、加速度计等几十种硬件模块,也会根据学生的设计方案购买相关硬件供学生使用。这部分实践活动由学生在课外时间完成,教师定期进行线上、线下指导,及时解决学生遇到的问题。最后安排学生进行演示与答辩,并作为课程考核的一部分。在这个过程中,鼓励学生进行创新设计,同时鼓励创意较好的项目进行创业项目拓展,参加竞赛。教学目标是提升学生综合应用所学知识能力,培养创新创业精神。

(三)课程考核

课程考核方式,借鉴OBE理念,以“平时过程考核+课程设计考核”并重形式进行。平时过程考核部分包括出勤率、课堂表现和课内实验表现等。课程设计考核不仅能考查学生的嵌入式系统综合设计与开发能力,而且能够促进学生自学,还能够培养创新精神和创业意识。

四、结语

本文提出的嵌入式系统教学内容改革方案充分结合了人才市场需求、技术发展趋势和电子信息类本科专业特点,教学内容完整、与时俱进。实践环节将基础实验、综合实验以及自主创新课程设计三个层次有机结合起来,既能提高学生的实践能力,又能以项目驱动形式培养学生的创新精神和创业意识。该教学内容改革方案在河南大学电子信息类专业本科生中经过了三年多的实践检验,取得了良好的教学效果。学生能够利用所学的嵌入式系统知识参加多种学科竞赛,每年均有多名同学获省级以上奖励,毕业生也获得了多家用人单位的肯定。

猜你喜欢
电子信息嵌入式编程
利用计算机技术进行电子信息控制与处理的措施探讨
基于IMX6ULL的嵌入式根文件系统构建
元征X-431实测:奔驰发动机编程
四张榜单“揭秘”电子信息百强浙企
上半年我国规模以上电子信息制造业利润总额同比增长27.1%
元征X-431 PADⅢ实测:斯巴鲁森林人(FORESTER)在线编程
纺织机上诞生的编程
学编程,先画画
电子信息制造业继续保持较快增长态势
高校图书馆开展嵌入式信息素质教育的思考