漆 强, 刘 爽
(电子科技大学 光电信息学院, 四川 成都 610054)
基于嵌入式系统的“口袋实验室”设计
漆 强, 刘 爽
(电子科技大学 光电信息学院, 四川 成都 610054)
为了满足教学需求,研发了基于嵌入式系统的“口袋实验室”。该“口袋实验室”采用LPC1768微控制器作为主控芯片,采用模块化设计方法,具有便携性和扩展性等优点。该“口袋实验室”改变了原有的教学和实验方法,将理论知识的学习和实践环节有机结合,取得了良好的教学效果。
口袋实验室; 嵌入式系统; 便携性; 扩展性
随着电子技术的发展、互联网时代的来临,嵌入式系统以其控制灵活、抗干扰性能强、智能化及互联性等特点,广泛应用于工业控制、环境工程、航天设备、生物医学工程、可穿戴设备及智能家居等领域[1]。
掌握基本的嵌入式系统设计、开发和调试方法是电子类专业学生应该掌握的基本技能。对于我院的学生而言,是进行光电系统集成、传感器应用和显示器件驱动设计的基础,因此我们以前期的高级语言程序设计、数字电路和微机原理与接口技术等课程为基础,设置了“嵌入式系统”的课程,作为专业基础课,面向全院近500名学生开设。作为一门工程实践性很强的课程,除了介绍嵌入式系统的理论知识外,更需要通过配套的实验平台将理论知识和实践环节相结合,增强对学生的动手能力和实践创新能力的培养。因此完整可靠的嵌入式系统实验平台就必不可少。经过市场调研,我们发现目前市场上销售的嵌入式系统实验平台,往往以实验箱的形式存在,体积庞大,占用较多的实验桌空间,存在便携性差、硬件资源匮乏、功能单一等缺点,并且无法和我院光电类专业的研究方向相契合。为此,自主开发了嵌入式系统的教学实验平台,该实验平台基于目前最新的嵌入式处理器Cortex-M3内核开发,实验内容涵盖了开发软件的使用[2]、处理器各个功能模块的使用、嵌入式操作系统的移植和应用等创新性实验,并且已经实际应用于教学实践中,得到了学生的好评,还为本科生毕业设计、大学生创新创业计划和各类学科竞赛提供了服务。
1.1 实验平台结构
自主开发的嵌入式实验平台提出了“口袋实验室”的创新概念,突出实验平台的轻量化、便携性和扩展性,并充分和本学院的光电检测、传感器应用等方向相契合,将多年的科研积累和教学实践相结合研制而成。整个实验平台分为最小系统、输入输出模块和交互接口3个模块,其系统结构框图见图1。这些模块涵盖了嵌入式系统的各个应用方向,完全满足学生掌握嵌入式系统应用和工程实践的需求。
图1 “口袋实验室”系统结构框图
“口袋实验室”的实物图见图2,加装8.1 cm(3.2寸)TFT液晶模组后的实物图如图3所示。整个实验平台的大小在10 cm×10 cm左右,体积小,便携性强,且可以通过USB接口供电或者移动电源供电,是名副其实的“口袋实验室”。
图2 “口袋实验室”实物图
1.2 电源电路
电源系统为整个系统提供能量,是整个系统工作的基础,具有极其重要的地位。在设计电源电路时,考虑到实验平台便携性和通用性的要求,采用了两种供电模式:一种是通过计算机的USB接口供电;另一种是利用外接5 V稳压电源供电。两者通过跳线进行选择。
主控芯片LPC1768的供电系统较为复杂,需要4组电源供电,分别是:内核和外部数字通路所需的3.3 V数字电源VDD33;模拟部分(如片上ADC 和DAC)所需的3.3 V模拟电源VAA33;模数转换器ADC所需的参考电源VREFP;实时时钟RTC所需的3.3 V电源VBAT。
图3 加装液晶模组后的实物图
由于所需电源种类较多,我们在电路设计时进行了必要的简化:5 V电压通过低压差稳压芯片LT1117-3.3 V转换为3.3 V电压,提供给模拟电源和数字电源共用,2个电源之间通过电感和电容组成的滤波电路进行隔离;参考电压VREFP接模拟电源VAA3.3;实时时钟电源设计为外接纽扣电池供电[3]。实际的电源电路见图4。
1.3 最小系统
在设计嵌入式系统的实验平台时,充分考虑了硬件平台的先进性,采用了目前最新的Cortex-M3内核处理器LPC1768作为主控芯片,该芯片内部具备512 KB的Flash存储器和64 KB的RAM空间,工作频率高达100 MHz,具有UART、SPI、I2C等多种外设接口,可以运行中小规模的嵌入式操作系统。其基本的最小系统包含时钟电路、复位电路和调试接口。时钟电路由12 MHz晶体、2个电容与内部的反相器构成振荡电路,产生12 MHz的正弦波,在芯片内部经过锁相环产生100 MHz的内核时钟。复位电路采用传统的阻容复位,并提供手动复位按键[4]。调试接口采用标准的20针JATG接口。实际的最小系统电路见图5。
图4 电源电路
1.4 输入输出模块
输入输出模块主要是用于测试微控制器的基本功能,比如通用数字输入输出接口(GPIO)的输入输出功能测试、定时器模块的定时测试、外部中断模块的中断触发测试。本实验平台提供了4个发光二极管、2个按键和1个蜂鸣器完成这些测试[5]。实际的输入输出模块电路见图6。
图5 最小系统电路
图6 输入输出模块电路
1.5 交互接口
交互接口主要用于和外部设备进行通信、采集外部信息和显示人机界面等功能。考虑到目前RS232接口在大部分的计算机中已经被取消,本实验平台设计了USB接口转TTL串口的转换电路,利用USB转换芯片FT232RL将计算机的USB接口转换为TTL串口直接和主控芯片LPC1768连接,省去了购买USB转串口连接线的费用,直接利用一根USB线就可以完成供电和通信两大功能,提高了系统的便携性[6]。数据采集部分利用一个可变电阻完成电压的变化,并通过主控芯片LPC1768的AD接口采集电压的变化,结果可以送计算机或者TFT液晶显示。人机界面利用8.1 cm(3.2寸)的TFT液晶模组作为显示,以便显示更多的内容和进行图形用户界面(GUI)的移植测试[7]。实际的交互接口电路原理图如图7所示。
图7 交互接口电路
1.6 外扩接口
在设计实验平台时,考虑了平台的扩展性,将芯片的所有功能引脚以双排插针的形式引出,学生可以利用杜邦线扩展外部模块。我们提供反射式红外光电管、摄像头、温度传感器、超声波传感器、光电拨码盘等常用的传感器模块和主控芯片连接,学生可进行传感器应用的扩展实验[8]。实际的外扩接口电路原理图如图8所示。
图8 外扩接口电路
基于嵌入式系统的“口袋实验室”可以完成嵌入式系统的大部分实验,这些实验内容涵盖了嵌入式系统的基本应用,并留给学生扩展的空间以发挥学生的主观能动性[9]。具体的实验项目如下:
(1) 嵌入式工程软件使用实验。嵌入式工程软件使用实验包括常用的电路设计软件Protel、电路仿真软件Proteus、ARM集成开发环境RealView MDK等软件的学习,要求学生掌握基本的原理图绘制,印制板电路绘制,电路的软件仿真以及如何建立一个工程,编写源程序,进行程序的下载和在线仿真。这些技能都是进行电路设计和嵌入式系统开发的基本要求。
(2) 微控制器内部功能模块实验。微控制器内部功能模块实验主要是通过实验平台提供的输入输出模块等电路,掌握微控制器内部的时钟系统、通用输入输出接口、定时器和中断系统等常用功能模块的基本用法。掌握了这些基本功能模块后,才能完成一个嵌入式系统的整体设计[10]。
(3) 外设模块实验。外设模块实验主要是采集外部数据、串口通信和液晶显示等工程相关的实验,学生通过编写数据采集程序、串口通信程序和液晶显示的人机界面,能够掌握嵌入式系统开发中和实际工程相关的应用,并可以通过设计一个数字电压表的综合性实验,将各个知识点串联[11]。
(4) 传感器应用实验。传感器应用实验主要利用外扩接口,通过杜邦线连接各类常用的传感器,如利用红外传感器检测导航路径、利用超声波传感器检测距离及利用摄像头进行简单的图像处理。这些实验可以帮助学生将传感器的理论知识和实践应用相结合,更好地理解传感器的工作原理[12]。
(5) 嵌入式操作系统的移植和应用实验。随着嵌入式系统的复杂度越来越高,传统的前后台编程模式已经无法满足要求,目前的实际工程应用中,基于嵌入式操作系统的程序开发越来越多。我们设计了基于RL-RTX操作系统的移植和应用实验。RL-RTX是一个免费开源的系统,集成在ARM集成开发环境RealView MDK中,采用了时间片轮转和优先级调度两种算法,并提供了全部的源代码,方便学生学习。我们设计了相关的应用实验,包括任务的建立、时间函数的触发、信号量的互斥和事件标志的同步等,使学生能够掌握基于嵌入式操作系统的编程方法和相关应用。
基于嵌入式系统的“口袋实验室”实验平台具有以下特点:
(1) 便携性。“口袋实验室”的主要特点就是便携性,它摒弃了传统实验平台大而全的设计思想,采用模块化设计,在10 cm×10 cm的电路板上集成了嵌入式系统基本的功能模块。在供电设计上采用了USB接口供电,摆脱了对220 V市电的要求,可以利用计算机的USB接口或者移动电源供电,学生可以直接在课堂上或者寝室中使用,延伸了教学的深度和广度。
(2) 创新的教学和实验模式。传统的教学和实验模式中,一般是先进行理论知识的讲解再进行实验,往往会造成理论环节和实验环节的脱钩。而我们设计的“口袋实验室”实验平台可以直接在课堂上使用,学生只需要带上自己的笔记本电脑,利用USB接口给“口袋实验室”供电,就可以在课堂上直接进行实验。教师讲授完一个模块的相关理论知识后,学生就可以立刻编程实践,并下载到实验平台上在线仿真。目前的笔记本电脑带电时间都超过3 h,能够满足两节课90 min的教学实验时间。这种教学实验模式,能够立刻消化和应用所学知识,经过我院三届学生共1 500人次的试用,获得了良好的教学和实验效果。
(3) 多学科知识融合。嵌入式系统的设计和应用以前期的多门课程的内容为基础,是一个多学科知识的融合。学生不仅需要掌握硬件电路的设计知识,还需要掌握软件开发技术。通过“口袋实验室”实验平台,学生可以进行硬件的扩展设计,开发底层的驱动程序,还可以和自己的专业方向相结合,比如在显示专业中,进行液晶驱动波形的测试和显示界面的开发;在光电信息与工程专业中,进行光电类传感器的应用和光电系统的设计。
(4) 扩展性。由于在设计时将主控芯片的全部功能引脚外扩,并设计了基本的外设,“口袋实验室”实验平台除了完成教学和实验功能外,还可以作为工程原型机,进行工程开发及验证微控制器的基本性能。学生也可以利用该平台参与毕业设计、各类创新创业计划和各级学科竞赛。在2015年举行的全国光电设计竞赛中,我院学生就利用该平台为核心板设计参赛作品,获得了全国二等奖的优异成绩。
基于嵌入式系统的“口袋实验室”为学生掌握嵌入式系统应用的相关知识提供了良好的实验平台,契合了相关学科的应用,加强了理论知识和实践的融合,取得了良好的教学效果。
References)
[1] 漆强, 欧中华, 刘子骥, 等. 嵌入式系统设计工程实践:基于Cortex-M3内核处理器LPC17XX[M]. 北京: 国防工业出版社, 2015.
[2] 李宁. ARM开发工具RealView MDK使用入门[M]. 北京: 北京航空航天大学出版社, 2008.
[3] 赵俊. ARM嵌入式应用程序架构设计实例精讲:基于LPC1700[M]. 北京: 北京航空航天大学出版社, 2013.
[4] Yiu J. ARM Cortex-M3权威指南[M]. 宋岩,译. 北京: 北京航空航天大学出版社, 2009.
[5] 孙安青. ARM Cortex-M3嵌入式开发实例详解:基于NXP LPC1768[M]. 北京: 北京航空航天大学出版社, 2012.
[6] 刘火良. STM32库开发实战指南[M]. 北京: 电子工业出版社, 2013.
[7] 张水良, 郑思明. 海洋波浪能利用的实验教学平台开发[J]. 实验技术与管理, 2014,31(9):69-71.
[8] 楼建明, 傅越千, 安鹏, 等. 基于能力培养自制实验仪器设备[J]. 实验技术与管理, 2014,31(9):81-86.
[9] 应安明, 王桂玲, 刘桂涛. 自制实验仪器设备在教学中的应用[J]. 实验室研究与探索, 2003,22(1):20-21.
[10] 卢慧芬, 林斌, 孙丹, 等. DSP电机控制综合实验平台研制[J]. 实验技术与管理, 2014,31(10):97-102.
[11] 韩宇光. ISP系统创新实验平台研制[J]. 实验技术与管理, 2014,31(10):120-122.
[12] 阎娜, 付柯楠. 光伏实验台上基于STC单片机的离网逆变器设计[J]. 实验技术与管理, 2014,31(8):87-91.
Design of “Packet Laboratory” based on embedded system
Qi Qiang, Liu Shuang
(School of Optoelectronic Information,University of Electronic Science and Technology of China,Chengdu 610054,China)
With the development of electronic technology, the design of embedded system has become one of the essential qualities of electronic major students. In order to meet the teaching requirement, A “Packet Laboratory” was developed based on the embedded system. Tasking LPC1768 microcontroller as control chip and using the modular design method, this experimental platform has the advantages of portability and expansibility. Also by changing the old teaching and experiment method, the “Packet Laboratory” integrates the theory with practice. and has achieved good teaching effects.
packet laboratory; embedded system; portability; expansibility
2015- 05- 13
国家自然科学基金青年科学基金项目(61307102);电子科技大学2015年本科教育教学改革研究项目(2015XJYYB028)
漆强(1978—),男,四川成都,硕士,讲师,主要研究方向为显示器件驱动和光电系统集成.
E-mail:ytqiqiang@163.com
TP368.1;G484
A
1002-4956(2015)12- 0097- 06