(系统工程专业论文)小长图无纸记录仪的研究开发.pdf_第1页
(系统工程专业论文)小长图无纸记录仪的研究开发.pdf_第2页
(系统工程专业论文)小长图无纸记录仪的研究开发.pdf_第3页
(系统工程专业论文)小长图无纸记录仪的研究开发.pdf_第4页
(系统工程专业论文)小长图无纸记录仪的研究开发.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(系统工程专业论文)小长图无纸记录仪的研究开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学硕士学位论文 摘要 ( 长期以来,作为一种重要的数据记录仪表,记录仪被广泛地应 用于各种工业现场。同时,计算机软硬件技术的飞速发展,以及计 算机技术不断的渗入仪器仪表行业,使得智能化记录仪表已成为记 录仪发展的新趋势。本文讨论的是基于8 0 c 3 2 0 单片机的小长图无 纸记录仪的研究开发。这种无纸记录仪最多可以使用8 个数据采集 通道,并充分地利用其硬件性能,有着良好的稳定性、高的可靠性 和优越的性价比。可以预见,在不远的将来,小长图无纸记录仪必 将被广大用户所接受,有着良好的发展前景。+ 全文共分十章,第一章简要介绍了记录仪的发展历史,以及各 时期记录仪的性能比较。 第二章主要介绍了小长图无纸记录仪的性能指标及其软硬件结 构。 第三章详细阐述了程序存储器扩展的实现方法和注意事项,这 是小长图无纸记录仪的研制过程中重要的一环。 第四章、第五章主要介绍了图形化界面的实现和动态数据处理, 为用户提供一个美观、直观的使用平台。 第六章、第七章分别介绍了流量累计功能在小长图无纸记录仪 中的实现和通讯组态的开发。详细介绍了流量累计的实现方法和通 讯实现的算法。 第八章主要介绍了单片机对软驱控制器控制的实现,为数据保 存提供了一个可靠的渠道。第九章则主要介绍了历史数据的查找以 及打印机控制的实现。 最后,第十章对全文作了总结,并提出了一些新的构思。 浙江大学硕士学位论文 a b s t r a c t a sa ni m p o r t a n ti n s t r u m e n tt ol e c o r dd a t a r e c o r d e ri su s e di na l lk i n d so f i n d u s t r yf i e l d s a tt h es a l t l et i m e ,w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e rh a r d w a r e a n ds o f t w a r e ,c o m p m e r t e c h n o l o g yh a sc a u s e da ni n n o v a t i o n a li n f l u e n c eo ni n d u s t r y o fi n s t r u m e n ta n dm e t e r i n t e l l i g e n tr e c o r d e rw i l ll e a dt h et r e n d yi nd e v e l o p i n g t h e t o p i cd i s c u s s e di nt h i st h e s i s i st h er & df o r8 0 c 3 2 0s i n g l e c l l i pb a s e dp a p e r l e s s r e c o r d e r t h i sk i n d o f p a p e r l e s s r e c o r d e r m a k i n g f u l lu s eo ft h eh a r d w a r e p e r f o r m a n c e ,w i t hw e l ls t a b i l i t y , h i g hr e l i a b i l i t ya n da s c e n d a n tq u a l i t y - t o - p r i c e i tc a n t a k ea s8c h a n n e l sd a mc o l l e c t o ra tm o s t s oi ti s p r e d i c t a b l et h a tt h ep a p e r l e s s r e c o r d e rw i l lh a v eab r i g h tf u t u r e ,a n dw i l lb ea c c e p t e db yn u n l e r o u su s e r s t h i st h e s i si sd i v i d e di n t ot e n c h a p t e r s c h a p t e r o n el o o k sb a c ko nt h e d e v e l o p m e n th i s t o r yo f t h er e c o r d e r , a n dd e s c r i b e st h ea b i l i t i e so fr e c o r d e ri ne a c h p e r i o d c h a p t e r t w oi n t r o d u c e st h ec a p a b i l i t yg u i d e l i n eo fl i t t l ep a p e r l e s sr e c o r d e ra n d i t ss t r u c t u r eo f h a r d w a r ea n ds o f t w a r e c h a p t e rt h i n em a k e s ap a r t i c u l a re x p l a n a t i o no ft h ee x t e n s i o ni np r o g r a m m i n g c o d es t o r a g ea n dt h ep r o c e e d i n gt op a ye x t r aa t t e n t i o n i ti st h ef i r s ts t i c k i n gp o i n ti n l i t t l e - t y p ep a p e r l e s sr e c o r d sr & d 、 t o p r o v i d eab e a u t ya n d v i s i b l ei n t e r f a c e ,c h a p t e rf o u ra n dc h a p t e rf i v em a k ea i n t r o d u c e o f c a r r y o u t o f g r a p h i c i n t e r f a c ea n d m a n a g e m e n to f d y n a m i c d a t a c h a p t e r s i xa n d c h a p t e r s e v e nd e t a i lt h er e a l i z a t i o no ff l u xa c c u m u l a t i o na n dt h e d e v e l o p m e n t o fc o m m u n i c a t i o n c o n f i g u r a t i o n c h a p t e re i g h tp r e s e t s t h es o f t w a r ef o rm i c r o - c o n t r o l l e rc o n t r o l l i n gt h ef i ) d ,a n d t h e np r o v i d e sar e l i a b l em e t h o df o rd a t a r e s e r v a t i o n c h a p t e rn i n e i n t r o d u c e st h e m e t h o d o f h i s t o r y - d a t as e a r c h i n ga n d r e a l i z a t i o nt h ef u n c t i o no f p r i n t i n gh i s t o r yd a t a a t l a n t ,c h a p t e r t e ns u m m a r i z e st h ew h o l et h e s i s - v - 浙江大学硕士学位论文 第一章绪论 1 1 记录仪的发展简介 记录仪的发展已有几十年的历史,也经历了几代产品的演变。长期以来, 作为一种重要的数据记录仪表,记录仪一直被广泛地应用于各种工业现场,尤 其是在过程工业中的使用相当频繁。它是自动化仪表中十分常用的二次仪表, 是记录数据、保存数据相对有效的工具。 综观记录仪的发展,大致经历了两个阶段:早期的机械模拟仪表和如今的 无纸记录仪表。在9 0 年代以前,人们主要使用的是机械式的有纸有笔记录仪。 它通过记录笔在记录纸上绘制曲线,从而达到记录并保存数据的目的。由于其 内部结构复杂活动部件多,故可靠性和稳定性大大降低。同时,机械式记录 仪表需要大量的纸张来保存数据,使得日常维护工作量大,使用成本高,而且 其自身的结构决定了它无法克服显示单一应用不够灵活,信息无法加工利用 等缺点。进入9 0 年代以来,随着计算机和信息技术的发展,超大规模集成电路 技术和液晶图形显示技术得到了长足的进步,一种新型的记录仪无纸、无 笔记录仪开始面世。记录仪也从有纸时代发展到无纸时代,记录的方式也产生 了根本的变革。 智能记录仪己成为当今记录仪主要发展趋势。一些世界著名的公司,其智 能记录仪的产量已经超过模拟记录仪,而且智能记录仪本身几经变迁技术性 能和用途不断发展。就我国而言,记录仪的发展也有近4 0 年的历史。尽管在自 控系统领域中,集散控制系统的出现使得过去大量属于记录仪的领地被c r t 、 打印机所代替,记录仪的产量也有所回落。然而新技术的发展并不能影响记录 仪的发展和成熟。相反,随着先进控制技术和控制方案等得到广泛应用,利用 智能仪表采集控制变量和其他相关参数的应用日益广泛。记录仪本身技术也随 之不断革新,产品日趋完善。 第l 页共7 5 页 _ _ _ _ _ 一一“一一一 = , ;n 叠: , 浙江大学硕士学位论文 1 2 机械模拟记录仪 传统的模拟记录仪表是通过指针或记录笔的偏转角度或位移量来显示被测 参数的信号变化。它的伺服系统复杂,维修量大,但价格低廉因此,在我国 目前市场上仍占有相当的份额。就其测量线路而言,可分为直接变换式和平衡 式两种。直接变换式线路简单,但精度低,线陛度较差,信息能量传递效率低, 故灵敏度差。直接变换式仪表组成的检测系统如图i - i 所示: 图1 1 直接变换式仪表的组成框图 针对直接变换式仪表的诸多缺陷,人们开始设计研制出平衡式仪表。平衡 式显示仪表具有精度高,线性度好的特点,有着高的灵敏度。然而,相对来说 其结构复杂,稳定性差,抗干扰能力差。其组成框图如图1 - 2 所示: 图1 2 平衡式仪表的组成框图 从上图可以看出,要想达到高的灵敏度和精确度,就必须保证可逆电机有 着稳定的工作电流,同时反馈回路和平衡机构要有着快的响应时间。而在一般 的工业现场,这很难办到。因而,平衡式记录仪表往往稳定性能较差,同时, 抗干扰能力也较弱。 1 3 无纸记录仪 。 1 9 9 2 年前后,德国的哈特曼劳恩公司( h & b ) 和英国的p a n n y g i l e s t c l c t r e n d 公司先后推出了无纸记录仪,开始了无纸记录的时代。 无纸记录仪具有无纸、无笔和无机械传动装置等特点。它运行成本低,使 用r a m 或软盘、硬盘来保存数据,可以方便地查询历史数据,对于一些更为 高级的产品,还具有友好的人机界面、丰富的信号采集类型、具备联网和通讯 第2 页共7 5 页 浙江大学硕士学位论文 功能,以及实时动态显示数据、曲线和打印等功能。 目前国内已有无纸记录仪生产厂家十余家,同时国外一些著名厂家( 如美 国霍尼韦尔公司、日本横河公司) 也在我国推出了他c i 的无纸记录仪产品。表 1 1 列出了部分国内外无纸记录仪产品的型号和厂家。 厂家型号 美国霍尼韦尔公司r s x 、v r x l 0 0 、d g r l 0 0 1 5 0 日本横河公司 v r l 0 0 沈阳兰申公司d m r l 0 0 、d m r l 8 0 哈尔滨陆迪中心 h l d 4 0 0 c 北京帅仪公司 j l y - 2 0 0 0 浙大中控自动化公司儿2 2 、,l 2 6 表1 1 无纸记录仪型号及生产厂家 虽然各厂家推出的无纸记录仪在设计和性能上有着较大的差别,但综观各 型号的无纸记录仪,都具备以下一些特点: 1 信号输入万能化。用户可以任意的选用电压、电流、热电阻、热电偶等 作为输入信号类型,这也使得仪表的应用场合变得更为广阔。 2 存储容量大。无纸记录仪大多采用大容量的r a m 、f r a m 、f l a s h 、 软盘甚至硬盘( 如北京帅仪公司生产的j l y - 2 0 0 0 型无纸记录仪) 等来保存数据。 3 无纸、无笔、无机械传动结构。可靠性和灵敏度高,无需e l 常维护,运 行成本低。 4 以微处理器为核心,数据处理的速度和精度得到大幅度的提高。 5 显示方案多样化。对于动态的实时数据可以采用数字、曲线、棒图等 模式加以显示。 有些更为高级的产品还具备友好的人机界面、灵活的设置组态、历史数据 查询、打印、虚拟通道、流量累积等诸多功能。 第3 页共7 5 页 浙江大学硕士学位论文 1 4 小结 综观近几年来无纸记录仪的发展历程,它以高的可靠性、良好的稳定性、 低的运行成本和优越的性能价格比日趋成熟。它除了具备有纸记录仪的功能外, 还兼有数显表和调节仪表的功能。随着半导体技术和液晶技术的飞速发展和普 遍应用。作为无纸记录仪关键部件的存储器和液晶显示屏的价格必将不断下降, 无纸记录仪的成本也将不断降低。随着技术的成熟和产品的革新,可以预见, 在不远的将来。无纸记录仪将被广大的用户所接受,具有良好的发展前景。 在本文的后继章节中将详细介绍小长圈无纸记录仪的硬件设计和软件开发 的详细内容。 第4 页共7 5 页 浙江大学硕士学位论文 第二章小长图无纸记录仪的软硬件结构 2 1 前言 软件设计和硬件组成密不可分,两者相辅相成。一个好的硬件结构设计可 以大量节省软件的开销,使得资源分配利用变得更为合理。而一个良好的软件 结构则可以使硬件资源的功能得到充分发挥。随着技术的发展,软硬件间的界 限越来越模糊。许多原来通过软件实现的功能,为了提高执行速度,改为由硬 件来实现,而那些成本相对较高的芯片,则往往通过软件来实现它的功能。因 此,一个良好的软硬件结构设计对于一个产品来说至关重要。 2 2 小长图无纸记录仪。胜能指标 小长图无纸记录仪的主要性能指标如下: 信号采样:模拟输入通道l 8 路。全隔离万能输入,可输入0 5 v 、1 5 v 、 0 - - - 1 0 m a 、4 2 0 m a 标准信号和p t l 0 0 、c u 5 0 热电阻信号以及k 、s 、b 、n 、t 、 e 、j 、r 热电偶信号。用户直接在组态画面选择,无需更换输入通道板。记录 间隔可设置为1 秒2 秒,4 秒8 秒尼0 秒,4 0 秒,6 0 秒1 2 0 秒2 4 0 秒等。 组态功能:该记录仪具有强大的组态功能,用户可对通道信号类型、单位、 量程、显示范围、记录间隔、报警上下限、以及显示画面、历史追忆、流量累 计等进行设置。图形化的组态界面,操作简单。 显示功能:全中文图形界面,菜单驱动,直观信息丰富,操作简单。主要 显示画面:水平趋势画面、垂直趋势画面、棒图画面、数字画面( 以上画面均 可l 8 通道选择) 、历史数据趋势追忆画面( 单通道或多通道同时) 、多通道流 量累计画面、组态画面( 包括通道设置、显示设置、流量累计设置、历史追忆 设置等画面) 。 。 存储功能:采用大容量f l a s h 作为主要存储设各( 用户可选4 8 1 6 m ) 。软 盘作为辅助用户可将任意时间段内的数据转存到软盘,然后在p c 机上进行 显示、分析、打印。 第5 页共 页 浙江大学硕士学位论文 通讯功能:提供r s 2 3 2 r s 4 8 5 通讯接口。可远距离通讯,多台仪表组网。 配合上位p c 机软件可实现远程监控。 打印功能:提供常用微型打印机接口,打印任意时间段内数据,趋势曲线, 流量累计值等。 报警功能:配有1 6 点开关量输出通道( 可选长开长闭) ,根据各通道设置 的上下限,在显示画面实时显示报警信息的同时输出报警信号。 2 3 硬件结构 从整体来看,小长圈无纸记录仪可以划分为上、下位机两个部分。下位机 主要负责信号调理、采样并实时发送数据,而上位机则主要负责数据处理、记 录、显示和存储等功能。两者通过r s - 2 3 2 串口相连。下位机的数采模块带有8 个数采通道,负责8 路信号采样。其结构框图如图2 1 所示。 贮 上 i 兰p位 陌赢带 机 图2 - 1 硬件结构框图 2 3 1 下位机硬件结构 下位机数采模块主要包括一个c p u 模块和一个可扩展的数采通道模块。每 块数采通道板上有两个数采通道,负责两路信号的采样与调理。数采通道板的 个数可以根据用户的需求而设定,最多可以进行8 路采样信号的处理。其硬件 结构示意图如图2 - 2 所示。 下位机由8 0 c 5 5 2 单片机控制,由a d 7 7 1 5 负责智能化a d 采样。当上位机 的组态信息下载后,下位机自动对硬件实行组态。它可以处理任意的模拟信号 如热电偶、热电阻、标准电流、电压等无须更换硬件,因此能大大压缩企业的 备品备件,减少维修工作量。信号经a d 处理后读入下位机的内存中,然后根 据采样时间实时发送。 第6 页共7 5 页 浙江大学硕士学位论文 i 信号调理匹配r 叫二三- 光 年 l 信号调理匹配r 1 二三r 耦 !1 阵 列 1 信号调理匹配1 ,厂_ 五_ 卜 图2 2 下位机硬件结构示意图 2 3 2 上位机硬件结构 小长图无纸记录仪上位机由8 0 c 3 2 0 单片机控制,其硬件结构原理框图如图 2 3 所示。8 0 c 3 2 0 具有和8 0 5 1 相兼容的引脚和外部结构,最高时钟频率可达 3 3 m h z ,支持6 4 k b r o m 和6 4 k b r a m 寻址空间。与其它单片机不同的是,8 0 c 3 2 0 支持双d p t r 操作。它除了有一个标准的1 6 位数据指针d p t r 0 ,地址为8 2 h 和8 3 h 外,还有一个新的1 6 位数据指针d p t r l ,地址为8 4 h 和9 5 h 。两者通过 d p s ( d p t rs e l e c t ) 切换。双d p 下r 的存在使得那些执行速度要求较高的控 制成为可能,例如小长图无纸记录仪中软驱控制的实现,详细情况见后面章节。 图2 3 上位机硬件结构原理框图 第7 页共7 5 页 浙江大学硕士学位论文 8 0 c 3 2 0 单片机提供1 3 个中断源,其中掉电中断有着最高的优先级。两个 串行口中断,s c o n 0 和s c o n i 。其中串口0 用于与下位机通讯,采用r s 一2 3 2 协议:串口1 用于与p c 机通讯,采用r s - 4 8 4 协议。详细情况见后面章节。 2 4 软件结构 传统的软件开发方法基本上是一种面向问题的方法,分析过程不关心以后 的设计和实现过程系统的问题模型和设计模型间没有显式的联系。由此造成 了开发工作的脱节和重复,同时很难保证设计产品如愿成功实现。于是,模块 化的程序设计思想开始成型。相对来说,模块化有以下优点:直观、自然,高 度的重用性和功能的共享性。以下讨论的是小长图无纸记录仪的软件结构和设 计思路。 2 4 1 下位机软件结构 下位机的软件主要实现以下功能:读入采样通道的数据;进行数据处理; 保存数据到内存中;通过串口上传数据到上位机:同时通过串口接收上位机的 组态信息和命令等。 下位机通过a d 7 7 1 5 负责智能化a d 采样。通常获取采样值的手段主要有 两种:软件查询和硬件中断。软件查询的方法是在程序中不断检查a d 的某个 标志位,看a d 转换是否结束,如结束就可读取采样值。此方法最方便,程序 结构清晰,硬件实现也简单,但响应速度很慢。硬件中断方法是a d 转换结束 后,产生一个中断信号引发微处理机的一次中断在中断服务程序中读取采 样值。运用此方法响应速度快,但需a d 芯片提供相应的硬件接口。a d 7 7 1 5 提供了使用这两种方法的界面:通讯寄存器中的d r d y 位可用于软件查询,而 d r d y 引脚的信号输出可用于硬件中断。鉴于小长图无纸记录仪中a d 7 7 1 5 是 串行工作方式,而且每台仪表最多存在8 路数据采样,同时考虑到信号除了采 样、a i ) 转换外,还需进行相关处理( 例如热电偶的冷端补偿、工程量的转换 等) 。因此,软件查询的方法不可取。为此:下位机就采用硬件中断的方法获取 采样值。同时,在分配c p u 时间方面,采用同步并行技术。在2 5 0 m s 的周期 时间中,划出1 8 0 m s 作为a d 7 7 1 5 的自校正时间,自校结束后,每1 0 m s 产生 一个有效数据。当a d 处于自校正状态时,程序可转入采样值处理等其他工作。 第8 页共7 5 页 浙江大学硕士学位论文 显然,a d 7 7 1 5 的自校过程与c p u 处理采样值、通讯等工作是同步并行进行, 大大节约了c p u 的处理时间。 在数据处理方面,为了尽量避免在数据处理时增大舍入误差,并减少计算 量,在上下位机问传送的数据就使用1 2 位( b i t ) 这种方式。数据在下位机由信 号值通过运算变成实际的物理量,这个物理量通过上位机下传的组态信息,变 换为0 8 1 9 2 间的数值,然后将变换后的数值上传。这样做的好处是能尽量提高 测量的精度,同时,数据传送量也相对减少,减少数据传送的强度。 前面已经提到,上下位机间的通讯主要通过串口0 来实现。在数据通讯方 面,下位机首先接收上位机的通道组态信息,这些组态信息包括通道的使用、 信号类型、信号上下限、单位等等。下位机软件通过这些信息进行正确的数据 采样和处理,组态信息中包含了采样时间信息下位机根据下传的采样时间信 息定时向上位机发送采样数据。 2 4 2 上位机软件结构 从软件工程的角度来考虑,应当把程序做成独立的模块式结构,各模块的 相对独立性越高越好。但是现在有如下因素的限制: c 5 1 不支持c + + 语法,从而限制了模块式结构的面向对象编程 程序空间的6 4 k 限制,限制我们不能通过牺牲代码量来获得代码的通 用性和易维护性,而是反过来通过牺牲程序的通用性和模块的独立性 来获得尽量小的目标代码和提高执行效率 因此小长图软件的编写应当首先考虑代码编译后的空间占用量,也即单 片机所能访问的程序地址空间。上位机软件总体结构如图2 4 所示。 为了追求程序在空间和时间上高效性,程序的编译模式选择了s m a l l 模式 即允许参数从寄存器传递。由于上位机代码量较大,片内r a m 马上被耗尽, 产生地址空间溢出。于是对所有需要多个参数传递的函数一律采用定义片外 r a m 全局变量的方法进行参数传递,即定义函数定义成无参数类型,但调用该 函数时,调用者必须负责先设置好和所要调用函数相关的片外r a m 全局变量 的值作为函数调用的实际参数。同时,由于在图形界面上开销了大量的代码空 间因此,小长图软件在编写时采用了如下方法节省代码量。比如: 1 底层的子函数库尽量使用汇编语言来编写力求简洁高效。一般来说 第9 页共7 5 页 浙江大学硕士学位论文 用c 写的程序经过编译器编译后产生的代码量将往往大于直接用汇编写的程 序。 数 字 显 一 水 初始化模块a p p l i c a t i o n ( 1 主程序模块m a i n l o o p ( ) 显示r o m 模块厂 切换r o m 模块广 组态r o m 模块 实时显示 1l 磁盘操作ll 打印操作i 1 追忆操作ii 累积操作 水 平 趋 势 垂 直 趋 势 塞 图 显 一 不 系 统 参 数 设 定 通 道 参 数 设 定 图2 4 上位机软件结构框架图 景 积 参 数 设 定 追 忆 参 数 设 定 虚 拟 通 道 设 定 2 用一系列的讧语句来代替s w i t c h 语句。 3 多次出现的一些表达式可以预先计算存放到变量。这样可以消除太多不 必要的冗余代码,将缩小相当可观的代码量 4 在满足要求的前提下尽量使用小的变量类型,如对于横坐标,最大值为 3 1 9 因此必须使用两个字节的u n s i g n e di n t 类型,而纵坐标则因为其最大值为 2 3 3 ,使用一个字节的u n s i g n e dc h a r 类型即可满足要求。如果纵坐标使用了两字 节的u n s i g n e di n t 类型的话,将产生不必要的冗余代码,消耗程序空间。 5 尽量使用无符号型的变量。因为5 i 系列单片机的指令集不支持带符号数 的运算因此非必要情况下应当尽量使用无符号型变量如:u n s i g n e di n t , u n s i g n e d c h a r 。和带符号数相比,无符号数的编译结果将产生可观的程序空间和执行时 间的消耗。 第1 0 页共7 5 页 浙江大学硕士学位论文 在内存分配上,8 0 c 3 2 0 支持6 4 k b r a m 地址空间。小长图无纸记录仪采用 友利华的y d 5 0 1 型彩色5 寸液晶显示屏作为显示屏。y d 5 0 1 是显存型的显示 设备,即只要向相应的y d 5 0 1 内部r a m 单元写入相应的数据,即可在屏幕上 对应点产生相应的颜色显示。和别的同型产品不同的是,y d 5 0 1 的起始地址即 屏幕左上角点的显存地址并不是0 0 0 0 h ,而是1 0 0 0 h 。 y d - 5 0 1 内部r a m 和屏幕像素的对应关系是4 个b t 对应一个像素点其 中3 个b i t 为颜色控制,剩下一个b i t 为亮度控制位,也就是说,一个字节对应 屏幕上两个像素点。需要做特殊处理的是每一行的第一个点和最后一个点,因 为比如第一行第一个点( x 坐标为0 ) 是地址1 0 0 0 h 的高4 位,而该地址的低4 位并不对应任何像素点。同样,第一行的最后一个像素点( x 坐标为3 1 9 ) 是地 址1 0 a o h 的低4 位而该地址的高4 位并不对应任何像素。如果直接将液晶显 示屏和单片机总线相连,则y d 5 01 显示将耗用6 4 k b 的r a m 区,这样单片机 将没有任何内存来处理其他事物。于是,采用地址扩展的和译码锁存的办法。 将显示屏人为的划分为上下两部分,占有相同的内存单元( 8 0 0 0 h f f f f h ) 。 液晶屏的第1 6 根地址线a 15 来自锁存芯片7 4 h c 5 7 3 的锁存信号。于是每次访 问液晶屏时通过对上下半屏的判断,来设定a 1 5 的信号值,这就使得单片机 的低端r a m 可以解放出来处理其他事物。 从总体来看,上位机软件主要实现了以下功能: 1 图形化的组态界面。组态包括系统信息组态、通道信息组态、页面信息 组态、累积信息组态、追忆参数组态等。 2 动态数据显示。动态数据显示包括数字模式、水平趋势、垂直趋势和棒 图显示。数字模式模拟数显表的数码管数字,同时这种数字可以根据页面显示 通道的多少而自动调整显示的大小。在水平趋势内,可以同时显示1 4 个通道 内信号在连续6 1 个点内的变化情况,适合于观察单个通道一段时间内信息的变 化趋势。垂直趋势可以在单页内显示1 4 路信号的垂直变化趋势。 3 历史数据操作。可以根据用户的需要进行显示、拷贝和打印等功能。提 高了备份数据的可靠性和显示的多样化。 第1 l 页共7 5 页 2 5 小结 本章主要介绍了小长图无纸记录仪的主要性能指标、硬件结构和软件结 构,同时分析了其具体硬件的实现方法和软件功能、内存分配等方面的内容。 第1 2 页共7 5 页 浙江大学硕士学位论文 第三章程序存储器的扩展 3 1 前言 在对单片机进行开发时,首先遇到的问题就是存储器的扩展。单片机内部 虽然设置了一定容量的存储器,但是这种存储器一般容量较小( 例如8 0 5 1 、8 7 5 1 片内包含有4 k 字节的r o m 或e p r o m ,8 0 3 l 片内则不带r o m ) ,远远满足不 了实际需要,因此需要从外部进行扩展。单片机扩展外部程序存储器的硬件电 路如图3 - 1 所示。同时,程序存储器的寻址空间为6 4 k b ( o o o o h f f f f h ) 。也 就是说外部存储器的最大容量为6 4 k b ,对于小长图无纸记录仪来说,6 4 k b 的程序存储空间显然无法满足应用的需要,于是对外部存储器同样存在着扩展 问题。 t 百岢 p o 二兰二: 三习低。位地址 e p r d m 苴 ,e e p r o m 片 地 a l e 机 址 p 2 高8 位地址 图3 1 单片机程序存储器扩展 3 2 常用e p r o m 芯片介绍 紫外线擦除电可编程只读存储器e p r o m 可作为单片机的外部程序存储器, 其典型产品是i n t e ! 公司的系列芯片2 7 16 ( 2 kx 8 ) 、2 7 3 2 a ( 4 kx8 ) 、2 7 6 4 a ( s k x 8 ) 和2 7 5 1 2 ( 6 4 kx8 ) 等。这些芯片上均有一个玻璃窗口在紫外线照射2 0 分钟左 右,其存储器中的各位信息均变为1 ,此时,可以通过编程器将工作程序固化 到这些芯片中。 2 7 1 6 是2 k b 紫外线擦除电可编程只读存储器,单一5 v 供电,运行时最大 第1 3 页共7 5 页 浙江大学硕士学位论文 功耗为2 5 0 m w ,维持功耗为1 3 2 m w ,读出时间最大为4 5 0 n s ,2 4 脚双列直插 封装。 2 7 3 2 是4 k b 紫外线擦除电可编程只读存储器。单一5 v 供电,最大静态工 作电流1 0 0 m a ,维持电流为3 5 m a ,读出时间最大为2 5 0 n s ,2 4 列双列直插封 装。 2 7 6 4 是8 k b 紫外线擦除电可编程只读存储器,单一5 v 供电,工作电流 7 5 m a ,维持电流3 5 m a ,读出时间最大为2 5 0 n s ,2 8 脚双列直插封装。 2 7 5 1 2 是6 4 k b 紫外线擦除电可编程只读存储器,单一5 v 供电,工作电流 1 2 5 m a 维持电流4 0 m a ,读出时间最大为2 5 0 n s ,2 8 脚双列直插封装。 3 3 双e p r o m 扩展的实现 由于程序在高分辨率用户界面设计上的大量代码开销,导致了整个程序目 标代码量的急剧膨胀,最终超出了单片机的寻址范围即代码量大于6 4 k 。为 了解决这一问题,我们引入了r o m 切换的概念,系统中使用了两片6 4 k 容量 的r o m 来解决这一问题,代价是程序设计时必须分两个p r o j e c t 来设计。但是 由于两片r o m 都使用了同一片r a m 作为片外r a m ,因此,两个p r o j e c t 中对 全局变量在r a m 中的映射必须完全一致,否则将出现不可预期的后果。r o m 切换的示意图和流程图分别如图3 2 和图3 3 所示。 从示意图和程序执行流程图可以看出,为了使两片r o m 的切换得以正确 进行,必须保证以下条件: 1 两片r o m 中两个c h i p ( ) 的地址2 和地址3 相同。如虽然r o m o 中的 m a i n l o o p o 语句和s w i t c h c h i p ( 0 ) 语句从不可能被执行到,但还是必须保留,否 则将导致两个地址3 不相同而程序跑飞;同样,r o m l 中语句s w i t c h c h i p ( 1 ) 从 未被执行但也必须保留。最简单的办法就是两片r o m 中的e h i p 0 函数使用完 全相同的函数体,并使其定位在相同的地址上。 2 类似地,在两片r o m 中使用完全相同的跏,i t c h c h i p ( ) 函数体并定位 在相同的地址。 3 c p u 得到复位信号后应当缺省将r o m 0 选中。 4 r o m 片选线的切换速度必须足够快,使得c p u 在读取下一条指令前片 第1 4 页若7 5 页 浙江大学硕士学位论文 选信号保持稳定。 翱帅旗乖童圈 r 0 m 【显示r o m ) 鼍甸l c h “1 ) ; 地m 。 t谙甸2 h h c 崎( 1 x 地如 地h l o o “x 聃蝴 知虹h 心卓0 x 地比 甸12 r t h l m : l1j3 聃s w 虹h q 帅 鼍甸i 牟晌 曩r 删 * 艚 a 壹 诗甸n r 轴血h o 峰( 1 x 1 甸6 一 h 岫p a 幽r 虹h 口中x 甸8 r c m m ; m u l l c e p 酣7 朝 i t 斌 甸1 0 片驸矗壹 r 盯 甸5 图3 - 2 r o m 切换示意图 第1 5 页共7 5 页 浙江大学硕士学位论文 r 0 1 4 9 l 菲擒 姘晌l 调用曲轼融 口口耙蕾甸l 的f 一扣旬一 地地址l 庄 堆技 i 晰;晌2 调用片磕停弓们扭圆a 伽t 鼍甸2 f 一条驹的地 址:地址j 庄入堆授 粕扦甸3 剩谤甸4 之r , 1 的嫩件 ”f 辛甸导致r o 眦叶毪体 号神蕞熏 啾时* 培雅刺f 扎竹舟 r o v 最毫f 一* 掩牛矗f 此 计l 卅磕培号i 勺敢童已经 慵t 置0 m 晴拍自m l 商技 圈此衷出昀收夸毫采自v 3 1 山 的晌j 句窥t 一h 打憾,辖z a 时把曩般中昀地目匕眯静i l 件计薮罩p c 图3 - 3 r o m 切换的流程图 膏甸穗抛秆调用r 田皿叫瓤 毒= 埘土j 膏撕坪 膏甸黼弭用片盎皤聊黛 馥噎鲁毋囊四珊田 口t 虎鼍旬8 下一甸n 地址 鲥地q b 压 摊挂 黼句州嚯蛇m 舯 i f 句l o t 斗睦囊壹r o l n ,止两叩t t 审 廿叮嫒爿时r 馨+ 七点 o l ,中一甸l l i k 秤t 1 4 1 1 c 如肥地3 肚t 鬟中收i p c 辑秆甸u 口e 地取t 敏中麟一p c 薯髓t 机秆神l 一下一鼻 旬如d 正埘t l 蚺毫 在单片机的程序执行方式中,单片机是通过程序计数器p c 的值获取下一 条指令,从而使得程序连续运行。在r o m 切换时,程序执行完切换命令即改 变p 3 4 引脚的电平后,单片机将根据p c 值在切换后的r o m 中读取下一条指 第1 6 页共7 5 页 i ,生0 巍? ; 一。-_。_-。“。1一一 浙江大学硕士学位论文 令。因此,如果切换函数在两片r o m 中不是定位在同一地址位置,则此时单 片机将无法正确读取下一条程序执行指令,从而使得程序无法正确连续运行, 甚至导致死机! 从硬件的角度来看,在设计电路时,r o m o 和r o m l 的地址和数据线完全 相同,保证了指令执行的正确性,只是两快r o m 的片选线分别来自切换控制 电路( 与非门) 的两个引脚,保证了在某一时刻只有某一块r o m 被选中工作。 3 4 编程实现 要实现上述的r o m 切换,可通过以下程序实现: s w i t c h r o m ( ) 程序代码如下: v o i d m a i n l o o p ( v o i d ) ; v o i ds w i t c h c h i p ( c h a r ) ; v o i ds w i t c h r o m ( v o i d ) gc u r s e c 2 1 0 0 ; g _ c u r m i n = 1 0 0 ; gc u r h o u r = 1 0 0 ; g _ c u r d a y = 10 0 ; 艮c u r m o n t h = 1 0 0 ; s w i t c h c h i p ( 1 ) ;p 从r o m o 切换到r o m l + m a i n l o o p 0 ;产在r o m l 内运行, g _ c u r s e c 2 1 0 0 ; g c u r m i n = 1 0 0 ; g _ c u r h o u r = 1 0 0 ; g _ c u r d a y = 1 0 0 ; g _ c u r m o n t h = 1 0 0 ; 。 s w i t e h c h i p ( 0 ) ;严从r o m l 切换回r o m o + , ) 在进行r o m 切换的同时,必须考虑到内存中数据的保存问题。前面曾提 第1 7 页共7 5 页 浙江大学硕士学位论文 到,小长途无纸记录仪是采用大容量的f l a s h 作为存储器件,而对f l a s h 的操作 是以扇区作为单元的( 详情见后面章节) 。因此,在处理采样数据的时候,通常 是在内存中开辟一块内存空间用来保存这些采样数据。当开辟的空间已满时, 将这批数据存储到f l a s h 中,同时将空间释放。于是,这里就存在一个问题, 那就是r o m 的切换无法保证刚好在内存中的数据写入f l a s h 中后进行。因而 通常切换时,内存中亦保存着待写入f l a s h 的采样数据。这些数据如果不做处 理将被丢失,使得记录数据的完整性受到破坏。因此在程序设计中,每次切换 前均将这些数据保存到某一特定区域,而在切换后将这些数据读出来,从而使 得记录的数据保持完整。 3 5 小结 在本章论述了双r o m 在小长图无纸记录仪中的实现,详细分析了其实现 的示意图和实现流程。双r o m 扩展的实现使得单片机不再受6 4 k b 程序空间 的限制,为大规模程序设计提供了可靠的手段。 第1 8 页共符页 浙江大学硕士学位论文 第四章图形化界面的开发 4 1 前言 随着计算机处理能力和硬件设备性价比的提高,软件的功能及界面设计也 从专家友好型向用户友好型转化。图形化界面的设计也逐步成为软件设计和开 发的一个重要组成部分,图形化界面的实现,使得操作更为简捷方便,显示也 更为直观。 在g u i ( 图形用户接口) 出现之前,屏幕仅仅用来显示用户从键盘的输入 和计算机的文本输出。显示方式单一,同时对于像曲线的显示等根本无从下手, 于是图形化界面设计提到议事日程上来。图形用户接口的概念早在七十年代中 期就已出现,x e r o x p a l oa l t o 研究中心做了一些开创性的工作。第一个g u i 是由施乐公司的帕洛阿图研究中心开发,并于1 9 8 4 年应用于苹果公司的 m a c i n t o s h 机器上。此后,该项技术日渐成熟,并得到广泛的应用。 4 2 友利华液晶显示屏概述 小长图无纸记录仪采用友利华公司生产的y d - 5 0 1 作为其液晶显示屏,分辨 率达3 2 0 * 2 4 0 ,和中长图的1 0 寸6 4 0 x 4 8 0 液晶屏的分辨率相当,因此可以设计 出精细漂亮的用户界面。它通过d c d c 变换器产生液晶所需要的各种驱动电 压,d c a c 逆变换则用来点亮冷阴极背光灯,显示驱动逻辑电路采用特殊的优 化逻辑电路,利用分时技术使得显示和写入数据同时进行,实现了画面的高速 更新,而且互不干扰。 y d 5 0 1 接口方式为总线方式,外部总线包括有地址总线、数据总线和片选 读写输入,它可以直接挂到计算机、单片机的总线上,通过译码分配作为主机 的内存来使用。如果主机无法提供足够大的空间时,也可采用分页技术,高位 地址用来做页面切换,低位地址则可以直接操作。在小长图无纸记录仪中,就 采用了分页管理技术。如图4 - l 所示。 第1 9 页共7 5 页 浙江大学硕士学位论文 图4 - 1 分页管理原理图 由于液晶屏采用r a m 方式驱动,以及大容量的并行f l a s h 存储器远远超 出了5 1 单片机6 4 k 的数据寻址空间,为此,我们对8 0 c 3 2 0 进行了数据空间扩 展,增加了8 根地址线。对增加的地址空间我们进行了分页管理( 每个页面大 小为3 2 k ) ,利用5 1 原有的高端3 2 k 数据空间进行换页访问。在增加的数据空 间内,我们安排了3 2 k 的f o 空间,6 4 k 的液晶显示空间,以及f l a s h 存储器 空间,扩充的数据空间达到8 m 。 4 3 图形化界面的设计 图形化的界面能给用户提供一个直观方便的组态和操作环境,同时,图形 界面具有比较美观形象的立体效果,而这种效果的实现取决于构成图形对象的 线条的颜色和粗细。众所周知,线是由点构成,而面又是由线所构成。这里将 详细介绍底层基本图形库函数。 4 3 1 清屏函数 清屏函数( c l r s c r ) 在小长图中十分常见。同中长图无纸记录仪相比,小长 图无纸记录仪上位机仅有6 4 k b 的数据存储空间,因此,不能像中长图那样将 需要被覆盖的部分保存到内存中,操作完毕后再实现回显。于是清屏函数就显 第加页共7 5 页 浙江大学颂士学位论文 得十分重要。 清屏函数仅需指定一个参数c l r s c rc o l o r ( 刷屏颜色) ,它用来指示用何种 颜色来刷新屏幕。该函数操作的结果是用指定的颜色将屏幕刷新一遍。前面曾 提到,友利华y d - 5 0 1 是显存型存储设备,针对8 0 0 2 0 只有6 4 k b 数据存储空 间的访问能力。小长图采用分屏技术,因此,在实现时,首先将液晶显示屏的 第1 6 根地址线复位,然后在相应的屏幕上用指定颜色来覆盖,接着,将液晶显 示屏的第1 6 根地址线置位,类似的对下半屏进行相应的操作。 4 3 2 画线函数 线是由点组成,因此,画线其实就是在两点之间用相应颜色的点来填充屏 幕。画线函数( d r a w l i n e ) 主要有5 个参数:d r a w l i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论