嵌入式系统教学模式探讨
时间:06-06
来源:互联网
点击:
2 嵌入式操作系统
Linux从1991年问世到现在,短短十几年时间已经发展成为功能强大、设计完善的操作系统之一,不仅可以与各种传统的商业操作系统抗争,在新兴的嵌入式系统领域内也获得了飞速发展。嵌入式Linux以其可应用于多种硬件平台、内核高效稳定、开放源码、软件丰富、完善的网络通信和文件管理机制等优良特性,成为嵌入式系统领域中的一个研究热点。Linux开放源码及内核可裁减非常适用于嵌入式系统教学。要注意,没有MMU的微控制器只能使用μClinux,要使用流行的图形用户界面GUI需要ARM9以上的微处理器和普通Linux操作系统。
Windows CE是微软公司从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。它的模块化设计允许对从掌上电脑到专用工业控制器的用户电子设备进行定制。微软公司的大学计划支持高校的嵌入式系统教学,提供有时间限制的安装软件光盘和完整的教学课件。会微机编程的人能够很容易上手Windows CE编程,软件学院教学选用它很合适。更重要的是微软提供完整的解决方案,学生可以专注于应用的开发。
VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种实时操作系统。VxWorks拥有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。VxWorks是商业化强实时操作系统,价格较高。风河公司有大学计划支持嵌入式系统教学。现在它从FSMlabs购买了RTLinux,对实时Linux开发设计提供专业的开发平台。
μC/OS是由美国人Jean J.Labrosse开发的实时嵌入式操作系统内核。这个内核的产生和Linux有点相似:
由于从事嵌入式产品的相关开发和Labrosse本人的兴趣,他花了一年时间开发了这个最初名为μC/OS的实时操作系统。值得注意的是μC/OS只是一个操作系统内核,没有文件系统、网络协议和图形用户界面。μC/OS是开源的,但不免费。针对教育和非商业应用只要买Labrosse的书即可得到光盘上的源码,但用其开发产品是要付费的。周立功公司购买了μC/OS授权,自己设计了文件系统ZLG/FS、网络协议ZLG/IP和图形用户界面ZLG/GUI,提供了开发平台。Labrosse的Micrium公司通过北京麦克泰软件公司代理其产品。该软件代码很规范,没有使用操作系统课程中很专业的进程和线程的概念,只使用了任务,适合没有学过操作系统课程的开发人员学习。
总之,嵌入式系统教学用嵌入式操作系统也要慎重选择,能选用主流或有厂家大学计划支持的更好。一般只需选择一种,从精通一种到能开发项目。实际上一通百通,再学习其他的操作系统也不困难。
3 嵌入式系统教学探索
3.1 应用推动嵌入式教学
笔者1985年起给单片机培训班上课,当时的培训班学员来自研究所、公司和高校。培训班的目的是销售和培训厂商的开发工具,不收取费用。很多学员都有项目需求,学会使用工具后直接参与项目。这种单片机推广培训开展7年后,国内高校才大规模开课。由于单片机应用已经全面铺开,高校培养的学生很容易找到工作。
现在的嵌入式系统教学很大程度上不是由应用来推动的,而是跟着实验箱厂家提供的内容来规划授课内容,包括接口技术、汇编编程、C语言编程、操作系统移植。甚至ARM加Linux似乎就是嵌入式系统。存在的问题是,Linux开放源代码、免费但无人支持,一旦碰到难点只能网上求援。很多小公司吃了苦头,再不敢用Linux做产品;有的转向Windows CE,因为无法把握产品的开发周期,而且人员成本较大。虽然Linux可以免费得到,但是其上流行的图形用户界面GUI又是收费的,按照GPL协议还得公开自己的源码。Linux的教学难度也很大,一般学过操作系统才好办。最早的嵌入式系统课将很大精力消耗在教学生怎么用Linux,直到计算机操作系统课加了Linux上机实验上手才比较顺利。从Intel公司大学计划送给高校教学用的PDA参考设计——SitSang板子的培训教师看,硬件部分的培训教师是板子的设计者,是学电子技术的,主要讲硬件原理,软件只是用C语言编写测试程序来测试板子的各个部件是否工作正常;软件部分的培训教师是学计算机的,主要讲如何移植Linux、设计驱动程序和应用程序。可见大公司软硬件人才分工很明确。
实际上一个项目的软硬件开发人员比例可以到8∶2。也就是说若有10人,其中做硬件的只有2人,大部分人要开发软件。硬件有参考设计原理图,做出来即可;而软件体现着创意,体现产品的附加值。软件很重要,拿VCD机和苹果公司的iPOD比较,国内VCD机只能卖到几百元,而苹果公司的iPOD要卖几千元。硬件成本两者相比差不多,关键是软件。微软的移动和嵌入式研讨会令人感到震撼。微软资助用Windows Mobile开发云南白药集团企业管理用手机和城管通手机:
企业销售人员用前者随时和企业联系,一次拜访客户即可把订单做好;城管通手机使城管监督员可将所在地点的门牌标识和脏乱差的情况拍照,直接发送给城管部门。微软公司介入嵌入式领域,提供的是完整的解决方案,用户很快就能开发出产品。反观国内的嵌入式Linux,还陷在移植和底层接口模块的使用上。一般来讲这些适合偏硬件的人员做,距离做出产品还相去甚远。半导体厂商偏爱Linux是因为它是免费的,只要移植到评估板上就能证明处理器是正常工作的。真正要能开发出产品还得搭建应用平台。目前大的厂商都有手机平台、PDA平台或汽车电子平台。软件类嵌入式系统教学应该与硬件类嵌入式系统教学有所不同,应侧重平台搭建、GUI应用的开发,让学生能把自己的创意实现出来。至于编程,应以C语言为主、汇编语言为辅,优化则采用模块化混合编程。嵌入式系统课的实践性非常强,要上成理论课就失去了它的意义。
Linux从1991年问世到现在,短短十几年时间已经发展成为功能强大、设计完善的操作系统之一,不仅可以与各种传统的商业操作系统抗争,在新兴的嵌入式系统领域内也获得了飞速发展。嵌入式Linux以其可应用于多种硬件平台、内核高效稳定、开放源码、软件丰富、完善的网络通信和文件管理机制等优良特性,成为嵌入式系统领域中的一个研究热点。Linux开放源码及内核可裁减非常适用于嵌入式系统教学。要注意,没有MMU的微控制器只能使用μClinux,要使用流行的图形用户界面GUI需要ARM9以上的微处理器和普通Linux操作系统。
Windows CE是微软公司从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。它的模块化设计允许对从掌上电脑到专用工业控制器的用户电子设备进行定制。微软公司的大学计划支持高校的嵌入式系统教学,提供有时间限制的安装软件光盘和完整的教学课件。会微机编程的人能够很容易上手Windows CE编程,软件学院教学选用它很合适。更重要的是微软提供完整的解决方案,学生可以专注于应用的开发。
VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种实时操作系统。VxWorks拥有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。VxWorks是商业化强实时操作系统,价格较高。风河公司有大学计划支持嵌入式系统教学。现在它从FSMlabs购买了RTLinux,对实时Linux开发设计提供专业的开发平台。
μC/OS是由美国人Jean J.Labrosse开发的实时嵌入式操作系统内核。这个内核的产生和Linux有点相似:
由于从事嵌入式产品的相关开发和Labrosse本人的兴趣,他花了一年时间开发了这个最初名为μC/OS的实时操作系统。值得注意的是μC/OS只是一个操作系统内核,没有文件系统、网络协议和图形用户界面。μC/OS是开源的,但不免费。针对教育和非商业应用只要买Labrosse的书即可得到光盘上的源码,但用其开发产品是要付费的。周立功公司购买了μC/OS授权,自己设计了文件系统ZLG/FS、网络协议ZLG/IP和图形用户界面ZLG/GUI,提供了开发平台。Labrosse的Micrium公司通过北京麦克泰软件公司代理其产品。该软件代码很规范,没有使用操作系统课程中很专业的进程和线程的概念,只使用了任务,适合没有学过操作系统课程的开发人员学习。
总之,嵌入式系统教学用嵌入式操作系统也要慎重选择,能选用主流或有厂家大学计划支持的更好。一般只需选择一种,从精通一种到能开发项目。实际上一通百通,再学习其他的操作系统也不困难。
3 嵌入式系统教学探索
3.1 应用推动嵌入式教学
笔者1985年起给单片机培训班上课,当时的培训班学员来自研究所、公司和高校。培训班的目的是销售和培训厂商的开发工具,不收取费用。很多学员都有项目需求,学会使用工具后直接参与项目。这种单片机推广培训开展7年后,国内高校才大规模开课。由于单片机应用已经全面铺开,高校培养的学生很容易找到工作。
现在的嵌入式系统教学很大程度上不是由应用来推动的,而是跟着实验箱厂家提供的内容来规划授课内容,包括接口技术、汇编编程、C语言编程、操作系统移植。甚至ARM加Linux似乎就是嵌入式系统。存在的问题是,Linux开放源代码、免费但无人支持,一旦碰到难点只能网上求援。很多小公司吃了苦头,再不敢用Linux做产品;有的转向Windows CE,因为无法把握产品的开发周期,而且人员成本较大。虽然Linux可以免费得到,但是其上流行的图形用户界面GUI又是收费的,按照GPL协议还得公开自己的源码。Linux的教学难度也很大,一般学过操作系统才好办。最早的嵌入式系统课将很大精力消耗在教学生怎么用Linux,直到计算机操作系统课加了Linux上机实验上手才比较顺利。从Intel公司大学计划送给高校教学用的PDA参考设计——SitSang板子的培训教师看,硬件部分的培训教师是板子的设计者,是学电子技术的,主要讲硬件原理,软件只是用C语言编写测试程序来测试板子的各个部件是否工作正常;软件部分的培训教师是学计算机的,主要讲如何移植Linux、设计驱动程序和应用程序。可见大公司软硬件人才分工很明确。
实际上一个项目的软硬件开发人员比例可以到8∶2。也就是说若有10人,其中做硬件的只有2人,大部分人要开发软件。硬件有参考设计原理图,做出来即可;而软件体现着创意,体现产品的附加值。软件很重要,拿VCD机和苹果公司的iPOD比较,国内VCD机只能卖到几百元,而苹果公司的iPOD要卖几千元。硬件成本两者相比差不多,关键是软件。微软的移动和嵌入式研讨会令人感到震撼。微软资助用Windows Mobile开发云南白药集团企业管理用手机和城管通手机:
企业销售人员用前者随时和企业联系,一次拜访客户即可把订单做好;城管通手机使城管监督员可将所在地点的门牌标识和脏乱差的情况拍照,直接发送给城管部门。微软公司介入嵌入式领域,提供的是完整的解决方案,用户很快就能开发出产品。反观国内的嵌入式Linux,还陷在移植和底层接口模块的使用上。一般来讲这些适合偏硬件的人员做,距离做出产品还相去甚远。半导体厂商偏爱Linux是因为它是免费的,只要移植到评估板上就能证明处理器是正常工作的。真正要能开发出产品还得搭建应用平台。目前大的厂商都有手机平台、PDA平台或汽车电子平台。软件类嵌入式系统教学应该与硬件类嵌入式系统教学有所不同,应侧重平台搭建、GUI应用的开发,让学生能把自己的创意实现出来。至于编程,应以C语言为主、汇编语言为辅,优化则采用模块化混合编程。嵌入式系统课的实践性非常强,要上成理论课就失去了它的意义。
- Linux嵌入式系统开发平台选型探讨(11-09)
- 嵌入式系统中文输入法的设计(03-02)
- 基于MPC755的嵌入式计算机系统设计(05-10)
- WinCE下光电编码器的驱动程序设计(04-12)
- 为什么嵌入式开发人员要使用FPGA(05-13)
- VxWorks几种常用的延时方法介绍(05-16)