APP下载

基于胜任力模型的嵌入式系统串口通信教学实践

2022-05-30窦亚玲陈明徐鹏飞

电脑知识与技术 2022年29期
关键词:工程能力胜任力模型嵌入式系统

窦亚玲 陈明 徐鹏飞

摘要:CC2020采用“胜任力”作为计算机教育项目的主导思想,从基于知识的学习过渡到基于胜任力的学习。嵌入式开发应用领域对人才的需求促进课程体系的进一步革新:从知识(是什么)、技能(如何做)、品行(为什么)三个维度构建胜任力模型综合培养学生,使其能够胜任未来计算机及其相关工作。教学实践中以最基本的串口通信协议的应用开发为蓝本,在STM32F4系列芯片上完成项目任务。实践表明学生的专业热情与工程能力得到提升。

关键词:胜任力模型; 嵌入式系统; STM32;串口通信协议; 工程能力

中图分类号:TP393        文献标识码:A

文章编号:1009-3044(2022)29-0107-03

1 引言

国际 ACM/IEEE 计算课程体系规范(Computing Curricula,简称 CC 规范)中最新的CC2020 采用“胜任力”(competency)一词来代表所有计算教育项目的基本主导思想。胜任力模型,强调元学科规范(meta curricula),融合知识(knowledge)、技能 (skills)和品行 (dispositions)三个维度的综合能力培养,加强了对职业素养、团队精神等方面的要求[1]。这将促进实现我国“新工科”建设所强调的“以能力培养促进工程科技创新和产业创新”的目标。

信息产业对嵌入式方面人才的需求量倍增,诸多高校计算机、电子及其相关专业中都开设了嵌入式系统课程。越来越多的教学团队开展了协同育人模式下走产学研相结合的改革探索[2]。以工程教育认证的理念和标准对嵌入式系统课程实践体系进行改革和创新,能提高学生的应用能力和创新能力[3]。采用项目式实训模式,以项目推动教学过程,能有效培养学生的工程能力[4]。总之,嵌入式系统课程以应用为中心,实践性和工程性强,教学过程中需要理论与实践有机结合,实践知行合一[5]。

作者所在的教学团队在多年的嵌入式系统课程一线教学实践中,逐步形成了可持续发展的培养工程能力的课程体系,结合不断创新的教学模式对课程模块进行精细化打磨[6]。通用同步/异步收发(Universal Synchronous Asychronous Receiver/Transmitter,USART)是实现模块与模块之间通信的最简单、最基本的串口通信协议。围绕串口通信协议这个具体的教学情境,将知识、技能、品行三个维度有机结合,构建胜任力模型,“知道是什么”“知道如何做(技术诀窍)”“知道为什么”。从底层激发学生的专业认同感,进一步提升工程能力。

2 胜任力模型驱动下的USART协议教学实践

本实践中主要使用的教学资源包括:STM32F407T6芯片开发板、J-Link仿真器SWD接口、STM32F4xx固件库、编程语言C、代码编辑软件Source Insight4、开发编译软件Keil5。教学在实训教室进行,学生在“做中学 ”。教学时长是连续的4学时,有利于该教学单元实践知行合一。

2.1 胜任力模型的构建要义

计算机教育正逐步从基于知识的学习过渡到基于胜任力的学习。学习的迁移是多方面的,融合了知识、技能和品行。任何勝任力的定义都可以表示成:胜任力=知识+技能+品行,CC2020给出胜任力模型的概念结构[1]见图1。

这个概念结构中包括四个组件:三个维度+任务,需要说明四点如下:

1)对知识的描述是“知道是什么”,也就是要熟知对应知识的核心概念,需要把知识点明确、精准地提炼出来。不仅仅是抽象的,应该是具化的。这里的知识是为了应用,是可以融会贯通应用于新的场景中。比如串口通信的知识点以PC机与开发板之间通过UART1接口实现,那么对应的知识点一样用于手机与开发板通过蓝牙模块通信中。

2)对技能的描述是“知道如何做”,掌握了技术要领,通过C语言编程,STM32固件库函数等有意识地训练,逐步形成完成PC机与开发板之间通过串口通信协议收发数据的任务。

3)对于品行的描述是“知道为什么”,品行与元认知意识有关,包括负责任、适应性强、灵活、自我导向和自我激励,以及自信、正直和自我控制,还包括如何与他人合作以实现共同的目标或解决方案。这个维度在实际教学环境中很容易被教师忽视。简单说,就是学生执行课程任务的意愿以及知道何时以及如何进行这些任务。通常,学生被动接受知识,不知道为什么学?怎么学?学了有什么用?又怎么去用?我们希望通过这个维度的融入可以从底层激发学生的认同感与热情,让知识和技能两个维度更好地落实。

4)对于任务的描述是一种让胜任力三个维度具化的组件,任务提供了三维度落地的环境。教学中我们给出具体的任务如:实现PC机发送控制信号给STM32F407T6芯片开发板,实现对外部设备的控制。这个任务背景下,必需用到串口通信的相关知识、程序设计解决问题的技能以及明确如何才能完成这个任务。

2.2 USART协议的教学设计

围绕胜任力模型的概念结构,以USART 串口通信协议为教学案例,结合STM32F4xx数据手册与固件库函数,给出知识、技能、品行以及任务四组件的设计要点。其中,表1给出胜任力概念模型三个维度的具体设计要点。其中,品行一项没有采用模型中的适应性、协作性、创造性、严谨性等元素描述而是具化成培养这些品行的实施要点,比如:固件库编程中的“规范”“细致”对应品行中的严谨性元素;教师示范烦琐的时序编程过程,反衬控制器的优越性,对应品行中的主动性元素。表2给出分阶段性任务设定目标、要求、角色和约束等要素。

2.3 USART协议课程教学实施过程

胜任力模型的概念结构中的任务充当着引导、驱动的作用,同时给知识、技能、品行三维度提供环境。任务贯穿始终,教学实施的流程就是从引出任务、分析任务,处理阶段性任务,到最终完成任务的过程。

Step 0:引出任务,激发学生的主动性,提升目标导向

“PC机发控制命令给开发板控制流水灯与蜂鸣器”,类似任务:“手机发控制命令控制流水灯与蜂鸣器”,抽象任务:A发控制指令控制B完成各种操作。

Step 1:分析任务,引导学生分析问题,主动理顺解决问题的所需的知识和技能。

教学实施中分析“PC机发控制命令给开发板”首先想到怎么“连接PC与开发板”,分解出准备阶段的阶段性任务。进一步分析这是通信双方数据收发的问题,最简单的解决方案就是用USART协议解决,就自然过渡到学习知识的环节。这个知识的学习就是主动性学习,是为了有能力解决实际问题的学习。

Step 2:分解测试子任务,引导学生把大任务分解成阶段性任务。

到这一步,协议原理知道了,设备连接了,怎么实现?此时需要教师引导,先分解出一个测试子任务。教师引导:“开发板没有输出显示设备,开发板发送/接收到数据?怎么可见?”学生主动学习完成printf库函数的输出重定向代码实现。在完成重定向这部分代码的时候,学生通常会对代码表示不理解。此时数据收发的知识点就适时出现。所以,在胜任力模型的驱动下,知识点,技能在流程中的步骤不是固定、死板的,是随着任务推进,学习者的主动参与而适时出现。因此,基于胜任力模型的教学设计是十分有必要性的。

Step 3:解决终极任务的前半段,也就是基本子任务:开发板通过UART1实现字节数据的收发。

这个阶段是完成终极任务的关键步骤,对学生的综合能力要求比较高。教师可以逐步引导:“MCU控制外部模块需要通过GPIO”,学生依照之前技能完成GPIO初始化;教师接着用伪代码写出USART协议收发数据的时序,问学生可行吗?学生通常面露难色表示不解。教师顺势引出STM32F4xx的串口控制器及对应的数据手册。虽然数据手册的这部分内容不容易理解,但是阅读数据手册是工程能力培养的必要环节。教师接着引导:“控制器怎么接收,怎么发送,流程是什么?怎么控制这个过程”,学生通过STM32固件库函数完成串口初始化编程。最后到了数据收发部分,虽然可以采用轮询方式实现但效率低,中断方式是更优选择。教师进一步给出“中断配置”与“中断响应函数”的要点,学生自主完成编码。

Step 4:基本任务完成后,解决终极任务的后半段。其中,流水灯和蜂鸣器的编程已经实现,只需要调用相关代码就好。因为接收函数返回值是字符数据,这个细节处理,学生可以自主发现问题并解决。

Step 5:限时考核。

从两个方面评分,其一是终极任务是否完成;其二是代码的工程规范。

表2中罗列的扩展任务是为课程实训项目准备的,比如,在智能小车的课程实训项目中,手机控制小车行驶时就需要用到扩展任务。

3 胜任力模型下教学实践分析与教学效果

从以知识为中心的学习行为变迁成以胜任力为中心的知识、技能和品行与任务四个组件有机融合的学习行为,是基于胜任力模型开展教学时带来的改变。知识不再是静态的,而是融合在技能中,演变成了动态行为。知识、技能不再是被动接受与吸收的存在,而是为了培养学习者的适应性、协作性、创造性、严谨性、专业、责任感、主动性、自我指导等一系列围绕职业道路需要具备的品行所必需的主动存在。任务的驱动让整个教学过程更加顺畅而高效。

教师在这个模型中是设计者、引导者,推进整个学习行为有序向着可以明确量化的目标前进。学生在这个模型中始终是主体,是学习者本身被激发,被任务驱动,不断发现问题、主动学习知识,训练技能(编程能力),从而解决问题,进一步发现新问题,进入新的循环。一个个不断迭代的过程中,品行维度的加入被重视,丰富完备了培养全流程。

对2019級软件工程、计算机科学与技术两个专业,三个班级150余名学生的教学反馈信息进行统计分析,结果表明:

(1)知识点变得简练,是为完成任务而生,不用割裂地死记硬背,体会到学以致用。

(2)终极任务如同大BOSS,不断分解成子任务,如同升级打怪,主动性被激发。

(3)看似简单的编码流程,实际编写中各种忽略一致性、不细致导致问题,坑自己的原来就是自己。

(4)限时考核,给了无形的压力,同班级卷一卷,是压力也是动力。

(5)课程群中同学分享的心得如同及时雨,不断被同伴启发到,互相点亮而不是互相抄袭。

(6)固件库函数、代码工具、代码工程规范与业界同源,大学学的就是企业需要用的。

(7)课程线下线上同步,课程视频可以回看,对自认为反应慢半拍的学生有利。

95%学生认为课程学习带给自己的压力与动力共存,支持这种模式的教学实践。能够在课堂期间完成任务的学生不到60%;能够主动在下一次课程前利用课余时间完成任务的占90%。80%学生表示嵌入式方向会成为职业选择的考虑方向。

4 结论

CC2020是全球计算机教育专家共同制定的计算机类专业课程体系规范,是国内外一流计算机专业制定课程体系时的重要指南。“胜任力”作为所有计算教育项目的基本主导思想,其目标就是从知识、技能和品行三个维度,使学生胜任未来计算相关工作内容。将胜任力模型的概念结构运用到嵌入式系统教学设计中,量化、具化这些维度元素,让教学变得动态可持续生长,可以从底层激发学生的专业认同感,提升工程能力。

参考文献:

[1] ACM/IEEE CC2020 的中文版. https://www.acm.org/education/curricula-recommendations.

[2] 邓清勇,龙赛琴,周龙.协同育人模式下的嵌入式系统课程改革与实践[J].计算机教育,2022(3):143-147.

[3] 苏晓峰,王海涛,张平,等.工程教育认证背景下微机与嵌入式系统实践教学改革与探索[J].科技创新导报,2020,17(17):216-217.

[4] 孙青,李辉勇.面向学生工程能力培养的嵌入式系统设计实训课程教学改革实践[J].计算机教育,2020(3):136-140.

[5] 李江昊,刘丰,王伟.理论实践强结合性课程知行合一教学改革与探索[J].计算机教育,2020(6):179-183.

[6] 窦亚玲,刘金平.PBL模式下的嵌入式系统中断机制教学案例[J].电脑知识与技术,2021,17(33):170-172.

【通联编辑:王力】

猜你喜欢

工程能力胜任力模型嵌入式系统
胜任力模型在煤炭销售企业人才评估中的应用研究
纺织工程专业工程能力培养体系初探
基于CDIO的网络服务配置与管理课程教学改革探讨
民营企业招聘过程中存在的问题及对策分析
基于胜任力模型的电子商务专业大学生素质结构研究
基于物联网项目驱动的嵌入式系统教学改革的研究与实践
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究
基于“卓越计划”的机械制图课程教学改革初探
基于“3CE+B”模式的电子信息科学与技术专业课程体系改革