前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇接口技术论文范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
(一)内涵
机电接口主要就是机电一体化产品中机械装置与控制微机之间的接口,其是基于机电一体化而产生的。机电接口根据信息传输方向的不同,可以分为信息采集接口、输出接口[1]。在机电一体化产品中,传感器是一种较为常用的设备,在输出信号的时候,一般采用模拟量方式进行检测,时刻掌握发电机转速,并且检测差动变压器位置。然而,在输出控制量的时候,存在一个比较特殊的形式,就是数字系统。机电接口技术主要就是研究机电系统各项组成技术与子系统连接问题的综合技术,其主要包括电子技术、信息技术、机械技术等,共同构成了一个综合系统,在实际应用中,实现了信息的交互与融合,在机电系统设计中发挥了至关重要的作用。机电接口主要是由硬件与软件共同构成,在机电系统运行中,与环境及操作者之间成立一种有效连接,在物理通道中展开信息与能量的输入、转换及传输。在信息转换的过程中,需要进行有效的交互与调整,实现机电一体化技术的协调与综合,保证各系统的有效运行,充分发挥系统功能,实现预期的工作目标。
(二)分类
目前,机电接口主要包括以下几种:智能接口、动力接口、机电接口、人机接口[2]。智能接口应用较为复杂,不同技术形式产生的信息形式也不同,并且在使用过程中,可以根据不同要求展开相应的改变。在各种信息转换与传输的过程中,智能接口可以确保不同技术与子系统的有机结合,构成一个完整系统。动力接口可以有效连接动力源与机电系统,之后给予机电系统相应的驱动动力。在机电系统中,动力类型有很多种,主要包括直流电、交流电、液压等,在系统中运用不同动力类型的时候,需要选用不同的接口形式,确保系统可以正常运行。机电接口的作用就是实现各种驱动系统的有效连接,并且将驱动信号转变成执行信号,在转变的过程中满足传感器运行要求。人机接口是机电系统与操作者之间存在的接口,通过这一接口,可以在操作者眼前呈现系统运行状态,并且有效监控系统运行,实现人性化操作目标。
二、机电一体化发展及其发展趋势
(一)机电接口技术对机电一体化发展的影响
近些年来,随着社会经济的快速发展,人们生活水平的不断提高,对一些事物的要求也在明显提高。经济的快速发展离不开科学技术水平的提高,传统机械技术已经无法满足现代人们日益增长的技术需求,需要对其进行改进与完善。从而在此形势下,机电一体化技术应运而生,其主要包括电子技术、信息技术、机械技术等,充分满足了现代社会发展的技术要求。在机电一体化技术初始发展中,只是将电子技术与机械技术进行融合,接口十分简单、便捷[3]。然而,随着科学技术的不断发展与进步,机电一体化技术水平也在不断提升。目前,机电一体化技术不再是简单的机电一体化产品,逐渐形成了一个复杂的系统,其系统内部接口也日益复杂。现阶段,机电一体化技术研究越来越深入、成熟,然而,简单的技术研究已经无法满足系统的运行需求,需要充分重视其复杂性研究。针对机电一体化技术而言,其复杂性较强,如果只是单纯研究系统设计及其集成理论,根本无法充分实现系统的作用,为此,需要加深对机电接口技术的研究,在设计方面,加强对有关理论的融合,确保机电一体化系统的全面实施。在机电一体化技术发展过程中,越来越向智能化、系统化、微型化、网络化方向发展,其系统内部接口要求越来越高,不仅要确保接口技术与系统技术的有效融合,还要确保信息传输的顺畅。
(二)机电一体化发展历程及趋势
机电一体化发展主要经历3个阶段。一是,在20世纪50年代,电子技术发展越来越成熟,人们尝试在机械工业中应用电子技术,进而刺激了机械产品与电子技术的融合,初步产生机电一体化概念。二是,在20世纪80年代,机电一体化已经发展了30来年,不管是技术还是产品性能都得到了很大的提升,技术更加成熟,产品性能更加健全。三是,在20世纪90年代末,微细加工技术、电子通信技术、光学技术等得到了快速发展,并且逐渐融入发到了机电一体化当中,使得机电一体化技术越来越成熟。我国机电一体化起步比较晚,现今已经取得了一定的成绩,在机械工业中得到了广泛应用。随着信息技术的快速发展,人工智能机电一体化建设取得了很大的进步,在数控机床和机器人制造中得到了广泛运用,促进了机械工业的进一步发展。系统化发展使机械系统更加开放,为多子系统的协调发展与综合管理提供了可靠依据。同时,在绿色生产概念下,机械绿色化也是工业发展的必然趋势,是人类保护生态环境资源的重要手段[4]。
片上网络借鉴了大规模并行计算机的网络互连结构,以数据包的形式进行处理器核间通信,图1以3×3的mesh网络为例示意了其基本结构,主要包括如下组件:1)处理单元(ProcessElement,PE):处理单元负责具体的计算及数据包的发起和接收,其中可包含处理器核(Core),协处理器(CP),存储器(Mem)及I/O等资源;2)路由器(Router,R):路由器通过数据链路相互连接组成特定的网络,并按照一定的路由算法和交换策略实现数据包的转发;3)网络接口(NetworkInterface,NI):网络接口负责处理单元和路由器之间的数据交互,根据双方的协议完成数据包的打包和解包工作;4)数据链路(Link):数据链路连接相邻的路由器,是信号传输的载体。当处理器间需要进行通信时,数据包首先通过源节点的网络接口进入路由器的输入队列,路由器再根据数据包中的路由信息计算其输出方向,并将其转发到相邻的路由器,然后重复该过程直到数据包到达其目的节点。最后,数据包被目的节点的网络接口接收,经过解析之后,其数据被存放到处理单元的存储器中供计算使用。
2单边通信协议
根据虫孔(Wormhole)交换策略[5],一个数据包被划分为若干个微片(flit),其中位于数据包最前端和最尾端的微片分别被称为头微片(headflit,HF)和尾微片(tailflit,TF),中间部分的微片则被称为体微片(bodyflit,BF),这三种微片可进一步通过微片类型编码进行区分。数据包的头微片主要包含相关的路由信息,如源节点坐标(src_x和src_y)、目的节点坐标(dst_x和dst_y),以及数据包长度、冗余校验码等信息,尾微片和体微片则包含了具体待传输的数据。此外,在具有多个虚通道的片上网络中,微片中还包含了其所属的虚通道号(vcid),以使不同数据包的微片可以在数据链路上混合传输,从而提高数据链路的带宽利用率。为了减少处理器的干预、提高数据传输效率,本文对片上网络采用单边通信协议,其主要思想是在数据包中显式地包含数据的目的地址。图2示意了本文使用的数据包格式:一个数据包由至多16个微片组成,每个微片的数据负荷为32位;第一个微片为头微片,包含了路由信息及数据包长度信息;第二个微片包含了一个32位的目的地址,该地址指定了后续数据在目的节点中应被存放的位置;后续微片则包含了具体传输的数据。这种将目的地址包含在数据包中的单边通信方式使网络接口能直接将接收到的数据存入存储器,而无需处理器进行干预,因此有助于提升网络接口的数据接收能力。
3网络接口设计
网络接口(NI)负责数据包的发送和接收工作,是处理单元与片上网络通信的接口。一方面,NI监听从网络到达该节点的微片,组装成完整的数据包,然后通知DMA控制器根据接收到的目的地址将数据存放到存储器中;另一方面,NI从处理器接收数据,将数据进行打包后传入片上网络。因此,NI的处理器端和网络端需分别满足嵌入式总线协议(本文采用AHB总线[6])和基于信用量(credit)的流控协议。以具有两个虚通道(分别用VC0和VC1表示)的片上网络为例,图3示意了本文设计的网络接口结构,其中上半部为网络接收部分,下半部为网络发送部分。在网络接收部分,每个虚通道都对应了一个接收队列、数据包队列、目的地址寄存器和DMA写控制器(wDMA)。数据包的解析和接收是由接收控制状态机和wDMA控制器协同实现的,图4示意了两者的状态转换关系与协同工作方式。一方面,接收控制状态机对接收队列中的微片进行解析,剥离vcid和微片类型等信息后,将有效数据存入数据包队列;接收控制状态机检测到一个完整的数据包后,就通知相关的wDMA控制器直接将接收到的数据搬移到存储器中。另一方面,DMA写控制器(wDMA)接收到DMA传输请求之后,首先从数据包队列中读取出第一个微片,并将其记录为后续数据的目的地址;然后,wDMA控制器向AHB仲裁器发送总线请求信号,申请对总线的所有权;接下来,wDMA控制器发起AHB总线传输操作,将数据包队列中的数据按照先前记录的目的地址连续地存入存储器中;等到数据包队列为空之后,接收控制状态机和wDMA控制器均返回空闲状态。在网络发送部分,处理器将待发送数据的起始地址(针对发送节点而言)和数据长度写入相关的DMA读控制器(rDMA)中,再由rDMA将数据从存储器搬移到发送端的数据包队列。发送控制状态机再将数据包的目的地址(针对目的节点而言)与数据包队列中的数据进行打包后传入网络。另外,由于VC0和VC1可能同时发送数据包,因此在发送控制状态机中还进行了虚通道间的仲裁,仲裁的结果用于选择相应的数据进入网络。为了简化接收控制状态机对完整数据包的探测过程,规定网络中数据包的长度不能大于NI中数据包队列的深度,以使数据包队列可以存放一个完整的数据包。在本文中,NI接收部分和发送部分的数据包队列深度均被设置为16,因此网络中的数据包最长不能超过16个微片。
4验证及性能分析
4.1验证及测试环境为了对设计的片上网络传输接口进行验证及性能测试,本文将网络接口集成到了一个4×4mesh片上多处理器验证环境中,图5示意了该多处理器的结构:每个节点均为一个基于AHB总线的小型系统,其中包含了一个小型RISC处理器(μP)、私有SRAM存储器、片上网络路由器及网络接口。为了对网络接口的性能进行对比分析,本文选取了并行FFT计算[7~10]作为应用案例来对该16核系统进行性能测试。其中,测试组采用本文设计的网络接口,数据在存储器和网络接口间的搬移采用DMA方式实现;而对比组采用非DMA操作的网络接口,数据的搬移是以中断的方式通知处理器μP干预实现。
4.2案例测试图6给出了在16核系统中进行单精度浮点FFT计算的结果,其中横轴表示输入序列长度的对数,纵轴为计算过程所消耗的时钟周期。从图5可以看出,对比采用CPU干预型网络接口的16核系统,采用DMA传输型网络接口的16核系统具备了更高的并行计算性能。当FFT序列长度为1024时,本文设计的网络接口使FFT计算耗时降低了20%左右,且随着FFT序列长度的增加,DMA传输型网络接口对16核系统并行计算性能的提升更加明显。导致FFT计算性能提升的原因主要有两点。1)由于本文设计的网络接口通过DMA方式实现数据负荷的搬移,而非通过CPU进行显式的搬移,因此缩减了数据包的发送和接收延时,减低了处理器核间通信带来的性能损耗;2)网络接口采用的DMA传输方式减少了CPU对数据包的干预,使得CPU能更加专注地进行数据运算,因此应用程序的并行计算性能得到了提升。
5结语
论文关键词:微机原理与接口技术;教学计划;课堂教学方法;实验教学改革
20世纪70年代大规模集成电路技术的发展促生了第一台微型计算机,至今,微型计算机技术在短短三四十年的时间里已不可动摇地发展成为计算机技术领域的一个重要的分支,广泛深入地渗透到工业控制、仪器仪表、消费产品、汽车、办公自动化和通信等领域,从微控制器的品种、结构、功能、性能、价格、生产工艺到开发方式等都以迅猛的势头快速发展。这无疑对微型计算机人才的适应性提出了更高的要求。高校开设的“微机原理与接口技术”是电子、自动化、通信、计算机相关专业一门理论与实践联系很强的专业基础课程,具有很高的实用价值,起到承上启下的重要作用,其教学质量的好坏直接影响着学生综合能力的培养与提高。为了更好地满足社会和企业对具有高技能应用型人才的要求,减轻教师教学的压力,结合自身教学和实践,谈几点体会和改革的新思路。
一、安排好合理的教学计划
“微机原理与接口技术”课程一般安排在大学二年级下学期或三年级上学期,由于内容多、难度大,初次接触微机的大多数学生对其缺乏正确的认知,其心理上对之有一定的畏惧,所以制订的授课计划应重点突出、层次分明、由浅入深循序渐进。
1.重点突出、层次分明
从目前的教学培养方案来看,“微机原理与接口技术”课程的学时一般为60~70学时。在课时这么少的情况下要完成相对较多的内容,安排讲授的重点就应放在实用性的理论知识上。为此应遵循以下两个原则:首先是可行性。根据学生现有的理论储备、企事业现阶段对微机人才的要求和学院相应的设备条件等基础环境,将有实用价值的内容合理地有重点地安排进课程或适度加强。其次是拓展性。为达到实用性强的特点,在教学计划安排过程中,加入对知识纵向和横向的延伸,引导学生积极思考,鼓励学生对所学习内容在实际的应用中讨论,进行更深层次的研究。只有这样,书本上的知识才能真正成为自己的知识。
2.由浅入深、循序渐进
在“微机原理与接口技术”课程之前学生已进行了大学物理和电子技术的学习。为了更好地衔接,教师在制订教学计划时应从学生已经学习过的数制转换、编码、存储器等知识入手逐渐深入到微机原理其他未知的领域,由浅入深地安排好课程计划,慢慢地培养学生兴趣。如此安排易于学生接受知识,起到了很好的承接作用。经过在集美大学信息工程学院、理学院和诚毅学院的实践教学表明,这样的课程安排很受学生欢迎。
二、选择合适的课堂教学方法
理工学科的课程内容相对枯燥又难以理解,所以就更加要求理论教学应该针对性地寻求灵活的教学方法。适合“微机原理与接口技术”的课堂教学方法很多,如启发式教学法、渐进式教学法、比较式教学法、归纳式教学法等。这些方法综合应用在课堂教学中,对教学质量有很好的保证。但针对不同的学生也必须有各自的侧重方法,才能达到最佳效果。下面以前两种方法为例进行探讨。
1.启发式教学
理工课程内容的严谨性很容易造成课堂氛围沉闷,形成填鸭式的教师一言堂。例如信息工程学院的学生特点是入学成绩好,基础知识比较扎实,但缺点是思维不够活跃,最容易形成死气沉沉的课堂。如何在教学中调动学生积极性,是改善课堂氛围、提高学生学习效果的重要环节。所以针对信息工程学院的学生,更合适较多地采用启发式教学,以调动学生学习热情与兴趣,促进学生个性发展。这就要求在教学中根据教学内容的铺展由表及里循序渐进地不断引出问题,启迪学生去思考、分析问题,直到提出解决问题的方法或途径。比如在教授算术运算指令时,首先引导学生回忆标志寄存器的结构和数制计算时的补码运算,在此基础上再仔细讲解算术运算类指令的功能。有了良好的理论基础,再举一例题:十进制转十六进制的转换程序,用传统的顺序结构算法详尽地讲解转换的过程。下一步就是引导学生思考传统算法的不足,有的学生就提出计算太繁复、结构不合理,于是更深地引导如何解决这个问题,要求学生通过课堂练习、课后作业或上机实验完成新的计算程序。反馈的结果是有的学生选择使用循环结构、有的选择过程调用,都大大地简化了转换程序,达到了预期的效果。最后引导学生应用后续的宏或中断的知识完成相应的编程,进一步拓展学生思路,为学习后续的知识打下伏笔。
启发式教学强调学生是教学的主体,调动学生的学习主动性。教师要淡化标准答案,鼓励学生多向思维,弱化思维定势。“微机原理与接口技术”教学中针对信息工程学院的学生采用启发式教学,利用学生相对比较扎实的理论知识为基础,对学生的疑问不作正面回答,启发学生独立思考,培养学生独立解决问题的能力,发扬教学民主,用问题引导学生顺应教师的思路不断思考,主动分析问题,找到问题所在并最终找到解决办法。
2.渐进式教学法
渐进式教学法是指利用已有的知识作为新知识的基础和阶梯,灵活利用知识点之问的横向关联和纵向层次,由浅入深、由易到难、循序渐进的教学方法。此方法在实践中主要针对集美大学诚毅学院的学生,他们的特点是思维活跃、富有个性,但是基础知识相对薄弱。例如在讲解存储器时先是从上学期学生刚刚学过的触发器入手,进入到由触发器构成的存储器单元,将新知识铺垫在学生已有的知识结构上,有了这个基础再进一步讲解CPU对存储器的组织、如何寻址,学生自然而然进入所授新知识的环境中。这样由浅入深,层层递进,符合认知规律,有利于学生系统全面地理解学习内容。
三、改革传统的实验模式
在以往的实验教学中,实验内容往往以验证理论知识为主要目的,这样安排旨在让学生通过实验课程加深对理论知识的记忆和理解,使实验教学成为课堂教学的有限延伸。在实验课中,学生用统一的模式,无法将自己的创造性想法和实验课程结合起来,也无法灵活地将所学的理论知识和实验内容结合起来。由于实验内容和课堂教学内容过多重复,无法激发学生对实验课程的兴趣;理论验证性实验过多,学生也很难去真正地思考、分析问题,失去了提高动手能力的机会。改变传统实验过程中以验证性为主的实验模式,以理论验证为基础,增加实验的拓展性、挑战性和综合性,真正达到让学生在实验环节中提高动手能力、锻炼思维能力的目的。
1.改验证性实验为引导性的试验
教师仅提供实验目的和要求,指出实验的方向,学生提前到图书馆或者网上查阅相关资料,设计实验方案,编写相关的流程图和预习程序。在实验中的任务是发现问题并解决问题,最后得到实验结果。学生应根据自己的实验过程撰写实验报告,重要的环节是报告中一定要包括实验中各自遇到的问题,解决方案是什么;如果最终也未能解决问题,要分析原因并考虑可能的解决方案。同时教师也可以组织学生交流,分组讨论,对各组实验结果与报告展开分析,从而提高学生的研究能力和科学实验能力。
2.加强参与实践的积极性
为了充分调动学生的积极性和主观能动性,实践中还引入激励机制。每一个能提前完成实验任务的学生都有机会从教师那里随机的得到一道拓展性的题目,这个题目是教师根据学生前面完成任务的具体情况、遇到的问题和存在的不足或是希望其在某一方面有更深的思考而针对性地提出新任务,是本次试验的巩固和延伸。等学期结束后进行统计,完成拓展任务多的学生就有机会实验考试免试。由于新任务是学生主动要求的,再加上激励机制,故学生积极性非常高,解决问题的主动性很强,收获也更大。
3.充分利用好课外时间
“微机原理与接口技术”课程的课外教学也是实践教学中很重要的一个组成部分。学生往往对抽象的理论知识感觉枯燥难学,对实际动手比较有兴趣。为此,可以通过组织兴趣小组、参与教师的科研、参加各种讲座、参与校内外组织的各种相关竞赛活动等各种方式进行课外学习,激发学生的创新精神,开阔视野,增长才干,增强独立解决实际问题的能力。逐步培养学生的研究能力、创新能力以及自我管理、相互学习、团队合作等多方面的能力。
关键词:计算机监控;仿真软件;综合实践;教学模式
中图分类号:G642 文献标识码:B
文章编号:1672-5913 (2007) 20-0077-04
1引言
目前,我国计算机专业的教学模式主要还是从基础理论到专业理论,实践环节较少,这就导致了学生厌学,眼高手低,本科毕业连基本的编程技能都不具备,从而,在就业市场上一败涂地。这些效果又使在校学生更加沮丧,进一步影响其学习的积极性。中国要发展IT产业,必须改革计算机专业的教学模式。
印度是一个贫穷落后的发展中国家,软件业的成就却举世瞩目。印度的软件人才主要是通过职业教育而不是高等教育来培养的,从而大大降低了培养成本和使用成本,缩短了培养周期。其教学不是按从基础理论到专业理论,再到实习的路径,而是把顺序颠倒过来,先从做开始,在做的过程中,学生如遇到问题,再以此问题为基点去学习专业理论。学员一入学,便要做项目,培训中心把所承接的大项目分解成一个个小项目,然后要求每个学员完成一个小项目,让学员在完成项目的过程中学习。培训中心的学员最后一年都在公司实习,积累工作经验,同时也给企业提供深入了解雇员的机会。
我们借鉴印度发展软件业的成功经验,结合多年从事计算机监控的项目经验和从事教学的心得体会,提出一种“趣味实用程序的演示+知识点+趣味实用程序的模仿+综合训练+学术论文”的教学模式[1],引导学生充满兴趣地钻研技术,最后逐渐成为计算机监控方面的专家,并熟练掌握计算机专业的基础理论与编程语言。
2计算机监控技术的特点与主要技术
计算机监控系统是以监测控制计算机为主体,加上检测装置、执行机构与被监测控制的对象共同构成的整体。在这个系统中,计算机直接参与被监控对象的检测、监督和控制。检测主要是通过传感器和相应的输入模块来取得被监控对象的状态数据,监督主要是对状态数据进行分析后给操作员提供手动操作的参考,控制则是手动或按照一定的策略自动地对被监控对象执行相应的操作。
传统的检测与控制所使用的模块一般采用RS-232接口,因为该接口简单可靠。随着网络技术的发展,采用网络接口RJ-45的模块逐渐增多。监控用的计算机一般称为主控机(或上位机),各种检测与控制模块或嵌入式系统一般称为受控机(或下位机)。主控机软件一般采用高级语言(如Visual Basic 6.0,简称VB)进行开发;受控机软件没有软件界面,仅实现相关的逻辑功能,一般采用C语言、汇编语言等进行开发,通过调试后,再下载到受控机系统中。主控机通过RS-232/RJ-45接口与受控机通信,进行数据的查询与命令的发送。各种控制策略、设备的状态等的保存,都需要使用数据库技术。因而,实现一个计算机监控系统,需要综合使用诸多计算机的基础理论与编程语言:计算机接口技术、计算机网络、数据库系统、VB与C语言等,利用计算机监控技术作为计算机专业实践训练的主线,具有很高的操作性和极大的意义。
3仿真软件的设计
学习计算机监控技术,需要购买相应的硬件模块,从而在一定程度上制约了该技术的推广。本文提出了一个基于RS-232的仿真模块的可视化模型,在此基础之上设计了可视化的仿真数字I/O模块,模拟量输入模块,并设计了对应的通信协议。主控软件与仿真模块之间的通信通过虚拟串口实现,从而,达到在计算机房零成本搭建计算机监控系统平台的效果。
RS-232/RJ-45协议转换器可以用于实现计算机监控系统的远程处理,也可以用于将普通的输入模块转换为仿真的网络传感器。
3.1仿真模块的可视化模型
基于RS-232接口的仿真模块的可视化模型如图1所示。模块表示区用来模拟实际的模块,对于数字量输入模块(Digital Input Module,DIM),输入开关根据设定的时间随机闭合/打开,并通过图形表示;对于数字量输出模块(Digital Output Module,DOM),用有源电路回路表示输出开关的状态,例如,开关闭合,播放铃声或灯亮等;对于模拟量输入模块(Analog Input Module,AIM),用图形表示检测回路,并在检测点旁边显示温度的原始数据。每个模块都设置数据接收和发送指示灯,显示数据收发的状态。
功能按钮区为系统设置按钮和关闭程序按钮。系统设置主要完成串行通信的端口号、波特率、校验码、结尾码、模块地址等的设置,对于DIM模块,还需要设置随机切换输入开关所需要的时间段。
协议描述区显示本仿真模块适用的通信协议,包括协议的格式及其具体的含义。
数据接收区显示接收到的主控程序发送的原始数据包,以字节形式显示;数据响应区则发送对应的响应数据包,也是以字节形式。
利用此可视化模型设计的软件界面,使用方便,动态效果好,仿真模块的开关状态、温度数据、数据收发状态以及传输的数据均一目了然。与实物模块相比,不需要物理连线,也不需要信号发生器与万用表来产生信号和测量状态与数据,对于通信协议,也不需翻阅手册。
3.2通信协议的设计
相同类型(或厂家)的模块一般采用相同的前导字符,EOT是一个特殊的ASCII字符(0x04),常被用做控制字符,这里的仿真模块全部采用EOT作为前导字符。
计算机所连接的I/O模块比较多,CPU为了与连接的设备相互沟通,必须给设备设置一个编号,从而使CPU可以通过每个设备独一无二的编号与不同的设备进行沟通,这个设备编号就是地址,用ADD表示,地址占用一个字节。
功能码主要包括读功能码(用RD表示)和写功能码(用WD表示)。RD用字符“R”(0x52)表示,WD用字符“W”(0x57)表示。
BCC为数据块校验码,一般有Xor、Add、CRC、CheckSum几种。Xor与Add分别是异或与累加和,占一个字节的长度;CRC与CheckSum分别是循环冗余校验码与TCP/IP协议簇中所使用的累加求补校验码,分别占两个字节。这里的仿真模块提供4种数据块校验方式,根据程序设置进行选择。
不少模块以回车CR(0x0d)作为结尾标志EM(End Message),而TCP/IP协议簇(如HTTP,POP3等)较多地采用CRLF(0x0d0a)作为结尾标志,这里的仿真模块也提供这两种结尾标志,根据程序设置进行选择。
协议举例。读取仿真模块状态的命令协议如图2所示,其中,ADD的范围为1至255,可由程序进行设置,这样,一台主控设备可以连接多达255个虚拟模块。BCC和EM的种类也可以根据需要由程序进行设置。
3.3RS-232/RJ-45协议转换器
该协议转换器的主要功能是用软件转换器来替代硬件转换器,实现串口数据与网口数据的直接转发,不涉及到协议的变换。串口只要进行常规的设置,与所连接设备的串口参数一致。由于主控机与嵌入式模块之间一般采用串口进行连接,另外,数据采集模块也大部分采用串口,因而,通过该协议转换器,可以将此类串口设备连接到Internet,进行远程处理。AIM模块与该协议转换器配合,可以转换为一个开关量输入的网络传感器。
3.4虚拟串口的使用
除了跟内置的Modem通信,一般地,进行串行通信的调试都需要RS-232连接线。参考文献[2]提供了虚拟串口驱动程序,模拟实际的RS-232接口,可以在没有物理RS-232接口和电缆的情况下,进行串行通信的调试,并且,还可以模拟硬件引脚信号的变化。
4教学模式的具体实现
重视教材建设和教学方法的研究,在教学过程中重视由实践而激发学生对相关理论的兴趣,再用提高了的理论水平来指导新的实验和实践活动。传统的教学模式在实践环节上的缺乏与不足也与今天社会人才市场急功近利的需求远远不能相适应。长期以来,我们培养的学生存在着“什么都学过,却什么都不会”的尴尬局面,专业教育和教材与市场需求严重脱节。事实上,学生就业难并不是就业市场不需要人才,其根源还是教学的现状所致[3]。
本文采用“趣味实用程序的演示+知识点+趣味实用程序的模仿+综合训练+学术论文”的教学模式,在讲解新的课程的时候,首先演示程序,例如,用主控程序对仿真数字I/O模块进行监控,让学生观察输入开关量的变化,可以导致输出开关量的变化,并可以看到指示灯的亮与灭,听到电铃的响与停,通过实物激发学生的兴趣,为学生树立一个目标:要实现该系统,需要掌握哪些技术?从而引出本课程中涉及的主要相关技术。
4.1C语言和汇编语言的应用
C语言是许多高校为计算机专业学生设置的第一门计算机程序设计语言。学习一门语言,不是学习其语法,而是要学习利用该语言去解决问题的方法,从而培养相关的能力。通信是计算机监控系统的关键技术,为了确保数据传输的可靠性,制订了通信协议,引入了校验码与结尾码,如果收到的数据,其头字节、校验码或结尾码错误,一般不进一步处理,而是直接丢弃该数据。
可以利用C语言设计异或校验码的生成程序,即对给定的一批字节,计算其异或校验码;对于含异或校验码的一批字节,编写子程序检查是否正确。同理,可以编写其它校验码处理程序。在此基础之上,进一步讲解在一个C语言项目中集成子程序的方法。如果学生掌握了这些方法,就基本掌握了用C语言开发受控机软件的80%以上的技术。
汇编语言是符号化了的面向机器的语言,比较枯燥。可以用汇编语言来生成校验码与检查数据是否正确,通过调试,让学生明确各个寄存器的作用。在字节处理方面,可以用0表示开关打开,1表示开关闭合,在置位和复位某位时,不能影响其它位的值。
4.2计算机接口技术的应用
在计算机接口中讲解“串行通信技术”时,首先演示一个“支持来电显示的多账号拨号器”,可以让学生一键拨号──201卡与IP卡及所拨打的长途电话,只要一键即可完成,还支持来电显示。通过演示,激发学生的学习兴趣,让学习成为其需要;然后,讲解知识点,让学生模仿软件的开发。
可以通过汇编语言设置串口参数,对串口进行初始化,然后,发送字节数据,控制仿真模块的输出开关,通过声光效果观察程序运行的结果,这比观察单纯的数据变化要形象直观,对学生更有吸引力。
4.3计算机网络的应用
在C语言、汇编语言,以及计算机接口技术中都涉及到字节数据流,这就是协议及主控机与受控机之间的约定。通过串行通信协议,可以自然过渡到TCP/IP协议,加深学生对协议的理解。
在网络编程方面,可以演示一个充当客户机的POP3密码攻击程序,让学生在增强信息安全意识的同时,学习基于Socket的客户机与服务器程序的设计。3.3节中的协议转换器,就是通过客户机/服务器编程,实现网络数据与串行通信数据的无缝转换。这个协议转换器虽然功能简单,代码简单,但是,作用非常大,可以用来对计算机监控系统进行远程调试与维护。
4.4VB与数据库的应用
有了仿真模块,就可以采用VB开发主控程序。VB是一门快速语言,采用VB编程,学生可以很快入门,有利于增强学生学习编程的自信心。VB可以很方便地设计各种表单界面,通过MSComm32控件和Winsock控件,实现串行通信和网络通信,从而与受控机或模块建立通信,完成查询和控制功能。VB也可以很方便地调用数据库,用数据库来存储控制策略、通信协议及设备的状态数据、报警记录等,对数据库进行各种操作。通过主控程序的开发,可以提高对计算机接口技术、计算机网络技术与数据库的感性认识,从而加深理论方面的理解。
5结束语
计算机监控系统广泛应用于众多领域。本文提出了“趣味实用程序的演示+知识点+趣味实用程序的模仿+综合训练+学术论文”的教学模式,通过程序演示,提高学生的学习兴趣,为学生树立一个学习目标,然后,讲解知识点,让学生模仿相应的程序,再进行综合训练。同样是学习相同的课程,但是我们在其中融入了计算机监控技术,设计了仿真模块,可以在计算机房零成本搭建计算机监控系统平台,通过我们的教学,学生毕业后,可以直接作为项目负责人或技术骨干参加计算机监控系统项目的开发。进行深入学习后,学生也可以发表计算机监控方面的学术论文。
目前,我校已经开设了“计算机监控技术与系统开发”课程,实践表明,该课程的开设,将计算机专业的若干专业平台课有机地融合到一起,对提高学生的学习兴趣,加强技能的培养,加深对理论的理解,提高就业率具有重要意义。
参考文献
[1] 马玉春. 计算机监控技术与系统开发[M]. 北京:清华大学出版社,2007.
[2] Virtual Serial Port[EB/OL]. /products /vspdxp/,2007-7.
[3] 周苏,王文. 软件工程实验教学的设计与创新[J]. 计算机教育,2006,(10).
作者简介
马玉春(1969-),男(汉族),江苏南京人,博士,东北大学秦皇岛分校计算机工程系教学主任。
E-mail:
联系方式:东北大学秦皇岛分校计算机工程系,邮编066004
办公:0335-8047939
关键词:本科教育;课堂教学;应用能力
作者简介:陈进(1955-),男,湖南岳阳人,湖南理工学院信息与通信工程学院,教授;郭龙源(1973-),男,福建龙岩人,湖南理工学院信息与通信工程学院,副教授。(湖南 岳阳 414006)
基金项目:本文系2013年湖南理工学院教改基金项目(项目编号:2013B19)的研究成果。
中图分类号:G642 文献标识码:A 文章编号:1007-0079(2014)09-0085-03
“应用为本”是应用型大学的根本特征,[1]应用型本科教育如何培养学生的应用能力,许多论文针对中国高校实践教学环节比较薄弱的情况,在如何加强实践教学环节方面进行了有益的探索和研究。
应用型本科院校培养的应用人才属于“理论应用型”,其应用能力应该体现为具有运用科学理论知识和方法来综合分析、解决问题的综合能力以及将解决方案付诸实施的实践能力。[2]因此,应当在教学各个环节――不仅仅在实践教学环节――全面地培养学生的应用能力。
课堂教学是本科教学最重要的部分,是人才培养的主阵地。[3]如何在课堂教学中培养学生的应用能力,笔者根据多年“数字电路”和“单片机原理与接口电路”课程的课堂教学经验,从课堂教学内容取舍、课堂教学过程中的讲授、习题的布置与讲解等方面对如何培养学生的应用能力谈一些自己的体会。
一、从培养学生应用能力出发对课堂教学内容合理取舍
教学内容是课堂教学的生命,从培养学生应用能力出发,应该合理地对教学内容进行取舍。
1.教学内容要紧跟应用发展
知识的创新和应用日新月异,而教材内容更改往往滞后。面对这种情况,教学内容要紧跟应用发展,尽可能与当前工程实际接轨,使学生走向社会后能够尽快上手应用。
“单片机原理与接口技术”课程,大多数教材采用汇编语言编程。但是,目前单片机实际应用中,设计与开发多使用C51语言编程。根据这个情况,笔者采用汇编语言编程的教材,补充讲C51语言编程,并且在应用编程例题上交替采用两种编程语言。
随着半导体技术的发展,单片机串行扩展接口已经普遍应用,在《单片机原理及接口技术》教材[4]中,虽然介绍了单片机串行扩展技术,并指出“单片机串行扩展技术与并行扩展技术相比具有显著的优点”,但在其他各种接口的章节,仍然是讲授并行扩展接口,为此笔者增加了串行接口芯片的内容。例如在A/D接口技术中,除了讲一个典型并行接口芯片0809与AT89C51接口电路外,增加了串行接口芯片AD7896与AT89C51接口电路的内容。
2.教学内容要从应用角度出发突出重点
课堂教学要从应用角度出发,突出重点,精简内容,尽量避免或减少繁杂的理论推导。需要说明的是,应用型本科人才的“应用性”不只是继承性应用,而且是创造性应用。[5]因此,精简内容并不是基础知识不讲,而是有些基础知识还需要重点讲授。
逻辑门电路是《数字电子技术》中作为基础的一章,[6]其内容包括了CMOS、TTL等各系列电路的内部组成与工作原理、传输特性、电参数定义、逻辑功能与逻辑符号。由于这一章节内容多,特别是集成逻辑门电路的内部电路比较繁琐。若教学内容面面俱到,只能走马观花式讲解,学生分不清主次,也无法弄懂。若对于内部电路不讲解,也同样会使得学生知识欠缺,造成应用能力减弱,这是有过教训的。[7]非微电子专业应用中只用到与逻辑门的输入、输出接口,所以学生关键是掌握逻辑门内部电路中的输入、输出电路结构和工作原理以及与应用相关知识,这是课堂教学的重点。例如,CMOS逻辑门电路,只需要详细讲解CMO反相器内部电路,其他CMOS门的内部电路可不讲。因为各种CMOS门电路在输入、输出端都加了反相器作为缓冲电路。CMOS反相器内部电路十分简单,学生容易懂。
“数字电子技术”课程中,介绍了多种集成电路芯片。从应用角度出发教学,重点应放在器件引脚、逻辑功能及典型应用讲解,而对其内部电路,不要过于纠结。例如译码器74138,在本课程的存储器扩展和后续课程中都会出现地址译码,因此必须引入地址译码的概念,并重点讲解地址译码的意义和作用。笔者在课堂教学中,通过图1所示地址译码电路课件,重点讲解地址译码的意义和作用。
3.教学内容要适当增加工具软件的内容
随着计算机技术的发展,各种工具软件应运而生。课堂教学在突出重点精简内容后,留有时间讲授工具软件。这一部分内容以教师引导,学生自学为主。“数字电子技术”课程引入电子线路仿真软件Multisim 10,“单片机原理与接口技术”课程引入单片机集成开发环境Keil ?Vision4。引导学生对分析和设计的电路和自己编写的程序进行仿真,有利于培养学生的应用能力。课堂教学中,讲解例题和习题时进行仿真,有利于学生对教学内容的理解。
二、在课堂教学过程中注意培养学生应用能力
认真做好教学课件,让学生有感性认识。要通过多媒体课件,使学生对学习的知识有一定的直观感觉,这种感性认识是有利于培养学生应用能力的。
“数字电子技术”课程中显示译码器这一章节,笔者在多媒体课件中使用与实际数码管类似的图标,来说明共阴极数码管的段码是如何得到的,以及显示译码器的功能。当介绍了共阴极数码管引脚为高电平时对应LED发光后,用图2所示课件分别给出显示“0”,“1”,“2”的abcdefg的值和段码,对应LED发光和数码管显示对应数字。多媒体课件不是静止的,而是动态的,课件中首先是数码管显示“0”,然后要学生考虑哪些LED发光,再使“a,b,c,d,e,f”LED发光,最后出现“0”的段码“11111100”;“0”,“1”,“2”按照这个过程出现一次,段码是如何得到的就很清楚了。图2显示的是数字“2”的段码“11011010”的来由。
然后很容易引入七段显示译码器的功能:输入的十进制数代码进行译码,输出段码abcdefg,点亮LED显示器的各段,显示对应的数码。图3是说明74HC4511的译码功能的课件界面。
1.注重从总体思路入手,培养学生的应用能力
课堂教学中比较复杂的问题,教师应该从总体思路合理引导,使学生先明白总体思想,就比较容易理解具体的步骤,这样也能够培养学生分析问题和设计电路时从总体思路入手的习惯。
例如,“数字电子技术”讲解8位D/A采用双极性输出方式所设计的电路的原理,必须先讲清楚设计总体思路:利用已有的单极性输出D/A电路,设计双极性输出电路,措施是:数字提升,模拟下降。第一,数字提升,将输入的带符号的二进制补码+128,变成单极性数字量;第二,采用单极性转换电路得到单极性输出模拟量;第三,模拟下降,将输出模拟量-5V,变成双极性输出模拟量。这个总体思路清楚了,实现数字提升、模拟下降的具体方法就好理解了。
“单片机原理与接口技术”课程中,串行通信编程,也必须先讲清楚程序设计总体思路。以较简单的双机通信方式1发送编程为例。首先要强调发送时只要将需要发送的数据送到发送缓冲器,则串行口自动地按照指定的数据格式、波特率从TXD引脚发送。发送完后,TI=1,产生串行口中断。
编程需要解决什么问题?主程序:编程指定发送数据格式和波特率,中断设置;需要发送到数据准备好,发送数据指针指向发送第一个数据;将发送的第一个数据,送入发送缓冲区;中断服务子程序:判断需要发送的全部数据是否发送完,完了退出,如未完,发送数据指针下移,将下一个发送数据送入发送缓冲区。编程的总体思路清晰了,再讲解相关程序就容易理解了。
2.尽量贴近实际,让学生尽早接触应用
课堂教学中,相关示例要尽量贴近实际应用,让学生尽早接触应用,同时也让学生容易理解。
《数字电子技术》第9章中,教材采用的一个泛指的工业生产过程控制对象,说明为什么需要D/A和A/D。为了贴近实际应用,笔者采用一个染色锅温度控制实例来说明,如图5所示。
“单片机原理与接口技术”课程中,C51编程一章的例题都是与硬件电路无关的软件编程,而单片机实际应用主要是根据硬件电路设计程序。因此,笔者讲解一个软件与硬件结合的例题,电路如图6所示,并且在?Vision_4下进行仿真调试,使学生尽早进入单片机应用的境界,同时在作业中也安排了一个类似习题。
三、通过做习题培养学生的应用能力
学生做习题,其实也是一种应用,虽说只是“纸上谈兵”,但如果习题都做不好的话,就更谈不上实际应用。因此,布置习题和指导学生做习题也是课堂教学中培养学生应用能力的一个重要环节。要有选择性地布置习题。布置的习题要少而精,不要太难,但不能都是基础题。笔者在“单片机原理与接口技术”课程中,除了前3章外,每一章布置一个接近应用的综合习题。例如第5章中断,补充了一个习题如图7所示。这个习题是一个软件与硬件结合的比较完整的中断编程,通过这个习题,对单片机中断编程有一个总体的概念。
要引导学生对习题进行仿真调试,特别是要求有一定能力的学生这样做。在调试过程中,出现问题尽量自己分析原因并且解决问题,这是对于实际应用能力培养是非常重要的。当学生自己独立或者在老师指导下解决了问题,甚至学生经过多次调试仍然不能分析出原因,最终由教师分析出原因。只要有这个过程,就培养了学生分析问题和解决问题的能力。
“单片机原理与接口技术”课程中定时器/计数器一章中,习题要求P1.0输出周期为400?s占空比为10%的矩形脉冲。某学生采用C51编程,进行调试时发现输出波形如图所示与要求不符。反复检查所编程序,没有找到任何问题。为什么实际输出结果不对?在教师的指导下,分析其原因是C程序编译后,中断服务程序增加了保护现场和恢复现场,造成中断程序执行时间大于40us,使得输出波形不对。
要在课堂上认真讲解习题。对于错误带普遍性的和重点的习题要详细讲解,要分析学生为什么会错,症结在哪?讲解习题与讲解例题的效果是不一样的,因为学生做过这个习题,不会做或者做错了,是经过思考的,再听教师讲解,就知道错在哪里,为什么会错,印象深刻。一般说来,讲解过的习题绝大多数学生都会做了。
在讲解习题的过程中,要有意识地培养学生的应用能力,如仿真调试波形不符的一例,在习题课中引导学生进行仿真,分析C51中断程序编译后的汇编语言程序执行时间大于40us,培养学生自主调试能力,并针对部分学生认为汇编语言无用的思想,指出即便采用C语言编程,在分析所出现的问题时,仍然需要用到汇编语言。
四、结束语
要在课堂很好地培养学生的应用能力,首先教师本身就应该具有较好的实际应用经验,否则就是一句空话。目前高校中一部分教师是从学校到学校,自身缺乏实际应用能力。因此,对于应用型的本科院校,在强调教师高学历的同时,应该注重教师的实际应用能力。对于在校的年轻教师,应该采用各种方式,进行一定的应用能力培养。
参考文献:
[1]朱科蓉.应用型大学的核心竞争力及其提升策略[J].北京联合大学学报(人文社会科学版),2006,4(4):9-12.
[2]徐理勤,顾建民.应用型本科人才培养模式的探索与实践[J].高教探索,2007,(2):57-60.
[3]彭美云.提高本科课堂教学效果的建议[J].中国大学教育,2010,
(7):17-19.
[4]张毅刚,彭喜元.单片机原理及接口技术[M].北京:人民邮电出版社,2008.
[5]唐向宏,章坚武,姜斌.应用型本科人才培养模式的探索与实践[J].电气电子学报,2009,(Sl):76-78.
[6]康华光.电子技术基础(数字部分)[M].北京:高等教育出版社,
2006.