STM32嵌入式处理器模块化实验平台设计与实现

2016-05-14 21:05王鹏举郑丽姣
软件导刊 2016年5期
关键词:实验平台教学改革

王鹏举 郑丽姣

摘要:目前,大多数嵌入式实验平台主要针对本科院校设计,不适宜高职院校嵌入式相关专业人才培养。针对该问题,提出了一种基于STM32[1]嵌入式处理器的实验平台。该实验平台遵循“以芯为主、软硬结合”的设计原则,结合模块化思想,为高职嵌入式课程教学服务。实验平台主要包括硬件电路和软件测试代码设计。教学实践表明,该平台明显提高了嵌入式课程教学质量。

关键词:STM32嵌入式处理器;实验平台;教学改革

DOIDOI:10.11907/rjdk.1511630

中图分类号:TP319

文献标识码:A 文章编号:1672-7800(2016)005-0090-02

0 引言

随着互联网+、智能制造2025、工业4.0[2]等概念的提出,我国嵌入式系统产业人才需求量一路高涨,嵌入式开发将成为未来几年最热门、最受欢迎的职业之一,为此,各高校都开设了嵌入式方向课程。学好嵌入式方向课程,不但要有扎实的理论基础,更需要一个适用的嵌入式开发实训平台。目前,市场上供应的嵌入式处理器实训平台主要是针对本科教学设计的,不适合高职高专培养技能型人才教学需求。构建低成本、技术先进、符合高职学生职业岗位需求的嵌入式实验教学系统,对嵌入式领域技能型人才培养具有重大的现实意义。

1 存在问题

目前嵌入式教学实训平台种类繁多,总体上分为3类:

(1)以8位嵌入式处理器为核心的开发平台。该类实验平台的难度属于入门级,如基于STC单片机开发的实验平台、基于AVR系列单片机开发的实验平台等。由于学习内容过于简单,对于嵌入式开发方向的学生,学习上没有提升空间,直接导致学习积极性不高。同时,这类嵌入式处理器也不符合嵌入式产品开发低成本、低功耗、高性能的设计要求。

(2)以STM32为核心的嵌入式实验平台。该类实验平台以STM32嵌入式处理器为核心,结合外围控制电路设计开发而成。这类实验平台没有采用模块化的设计方法,设计特点往往有两个极端。一类是“小而精”,只有一个核心板,外围的引脚全部只能飞线连接。如果没有外围接口实验板,这类实验平台根本没法使用。另一类是“大而全”,一个实验平台上,鼠标、键盘、TFT液晶屏、电机、红外接口等应有尽有,并且有的实验平台为了节省成本,采用端口复用的方式,这对于设计能力不强的学生不适合使用。

(3)以ARM9[3]为核心的嵌入式处理器实训平台。该类实验平台以ARM9芯片为控制核心,需要移植操作系统,比如Linux操作系统,在Linux操作系统下编写各类驱动。这类实验平台比较适合本科院校大四甚至研究生使用,而高职院校的学生对操作系统的理解以及对驱动程序的开发都较陌生,不适合高职院校使用。

综上所述,尽管高职院校中使用的嵌入式实验实训平台很多,但是从教学的难度、学生的水准、成本等多方面考虑,现有的实验平台显然不利于高职嵌入式方向的人才培养和课程教学,开发适合高职院校嵌入式产品开发类专业技能训练的实验、实训平台势在必行。

2 整体设计

为了更好地为嵌入式方向教学服务,模块化实验平台的整体设计应把握当前嵌入式产品应用趋势[4]。STM32嵌入式处理器由于控制功能强、可靠性高和体积小、价格低等特点,在智能仪器仪表、医疗电子行业、通信、工业控制、外设控制、家用电器、机器人、军事装置等领域有着非常广泛的应用[2]。用一片体积很小的STM32嵌入式处理器替代复杂而庞大的传统数字电路和模拟电路,已成为电子产品开发趋势。因此,模块化实验平台以STM32嵌入式处理器为控制核心来构建整个硬件设计。

根据高职院校嵌入式方向人才培养要求[5],结合软件工程的模块化思想,对实验平台进行硬件模块划分与设计。图1为实验平台的整体设计框架,具体设计思路如下:首先设计硬件电路的各个功能模块,然后编写软件模块化功能代码,最后实现整个实验平台的开发与调试。

嵌入式产品开发过程中,经常用到并行通信、串行通信以及各类总线技术[6]。因此,实验平台的设计主要以各类接口和通信模块为单元,各自独立与STM32嵌入式处理器进行通信[7]。各个模块在设计过程中,不但要在硬件PCB设计上考虑模块化的设计方式,使各模块相互独立、互不影响,并且在软件代码设计上,各模块控制代码要相互独立,既可以单独控制对应的模块,又可以将几个控制代码融为一体,实现一些复杂的控制功能。

3 设计与实现

3.1 硬件模块化实现

根据总体设计方案,硬件电路设计包括6个基本实验模块和3个提升实验模块。基本实验模块包括:基于STM32嵌入式处理器最小系统电路设计、电源电路设计、JTAG下载仿真电路设计、USART串行通信接口下载电路设计、按键接口电路设计、A/D及D/A电路设计;提升实验模块包括:WiFi模块接口电路设计、LCD显示屏接口电路设计、智能小车驱动电路接口设计。以上功能模块单独与STM32嵌入式处理器连接,没有端口复用以及模块之间相互连接问题。

以智能小车驱动电路设计为例,智能小车的驱动采用 L298N[8]芯片,该芯片内含两个全桥式驱动器,可以同时驱动两个直流电机。通过4个I/O口与STM32嵌入式处理器相连接,采用TLP521光耦隔离器技术,防止电机运行对嵌入式处理器及其它功能模块产生电磁干扰。硬件模块的设计还需要完成硬件电路原理图绘制、电路板PCB图绘制、硬件电路元件的焊接、调试等。

3.2 软件模块化实现

硬件电路设计完后,需要编写软件测试程序,实现嵌入式产品开发“以芯为主,软硬结合”的设计思想。软件代码编写是否规范、设计流程是否合理,是决定嵌入式产品开发成败的关键[9]。因此,不但要设计一套实用性强的硬件开发平台,而且要编写一套规范的软件代码,提供一套规范的范例程序。

在软件代码编写过程中完全遵循模块化的设计思想。每一个控制模块的软件代码设计成相互独立的头文件,主要包括LED流水灯测试程序、蜂鸣器测试程序、按键测试程序、A/D转换测试程序、串口通信测试程序、DS18B20测试程序、显示屏测试程序、智能小车测试程序、WiFi模块测试程序等。这些测试程序相互独立,可以单独实现某个功能模块的单独控制,也可以相互融合实现一些复杂的功能控制。比如,将智能小车的控制程序和WiFi模块的控制程序相结合,可以实现智能小车的手机遥控等。

3.3 教学应用

嵌入式产品一般以CPU处理器为核心,结合外围硬件电路,在软件程序的控制下实现智能化的功能或算法[9]。因此,嵌入式方向课程教学,一定要严格把握软硬件相结合的教学思路。在理论教学中,要讲解实训平台每个模块的硬件结构设计思路以及软件代码编写方法。在实训过程中,让学生应用硬件画图工具,比如Protel软件,绘制出对应模块电路图,并且调试出对应的程序代码,最终在实训平台上显示。教师在这个过程中,只起到积极引导的作用,更多的时间是让学生自己动手,这样,不但能提高学生的学习积极性,而且能够提高嵌入式应用能力。

4 结语

根据当前嵌入式方向教学实验平台的不足,设计了一款适合高职院校嵌入式方向的实验开发平台。基于STM32嵌入式处理器的模块化实验平台已应用于笔者学校2013级软件技术专业嵌入式方向课程教学,取得了较好的教学效果:学生的应用开发能力和岗位适应能力均有一定的提升,嵌入式方向的学生获得2014年“挑战杯”电子设计大赛全国二等奖。嵌入式实验平台的开发和嵌入式方向的教学改革任重道远,必须继续探索,不断改革创新,为提高嵌入式方向教学效果而努力。

参考文献:

[1]卢有亮.基于STM32的嵌入式系统原理与设计[M].北京:机械工业出版社,2013.

[2]王彦华.“工学结合”模式下高职院校单片机课程的教改[J].装备制造技术,2009(12):158-159.

[3]丰海.嵌入式Linux系统应用及项目实践[M].北京:机械工业出版社,2012.

[4]冼进.嵌入式系统实验课的教学改革初探[J].计算机技术与应用,2011(8):282-284.

[5]潘登.面向卓越人才培养的嵌入式系统教学改革[J].计算机教育,2013(13):1-5.

[6]宋焱翼.嵌入式系统实验教学改革与实验教学装置开发[J].实验室研究与探索 ,2011(7):239-241.

[7]霍华.嵌入式技术课程教学方法改革[J].计算机教育,2012(6):48-50.

[8]张晓东.高校嵌入式系统课程教学改革探索[J].中国电力教育,2013(8):35-38.

[9]姚莉.嵌入式课程教学改革研究[J].教育教学研究,2014(6):68-70.

(责任编辑:杜能钢)

猜你喜欢
实验平台教学改革
生物医学工程专业创新人才培养策略
单片机仿真实验平台的设计分析
中职学校“生本课堂”的调查研究与实践
高校三维动画课程教学方法研究
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索
基于LabVIEW下嵌入式系统实验平台的设计与实现分析
基于LabVIEW的虚拟实验平台设计