朱建忠 贾云浪
摘 要:在嵌入式技术快速发展的今天以及工程认证的需要,嵌入式作为一门实践性较强的课程,存在教学工作量大、知识点多、难以考核量化等问题,因而教学改革的实施势在必行。该文从工程思维出发,结合工程认证的需要,在理论教学和实践教学的开展过程中,提出一些教学改革措施,强化学生工程思维的能力,解决教学偏离实践需要、实验教学不够系统等问题。
关键词:嵌入式系统 工程思维 工程认证 课程教学
中图分类号:G642 文献标识码:A文章编号:1672-3791(2020)11(a)-0028-03
On the Teaching of Embedded System to Cultivate Students' Engineering Thinking Ability
ZHU Jianzhong JIA Yunlang
(Nanjing Institute of Technology, Nanjing, Jiangsu Province, 210009 China)
Abstract: With the rapid development of embedded technology and the need for engineering certification, as a practical course, embedded system has many problems, such as heavy teaching workload, too many knowledge points, and difficult to assess and quantify. Therefore, the implementation of teaching reform is imperative. Starting from engineering thinking, combined with the needs of engineering certification, this paper puts forward some teaching reform measures in the process of theoretical teaching and practical teaching, so as to strengthen the students' ability of engineering thinking, and solve the problems such as teaching deviation from practical needs and insufficient experimental teaching system
Key Words: Embedded system; Engineering thinking; Engineering certification; Course teaching
嵌入式系統在工业生产的很多领域都有应用,其渗透度非常高,如航空航天、通信电子、汽车电子、电气工程、计算机科学等[1]。为了满足社会需求,嵌入式系统的教学走进了大学课堂,并得到快速发展。一般而言,嵌入式系统的课程教学,是从传统的单片机和微机原理等相关学科发展演变而来,涉及到硬件、软件等科目的学习和实践。在教学开展过程中,学生应具备一定的C语言编程能力、硬件电路设计和分析能力、硬件调试能力、程序调试能力,因而,给学生在短时间内掌握嵌入式系统的精髓设置了很高的门槛[2]。
1 课程教学现状
在教学初期,嵌入式的教学还是沿用单片机和接口技术的教学理念,将已有的教学思维和方法作用于嵌入式系统中,简单地堆叠和搬运,带来了很多问题[3]。
1.1 知识点多,课时不足
在硬件嵌入式系统的硬件教学过程中,相关知识点有中断、定时器、总线、串口、GPIO、电源、元器件功能等。而程序软件学习过程,相关知识点有寄存器、驱动编写、操作系统等。就某个知识点的教学,动辄2学时,多则10多学时,而对于嵌入式系统,最大学时一般不超过64学时,如何将有限的课堂教学作用于如此多的知识点,是这门课在教学过程中面对的难点。
1.2 理论教学饱满,实践教学欠缺
当仅有的64学时被分割成两个部分,而理论教学的知识点繁多,使得理论教学会挤压实践教学的时间,实践课程时间不能保证会直接影响到教学效果,以及教学目标的达成。
1.3 实验针对性强,系统性不够
针对相关知识点,虽有实验辅助教学渗入,但实验的设计过于陈旧,知识点的针对性验证越强,带来思维的束缚就越明显。比如,GPIO的功能非常强大,可以用于除模拟功能的所有数字输入输出功能,即,当某一功能因引脚分配或功能复用冲突而致无法采用对应引脚实现,可采用任一GPIO引脚模拟实现,这样给设计带来更多柔性空间。不仅如此,通过GPIO的模拟引脚功能可以促进学生对知识点底层思维方式的理解。
1.4 难以达成工程质量体系评价指标
工程教育认证的背景,要求学生具备针对复杂工程问题设计解决方案的能力,并且要求创新意识在设计环节中有所体现[4]。因而,对教学过程中相关环节设计能够体现教学质量的目标并加权组合成目标函数,对指导理论教学和实验教学尤为重要。而目前的教学安排,对形成具有目标考核的指标有一定难度,主要是由于知识点的琐碎,导致具有工程实践价值的教学环节很难形成。
2 课程改革
以南京工程学院电气工程专业为例,面向大三年级开设了《嵌入式系统》课程,将之前的《单片机原理》以及《微机接口技术》课程的教学内容融合后并入到嵌入式系统中。并且在C语言教学中,强调实践环节的安排。由于之前的C语言学习,教学动机主要是完成学生的计算机二级考试,有一定的应试教学成分,导致学生以做题形式完成课程教学,出现会做题,但不能编程,而且认为C语言学习是闯关训练,完成考级目标就万事大吉。为了强化嵌入式系统的教学,该课题组以最终实现工程实践能力的培养为目标将以上课程重新编排,并形成如图1所示的教学流程。
图1中,将相关课程有机融合并形成有机整体,从而为嵌入式系统学习搭建有力的平台。课程组根据单片机原理的教学经验中提炼出用于C语言教学的相关逻辑编程内容,如引脚读写涉及的相关移位、与或非操作。为了便于说明,该文给出一段引脚读写的例程。
2.1 引脚读写的C语言逻辑编程
(1)首先通过宏定义的方式定义引脚的基地址。
#define PERIPH_BASE ((unsigned int)0x40000000)
#define APB2PERIPH_BASE (PERIPH_BASE + 0x00010000)
#define GPIOC_BASE (APB2PERIPH_BASE + 0x1000)
#define GPIOC_CRL *(unsigned int*)(GPIOC_BASE+0x00)
#define GPIOC_CRH *(unsigned int*)(GPIOC_BASE+0x04)
#define GPIOC_BSRR *(unsigned int*)(GPIOC_BASE+0x10)
从地址的定义出发,让学生掌握宏定义的学习,并深入理解宏定义的应用场景。同时指明,在定义时要区分大小写,培养学生良好的编程习惯。在定义该地址时,还牵扯到指针的概念,这在之前的C语言学习中,对于学生是一个莫大的难点。
(2)引脚控制程序。
void main(void)
{GPIOC_CRL &= ~( 0x0F<< (4*0));
GPIOC_CRL |= (3<<4*0);
GPIOC_BSRR=(1<<(16+0));
while(1);}
由主函数main完成引脚的操作,子函数完成相应的延时。主函数中实现了子函数的调用,这在以往的C语言教学中容易被忽视,学生很少接触到函数调用的训练。在主函数中,存在大量的移位和逻辑操作,并将其与引脚对应,实现了从程序到硬件的控制流程。
简单的一段代码将多个C语言知识点融合并完成一个完整的训练,从而避免在C语言教学中出现过于琐碎的知识点讲解,带来枯燥无味的学习过程。
2.2 工程项目化教学的细化
图1中,不仅涉及到从单片机原理到C语言的流程,还有因接口电路设计需要而带来的驱动程序编写,以及在嵌入式系统学习中包含的大量硬件原理设计(包含主芯片的内核功能和外围电路)。最终,将硬件通过C语言程序进行有序连接,此时设计到的C语言具备结构化特征,项目工程文件的组织和管理,函数间的调用也变得异常复杂。
项目化教学的难点就是功能的细分,这不仅关系到教学的有序开展,而且还影响到教学目标评测的合理性。为了充分体现工程教育认证的实质需求,该课程组将嵌入式系统的实践环节进行细化,从项目框架出发,涉及到器件选型、硬件原理图设计、PCB设计、焊接、功能测试和一系列修改流程。细化后的各环节可以作为项目评测点,对其进行打分,然后加权后得到总分。
规范化教学以及形成标准化的教学过程是工程教育认证体系的核心思想。因而教学环节的设计中要体现标准化内涵,如框图语言要规范,能够用相关软件合理设计和表达;程序设计也要合规,特别是对于简单的变量名和函数名定义也要标准化,可以采用微软的命名方式;硬件原理图设计要按功能进行分割及布局。标准化的设计也便于教学目标评测。
3 结语
该文针对嵌入式系统教学过程中出现的内容琐碎、知识点较多、难以工程教学目标评测等问题,给出了符合项目化教学需要以及教学目标评测的改革思路,将多门课的教学过程融为一体,以实践教学为中心有序有力地开展教、学、评、测等活动。
参考文献
[1] 胡应坤,林杰鑫,徐开涛.嵌入式技术应用教学改革研究[J].教育现代化,2019(83):109-111.
[2] 孙青,李辉勇.面向学生工程能力培养的嵌入式系统设计实训课程教学改革实践[J].计算机教育,2020(3):136-140.
[3] 刘光伟.浅析STM32嵌入式实验教学的改革与实践[J].科技资讯,2019(35):159-160.
[4] 王超,张伟,侯凌燕.面向专业工程认证的嵌入式CPS方法课程改革實践[J].教育教学论坛,2019(34):93-94.
[5] 居发礼,余晓平,刘丽莹.基于工程思维能力培养的课程教学探讨[J].山西建筑,2018,44(17):233-234.
[6] 谢捷如.面向工程思维培养的“电路”课程教学研究与探讨[J].机械设计与制造工程,2018,47(12):118-120.