嵌入式组件设计课程研究

来源 :中国电力教育 | 被引量 : 0次 | 上传用户:liongliong587
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:嵌入式技术及物联网技术飞速发展的今天,嵌入式系列课程的教学也在各大院校中开展起来,嵌入式组件设计属于软硬件结合设计的一门学科。介绍了嵌入式组件设计概念、体系结构及发展方向。设置了嵌入式组件设计课程内容,包括嵌入式驱动程序设计、控件设计和基本组件设计三部分内容,对培养适应社会需求的嵌入式技术人才有着重要意义。
  关键词:嵌入式组件;驱动程序;课程研究
  中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2014)21-0044-02
  计算技术的发展经历了三次革命:存储程序计算机、高级编程语言和组件级编程。在通用计算机中利用面向对象技术进行编程,实现代码重用。而现在的嵌入式技术中也需要这样的功能,开发一个组件,该组件可以很容易作为其他程序的组成部分使用。嵌入式系统在人们的印象中多应用在工业控制领域以及智能机器人,但随着移动通讯以及智能家电、网络家电的发展,嵌入式系统的应用越来越广。在任何大中型嵌入式软件设计项目中,重要的是在代码编写之前完成某种形式规范。组件级设计也不例外。在每一组代码前,用一组描述组件接口的形式规范描述代码的属性和方法。在程序开发过程中可以在任意时刻添加该组件。在组件级编程中,可以利用单个组件(例如按钮、列表框或文本框控件)组合成多个功能复杂的大型程序。[1]
  一、嵌入式组件概述
  嵌入式组件设计是电子信息专业及相近专业的一门专业课,其目的是使学生了解一种重要的、最新的应用程序开发风格——组件级编程和设计的方法,并将这种组件设计与嵌入式系统联系起来,使嵌入式系统设计更加方便简单。完成这些内容的学习后,使学生能在嵌入式系统中轻松开发大量基于组件的应用程序,而且还具备开发各种第三方定制组件所需的技能。
  1.嵌入式驱动程序设计
  设备驱动程序是介于硬件和OS内核之间的软件接口,是一种低级的、专用于某一硬件的软件组件。驱动程序模块,就可以把操作系统的API函数和底层的硬件分离开来。当外围设备改变的时候,只需更换相应的驱动程序,不必修改操作系统的内核以及运行在操作系统中的软件。[2]該部分包括基于ARM架构的串行口通讯、键盘驱动原理、I/O接口电路、A/D接口电路、LCD的驱动控制、触摸屏程序设计、USB接口组件设计的内容。
  2.控件设计
  与Windows操作系统类似,控件是可视化开发的基础。对于开发应用程序的用户来说,控件是一个独立的组件,有着自己的显示方式和动态内存管理模式,设置中有的控件还可以向系统发送自己的消息。用户不需要掌握控件的内部到底是如何工作的,只需通过控件提供的API函数改变控件相应的属性,即可改变控件的显示方式。控件的引入可以大大方便用户的开发,加速用户应用程序界面的编写速度。同时,也为运行在操作系统上的应用程序的界面提供了统一的标准,方便了使用。控件设计包括消息、文本框控件、列表框控件、按钮控件、窗口控件、绘图控件、系统时间功能部分应用程序编写。
  3.基本组件设计
  前面介绍的几种组件都属于单个组件的开发设计,而组件级编程中涉及到的组件是综合组件,包含多个单个组件设计。该组件级编程可以完成嵌入式系统中包括PDA、电子字典、手机等设备的基本功能的实现。
  基本功能组件包括:电话簿组件设计、记事本组件设计、日程表组件设计、系统时间组件设计、日历组件设计、智能拼音输入法组件设计、科学型计算器组件设计,这部分处于用户应用程序中。
  二、嵌入式驱动程序设计研究
  1.ARM的串行口通讯
  这部分设计目标是掌握串行通讯原理;掌握编程实现ARM和计算机实现串行通讯。ARM通过监视串行口,把在程序中插入的想要反馈程序运行情况的串行口语句输出到显示器中的超级终端中,这样便可以实时监控程序的运行情况,方便调试程序。串行口组件设计是将接收到的字符再发送给串口(计算机与开发板是通过超级终端通讯的),即按PC键盘通过超级终端发送数据,开发板将接收到的数据再返送给PC,在超级终端上显示。[3]
  2.键盘驱动原理
  这部分设计目标是掌握键盘驱动的基本原理;熟悉不带操作系统键盘驱动实现;了解带操作系统键盘驱动实现。键盘的设计是将一个瞬时接触开关放置在每一行与每一列的交叉点。矩阵所需的键的数目显然根据应用程序而不同。每一行由一个输出端口的一位驱动,而每一列由一个电阻器上拉且供给输入端口一位。键盘扫描过程就是让微处理器按有规律的时间间隔查看键盘矩阵,以确定是否有键被按下。一旦处理器判定有一个键按下,键盘扫描软件将过滤掉抖动并且判定哪个键被按下。每个键被分配一个称为扫描码的唯一标识符。应用程序利用该扫描码,根据按下的键来判定应该采取什么行动。
  3.I/O接口电路
  这部分设计目标是掌握组件接口的设计;掌握基于ARM开发板对I/O编程的方法;掌握LED工作原理、编程实现LED实现。I/O设备、相关的设备驱动程序和I/O子系统组成嵌入式I/O系统。I/O系统的目标是对RTOS和应用程序员隐藏设备特定的信息,并且对系统的外围I/O设备提供一个统一的访问方法。
  利用I/O编程的方法,在ARM开发板的数码管上显示键盘输入的键值。显示器的种类很多,从液晶显示、发光二极管显示到CRT显示器,都可以与微机配接。在单片机应用系统中常用的显示器主要有发光二极管数码显示器,简称LED显示器。LED显示器具有驱动电路简单、耗电省、成本低廉、配置简单灵活、安装方便、耐振动、寿命长等优点,但显示内容有限,不能显示图形,因而其应用有局限性。当选用共阴极的LED显示器时,所有发光二极管的阴极连在一起接地,当某个发光二极管的阳极加入高电平时,对应的二极管点亮。因此要显示某字形就应使此字形的相应段的二极管点亮,实际上就是发送一个用不同电平组合代表的数据字来控制LED的显示,此数据称为字符的段码。   4.ARM的A/D接口电路
  这部分设计目标是掌握A/D接口原理、编程实现ARM系统的A/D功能;了解模型组件设计方法。能将模拟量转换为数字量的电路称为模数转换器,简称A/D转换器或ADC;能将数字量转换为模拟量的电路称为数模转换器,简称D/A转换器或DAC。ADC和DAC是沟通模拟电路和数字电路的桥梁,也可称之为两者之间的接口。A/D 转换器是模拟信号源和CPU 之间联系的接口,它的任务是将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。一般A/D转换过程要经过采样、保持、量化和编码四个步骤。前两步在取样—保持电路中完成,后两步则在A/D转换器中完成。D/A转换器的基本原理是将输入的每一位二进制代码按其权的大小转换成相应的模拟量,然后将代表各位的模拟量相加,所得的总模拟量就与数字量成正比,便实现了从数字量到模拟量的转换。
  5.LCD的驱动控制
  这部分设计目标是掌握LCD(液晶屏)显示器的基本原理、驱动控制方法;熟悉用总线方式驱动LCD、用ARM内置的LCD控制器驱动LCD。LCD显示器的基本原理就是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。因此,LCD的驱动控制归于对每个液晶单元的通断电的控制,每个液晶单元都对应着一个电极,对其通电,便可使光线通过。
  6.触摸屏程序设计
  这部分设计目标是了解触摸屏基本概念与原理、编程实现对触摸屏的控制;了解嵌入式系统的基本组件模块和其他组件模块。触摸屏是专门处理是否有笔或手指等物体按下触摸屏,平常相互绝缘的两层导电层就在触摸点位置有了一个接触,并在按下时分别给两组电极通电。因其中一面导电层(顶层)接通X轴方向的5V均匀电压场,使得检测层(底层)的电压由零变为非零,控制器侦测到这个接通后,其对应位置的模拟电压信号经过A/D转换送回处理器。经过坐标转换后,得到触摸点的x,y坐标。
  7.USB接口组件设计
  这部分设计目标是了解USB基本概念与原理、编程实现对USB接口的控制。可以使用USB进行连机通信,当连接USB的时候,可以从PC机通过USB端口下载程序,也可以上传文件至PC机,也可以断开USB停止上传和下载。
  三、嵌入式控件设计研究
  文本框控件可以显示文件和数据内容,能够通过对文本框的编辑修改内容,并可保存到文件,系统调用以后,文件内容不丢失。列表框控件可以列出系统中的存储在存储器中的指定扩展名的文件,也可以将要显示的数据列出来。并且还可以控制列表框中的列表内容上下显示,及添加新的列表内容。
  按钮控件是一个非常重要的组件。大多数功能设计或游戏设计都需要按钮控件。当通过触摸屏对按钮控件进行单击、双击、按下、抬起、移动时,都会触发按钮控件,按钮控件会根据不同的动作进行响应。
  窗口控件的作用是输出信息、显示图形。像游戏活动区域、手写输入区域、显示内容区域等,这些区域都需要窗口控件来完成。游戏只能在窗口中进行,不能离开该窗口。窗口以外的区域为游戏说明区域或控制游戏按钮区域。手写输入只能在窗口内输入,在窗口以外的区域不识别。
  绘图设备上下文(DC)保存了每一个绘图对象的相关参数(如绘图画笔的宽度、绘图的原点坐标等)。在多任务操作系统中,通过绘图设备上下文来绘画,可以保证在不同的任务中绘图的参数相互独立、互不影响。
  四、总结
  经过该门课程学习,可以从学会设计一个控件,如按钮、文本框、列表框到根據这些控件完成一项功能设计,如可以将存储卡中的bmp格式的位图文件名列表显示出来,通过点击可以把图形显示出来。了解串行口、键盘、I/O接口、A/D接口、D/A接口、液晶屏、触摸屏、USB接口的工作原理及如何让这些硬件动起来,很容易从中找到设计灵感,找到嵌入式开发的乐趣,完成属于自己的嵌入式系统应用程序设计。
  参考文献:
  [1]王小妮,魏桂英,杨根兴.嵌入式组件设计[M].北京:北京航空航天大学出版社,2012.
  [2]王小妮.基于嵌入式系列课程的教学改革与探索[J].教育理论与教学研究,2013,(5).
  [3]王田苗.嵌入式系统设计与实例开发(第3版)[M].北京:清华大学出版社,2008.
  (责任编辑:王意琴)
其他文献
摘要:MATLAB/Simulink大学师生和研究人员普遍使用的学习和研究工具,由于强大的计算和仿真能力,在课程学习和创新实践能力培养方面起着十分重要的作用。依据重庆大学MATLAB/Simulink有关课程的设置以及实际的教学实践和研究经验,阐述了该软件课程的开设背景,分析了教学实践中存在的问题,并提出了面向创新实践的课程改革方案。  关键词:MATLAB;创新实践;课程改革  中图分类号:G6
期刊
摘要:针对机械类专业卓越工程师培养计划中“工程测试与信号处理”课程建设的需要,从教学内容改革、实验教学模式改革、教学方法、教学资源建设等方面进行了研究,突出了工科人才的工程实践能力与创新能力的培养。  关键词:卓越工程师;工程测试;课堂教学;实验创新  中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2014)21-0058-02  “卓越工程师教育培养计划”是面向工业界、
期刊
摘要:传统的软件类课程教学模式是將理论教学和实验教学分开进行,学生接受知识较被动,且不利于学生及时将理论付诸于实践。针对上述问题探讨了一种“理论实践一体化”教学模式:将课堂教学移入机房,即课堂教学和实验教学一起进行。这样借助机房先进的管理软件,学生学习知识主动化,及时化,教师管理教学方便化。实践证明:这种教学模式极大地激发了学生学习软件的兴趣,方便了老师的教学和管理,学生编写软件的动手能力显著提高
期刊
摘要:“物理光学与应用光学”是电子信息科学与技术专业的学科基础课,该课程为“光电子技术”“激光原理”“光纤通信”等后续课程的学习奠定了基础。根据几年的教学经验,针对目前学生的学习状况,从“物理光学与应用光学”课程教学内容、教学方法的合理调整、现代教学手段的运用以及实践教学环节的加强等方面,进行了课程建设与教学改革的探讨。通过综合利用这些措施,提高了“物理光学与应用光学”课程的教学质量以及学生解决实
期刊
摘要:随着现代医学研究的不断深入,医学技术日新月异,传统教学模式已不能适应现代医学发展进程。高等数学是医学专业的基础学科,对“高等数学”课程的教学改革有利于推动医学知识体系的完善,有利于现代医学理论的研究,更有利于提高学生在实践生活中善于发现问题、分析问题、解决问题的能力。通过对医用“高等数学”教学改革必要性的探究与实践,提出了医用高等数学教育改革的措施,同时对教师提出了更深层次的要求。  关键词
期刊
摘要:“概率论”是高校理工科学生的一门十分重要的课程,不仅是后续课程学习的基础,也在生活实践的各个方面具有广泛应用。结合“概率论”课程的教学实践,探讨对该课程在教学思想和教学方法方面的思考与体会。  关键词:概率论;教学;随机性;兴趣  中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2014)21-0091-02  “概率论”不仅是各后续课程学习的必要基础,也在金融投资、
期刊
摘要:“扩频通信”课程理论性强,对学生的通信理论基础要求较高,在传统的硬件实验中,通过数字示波器设备学生只能动态、粗略地看到一些基础的信号波形,对于扩频后的波形显示由于波特率较高,图形观察效果不理想。而MATLAB软件具有强大的数学运算能力,特别是其图形显示功能非常强大。其Simulink工具箱具有非常强大的建模仿真功能,可以仿真所有扩频通信的实验内容,通过设置系统模块参数,可以仿真出相应波形。实
期刊
摘要:在总结了“生态学概论”课程基本特点的基础上,针对资源环境与城乡规划管理专业本科培养目标和特色,结合教学实践,提出了“增强教学针对性、培养学习兴趣、提高实践能力、启发科研创新思维”的教学思路,以期为进一步提高该专业人才培养质量提供参考。  关键词:生态学;教学思路;教学方法改革  中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2014)21-0097-02  生态学是
期刊
摘要:通过分析现阶段“锅炉原理”课程的教学特点发现,在教学中除了需要依靠教材、参考书以及课堂课件外,还应将复杂结构、非常见实物以及模型引入教学过程。教学实践发现,不同阶段引入不同的模型、实物,可以有效地提高教学效率,加深对相关知识点的印象,明显改善教学效果,弥补现阶段实习环节的不足之处。实践表明,将实物/模型与引入教学相结合的方法,简单易行,效果显著。  关键词:教学改革;实物/模型化教学;锅炉原
期刊
摘要:针对FPGA课程的特点,结合初学者没有基础的实际情况,阐述了FPGA入门级教材内容的设置原则和教学方法,进行了FPGA课程教材内容设置的探索与实践,使初学者能够轻松入门、快速领悟。教材的内容由浅入深、循序渐进和发散式渗透不仅适合高校教学使用,同时适合FPGA初学者自学。FPGA教材的改革已经应用于电子信息工程专业的教学中,并取得了一定的经验和良好的成效。  关键词:FPGA教学;FPGA教材
期刊