第一篇:【嵌入式】Linux 嵌入式系统教学课程改革探索
摘要:传统嵌入式系统教学内容容易使学生产生厌学、畏难的现象,严重影响了教学质量。该文提出基于调整实践教学体系的设想,并具有针对性地提出基础课程投入力度、分阶段培养学生Linux下编程能力、改革实践内容的方法,实现即可与传统嵌入式教学方式相结合,又可与当前嵌入式发展趋势相吻合的实践教学改革方案;从而达到提高学生学习兴趣和教学质量的目的。中国论文网
关键词:嵌入式系统;教学内容;教学质量;实践教学;Linux
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2012)28-6733-02 概述
嵌入式系统是面向软件、计算机、通信、电子等专业本科生和研究生的一门普及型技术基础课程。它是一门交叉学科,既与计算机专业课程有关,又与电子电气、通信、自动化、化工、材料等诸多专业课程有关,并且还与具体的应用背景相关联。涉及到的基本知识有:硬件知识(如嵌入式微处理器及其基本的接口知识、扩展的人机接口、网络通信接口等)、Linux操作系统(至少了解Linux操作系统的中断、优先级、任务间通信、同步等知识)、程序设计知识(C、C++、尤其需要精通C语言);同时,还需涉及一定的数字电路知识[1-2]。
嵌入式系统学科的特点决定了学生需要学习大量相关课程方能做出优秀的作品,其成果见效周期长,学生在系统学习过程中会普遍因为缺少相应成绩而丧失学习兴趣。针对这种情况,我院在传统嵌入式系统教学中加入了一些新颖的、能够有效激发学生学习动力的相关课程,以此提高对嵌入式系统学习的兴趣,并且取得了显著的成绩。
嵌入式系统教学课程改革措施
C语言作为学习其他编程语言的基础,同时也是传统嵌入式系统基础学科之一,需要重点强化学生实际动手能力。在嵌入式的高级应用部分我院将其与新兴的智能手机操作系统—Android相结合,取得了良好的教学效果。
2.1 基础课程改造
我院嵌入式系统教学对学生采用“厚基础,宽口径”的教学特色,着重强调学生对基础知识的掌握。为强化学生的实际动手能力,我院将C语言的课时设置为80课时,并辅以大量的实践内容。针对嵌入式系统偏重于Linux编程的特色,在C语言讲授时直接开展基于Linux下编写C语言的教学。通过实践教学表明,学生只需两周即可掌握相应方法;而且学生由于没有Windows下VS编程经历,反而更加容易掌握接受。
在后续课程中重点加强Linux下高级C语言编程学习,如内存问题、宏问题、调试与优化等,部分学生在大二即可做出优秀作品。在刚刚结束的2012年NOC网络与信息安全技术大赛中,我院嵌入式系统学生获得了全国二等奖的好成绩。
2.2 Android课程教学
Android作为一个新兴的智能手机操作系统,在国内外广受欢迎,学生范围内也有大量从事Android学习。Android学习起点低,只需学完Java课程即可从事开发,针对嵌入式传统教学内容容易使学生丢失学习兴趣的现象,将其加入到嵌入式教学体系当中,作为学生实践技能的有益补充。学生很容易通过Android做出优秀的作品,从而激发其自信心和兴趣,再以此为基础,指引其从事跟嵌入式系统方面相结合的研究,比如完成Android系统的裁剪,功能的定制及将其移植到ARM板中,甚至还可以同物联网等新兴领域相结合。
其他措施
除了嵌入式系统课程改革外,我院还广泛开展校企合作,建立开放实验室和鼓励学生参加全国大赛。
3.1 与CSDN,GOOGLE开展校企合作
为了激发学生的创造思维,发扬团队精神,锻炼学生编程能力,我院与CSDN合作建设了《嵌入式相关资料》 CSDN高校俱乐部,并举办了多场Android开发交流会。同时还积极与GOOGLE开展深入合作,成立了南阳GTUG,每月举办GOOGLE Android开发者技术交流活动。通过校企合作,不仅提高了学生学习的积极性,也极大扩展了视野,为今后嵌入式系统教学进一步拓展创造条件。
3.2 建立开放实验室
为了提高嵌入式系统学生学习嵌入式技术的兴趣,我院开设了Android、嵌入式开放实验室,鼓励学生踊跃参加。开放实验室是一个以“自由、促进、创新”为理念,为对Android、嵌入式技术感兴趣的学生提供了一个沟通交流、学习提高的良好环境。开放实验室以Android技术和嵌入式技术为研究主体,实验题目具有应用性、先进性和趣味性,通过开放实验室,为学生提供学习、实践、交流、承担项目、就业对接等机会。为此,定期举办术开发技术讲座,促进不同水平和层次小组成员之间的沟通交流、实践锻炼机会、努力拓宽学生毕业时就业机会[3]。现在,开放实验室作为开设嵌入式系统课程的实验基地,从带领实验室的经验中总结出学生培养模式,并且通过“学生带学生”的模式,不仅使学生能力进一步提高,也为我院嵌入式系统教育培养计划课程的执行进行前期探索。
3.3 积极鼓励学生参加大赛和做项目
我院为锻炼学生实际动手能力,积极鼓励学生参加各种竞赛,在全国信息技术大赛(Android方向)和河南省移动MM大赛中都取得了优异的成绩。经过实践证明,竞赛模式能够将对Android感兴趣的学生集中起来培养,这样学生之间能够方便的学习交流沟通,形成良好的互动氛围。通过做项目和积极参加各种比赛,不仅可以快速提高学生的知识水平,还可以使学生的组织能力和团队协作能力得到很大提升。
需进一步加强的地方
虽然我院在嵌入式系统教学方面取得了不小的成就,但是仍然有一些问题需要进一步加强。
4.1 教材建设
Android诞生没有太长时间,目前国内研究大多都是从国外借鉴而来,市场上的很多书籍存在相互抄袭甚至通篇代码的情况,而且也不太符合嵌入式系统学生的自身特色。可以集中力量,从实践教学出发,以工程实践为核心,根据嵌入式系统自身特点,编写几本优秀高质的、适合本教学特色的Android教材,将其与传统嵌入式教学体系有机结合起来。
4.2 师资建设
由于嵌入式系统教学的特殊性,需要教学人员具有教育教学能力和工作经验兼备的复合型人才,但目前高校嵌入式教学领域普遍缺少“双师型”人才,这需要以后学院加强对青年骨干教师的外出培训力度和政策支持。
4.3 转变教学手段
在传统教学中,教师普遍采用以“PPT为中心”的教学模式,授课时使用大量PPT,这种做法容易使学生产生上课不认真听讲的心理,而且也会容易引起课堂枯燥等问题,不利于激发学生的兴趣。教师在授课时应转变思路,将PPT作为一种补充手段,采用多种教学模式[4],“以学生为核心”,将学生作为授课时的主体,从而激发学生学习兴趣。
结论
该文针对嵌入式系统传统课程存在的在教学过程中学生容易丢失学习兴趣的问题,针对嵌入式学科特点和学生学习的特点提出了一些实践教学改革方法,以此努力构建嵌入式系统教学课程新模式。
参考文献:
[1] 章民融,徐亚锋.嵌入式教学关键点的研究和嵌入式实验教学平台的设计[J].计算机应用与软件,2009,26(3):160-162.[2] 邓昀.关于嵌入式系统课程教学改革的探讨[J].中国校外教育(理论),2011(z1):《嵌入式相关资料》 566.[3] 吴磊.嵌入式教学与实验的研究[J].实验室研究与探索,2011,30(11):103-104.[4] 胡沛.JavaScript课程教学改革探索[J].电脑知识与技术,2011,7(32):7944-7945.转载请注明来源。原文地址:
《嵌入式相关资料》
第二篇:嵌入式linu学习心得
嵌入式Linux学习心得
1、Linux命令
ls:查看目录-l以列表方式查看;ls –l 与ll的功能一样 pwd: 查看当前的目录
cd:改变当前操作目录cd /直接跳到根目录 cd..回到上一级目录 cat: 打印显示当前文件的内容信息
mkdir:创建目录
fdisk: 查看硬盘分区信息,-l以列表方式查看
->代表是链接文件,类似window下的快捷方式。
cp: 复制命令,例子cp 文件名 /home/dir/
mv: 移动或改名,如mv sonf.confsonf.txt(改名)移动:mv sonf.conf / rm:删除命令,如rm –f test.c;如删除目录rm –fr d
man:查看某个命令的帮助,man 命令
2、各系统目录的功能
drw—r—w--:d代表是目录,drw代表当前用户的权限,r代表组用户的权限,w代表其它用户的权限。x代表有执行权限。
/boot/gruff.conf: 启动引导程序
/dev:brw—rw--:b代表是块设备。Linux设备有三种,块设备(b开头)、字符设备(c开头)、网络设备。had代表第一个硬盘,hdb代表第二个硬盘。Hdb2代表第二块硬盘的第二个分区。3,67代表主设备为3,从设备为67./etc:存放的是系统的配置文件。Inittab文件存放不同启动方式下必须启动的进程。Inittab文件中有6个启动level,wait中对应着6个level的目录,respawn代表当一个进程被意外终止了,但会自动启动的进程,如守护进程。rc.d目录中存放了一个rc.sysinit文件,里面存放系统初始化配置信息。/etc还有一个vsftpd里面存放tcp、ftp的配置。
/home : 用户目录,存放用户的文件,/lib:存放库文件,后缀为so的文件代表动态链接库。
/lost+found:系统意外终止,存放一些可以找回的文件。
/mnt:挂载外部设备,如挂载光驱:mount –t /dev/cdrom/mnt/cdrom,如
果在双系统中,要查看windows中D盘的文件,首先应该将D盘的文件映射过来,mount –t /dev/hda2/mnt/windows/d
/opt:用户安装的应用程序
/proc:是系统运行的映射,比较重要。里面的文件数字代表进程号。每个进程号目录下包含进程的基本信息。还有其他信息,如cpuinfo等,内核支持的文件系统filesystem等。系统支持的中断interrupts,iomen代表内存分配情况。ioport存放IO端口号。还有分区信息,modole信息,状态信息,版本信息
对于Linux的设备驱动程序,有两种加载模式,一种是直接加载进linux内核,一种是以模块的方式加载到内核。
/sbin: 系统管理的一些工具。如poweroff关机工具。
/usr: 安装系统时很多文件放在此目录下面,包含一些更新等,include包含的头文件,lib 是Linux的库文件,src包含Linux2.4的内核源码
/var:存放是临时变量
3、
第三篇:嵌入式系统 课程感想
《嵌入式系统设计》课程感想 班级:电气99姓名:王正杰学号:09095018 虽然上完了整门课,但是还是对嵌入式和嵌入式系统等最基本的概念不是很了解。于是自己动手查阅了一些资料,其中IEEE(国际电气和电子工程师协会)对嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”(Devices Used to Control,Monitor or Assist the Operation of Equipment,Machinery or Plants)。国内比较认可的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于应用系统,对功能、对可靠性、成本、体积、功耗有严格要求的专用计算机系统。
“嵌入式”反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。而且,嵌入的系统中可以共存多个嵌入式系统。
一个简单的嵌入式系统一般包含以下几部分:嵌入式微处理器外围硬件设备、嵌入式操作系统、特定的应用程序。可见,其实嵌入式系统就是含有微处理器和硬件接口的一个根据应用可裁剪的非标准计算机系统。
嵌入式系统的发展历史:
嵌入式系统的出现最初是基于单片机的。
70年代单片机的出现,使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能:更容易使用、更快、更便宜。
80年代早期开始,嵌入式系统的程序员开始用商业级的“操作系统”编写嵌入
式应用软件,这使得可以获取更短的开发周期,更低的开发资金和更高的开发效率,“嵌入式系统”真正出现了。
目前,嵌入式系统在很多产业中得到了广泛的应用并逐步改变着这些产业,包
括工业自动化、国防、运输和航天领域。例如:神州飞船和长征火箭中肯定有很多嵌入式系统,导弹的制导系统也是嵌入式系统,高档汽车中也有多达几十个嵌入式系统。在日常生活中,人们使用各种嵌入式系统,但未必知道它们。事实上,几乎所有带有一点“智能”的家电(全自动洗衣机、电脑、电饭煲„)都是嵌入式系统。嵌入式系统广泛的适应能力和多样性,使得视听、工作场所甚至健身设备中都有嵌入式系统的身影。
嵌入式系统的特点:
专用性:嵌入式系统面向用户、面向产品、面向应用,它必须与具体应用相结合才会具有生命力、才更具有优势。也正是这个原因,必须结合实际系统需求进行合理的裁减。
嵌入性:也就是说系统和被控制的对象是紧密连接的,一般不需要人为干预,从这点上讲,也就对嵌入式系统的环境适应性、稳定性、可靠性等提出了一些要求,在进行软件和硬件设计时必须考虑这些要求。
智能性:1.嵌入式系统需要有一个中央处理器单元(CPU),来实现对对象的智能控制。
2.嵌入式系统首先是计算机系统,其次是专用的计算机系统,这种系统有别于通用的个人电脑(PC),最后由于其专用的特点决定了其软硬件必须能够进行定制,必须能够进行裁减。
3.单片机也是属于嵌入式系统的范畴。但是由于历史的原因,单片机和嵌入式系统被许多人区分开来对待,嵌入式系统更多地被理解为使用ARM等32位嵌入式微处理器的计算机系统。4.单片机系统一般采用单任务程序或简单的多任务内核,如uC/OS-II操作系统,一般应用于一些小型应用系统中;而ARM嵌入式系统还能很轻松的运行Linux、Windows CE、VxWorks等复杂的操作系统,比较适合于设计大型应用系统。
嵌入式系统开发的分工:
1.芯片制造商:负责制造包括CPU、网卡、RAM、及Flash等芯片的厂商。
2.设备制造商:负责制造硬件开发板和产品板。3.操作系统提供者:负责提供嵌入式操作系统。4.软件开发商:负责在操作系统之上开发具有独
立功能的应用程序。
5.系统集成商:负责向最终用户提供产品解决方
案。
嵌入式开发的一般方法:
嵌入式系统的软件开发通常采用 “宿主机/目标机”方式 :
首先,利用宿主机上的丰富的资 源及良好的开发环境开发和仿真调试 目标机上的软件。
然后,通过串行口或网络将交叉 编译生成的目标代码传输并装载到目 标机上。
最后,目标机在特定的环境下运行。
几种常见的嵌入式系统:
试目标机上的软件
生成的目标代码传输并装载到目标机上
目标机在特定的环境下运行
嵌入式Linux:
uClinux是一个完全符合GNU/GPL公约的操作系统,完全开放代码。uClinux从Linux 2.0/2.4内核派生而来,沿袭了主流Linux的绝大部分特性。它是专门针对没有MMU的CPU,并且为嵌入式系统做了许多小型化的工作。
适用于没有虚拟内存或内存管理单元(MMU)的处理器,例如ARM7TDMI。它通常用于具有很少内存或Flash的嵌入式系统。
它保留了Linux的大部分优点:稳定、良好的移植性、优秀的网络功能、完备的对各种文件系统的支持、以及标准丰富的API等。
Win CE:
Windows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作,它是精简的Windows 95。Windows CE的图形用户界面相当出色。Win CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。
VxWorks :
VxWorks操作系统是美国公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。
Nucleus:
Nucleus PLUS是为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%的代码是用ANSIC写成的,因此非常便于移植并能够支持大多数类型的处理器。Nucleus PLUS采用了软件组件的方法。每个组件具有单一而明确的目的,通常由几个C及汇编语言模块构成,提供清晰的外部接口,对组件的引用就是通过这些接口完成的。由于采用了软件组件的方法,使Nucleus PLUS 的各个组件非常易于替换和复用
嵌入式系统发展趋势:
我们有理由相信计算机还将继续快速发展并进一步改变我们的生活,让计算变得“无所不能”、“无处不在”。其中“无所不能”将是人工智能技术和超级计算机的结合,而“无所不在”则是嵌入式技术应用的广阔天地,现在普通消费者已经可以从市场中买到数码相机、移动电话、打印机等众多的数码产品、航空设备、ATM机、计算机网络设备等电子产品中都用到了嵌入式技术。
通用计算机的发展变为功能电脑,普遍进入社会,嵌入式计算机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片是构成未来世界的“数字基因”。正如我国资深嵌入式系统专家——沈绪榜院士的预言,“未来十年将会产生同大小、具有超过一亿次运算能力的嵌入式智能芯片,将为我们提供无限的创造空间“。
总之,“嵌入式微控制器或者说单片机好象是一个黑洞,会把当今很多技术和成果吸引进来”。
第四篇:嵌入式系统课程建设
嵌入式系统课程建设
近年来,我国嵌入式系统产品发展十分迅猛,中国嵌入式系统市场估计每年将直接创造千亿元的效益,所带动的相关工业产值超过万亿元,成为中国信息产业新的市场增长点。与巨大的市场潜力和产业需求相比,我国嵌入式系统工程人才培养相对落后,并进而影响到了该产业的快速发展。在这种背景下,许多高校的计算机、电子、软件等专业针对市场需求,开设了嵌入式系统相关课程。在IEEE计算机协会和ACM共同制定的2004版计算机类课程体系中,嵌入式系统已经被列为核心课程之一。北京航空航天大学计算机学院于2002学年开始开设了“嵌入式系统设计”课程,下面对该课程的建设情况作简单介绍。课程基本情况
该课程是面向计算机学院高年级本科生(或研究生)开设的专业课,是一门以计算机各种专业知识综合应用为主要特色的课程,其指导思想是培养学生从“整体”的角度认识、研究和解决嵌入式计算工程问题的方法和能力,为学生在嵌入式计算工程领域研究和开发奠定相关基础。课程采用理论知识传输与工程能力培养并重的教学方法,教学内容尽量反映该领域内最新的理论和技术成果,使学生了解该学科最新的前沿发展动态和方向,培养出适应社会需求的专业化技术人才。
该课程的教学目标是使学生能够掌握嵌入式系统设计过程中的基本概念和原理,使学生能够掌握和使用最新的嵌入式系统设计方法和典型开发工具。课程在教学内容安排上遵循“面向市场需求、定位人才培养”的原则,强调将计算机系统不同层次专业知识的基础性与实际工程设计思想和架构的前沿性相结合,重视将计算机系统自底向上的各种专业课程内容的有机整合,使得诸如操作系统、体系结构、接口与通信和计算机网络等孤立的课程呈现相互配合的应用场景,让学生进一步认识和掌握上述课程的基本概念和基本规律在实际的综合系统应用中的作用和影响。在课件设计上,采取统一的知识体系结构,涵盖“基础知识+ 基本技能+ 技术讲座+ 项目实践”四大模块,突出注重工程能力培养的特色。通过课程学习和实验,学生应能够熟悉一种典型的微处理器体系结构,掌握一套主流的开发工具和一种嵌入式操作系统,熟练使用一门开发语言,使学生具备嵌入式系统软、硬件开发设计的基本能力。
目前该课程为48学时,其中理论授课24学时,实验24学时。该课程的理论教学内容包括:
(1)嵌入式系统概述;(2)嵌入式硬件基础;(3)嵌入式操作系统;(4)嵌入式系统的设计与建模;(5)嵌入式系统设计实例分析;(6)专用接口和硬件加速器;(7)分布嵌入式系统;
(8)高可靠性嵌入式系统等扩展内容。课程的实验包括了基础性实验和综合设计实验两部分,基础性实验主要是一些预先设计好的实验,通过让学生的实际操作,能够加深对课程所讲授的基本原理、技术和方法等知识点的理解,同时,能够让学生掌握一些具体的嵌入式系统的开发工具及环境,主要包括嵌入式操作系统的移植和裁减、驱动程序的开发及对开发工具链的使用。综合设计实验则要求学生面向某综合应用(指定或者自主提出)而进行设计、编码和调试并给出完整的解决方案。
课程的考核由三部分组成:理论课作业和小测验20%,基础性实验40%,综合设计实验40%。
经过四年的建设,该课程的已整理编写完成配套的教案、讲义和实验指导书,形成了一整套课程指导和考核体系,建立了以相关学科学术带头人为课程负责人,以博士中青年教师为教学骨干,以博士青年教师和博士生为教辅人员的教学团队。几年来的教学实践表明,该课程的教学实现了教与学的有机结合,理论教学和实践环节高度统一,有力地促进了学生的工程能力提高。在学生的作品中创新成为主题,学生在国内外各种嵌入式方面的竞赛中屡创佳绩,也从另外一个侧面印证了良好的教学效果。精品课程创新点
(1)本硕一体化设置。
课程强调研究生与本科生学习内容的连贯性、层次性,从理论课到实验课都设置了基本、中级和高级三个层次的内容,学生可根据自己的基础选听(或选做)具有不同加权值的内容(或实验)。突出体现了学院本、硕一体化的课程建设思路。
(2)兼顾理论,重在实践。
作为一门实践性很强的课程,本课程在不断更新最新的国内外理论知识的同时,非常重视加强实践环节,主要体现在两个方面:
一、课程理论授课部分,每一章都有设计实例,这些设计实例大部分来自教师实际的科研或工程项目,并且随着科研工作的变化而动态更新,具有很强的实践性。
二、课程设计了大量的实验,实验课时也占到了整个课程的一半时间,实验课本身加强了指导力度,由骨干教师加多名具有较强实践能力的助教组成的指导队伍,负责整个实验期间从理论到具体操作的各个环节的指导工作。
(3)紧密结合企业核心技术,具有较强的实用性和前沿性。
课程内容的设置与动态调整,都是在充分分析当前国际上有影响的嵌入式系统软、硬件平台最新的核心技术、充分考虑嵌入式应用系统开发企业技术需求的基础上进行的,课程内容较大程度地体现了嵌入式领域的热点,是企业界普遍关心的核心技术,具有较强的实用性,有利于培养出业界需要的人才。课程前沿性则表现在:
一、课程的主讲教师是从事嵌入式系统研究与开发一线的科研人员,能够及时地根据技术发展动向调整教学大纲和教学计划,及时地将最新的技术和设计理念引入到课程中。
二、及时地对国际上一些著名大学(目前我们主要选择的是卡耐基·梅隆和普林斯顿大学)的相关课程的开设情况进行跟踪分析,对我们的课程安排适时调整。
(4)注重创新素质的培养。
嵌入式系统是面向应用的专用计算机系统,与产品和市场有着紧密的联系,设计的创新性直接决定了产品的创新性,加强未来的嵌入式系统设计师的创新素质的培养,是本课程重点之一。具体体现在:
一、课程只对基本原理和方法介绍,对一些具体技术和环境则通过课外参考资料和网上第二课堂提供给学生,学生根据个人兴趣有选择地对某些问题进行深入学习和研究;
二、注意培养学生批判性思维方式,在实例分析中,鼓励学生对实例所采用的技术和方案进行不同角度的评价,变被动灌输为主动思考;
三、加强综合设计性及开放性实验环节,鼓励和引导学生积极提出原创性的设计内容,创新性是综合性实验的考核标准之一。
(5)形式多样的教学模式
我们采用“责任教授+主讲教师+ 实验辅导教师”的教师团队,采用“讲授+分析+案例+演示+大型作业+实验+查阅资料及撰写综述报告+小课题”的教学模式,改善了这类综合性课程“难教”、“难学”的状况。
讲授:对于基本概念和基本原理方面的内容,采用以传统的讲授法为主,力求讲清概念内含和外延、基本原理的思路,实质意义以及适用范围等内容;
分析:嵌入式系统设计的内容较多,对于某些书本上只提其然而不提其所以然而又比较重要会影响系统级设计理解的问题,找准切入点,逐步分析,使学生深入理解相关概念;
案例:对于应用性较强的内容,精心设计典型案例,通过对案例的分析和逐步实现,使学生理解并能够正确应用相关的技术和原理解决问题。
(6)完整的实验体系
全面的实验内容、实验过程全程指导、严格的考核体系是本课程实践环节的亮点。
课程的实验由精心设计的基础性实验和鼓励学生创新的综合设计实验两部分组成。基础性实验主要是一些预先设计好的实验,通过让学生的实际操作,能够加深对课程所讲授的基本原理、技术和方法等知识点的理解,同时,能够让学生掌握一些具体的嵌入式系统的开发工具及环境。基础性实验是一组实验集,包括了必做的和根据个人的兴趣选做的。目前针对Xscale硬件平台基于WINCE操作系统和LINUX操作系统分别设计了四大类共24个实验,针对EIA平台设计了4个基本实验,学生可以任选平台,除了3个必做的实验外,每个人按要求选做1~2个实验。综合实验是启发式的引导性实验,主要目的在于培养学生对课程所学知识的综合运用能力和创新能力。由学生结合本课程内容以及前导实验,充分发挥主观能动性,独立设计并实现具有一定演示度的嵌入式系统,原则上不限制硬件和软件平台。考虑到学生水平差异,给出了一些备选方向,鼓励和引导学生积极提出原创性的设计内容。
对于基础性实验,要求每个学生独立完成,实验前要求提交实验预习报告,实验过程中给出实现结果,实验后要求提交实验报告。对于综合设计实验,以兴趣小组方式组织,每个小组3~4人,要求每个小组都要提交项目申请书,经过答辩、确认技术路线可行后,进入实现阶段,实验完成后,提供关于实验的课程设计和实验报告。在整个实验过程中由课程教师和助教一起完成实验指导。建设的具体实施办法
(1)完善课程网站
实现所有教案和课件全部电子化,具有较好的多媒体效果,并放在网站上。实现教学手段的电子化与网络化,包括网上作业的发布与提交,网上小测验,网上辅导与答疑。
(2)建设开放实验室
从这几年的教学实践看,学生对嵌入式系统这种教学与实践相结合的课程非常感兴趣,尤其在综合实验中表现出很高的热情和积极性,所投入的精力和时间已远远超出课程的要求,教学效果非常明显。这促成我们建设开放实验室的想法,即使该课程的实验教学做到实验时间、实验内容和实验器材对学生的真正开放。使学生能够理论与实践相结合、验证型实验与设计型实验相结合、课内与课外相结合。当然在开放实验室下的课程辅导、监管、考核方式都需要新的探索。开放实验室将通过学校的教改项目支持来完成。
(3)逐步构建第二课堂—电子教室
软硬件平台的多样性是嵌入式系统的主要特点之一。由于课时等条件限制,课堂上不可能有覆盖很多内容,为了保证课程的广度和深度,往往需要学生课外学习和掌握一定的知识。因此,我们计划逐步建立第二课堂—电子教室。该教室包括多个专题(如ARM教室、X86教室、Linux教室、WinCE教室、低功耗设计教室等),学生根据自己的时间和兴趣选择,并在网上交互学习。电子教室的建设将依托学院教改项目。相关教材介绍
经过近四年的建设,本课程形成了自己的教案、讲义和实验指导书。《嵌入式系统设计》教材也即将编写成稿。课程的实验内容和指导书已被“国家发改委-微软嵌入式系统教学包”收录。
主讲教师个人简历
尚利宏博士,北京航空航天大学计算机学院讲师。主要研究方向为嵌入式系统、嵌入式软件测试、容错计算,主讲《计算机容错技术》、《嵌入式系统设计》等课程。作为技术负责人完成国家自然基金项目一项,国防预研基金项目二项,以及国防重点型号任务多项。获陕西省国防科技进步三等奖一项。2005和2006年连续两年指导的本科生队伍获得微软公司组织的全球大学生嵌入式系统设计大赛优胜奖。北航大学生课外活动优秀指导教师。
第五篇:计算机专业嵌入式课程教学改革探索
计算机专业嵌入式课程教学改革探
索
计算机专业嵌入式课程教学改革探索
牛芗洁
(北京农学院计算机与信息工程学院,北京102206)
摘要:近年来国内高校计算机、电子、软件等专业针对市场需求,开设了嵌入式方向相关课程,笔者结合实际教学经验,针对嵌入式课教学中存在的若干问题,提出自己独特的见解,对农林院校嵌入式课程实践教学改革和创新进行了深入的探讨,对具有其他办学特色的地方院校有一定的借鉴意义。
关键词:嵌入式教学;实践;自主互助学习
一、存在的问题
随着技术的快速发展和对嵌入式行业人才的持续需求,各个高等院校纷纷开设了嵌入式相关课程,然而在培养目标、课程设置、教学方法等教学关键因素中均存在若干问题。现将本人在计算机科学与技术专业嵌入式方法教学过程中存在的问题提出自己的一些想法。
1.市场人才要求和高校毕业生素质之间的差异。目前,智能化计算机领域就业市场对嵌入式从业人员的需求持续高涨,然而从高校毕业的嵌入式专业或方法的大学生中却难以真正达到嵌入式从业人员标准,甚至多数毕业生并不具备从事嵌入式开发工作的能力,即便企业录用的专业毕业生,也通常需要对其进行一段相当长时间的再培训。市场人才要求和高等毕业生素质之间的矛盾日益突出。
2.重理论讲述而轻实践环节训练。据了解,我国大多数院校的嵌入式系统本科教育仍采用以理论为主,实验为辅 的教学模式。多数学校的理论课时与实验课时的比例为3∶1或2∶1,能达到1∶1的情况很少;一般以实验室提供的嵌入式系统实验箱配套实验为基础,教师在实验中往往选用的是基础侧重验证性实验,选用的复杂和高级实验较少。
我校是在计算机科学与技术开设嵌入式方向,其作为专业方向课开设在大学三年级,前修课程为《程序设计基础》、《计算机操作系统》、《计算机组成原理》、《数字逻辑》等课程。众所周知,嵌入式方向所涉及的实验都是以系统层面为基础,每个实验均需要投入较多时间来完成,因此实验学时需求较大,而从整体课程体系来看,确实存在理论部分内容占用较多学时的问题,目前,我校在课程设置中理论学时较小,加大了实验学时的比重,然而实验学时如何有效使用以及如何对实践环节进行外延,这是摆在我们面前一个严峻的问题。3.缺乏与企业和公司的合作。除了必要的相关课程实验项目,我们在教学过程中,发现有些实验项目与公司企业的需求有一定差异,其一,实验项目内容和市场整个行业发展之间的不协调,使得嵌入式课程的实践教学跟市场有所脱节;其二,嵌入式方向课程综合性的特征使得实验项目的实施必须得到必要的资金支持。否则在校学生接触市场的机会减少,使得嵌入式课程的实践教学缺乏必要的直观性,制约学生学习的积极性。
地方院校可以发挥其办学特点,和当地相关产业紧密联系,通过校企合作,由教师审核指导,学生动手,开展校企合作项目,这也是培养应用型人才的重要途径之一。
二、嵌入式课程体系教学设置
1.嵌入式课程特点。我校计算机科学与技术专业嵌入式方向的学生侧重从事嵌入式操作系统和应用软件的开发。我们在实际的教学过程中发现嵌入式系统开发和一般的PC机开发具有明显的差异。首先,嵌入式系统的开发往往需要根据用户的需求进行定制,而不是通
用操作,开发人员必须具备完善的知识体系;其次,嵌入式系统开发的工程性,嵌入式系统开发往往都是一个体积非常小的部件,CPU通常不采用Intelx86系列,开发工具也是专用的开发板。学生如果不通过实际动手开发一个系统模块,就很难了解嵌入式开发的基本过程,因此,实际动手能力是嵌入式课程最显著的特点。
2.我校嵌入式课程体系设置。嵌入式课程的特点使得学生必须有较完整的知识结构,因此,嵌入式课程体系的设置尤为重要,表1是我校嵌入式课程内容及时间设置情况。
表1显示,我校计算机科学与技术专业嵌入式方向专业课程从第二学年第4学期开始,从系统开发基本概念以及开发平台出发,依次对嵌入式操作系统Linux、嵌入式程序设计基础以及Java程序设计基础进行深入讲解,最后对嵌入式接口技术以及高级编程展开讲解,第四学年两个学期分别对专业实习和毕
业实习进行持续性的工程化实践教学。
三、教学改革措施与创新实践
1.注重培养创新能力。嵌入式系统的开发依托产品和市场,而设计的创新性决定了系统的价值,因此,如何通过课程加强学生创新素质培养是我们面临的难题。我们在教学过程中的措施如下:理论学时仅概要讲解基本原理和方法,要求学生充分利用课外时间,查阅各种文献资料进一步学习,学生可以根据个人兴趣有选择地对某些问题进行深入的分析研究,环境搭建以及技术要点则通过实验学时完成;将学生两人一组,要求每组必须选取至少一个实验模块,小组内进行任务分工,对实验模块所涉及的知识点以及代码编写,甚至存在的问题等,在实验学时容许的范围内进行全班范围内讲解,任务在学期初就进行认领,提前布置给学生,使学生有充分时间准备,将被动接受知识的灌输转变为主动探索思考,鼓励学生对实例所采用 的技术和方案进行不同角度的评价,深入研究实际系统,任课教师也对分组学生的任务完成给予一定的评价和考核,提高学生的学习能动性;利用实验学时6学时的综合开放实验,任课教师鼓励和引导学生积极提出自己的设计思想,并且注重设计的原创性。2.以生命期为线,规划教学体系。完整的知识结构离不开完善的嵌入式系统开发生命期的教学体系,因此嵌入式教学体系按照从下往上,从硬件到软件,从平台到应用的“三步走”思路,将嵌入式系统开发的生命周期和课程设置进行对应:①嵌入式开发环境的建立,对应课程《嵌入式软件开发导论》、《嵌入式接口技术》,着重开发平台的了解和认识,交叉编译、仿真开发环境的搭建和使用方法的掌握,这不但是嵌入式系统开发的基础,也是实际工程项目的开始。②基于嵌入式操作系统的软件开发,对应课程《嵌入式操作系统》、《嵌入式程序设计基础》,包括应用开发和核心编写代码,是实际工程项目
中的应用程序设计的基础。③嵌入式综合应用的开发,对应课程《嵌入式高级编程》、《Java程序设计》,包括农业移动多媒体、农业生产嵌入式图形应用、智能农业等复杂的复合型应用的开发,直接面向实际工程项目。
这完整的嵌入式课程实验体系,不仅使得教师可以在各个层面对学生的实践能力进行培养,并且可以帮助学生更清晰地理解嵌入式系统的全貌,对嵌入式系统有更加深入的认识。
3.强化实践教学。教学内容以及硬件平台是影响实践教学的重要因素,也是强化实践教学的两个关键方面。我校教学平台是购买市面上现成的通用型实验开发箱,按照厂家提供的内容来授课,实验课程初期,学生的实践环节受限于教学内容和实验设备,大多只能做些验证性实验,直接影响学生面对实际系统时的实际操作创新能力与后续开发实际动手能力,随着课程体系的不断完善,我校和厂家建立了一定的技术合作关
系,在通用型的开发平台的基础上,自行改进设计成为适合本校学生使用的开发板,在实践教学中,通用型和改进型开发板结合使用,达到了良好的教学效果。和厂家进行技术合作关系,我们收获颇多。对实验指导书的实验要求进行一定的调整;减少验证性实验数量,增加了创新性实验部分;基于现有的实验教学平台扩展一定的外部功能模块。一系列的改进措施,不但贴近了我们的教学目标,而且更好地与实际应用接轨。
4.运用学生自主互助学习形式。运用多种形式的自主互助学习形式对提高学生学习主观能动性有极大的促进。①采取项目为载体,小组活动的形式。以学生为主体、以教师为主导,将每个实验内容作为一个小项目,采取分组分工运行的方式,根据题目的具体分工进行分岗位操作,团队成员每人完成一部分工作,教师提出项目设计要求,由项目组成员对问题进行分析讨论,完成从嵌入式系统开发平台建立到驱动程序和应
用程序的项目开发。②鼓励学生参与教师的科研项目。教师结合自己的科研课题,将任务进行模块化划分,鼓励对嵌入式系统开发有兴趣,能坚持吃苦的学生以团队为单位,自主选择对应的项目模块进行深入学习,整个过程中,学生以团队为单位,按照项目开发流程实施项目任务,留出学生自由学习的空间;教师在项目实施过程中给予一定的方向性指导和技术支持。③鼓励学生积极参与课外专业竞赛或科研项目,如国家级、省级的嵌入式电子设计大赛,大学生创新性科技项目,学生科学研究项目等,通过竞赛可以有效地激发学生的创新能力,培养学生勇于探索的精神,训练学生的综合能力,提高学生的实践动手能力。实践证明,我校参加过专业竞赛或科研项目的学生在解决问题的方面具有更大的优势。
嵌入式系统课程具有应用性极强的特点,其教学改革也将是复杂而艰巨的过程,因此,我们要在今后的教学过
程中,不但力求建立完整、合理的课程设置体系结构,而且还要注重强化实践教学活动,这样才能培养出理论基础扎实、工程设计经验丰富的嵌入式专业人才。
参考文献:
[1]陆冰,裴东。嵌入式系统教学模式探讨[J].现代计算机专业版,2007,(9):44-45,78.[2]马忠梅。嵌入式系统教学模式探讨[J].单片机与嵌入式系统应用,2008,(11):5-8.[3]殷建军,张明武,尹令。嵌入式系统课程现状分析与对策研究[J].计算机教育,2010,(14):114-117.[4]江维,桑楠,等。面向高等教育的嵌入式系统教学改革[J].计算机教育,2011,(16):33-35.