(信号与信息处理专业论文)漏水探测仪的设计.pdf_第1页
(信号与信息处理专业论文)漏水探测仪的设计.pdf_第2页
(信号与信息处理专业论文)漏水探测仪的设计.pdf_第3页
(信号与信息处理专业论文)漏水探测仪的设计.pdf_第4页
(信号与信息处理专业论文)漏水探测仪的设计.pdf_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

. the des i gn of leak noi s e detector wa n g z h i - h u i ( d e p a r t o f e l e c t r o n i c s e n g i n e e r i n g , c o l l e g e o f s c i e n c e s a n d t e c h n o l o g y , i n n e r a l o n g o l i a l u n i v e r s i t y , fl o h h o t , 0 1 0 0 2 1 , p r c ) d i r e c t e d b y p r o f e s s o r l i s h u - h u a ma j o r d i r e c t i o n : mi c r o c o m p u t e r a p p l i c a t i o n a n d g r a p h i c s c o m d r i v e r ; ac t i v e f i l t e r ; s eg dr i v e r 、 、 一111一眨1.卜 引言 供水管道的检漏是一项费时、细致而又复杂的工作,过去检漏时除了需 要操作者对管网有一定的了解外, 还要求工作人员从所能听到的微弱信号( 当 然要求尽量在环境相对安静的条件下进行)中辨别出漏水声音,工作难度和 工作效率是可想而知的。然而随着社会的发展,城市噪音急剧增加,供水管 道的检漏工作己受到严重干扰。如果配备漏水探测仪,则可帮助检漏人员尽 j决找到漏水点。 当带有内压力的给水管道破损时,管道内的水受压力作用,便从漏孔射 出。一般而言,漏水声音是连续且有一定的冲力的,漏水声将反映在管道漏 孔周围的上方地面。使用测漏仪检漏时,要求工作人员熟悉管网结构,这样 才能排除闸门、三通和其他附件可能引起的干扰,并要对一些最基本的声学 常识有所了解。测漏时,使用立体声耳机听音 ( 微弱的水声已经经过测漏仪 放大)和观察l c d显示屏上的波幅曲线相结合来确定漏水点。 本课题的研究只是在开发管网测漏仪器领域的初次尝试,还具有极大的 延续性。后续课题可以 针对不同方面进一步开发和完善:使用功能更加完善 的单片机 ( 片内带有程序存储器、a i d转换电路等)来控制系统;设计用软 件实现滤波;选用加速度检波器作探头;在自 动巡检 ( 即不进行带通滤波来 全面听音质)时, l c d屏幕上能够体现出最高波幅段所对应的频段;使用 相关法测试原理、l c d屏幕上可清楚显示出管道及漏点模型的位置等等。 第一部分漏水探测仪的硬件设计 1 . 1 系统组成 本系统的组成框图如图1 - 1 所示。 在电路中,最核心部件为 ma x 2 6 0微控制器可编程通用有源滤波器及 单片机。 t md m g 1 2 8 6 4为 1 2 8( 列)x 6 4( 行)的液品显示模块,可通过 其自 身的 8位并行口直接与单片机总线连接。 ina 1 0 2放大器的最大设计特 点就是低功耗,所以适合干电池供电;而且它能满足对微弱信号放大所需要 的一系列指标,故广泛应用于各种便携式电子产品的信号放大。传感器将获 图 卜 i 漏水探测仪的结构框图 得的漏水声送入放大器,放大后的信号进入 m a x 2 6 0 滤波器进行带通滤波, 再经a i d变换后在液晶显示屏上显示。 此外,电路中还设有一开关,用于决定听漏水声音用的耳机是接在滤波 器之前还是之后,如果听到的声音是未经滤波的立体客观的声波,那么此时 漏水探测仪工作于自动巡检状态.有一定听漏经验者可用此功能,这时可以 全面辨别分析音质特征。 1 .2 ma x 2 6 0 滤波器 1 .2 . 1 ma x 2 6 0 的结构及工作原理 一、概述 m a x 2 6 0是 c mo s双二阶通用有源滤波器,由 微处理器精确控制滤波 函数。在不需外部元件的情况下,就可实现各种带通、低通、高通、陷波和 全通配置。 可在程序控制下设置中心频率 f a 、品质因数 q和滤波器的工作 方式。 m a x 2 6 0 的主要特性概括为: .微处理器接口 . 6 4 步中心频率控制 . 1 2 8 步品质因数控制 . 独立的中心频率和品质因数编程 二、滤波器的结构 每片 ma x 2 6 0包括两个二阶开关电容有源滤波器,一个二阶组的组成 框图如图1 - 2 所示 ( 因不使用高通等输出端,故图中略去未画) ,使用了两 图1 - 2 滤波器框图( 一个二阶组 ) 个串联的积分器和一个求和运算放大器。每个二阶滤波器组件有各自 的时钟 输入和独立的f 。 和q控制,图中的s c n是开关电容网络. 每个二阶组的中 心频率是山 其输入的时钟频率和六位编程代码决定的, q值由 七位代码控 制。m0 , ml的取值组合决定图中的开关 s 1 . s 2及 s 3的位置或状态,进 而决定每个二阶组的工作方式 ( 方式 1 一 方式 4 ) 。实际的中心频率为滤波器 时钟频率、6 位f 。 控制字以 及工作方式的函数。 三、滤波器的工作方式 m a x 2 6 0有几种不同的方法可以配置图 1 - 2所示滤波器组件中的求和放 大器和积分器。通过写命令输入m o 和m 1 的值来选择四个最通用的内部连接 方式,而且都不需要用外部元件。 下面就以图1 - 2 为背景来简单说明这几种方式: 表 1 - 1 滤波器的工作方式 方式m l , mo 滤波器功能 10, 0l p, b pn 20 , 1l p, bp, n 31 . 0l p, bp, hp 41 , 1l p, bp, ap 注:l p 低通,b p -带通,h p -高通,a , 一全通,n -陷波 方式 1 ,对应图1 - 2 中开关状态为s i 接右、s 2 接右、s 3 断开.对于实 现低通和带通滤波器,如巴特沃思、切比雪夫、贝塞尔等时,方式 1 是非常 有用的,而且也应当尽量选择此方式。 方式2 ,对应开关情况为si 接右、s 2 接右、s 3 闭合。在实现低通和带 通滤波器时,如果采用方式 1 无法得到合适的f n j f o 或q值,方式2 则可能 会提供比较接近的选值。因此当两种方式一起使用 ( m a x 2 6 0内部的两个 组件各采用一种)时, 利用一个时钟信号就可选择较宽的 f o 覆盖范围, 这一 点对于设计宽通带切比雪夫带通滤波器很有用。 方式3 ,此时图1 - 2中各开关位置是si 接右、s 2 接左、s 3 闭合。方式 3 是实现高通滤波器的唯一一种方式。 方式4 ,相应的开关状态为s 1 接左、s 2 接右、s 3 断开。该方式是提供 全通输出的唯一方式. 也可用于低通和带通滤波器, 但要注意, f o 和q采样 误差在方式4时最大。 1 . 2 . 2 ma x 2 6 0 的实际应用问 题 一、如何构成带通滤波器 根据前面的介绍可以知道,ma x 2 6 0片内的两组套件可分别调谐,以 实现各种复杂的滤波器多项式。用 ma x 2 6 0实现四阶带通滤波器的功能框 图如图 1 - 3所示,是山两个二阶滤波器组件 a , b级联而成,而且 a和 b 共用一个时钟即可。ma x 2 6 0的时钟电路可以在三种输入方式下工作,这 就是连接晶振、阻容r c网络或连接外部时钟发生器。如果使用r c振荡器, 时钟频率 ( f lk )通常等于0 .4 5 / r c o 程序轴入 口 图 卜 3 四阶带通滤波器 二、漏水探测仪中的滤波器 1 . 滤波器时钟输入电路的设计 由于地下供水管道的粗细不同、埋设得深浅不同、以 及管道上方地面的 软硬差异等原因,管道漏水时反映在漏孔周围的声音频率就会有所区别。为 此,本课题设计为六级带通选择,覆盖频率范围是0 - y 5 k h z . 用 ma x 2 6 0设计滤波器时,是由输入的时钟频率 ( f it )与 6位 f o 编程 输入代码一起决定中心频率 ( 对带通而言)或截止频率 ( 对低通而言) ,实 际上这六位编程代码对应的是时钟频率与中心频率的比值 ( 即 f id f o ) a m a x 2 6 0可以 使用的时 钟频率范围随q值及滤波器工作方式的 不同而 有所 差异, 概括地讲,f 1 的大致范围是 1 h z 到5 0 0 k h z 左右。 对中心频率而言, 6位编程代码的值 ( n )是从 0到 6 3 ,相应的 f id f o 值也就存在一个范围: 方式 1 ,对应为 1 0 0 .5 3 . 1 9 9 .4 9 ;方式2 ,对应为7 1 . 0 91 4 1 .0 6 。对品质因数 而言,其编程代码是7 位,n值是从。 到1 2 7 ,而且q值也是有范围的:方 式 1 ,对应为0 . 5 - 6 4 .0 ;方式2 ,对应为0 . 7 0 7 - 9 0 . 5 . 由于上述原因,漏水探测仪的六级带通滤波选择所用时钟不可能一致, 也就是说,无法只用一个时钟来满足这六段带通滤波器的输入时钟要求。设 计时经过反复分析和计算,得到的结果是需要用五个时钟值,分别为: 4 0 k h z , 6 0 k h z . 1 2 0 k h z , 2 5 0 k h z和 4 0 0 k h z 。根据图 1 - 3可知,ma x 2 6 0 工作时所需时钟是通过其引脚 i 1 j ,相应的象素点显示;显示 数据为 “ 0 ,相应的象素点就不显示。而且,h d 6 1 2 0 2 u还配备了一套显示 存储器的管理电路和与计算机的接口电路,允许计算机直接访问显示存储 器,因而, h d 6 1 2 0 2 u可以 直接与计算机的总线相连。 但有一点要注意,由于 h d 6 1 2 0 2 u 本身不能生成显示时序,所以不能 独立工作,而必须与相应的自带振荡器和显示时序发生器的行驱动器 h d 6 1 2 0 3 u酉 己 套使用才能形成一个完整的液晶驱动和控制系统。 ( 一)h d 6 1 2 0 2 u的主要特性为: . 拥有6 4 x 6 4 位 ( 5 1 2 字节)的显存, 其数据直接作为驱动信号。 . 8 位; 材了 数据接口。 . 6 4 路列驱动输出。 . 简单的操作命令,如显示开关设置、显示起始行设置、地址指针设 置和数据读/ 写设置等指令。 . 低功耗,在显示期间功耗最大为2 m w . ( 二)h d 6 1 2 0 2 u的工作原理: 在漏水探测仪的设计中,显示部分的设计工作实际就集中在对 h d 6 1 2 0 2 u 的控制和软件编程上。列驱动控制器 h d 6 1 2 0 2 u 由控制部、驱 动部和接口部组成,原理框图如图 1 - 6 所示。其中,控制部又是h d 6 1 2 0 2 u 的核心部分。 1 .控制部 控制部的主要组成部分是显示存储器及其配套的管理电路。显示存储器 的作用有两方面:一是用来存储计算机传送的显示数据,二是作为控制信号 源直接控制液晶驱动电 路的输出。显示存储器是以 一个 6 4 x 6 4位的方阵形 式排布的,为双端口结构数据总线侧、驱动数据传输侧。显存的结构示 意图如图 1 - 7 所示。 y6 4 6 4 路液品显示驱动器电路 6 4 位数据锁存器 cl frm 显示数据存储区 6 4 x 6 4 = 4 0 9 6位 勺勺 显示开关 显 示 起 始 行 寄 存器 n地址计数器 ,。 令 。 存 器 输入寄存器 1 a.t;11 ifif99is 1 / o缓冲器 dbo. . . . db7 cs 3 / c s 2 / c s i e d/ i r / w / rs t 图 1 - 6 h d 6 1 2 0 2 u的原理框图 从数据总线侧看:共有6 4位,按 8 位数据总线的长度分成8 路,称为 ,8个页面,每个页面都有 6 4个字节。x地址寄存器是一个三位的页地址寄 存器,其输出控制着显示存储器 8 个页面的选择,实际上就是控制着图 1 - 7 中数据传输通道的八选一选择器。 y1 y2. .y6 4 图1 - 7 h d 6 1 2 0 2 u显示存储器的结构示意图 y地址计数器是一个 6位的循环加一计数器,管理着某一页面上的 6 4 个单元。 在对显示存储器进行读/ 写操作后, y计数器就自 动加一, 当加至3 f h 后循环归零再继续加一。图 1 - 6 及图 1 - 7中所示a d c端用于设置 y计数器 加一的方向,当a d c接v c c 时,y计数器是从左向右加一,此时地址$ 0 对 应驱动输出y 1 , $ 6 3 对应y 6 4 ;$ 当a d c接g n d时,y计数器是从右向左 加一,地址和驱动输出的对应关系也相反。这样设置的目 的是为了方便驱动 输出 y i 与液晶显示器件的列电极的连接布线,但不改变显示存储器单元地 址与显示屏上点象素的对应关系。 x地址寄存器和 y地址计数器相结合唯一地确定了计算机所需访问的 显示存储器单元的地址。计算机在访问显示存储器之前,必须设置x y地址 计数 ,e 。计算机写入或读出的某个单元的数据代表传显示屏上某一点列的垂 直 8点行的数据。例如 x地址寄存器为0 . y地址计数器也为0 ,就表示选 择了0 页面的第一个单元,该单元的8 位数据对应着显示屏上第1 点列的垂 直8 点行的数据。其中,d o 为第一行第一列的点数据、 d 1 为第二行第一列 的点数据、d 7为第八行第一列的点数据。在此之后,计算机每访问 一次显示存储器,y地址计数器就自 动加一,地址指针指向下一个单元. 在驱动数据传输这一侧:显示存储器是以一行 6 4位的驱动数据总线与 显示驱动电 路连接的, 这6 4 位数据直接控制着驱动电路输出y 1 - y 6 4的输 出波形。如图1 - 6 及图1 - 7 所示,驱动数据总线的管理逻辑电路包括有显示 数据锁存器、显示起始行寄存器、z地址计数器、显示开/ 关触发器以及外 部来的信号c l( 显示数据的锁存信号) 和f r m ( 显示同步信号,即帧信号) 等等。 6 4位的显示数据锁存器是显示驱动数据总线与驱动电路的接口,其锁 存控制信号为外部信号c l . 6位的显示起始行寄存器规定了显示屏上第一行所对应的显示存储器的 行地址,其内容由计算机以指令代码的形式写入。 z地址计数器是一个6 位加一计数器,作为显示行指针,用来选择当前 要传输的数据行。它与行驱动器的行扫描输出同步,选择相应的列驱动器的 数据输出。z地址计数器在行驱动器发来的c l信号脉冲的下降沿时加一, 在 f r m 信号的高电平时置入显示起始行寄存器的内容以作为再循环显示的 开始。 显示开/ 关触发器的作用就是控制显示驱动输出的电平。当触发器内容 为 3 e h时,显示数据锁存器的输入被封锁、输出被置 “ 。 ” ,使得显示驱动 输出全部为非选择波形, 从而显示屏呈不显示状态。当触发器内容为“ 3 f h 时,显示数据锁存器正常工作,显示屏处于可以显示的状态。计算机可以通 过硬件/ r s t复位和软件指令来设置该触发器。 2 . 驱动部 由 6 4路列驱动器构成,如图 1 - 6所示,其控制信号由显示数据锁存器 提供。另外, 输入信号 m 是交流驱动波形信号, 来自 行驱动器 h d 6 1 2 0 3 u 的输出信号me 3 . 接 口部 接口控制电路一方面受来自计算机操作信号的控制,另一方面置身于 h d 6 1 2 0 2 u 内部逻辑时序的控制,完成计算机与 h d 6 1 2 0 2 u 之间的数据传 递。主要山1 / o缓冲器、输入寄存器、 输出寄存器、指令寄存器和状态寄存 器等组成,如图1 - 6 所示. 1 / 0缓冲器为双向三态数据缓冲器,是 h d 6 1 2 0 2 u内部总线与计算机总 线的结合部,在三个片选信号/ c s i . / c s 2及 c s 3的有效取值组合下开放, 实现h d 6 1 2 0 2 u与计算机之间的数据传递。实际上, u o缓冲器的作用是将 两个不同时钟下工作的系统连接起来、实现通讯。 输入寄存器接收在计算机运行速度下传送给 h d 6 1 2 0 2 u的数据并将其 锁存,它的输出又在 h d 6 1 2 0 2 u 内部工作时钟的运行下把数据写入指令寄 存器或是显示存储器内。 指令寄存器,顾名思义,就是用于接收计算机发来的指令代码、并通过 译码将其写入相关的寄存器或触发器中。 从显示存储器读出的数据就暂存在输出寄存器中,它在计算机对 i l i ) 6 1 2 0 2 u进行读操作时,将当前锁存的数据通过1/ 0缓冲器送到计算机的 数据总线上。 此外还有一个状态字寄存器,存放着状态字,表明 h d 6 1 2 0 2 u当前的 工作状态。特别要注意的是,状态字中的 “ 忙”标志位是计算机每次对 h d 6 1 2 0 2 u进行访问时必须要读出并判别的。若 r d 6 1 2 0 2 u处于 “ 忙”状 态,则1 / 0缓冲器被封锁,这时计算机对h d 6 1 2 0 2 u的除读取状态字以外的 任何操作都将是无效的。 列驱动控制器 h d 6 1 2 0 2 u 在接口部与计算机连接的各信号线的含义如 下所列: dbo - db7 / cs i / c s 2 c s 3 三态 数据总线。 输入 片选信号,只有/ c s i = / c s 2 = 0 且c s 3 = 1 时, h d 6 1 2 0 2 u刁 被选通。 输入使能信号。 d/ i 输入寄存器选择信号,d / 1 = 0 ,选择指令寄存器; d / i = 1 ,选择显示存储器。 输入读/ 写选择信号,r / w= 1 ,进行读操作: r / w= 0 ,进行写操作。 输入复位信号,低有效。复位时显示开关寄存器 和显示起始行寄存器被清零。 蜘/rgy 在计算机对 h d 6 1 2 0 2 u进行操作时,上述几个控制信号的关系如表 1 - 3 所示: 表 1 - 3 h d 6 1 2 0 2 u控制信号相互关系 / c s i/ cs 2cs 3d/ ir/ wedb7 - dbo 进行的操作 xxx x .x 0 高阻总线释放 00100 . 飞一输入写指令代码 00101 - 飞输出读状态字 00110 门输入写显示数据 00111 j 一 l输出读显示数据 h d 6 1 2 0 2 u的工作原理需要从两个方面来理解一方面是计算机对它 的操作:另一方面是显示存储器的驱动数据总线的工作过程。 计算机访问h d 6 1 2 0 2 u时必须先读取状态字寄存器的内 容、判别 “ 忙” 标志, 只有该位b u s y = o ( 表示不忙) 时才可以访问。 进行写操作时, h d 6 1 2 0 2 u 在计算机写操作信号的作用下将计算机发来的信息锁存进接口 部的输入寄存 器中、并使其转到内部时钟的 控制下,同时封锁v o缓冲器、置b u s y = 1 , 表明 h d 6 1 2 0 2 u正在处理从计算机接收的数据或指令。 h d 6 1 2 0 2 u会根据 d / i的状态将输入寄存器的内容送给指令寄存器或显示存储器中,当数据或 指令处理完后再撤消对 1 / o缓冲器的封锁、清零 “ 忙”标志位。进行读操作 时,要注意计算机会先进行一次 “ 空读”操作。这是因为 b d 6 1 2 0 2 u往数 据总线上传送的是当前输出寄存器的内 容,并且在每次读操作结束时将当前 地址指针所指向的 a 示存储器单元的数据写进输出寄存器中、同时 y 地址 计数器加 1 。因此,在计算机设置好所要读取的显示存储器单元地址后,第 一次的读操作实际完成的任务是将所需数据先写入输出寄存器内。再进行一 次读操作,读取的才真正是我们所要的显示数据。 那么,再从显示存储器驱动数据总线这方面来看:在帧信号 f r m 作用 下把显示起始行寄存器的内容置入 z地址计数器中作为初始值,以选 t ,p . 示存储流 : 。 相应的那一行作为起始行数据并送到驱动数据总线上,在 c l信 号的上升沿处显示数据锁存器将该数据锁存至输出端 ( 接至驱动电路) ,而 且在c l脉冲的下降沿时z地址计数器加 1 、选通显示存储器中下一行的6 4 位数据并送入显示驱动数据总线上,等待着下一个c l脉冲的到来。如此循 环进行下去,直到下一个f r m信号的到来,再重新装入z地址计数器的内 容、开始下一帧扫描的工作。 1 . 5 t md mg 1 2 8 6 4 a在漏水探测仪中的 使用 m g 1 2 8 6 4是 1 2 8( 列)x 6 4( 行)点阵的图形液晶显示模块,其驱叔 控制系统山一片行驱动器h d 6 1 2 0 3 u和二片列驱动控制器h d 6 1 2 0 2 u组成。 两片h d 6 1 2 0 2 u将显示屏1 2 8 x 6 4 平均分配 ( 分为左、右两区) , 分别管理 6 4 x 6 4 点阵象素。 t md mg 1 2 8 6 4 a的控制引脚为2 0 个,各引脚的定义如表1 - 4 所示。 表 1 - 4接口线的定义 引脚名称状态功能说明 1vs s 电源地,o v 2vd d 逻辑电源,十 5 v 3 v a d j对比度调整 4 d八输入 高电平:数据操作;低电平:指令操作 5r / w输入 高电平:读操作;低电平:写操作 6e输入 使能信号,高电平时进行读操作、下降沿处 进行写操作 7dbo 三态数据线 ( 最低位) 8db1三态 数据线 9db2三态 数据线 1 0db3三态数据线 1 1db4 三态数据线 续表 1 - 4 引脚名称状态功能说明 1 2db5 三态数据线 1 3db6三态数据线 1 4db7三态数据线 ( 最高位) 1 5cs 1 输入片选线,高电 平时选通左侧的h d 6 1 2 0 2 u 1 6cs 2 输入片选线,高电 平时选通右侧的h d 6 1 2 0 2 u 1 7ret 输入复位信号,低电平时关闭液品显示 1 8v e e液晶驱动电源, 1 9nc 2 0nc 1 . 5 . 1硬件设计中时序问 题的解决 h d 6 1 2 0 2 u适配的是 m6 8 0 0操作时序,而单片机使用的却是常用的 i n t e 1 8 0 8 0时序,显然存在一个时序转换问题。我们知道,i n t e 1 8 0 8 0操作时 序的读 ( 或写) 操作是在其负脉冲的上升沿进行。而 m 6 8 0 0时序的读操作 是在使能信号 e的高电平时进行,如表 1 - 3所示;写操作是在使能信号 e 的下降沿处进行,而且读/ 写选择信号 r / w 的有效时间宽于使能信号 e ,可 以与地址线有效时间相等。 因为在本课题中是要用单片机来控制 l c m,也就是 h d 6 1 2 0 2 u , 所以 就涉及到如何用 i n t e 1 8 0 8 0时序的/ r d , / wr信号产生m6 8 0 0时序的e信号 和 r / w 信号。通过上面的时序分析,可以得到这样的解决方案:用单片机 的一根高位地址线直接控制l c m的r / w信号线,并且让e = / ( / wr * / r d ) , 如图 1 - 8 所示。 一-一. 一- , 卜 - - -网一-一一 一f j w xrj 佗认r p/l/l 图 卜 8 时序转换原理示意图 1 . 5 .2 t md mg 1 2 8 6 4 a与单片机的接口 方式的设计 在设计时将液品显示模块与单片机的连接方式设计为直接访问方式,就 是将 l c m 的接口直按仕在单片机的总线上,单片机以访问 存储器或 1 / o设 备的方式操作l c m, 示意于图1 - 9 中。 单片机通过高位地址线a i o 控制c s 1 及 a l l控制 c s 2 ,以选通控制液晶显示屏左、右区的列驱动控制器 h d 6 1 2 0 2 u o井用地址人 8 控制寄存器选择信号d / i 、用a 9 控制读/ 写选择信 号 r / w。在实际产生使能信号 e信号时, 遵循前面所分析的时序转换的中 心思想,是由单片机的/ wr和/ r d 信号逻辑与非后产生,但考虑到地址确 定的问题,又加入了山高位地址译码产生的 “ 片选”信号的选通控制。山于 单片机一侧: l c m一侧: 2 0 p1 n 图 1 - 9 单片机与t md mg 1 2 8 6 4 a接口 方式示意图 液晶特殊的物理性质,其对比度会随温度的变化而改变,图中电位器用于显 示对比度的调节。由于其复位端 r e t是低电平有效,所以设计了图中所示 的复位电路,以达到在上电瞬间完成对控制器 h d 6 1 2 0 2 u复位 ( 内部显j 、 开关寄存器及显示起始行寄存器被清零)的日的。 1 . 6系统中各1 / o设备及存储器的地址安排 漏水探测仪中使用的滤波器芯片 m a x 2 6 0和液晶显示模块 t md mg 1 2 8 6 4 a ( h d 6 1 2 0 2 u )都是直接与单片机的并口 ( p o口)连接,所 以它们是和数据存储器统一编址的。我们知道 5 1系列单片机对片外 r a m 有 6 4 k b的寻址能力、地址范围是 o o o o h - f f f f h ,这时就让外设占用一部 分存储器单元地址。而且,对它们的操作也是用单片机的读、写信号,为了 区分开进行读、写操作的对象是1 / o设备还是数据存储器,在设计电路时, 采用了译码器, 译码分配情况示于图1 - 1 0 0 单片机一侧: 7 4 hc 1 3 9 l c m ( 见图 1 - 9 ) 少 一 外 r a m p25p26阴 片选端 7 4 h c 3 7 4的 时钟输入端 去 ma x 2 6 0 的 写允许输入端 到a / d的启动输 入端及地址锁存 控制端 图1 一 1 0 系统的地址分配示意图 根据这样的译码分配设计,各片的地址范围如下: max2 6 0 : adc0 8 0 9 : lcm : 6 1 1 6 : 4 0 0 0 h - 4 0 0 f 1 i ,共 1 5 个单元。 c o o o h - 0 0 0 7 h ,共 8 个通道,本电路只使用c o o o h . 0 4 0 o h - 0 7 0 0 h ,给控制显示屏左半区的h d 6 1 2 0 2 u ; 0 8 0 o h - o b o o h ,给控制显示屏右半区的h d 6 1 2 0 2 u o 8 0 0 0 h - 8 7 f f h ,共2 k b o 第二部分软件设计 2 . 1系统的程序设计 在各芯片的接口电路已连接好的基础上,工作的最终完成还要依靠程序 的控制。根据以上介绍的各个部分的工作原理及硬件设计思想来设计系统的 主程序,主程序的功能简略地示意于图2 - l 0 图2 - 1主程序流程图 2 . 2 m a x 2 6 0 的f o , q 及工作方式m 的设定 在第一部分中已经介绍过,m a x 2 6 0是由两个二阶滤波单元构成的,针 对给定要实现的带通滤波器,首先要做的工作就是根据其中心频率和带宽等 数值转换出m a x 2 6 0 这两个单元各自的参数,即f o a , q a , f o e , q 。 及m a , m a , 以便于用2 6 0 实现滤波。做这步工作的依据就是带通滤波器传递函数的相关 公式推导, 或者是使用m 人 x 川公司提供的m a x 2 6 0 滤波器设计软件。 操作时当按下某一带通滤波键后,通过键扫描及识别子程序判断出具体 键位,就应转向相应的处理子程序去执行。该处理子程序的主要任务就是完 成对滤波时所需参数 f o e , q a , f o e , q 。 及m a , m 。 数值的设定。各单元地址如 表 一 1 所示。 表2 - 1 m a x 2 6 0 内部的 存储单元 数据地址 单元序号 d o d 1a 3 a 2 a 1a o 滤 波 器a m o am i a00000 f o af l a00011 f 2 af 3 a00102 haf 5 a00113 q o aq l n 01004 q 2 nq 3 a01 015 q 4 aq 5 a 0ii06 q 6 n011 17 滤波器 b一 m o bml b10008 f o bf i b10019 f 2 bf 3 b10101 0 f 4 bf 5 b10111 1 q o bq i b 11001 2 q 2 bq :; b 1i0i1 3 q 4 bq 5 b 11101 4 q 6 b 1 11 i1 5 2 . 3 液晶显示部分的软件设计 液晶显示电路的功能是将随着测漏时传感器在管道上方移动所获得的经 过模/ 数变换后的流水声及漏水声的幅值点连成曲线,以便测漏工作者在听 音的墓础上将其作为参考,尽快确定漏水点。这就需要在硬件接口 连接好的 前提下用程序来实现。 一绘制算法 绘制曲线的工作大致是分为两步,第一步是根据a / d 变换的结果确定出 所绘曲 线的坐标值;第二步是将坐标值转换成相应的由h d 6 1 2 0 2 u控制的液 晶显示存储器单元的地址及数据。 t m d m g 1 2 8 6 4 a是点阵型液晶显示模块,而在点阵型器件上显示的各种曲 线实际是由若干段直线组成的。因此,曲线的绘制实质就是直线的绘制。那 么在程序设计中关键要考虑的就是绘制直线的子程序,它的基础又是绘点子 程序。 直线绘制的算法有很多, 其中的 “ 整数数字微分分析法 i n t e g e r d d a ) 0 避免了复杂的浮点运算,是常用的一种算法。该方法的基本思路是回避计算 斜率 k过程中的除法运算,应用a y与 x之间的大小关系、在保证a y - o 的条件下将斜率k 的取值分成四个范围,在每一个范围内 使用e r r 参数来表 明绘制点的位置与真实线点之间的误差,并且以此确定相应的作点规则。整 数数字微分分析法的绘制方法如下. 绘制以 ( x s , y s )为起点、以( x e , y e ) 为终点的直线,初始时 e r r = o 。绘 制的前提条件是保证 y - o . 1 . k =0 -1 此时有 x - 0且 y - 0 ,则在 ( x + 1 , y + 1 )坐标绘点,且使得 e r r = e r r + a y - a x o然后再 将新的坐标作为当前( x , y ) 点、所得 e r r位作为该点坐标的偏差值,如此t : 复 江 至 x = x e为止。 2 . k 1 这时有a x - o且a y a x的关系式成立,绘点规则是:在当前点( x , y ) 处进行判断,若 e r r ( 0 ,则在 ( x + 1 , y i- 1 )坐标绘点,且使 e r r = e r r + a y - a x ;若 e r r - o ,则正 ( x , y + 1 )坐标绘点,且使 e r r = e r r - a x 。然后再将 新的坐标作为当前( x , y ) 点、所得 e r r值作为该点坐标的偏差值,如此重复 直至 y = y e 为止。 3 . k =一 1 - 0 此时有 x ( o 且 a y i ! a x i 的关系式成立 规则是: 在当前点( x , y ) 处进行判断,若e r r ( 0 ,则在 ( x - 1 , y )坐标绘点,且使e r r = e r r + a y ;若 e r r -o ,则在 ( x - l , y + 1 )坐标绘点,且使 e r r = e r r + a y一i a x i 。然后再 将新的坐标作为当前( x , y ) 点、而所得到的 e r r值作为该点坐标的偏差值, 重复上述过程直至x = x e 为止。 4 . k 一 1 这是有 x ( o 且 ! a y i a x i 的关系式成立,规则是: 在当前点( x , y ) 处进行判断,若 e r r -o ,则在 ( x , y + 1 )坐标绘点,且使 e r r = e r r - a x i 。然 后再将新的绘点坐标作为当前( x , y ) 点、而所得到的 e r r值作为该点坐标的 偏差值,重复上述过程直至y = y e 为止。 二.1i d 6 1 2 0 2 u 的驱动子程序设计 根据 i i d 6 1 2 0 2 u的控制原理以及图 1 - 9所示单片机对它的访问方式,可 以设定下列地址: c o d e d a t a w c d l r c d l w d a l r d a l w c d r r c d r w d a r r d a r 2 0 11 ; 指令寄存器 2 1 11 ; 数据寄存器 0 9 0 0 1 1 : 写指令代码地址 ( 控制左区的 0 6 0 0 11 ; 读状态字地址 ( 左) 0 5 0 0 11 ;写显示数据地址 ( 左) 0 7 0 0 11 ;读显示数据地址 ( 左) 0 8 0 0 h ;写指令代码地址 ( 控制右区的 o a o o h : 读状态字地址 右) 0 9 0 0 1 1 ;写显示数据地址 ( 右) o b o o i i ;读显示数据地址 右) h d 6 1 2 0 2 u ) h d 6 1 2 0 2 u ) u引u曰ull日uu曰u1朴日 eqeqeqeq叫eqeqeqeqeq 并编写相应的驱动子程序如下: 1 .左区驱动子程序: ( 1 ) 写指令代码子程序 p r c l o : p u s h d p l p u s h d p h m o v d p t r , # r c d l p r c l o i :m o v x a , d p t r j b a c c . 7 p r c l o i m o v d p t r , # w c d l m o v a , c o d e m o v x d p t r , a p o p d p h p o p d p l r e t ( 2 ) 写显示数据子程序 p r d l 1 :p u s h d p l p u s h d p i i m o v d p t r , # r c d l p r d l 1 1 :m o v x a , d p t r j b a c c . 7 , p r d l i i m o v d p t r , # w d a l m o v a , d a t a m o v x d p t r , a p o p d p h p o p d p l r e t ( 3 ) 读显示数据子程序 p r d l 2: p u s h d p i p r d l 2 1 : p u s h d p h m o v d p t r , # r c d l m o v x a , d p t r j b a c c . 7 , p r d l 2 1 m o v d p t r , # r d a l m o v x a , d p t r m o v d a t a , a p o p d p i i p o p d p l r e t 2 . 石区驱动子程序 ( 1 ) 写 旨 令代码子程序: p r c r o: p u s h d p l p u s h d p h m o v d p t r , # r c d r p r c r 0 1 :m o v x a , d p t r j b a c c . 7 , p r c r 0 1 m o v d p t r , # w c d r m o v a , c o d e m o v x d p t r , a p o p d p h p o p d

温馨提示

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

评论

0/150

提交评论