前言:我们精心挑选了数篇优质计算机接口技术论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
规划用户需求,实行软件接口设计,为用户提供便捷[1]。根据软件内部的数据结构,设计数据接口,促使其与计算机系统形成统一整体,优化软件格式,排除格式差异所造成的制约,保障用户在系统内,直接实现软件操作。
2计算机软件数据接口的应用
实际数据接口并不是体现单一的形式,其包含多样化模式,例如:函数、API,或者是格式数据包,在此基础上,针对数据接口的应用做如下分析:
2.1函数模式应用
数据接口的函数模式,属于特性程序,由开发商在软件出厂时,设定一套函数,预测、评估用户可能进行的行为操作,全部输入到数据接口内,促使函数接口的方式表现出多样化,封装后投入使用。此类函数基本由技术人员控制,仅限于软件开发商,其在出厂时已经完成函数的封闭工作,所以只有单方人员知晓,属于密闭的数据接口。此类模式,保持数据接口程序的完整性,如果用户使用函数模式,由开发商提供,无需进行二次书写[2]。函数模式的数据接口技术含量较高,保密性和稳定性明显,在现代软件开发中,属于常用数据接口。
2.2中间数据库模式应用
数据库模式,主要依赖于具有公共特性的数据库,本身则属于数据类型,需要借助授权途径。此模式局限性较高,用户在使用软件时,只能根据数据库规模的数据接口,实现数据访问,针对性强,可操作性低。常见格式有:Access、Oracle,基本为访问频率比较高的数据库。其在开发时,较为简单,适用于小型软件。虽然在特定数据接口的处理上,效率明显,但是相对其他数据库,可能会出现配置问题,特别是复杂的类型,会增加数据接口的处理难度,限制数据接口的工作范围。
2.3文件交换模式应用
此模式应用具备一定的特殊性,必须借助特性数据,才可支持数据接口应用。一般数据包括两类,第一是TXT文件,由windows自主配置,在现代计算机系统内比较常见,属于通用格式,例如:程序开发基本都会支持TXT,在文本内记录html代码、编程,可以迅速转化为可读模式,供软件读取,实现灵活转换。目前,大部分技术员习惯利用TXT编写代码,完成软件开发,应用便捷,不仅可以实现简单语言的书写,同时对特殊符号的识别能力明显,体现常规特性[3]。第二是INI文件,属于系统内配,系统内直接配置INI函数,适应于普遍软件,在INI约束下,软件自主记录自身信息,实现数据交互,INI文件具备自主特性,应用规模逐渐扩大。综上所述,数据接口应用为计算机软件发展提供可靠、稳定的空间,简化软件开发流程,提高开发效率,保障软件开发质量,推进软件迅速投入使用。
3结语
一、前言
微机原理与接口技术是电子信息类理工科的一门重要专业基础课。内容涵盖微机原理、汇编语言程序设计及微机接口技术,兼顾硬件和软件2个方面,该课程的特点是概念抽象,实践性强。实践教学对于学生理解课程内容,培养学生动手能力是十分重要的。
二、《微机原理与接口技术》实践教学现状
随着高等教育正在由知识型教育向能力培养为中心的教育进行转变,电子信息类课程的实践教学环节都大大加强。但由于受到硬件实验环境与实验内容制约,特别是《微机原理与接口技术》实践教学只发生了量变而非质变,仍处于滞后的位置。
在目前的教学中,《微机原理与接口技术》实践教学存在以下几个方面的问题:
(1)实验内容固定陈旧,大都是些传统接口芯片功能的验证实验,由于实验台上的芯片资源有限,不具备进行多芯片组合的综合型实验的条件。大部分学校进行的还都是8位接口芯片的实验,而现在常用的大部分是32位64位的接口,实验内容过时。同时一些多核处理器,pci—express总线,sata接口技术等一些新技术根本没有涉及[1]。
(2)实验平台落后,实验平台芯片资源少,扩展性差,只能进行一些简单的功能验证实验,实验内容也因芯片种类和实验台架构固定而不易调整,不能发挥学生的创新能力。平台外设简单,无法激发学生的兴趣。
(3)实验技术落后,很多学校还采用的是搭积木式的设计方法进行教学[2],学生的实验灵活性小,大都是按图连线,下载程序的操作,限制了学生的设计创新能力的培养。WWW.133229.cOm实验简单抽象,大都是些芯片功能上的验证,启发性小。
(4)重软轻硬,实验重点大都集中在汇编语言的编写,学生很少能自主的设计电路,也无法了解芯片的结构以及时序,更不能自己设计芯片,大大限制了学生动手能力的培养[3]。
微机接口技术被广泛应用于电子信息各个领域,因此《微机原理与接口技术》是门应用性很强的课程,学生通过学习达到在掌握理论的基础上,能运用所学知识解决一些实际问题的能力。但因为在实践教学中存在以上问题,学生在学完这门课程后,大都停留在了解几个常用接口芯片的常用工作方式的层面上。这和高等教育“培养应用型创新人才”的目标是不相符的。
三、将fpga技术与《微机原理与接口技术》实践教学相结合
fpga(现场可编程逻辑阵列)技术[4,8],用户可以通过硬件编程语言重新配置芯片内部的电路,同时fpga芯片中有丰富的逻辑单元,可以满足设计复杂电路的需要,用fpga技术对微机接口实验平台进行改进,正好弥补了现有平台,芯片资源少,扩展性差,电路设计受限的缺点。配上usb,sata接口,液晶屏等新型外设以及相应ip核,学生便可以进行一些新的接口技术的实验,增强了实验的趣味性,也加强了学生动手能力的培养。同时由于fpga技术的广泛应用,很多大学也开设了相关课程,但大都从硬件语言和sopc(可编程片上系统)两方面作手[5],知识跨度大,而且学生缺少复杂逻辑与接口设计的实践机会,将fpga教学引入《微机原理与接口技术》实践教学正好弥补了这一空缺。在熟练掌握电路设计的基础上,学生可以运用微机接口,组成原理,体系结构,数字逻辑等知识设计多模块的系统,使学生通过实践教学将计算机多门硬件基础课程融合成一个有机的整体。
四、基于fpga的《微机原理与接口技术》实践教学方法
1.改进实验硬件环境
我们学校《微机原理与接口技术》是一门重要的计算机专业基础课,多年来一直努力探索实践教学的改革方法。我们与xilinx(赛灵思)公司建立了联合实验室,并自主研发了基于fpga的微机接口实验平台[6]。该平台采用多模块“乐高”思想分为:芯片组板、fpga扩展板、外设板等三个部分并且可以灵活组合,便于调整与维护。芯片组板可以用来进行传统的接口实验,fpga板可以用来学习硬件编程,同时还有配套的用verilog实现8255,8253,8251接口芯片的逻辑,将其下载到fpga中可以代替相应的接口芯片。因为fpga中丰富的逻辑资源,学生可以在fpga中配置多个接口芯片,并且可以用fpga实现16位、32位接口芯片,从而设计复杂的接口电路。fpga中还可以配置多种cpu架构如80x86,8051的ip核,可以建立多种系统架构。pc机与实验平台是采用fpga逻辑配合桥接芯片实现pci总线接口转isa总线接口,支持硬件在线编程与调试,同时提供相应的实验供学生学习pci总线接口与isa总线接口。外设板上在传统外设的基础上还提供了液晶屏,usb接口,ddrⅱ接口,spi接口,传感器等新型外设,实验结果的验证方法将更加丰富有
转贴于
趣,大大提供了学生的兴趣,并且可以根据实验和开发的需要,组装成新的io外设板。总体上因为fpga技术与新型外设的引入大大增强了实验平台的扩展型,而且实验平台功能丰富可用于学生毕业设计,电了竞赛等综合型实验中。
2.改进实践教学的内容
在以前的实验内容基础上,用ise软件仿真接口芯片,简化以前芯片功能验证的实验,学生通过软件仿真可以很清楚的了解接口芯片和总线接口的工作时序,不用硬件连线便可以得到接口芯片各方式下的波形,从而缩短芯片功能验证实验的时间,将更多的时间用在接口芯片电路的设计上。在学生了解各接口芯片的工作方式后,便可用fpga仿真的接口芯片与板载芯片配合设计一些多芯片电路,解决一些实际问题,如车辆计数系统,点歌系统等,可让学生自由发挥,极大发挥创造性,锻炼学生的动手能力。在学生熟练的掌握硬件编程语言的情况下,学生可以自己编写接口逻辑,实现与外设的通信。增加pci总线接口,isa总线接口,8051架构,usb,ddr接口驱动的实验,扩展学生的视野,将学生的知识与现实应用紧密联系起来。鼓励有兴趣的,学有余力的学生充分利用实验台上的外设扩展进行综合性实验,为电子竞赛与毕业设计打基础。
3.新实践教学方法的推进
在教学方法的推广上,采用以点带面的方式,为有兴趣的同学开展微机及接口技术的实训培训,由学生自愿报名择优参加。由于实验内容贴近应用,且有趣新颖,学生报名踊跃。经过两期实训班,实训成果明显,已有多名同学开始自主申请科研项目并获得校级基金资助(例如正在进行的项目有:数控直流稳压电源(立项编号:kycx110403z)和基于压电传感器和个人计算机构成的体温信号实时监测系统(立项编号:kycx110411z)),同时在期刊上公开发表科技论文[7,8]。同时教学中采用“以竞赛促学习”的模式,在实训班之外成立兴趣小组,组织同学们参加挑战杯、全国和省级电子设计大赛、xilinx openhw等相关比赛,调动学生的积极性,在比赛中培养学生的团队能力,增强同行业内的交流。通过一系列新型实践教学方法的运用,学生动手解决问题的能力大大加强,毕业学生的能力得到用人单位的认可和好评。
我们有针对性开发的微机接口技术教学实验平台,对实验内容的调整方便组装灵活,教师通过学术交流、互联网等手段快速了解相关技术动态后,可快速调整教学内容,指导学生开展创新行技术实践活动。接下来,准备在现有实验平台的基础上建立相关网络平台,加强课堂和课外联系,使微机原理和接口技术实验对广大学生真正做到完全开放。
关键词:计算机监控;仿真软件;综合实践;教学模式
中图分类号: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