《智能光电浊度仪的.doc》由会员分享,可在线阅读,更多相关《智能光电浊度仪的.doc(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流智能光电浊度仪的.精品文档.编号 本科生毕业设计智能光电浊度仪的设计The design of the intelligent optical turbidity meter学 生 姓 名专 业学 号指 导 教 师学 院二一三年六月 毕业设计(论文)原创承诺书1.本人承诺:所呈交的毕业设计(论文)智能光电浊度仪的设计,是认真学习理解学校的长春理工大学本科毕业设计(论文)工作条例后,在教师的指导下,保质保量独立地完成了任务书中规定的内容,不弄虚作假,不抄袭别人的工作内容。2.本人在毕业设计(论文)中引用他人的观点和研究成果,均在文中加以注释或以
2、参考文献形式列出,对本文的研究工作做出重要贡献的个人和集体均已在文中注明。3.在毕业设计(论文)中对侵犯任何方面知识产权的行为,由本人承担相应的法律责任。4.本人完全了解学校关于保存、使用毕业设计(论文)的规定,即:按照学校要求提交论文和相关材料的印刷本和电子版本;同意学校保留毕业设计(论文)的复印件和电子版本,允许被查阅和借阅;学校可以采用影印、缩印或其他复制手段保存毕业设计(论文),可以公布其中的全部或部分内容。以上承诺的法律结果将完全由本人承担! 作 者 签 名: 年 月 日摘 要浊度计作为测量水质浊度的计量仪器,广泛用于我国各个行业。据不完全统计,我国每年所需工业浊度仪总数量约 100
3、0 台左右。然而,目前我国市场上的浊度计很大程度依赖于进口,这些浊度计虽然测量精度和稳定性都很好。但结构复杂,价格昂贵。本文在分析和仿真实验的基础上,实践制作智能化的浊度仪。该智能化浊度仪的软件在 Mirosoft Visual C+ 6.0 开发环境用 C+语言编写,它充分利用计算机强大的计算处理能力,图形界面显示、储存、打印功能。在硬件方面主要有单片机、A/D 转换、探头、多路开关组成。单片机为硬件的核心,它负责与计算机通讯,控制 A/D 转换,控制电路的切换,产生调制光源信号等。关键字:浊度 浊度测量 调制 ABSTRACT Turbidity meter for measuring t
4、he water quality turbidity measurement instruments, widely used in various industries in China. According to incomplete statistics, Chinas industrial turbidity meter total quantity required for each year about 1000 units. Turbidimeter, however, at present our country market is largely dependent on i
5、mports, although these turbidimeter measure precision and stability is very good. But the structure is complex, expensive. In this paper, on the basis of the analysis and simulation experiment, practice make intelligent turbidity meter. Mirosoft the intelligent turbidity instrument software in Visua
6、l c + + 6.0 development environment using c + + language, it makes full use of the computer a powerful computing ability, the graphical interface display, store, print function. Mainly in terms of hardware with MCU, A/D conversion, sensor, multi-channel switch. Single chip microcomputer as the core
7、of the hardware, it is responsible for communication with the computer, to control A/D conversion, control circuit switch, produce light source modulation signals, etc.Key words: turbidity; measurement of turbidity; modulation; 目录摘 要IABSTRACTII目录III第1章 绪论11.1 浊度的简介11.1.1 浊度的概念11.1.2 浊度测量方法11.1.3 浊度仪
8、的种类31.2 国内外浊度仪器的现状31.2.1 国外浊度仪器的现状31.2.2 国内浊度仪器的现状31.3 本文研究的目的和研究内容41.3.1 研究的目的41.3.2 研究的内容5第2章 调制光源光强技术的理论分析62.1 引言62.2 采用调制光强测量浊度的原理62.3 非线性的校正方法7第3章 仪器的整体设计9第4章 硬件电路的设计104.1 电源电路104.3 单片机及其控制电路12第5章 软件的设计155.1 单片机的编程155.2 计算机程序的编写23第6章 仪器的使用介绍246.1 线性校正和标定仪器246.2 测量浊度和使用界面26第7章 实验结果与展望287.1 实验结果2
9、87.2 后续研究工作的展望29参考文献30致谢31第1章 绪论1.1 浊度的简介1.1.1 浊度的概念在人们生活和生产中,常用浊度(turbidity)来表征液体的清洁度,水的浊度是泥沙、粘土、微细的有机物和无机物、可溶的有色有机化合物以及浮游生物和其它微生物等悬浮物质所组成。这些悬浮物质能吸附细菌和病毒,所以浑浊度低有利于水的消毒,对确保水质指标有极重要的影响。国际标准化组织定义为:由于不溶解物质的存在所引起的液体透明度降低,可见,浊度不等于固体悬浮物质(SuspendedSolids)含量,固体悬浮物质含量是水中可以用滤纸截留的物质重量;而浑浊度则是一种光学效应,它表现出光线透过水层时受
10、到阻碍的程度。这种光学效应与颗粒的大小及形状有关,实践证明浑浊度与悬浮物固体物质的重量浓度没有任何的相关关系。水的浑浊度越高,反射光和散射光就越强,而透射光就越弱;反之,水的浑浊度越低,反射光和散射光就越弱,而透射光就越强。因此测定散射光与透射光强度间的变化,就可以测得水的浊度。1.1.2 浊度测量方法浊度的测定目前有化学分析法和仪器分析法两种,化学分析法采用透明度试管法和透明度试验圆盘法,适用于实验室或野外作人工分析测定;仪器分析法利用 880nm 近红外光源,采用光学透射或散射原理,将浊度转换为光电信号,测出浊度数值大小。工业过程浊度仪可对各种工艺过程中水质浊度进行长期、连续分析测量;而实
11、验室浊度仪为小型台式或便携式,适用于实验室中或野外对水质浊度进行间隔分析测量。仪器分析法基本方法如下几种:(1) 透光式测定法 光透过浊液被减弱的程度与浊度有一定函数关系,测量透过待测浊液的光的强度,来得到浊度值。透射光强度随浊度的变化遵从朗伯特比尔定律,即透射光随浊度增加按指数形式衰减IR=Io exp(-KTL)式中,Io为入射光的强度,L 为液体透光层厚度,K 为比例常数,IR为透射光的强度,T 为水的浊度。图 1.1 透射法测量原理 (2) 散射测浊度法 由于液体中悬浮微粒引起光的散射,散射光的强度与浊度有关。通过测量散射光强,可得到浊度信息。在浊度不大的情况下(2000FTU),90
12、方向所接受到的散射光强度可用下式来表示:IR=IO(KNV2/)式中,I0为入射光的强度,K 为系数,N 为单位容积的微粒数,V 为微粒的体积, 为入射光波长。假设 和 V 为常数,则 KNV24与单位容积微粒的总数或总体积成正比,也就是与浊度成正比,则有:IR=KTIO式中 T 为水的浊度,K为系数。按其测量方向的不同,又分为前散射式、垂直散射式和向后散射式三种方法。 (3) 透射光和散射光比较测定法 即透射光和散射光比较测定法。它是以上两种方法的综合,采用透射光和散射光强比较的方法测量浊液的浊度,这种方法可以消除部分干扰,提高灵敏度。(4) 表面散射法 表面散射法测量发生在水层的近表面层的
13、散射光强度,来得到浊度值。表面散射浊度测量是一种非接触测量法,即散射光接收光学系统及接收器与水样是非接触的,避免了光学接收窗口等的污泥、结垢现象。且其测量范围宽、线性度好,因而常用于浊度较高的水源水测量中。(5) 偏振法 对于粗大的颗粒,散射光为部分偏振光,而且偏振的程度与颗粒的大小和形状有关。通过对偏振度的检测,可测量浊度。图 1.2 表面散射法测量原理1.1.3 浊度仪的种类测量浊度的仪器叫浊度仪。按照所测量浊度的范围,可分为低浊度仪、中浊度仪、高浊度仪。基于测量浊度的方法,可分为透射式、散射式、透射光和散射光比值式、表面散射式、偏振光式浊度仪。当然,测量浊度的范围和测量浊度的方法是有关系
14、的。比如,透射式浊度仪一般也是中、高浊度仪。而透射式浊度仪也是低浊度仪。按浊度仪结构不同,可分为窗口测定槽式、落流式、振动片式和积分球式。按浊度仪安装结构不同,有可分为流通式、沉入式、插入式、伸缩可拆卸带球阀插入式浊度仪。总之,选用浊度仪必须考虑测量的范围、工作环境等因素。1.2 国内外浊度仪器的现状1.2.1 国外浊度仪器的现状从 20 世纪 90 年代开始,国外许多仪器仪表公司都推出了许多技术先进、性能优良的浊度仪。进入 21 世纪后,市场上的浊度仪更是种类繁多、品种多样。它主要分为供现场便携使用和实验室使用的便携式或台式浊度仪、工业现场中使用的在线检测式浊度仪两大类。根据所用光源的不同,
15、国外浊度仪可按 ISO 国际标准和美国 USEPA180.1 标准分为两大类。目前,具有代表性的品牌有:美国 HACH 公司系列浊度仪,英国ABB Kent 公司系列浊度仪,德国 E+H 系列,美国 Rosemount 系列,日本横河公司系列,等等。这些新型浊度仪都采用了单片微计算机技术,其中,许多仪器的单片机采用的是目前最新型的单片微机芯片。有些公司的产品,还将测定浊度和固体悬浮物等多种功能合成在一起,可用同一探头、同一台仪器操作,只需按一下功能转换键即可,无需重新进行参数设定和更换测量探头,大大扩展了仪器的应用范围,增强了仪器检测的多元化功能。此外,几乎所有的高浊度产品都带有自动清洗装置,
16、许多低浊度产品可以选配自动清洗装置或是自带清洗装置,这样,仪器就可以在较为恶劣的工业环境中使用,如工业废水处理、粘性较大的工业现场等。同时,可根据测量要求,对自动清洗程序自行重设定,从而可保证浊度仪长期稳定地运行。1.2.2 国内浊度仪器的现状我国的工业过程浊度仪,从无到有,近几年来得到较大发展。7080年代,工业浊度在线测量仪表,在我国几乎还是一个空白点.即使后来有了浊度仪,也是指针显示.体积较大,只能进行流通式测量,可靠性和稳定性都很差。经过近 10 年的技术攻关和引进国外先进技术经验,国产的浊度仪已有很大变化,不但初具规模,有多家厂商生产,而且有些技术指标还达到了较高水平。上海雷磁仪器厂
17、的 WZT-170 型高浊度仪,测量范围 01000FTU;WZT701型低浊度仪,测量范围为 025FTU,广泛用于自来水厂、污水处理厂、废水处理监测等行业。这两种浊度仪的外形尺寸相同,十分小巧,仅 200 x120 x75mm。.传感发送器为流通式,直接安装在管路中进行连续测量,整套仪器安装在一个支撑座架上,只要将样水用管道直接接入传感发送器即可测量。为防止对传感发送器污染,若需清洗,可选用超声波清洗器进行定时清洗。WZT 系列高、低浊度仪均有六种不同的测量量程可供选择,根据用户需要,在出厂时加以确定。若不提要求,则按最大测量量程即高浊度 01000FTU、低浊度 025FTU供货。国营
18、267 厂的 WGZ-l 型浊度仪是军工厂军转民较成功的一个产品,仪器具有六种测量范围可供选择,从 0-2 至 01000FTU。仪器流程中装有消泡器,使测量数值稳定性好;为了防止对传感器测量室的污染,可以选配自动清洗装置,使用时应根据仪器测量范围调整清洗定时旋钮.确定自动清洗间隔时间,一般测量浊度值在 10FTU 以内,清洗间隔 35h;测量浊度值在 100FTU 以内,清洗间隔时间 1-2h;测量浊度值在 100FTU 以上时,清洗间隔 1h 以内。但由于 WGZ1 传感器与控制器组合在一个箱体内,安装只能从箱体水管连引入,安装方法较单一,许多场合如江河湖塘、他槽、敞口箱等工况环境都较难使
19、用,因此应用工况受到较大局限性。1.3 本文研究的目的和研究内容1.3.1 研究的目的现代科技的进步以计算机的进步为代表,不断创新的计算机技术,正以不可逆转之势从各个层面上影响着各行各业的技术进步,今天的测控仪器行业同样经历着一场翻天覆地的变革。计算机渗透到仪器科学与技术领域并得到充分应用的结果,在该领域出现了完全突破传统概念的新一代仪器智能仪器,从而开创了仪器仪表的一个崭新的时代。仪器仪表的发展可以简单地划分为三代。第一代为指针式仪器仪表,如指针式万用表、功率表。它们的基本结构是电磁式的,基于电磁测量原理使用指针来显示最终结果。第二代为数字式仪器仪表,如数字电压表、数字功率计、数字频率计等。
20、它们的基本结构中离不开模数转换环节,并以数字方式显示或打印测量结果。第二代仪表响应速度较快,测量准确度较高。第三代就是本文要讨论的智能式仪器仪表,这类仪器仪表的主要特点是内含微处理器,因此,通常具有信息采集、数据处理,输出控制及测试过程和测试结果显示、记录、传输自动进行等功能。本文的研究目的是将仪器仪表的智能化技术具体应用于浊度测量中,解决浊度测量中的问题,采用软件技术代替复杂的硬件电路,通过软件的非线性校正、滤波等技术修正和克服由传感器、变换器、放大器等引入的误差,从而提高仪器的精度和其他性能指标。特别是理论上证明和实际实现本人提出的调制光源光强技术,即将信号处理的方法应用于浊度测量中排除环
21、境光和杂散光对浊度测量的影响。为实现此技术又提出和验证了软硬件结合非线性校正方法。也就是说,用软件方法克服硬件本身的缺陷,从而提高仪器的性能价格比。1.3.2 研究的内容本文首先从理论研究了调制光源光强技术测量浊度的原理及其可行性,在此原理的基础上,采用以个人计算机为基础的个人计算机仪器(PCI)的形式来实现。用 VC+软件开发平台,利用 MATLAB 数学软件的数学处理函数及其与 VC+接口,以及一些前人开发的控件制作仪器的软件。软件的功能包括采集数据、非线性校正、滤波、仪器标定及其操作界面,以及数据的显示、存储、统计等。硬件上,由于采用软件技术,简化了硬件的设计。硬件以 AT89C51 单
22、片机为中心,设计采样电路、光源电路、A/D 转换电路、与 PC 的接口电路以及测量探头等。后文将对实现的各个环节作一一介绍。第2章 调制光源光强技术的理论分析2.1 引言浊度测量中,一个需要解决的问题就是如何避免背景光对测量的干扰。常用的方法是完全封闭起来遮蔽背景光。然而对于沉入式、插入式结构的在线浊度仪,为保证浊液自然畅通地进入探头,就不能采用封闭结构,必然有背景光的影响。本文介绍一种以调制光强为光源照射浊液用信号处理的方法来滤除背景光的干扰。2.2 采用调制光强测量浊度的原理当一束光照射到被测水样时,在浊度不大的情况下(Un9。令 X0=U1=U19。如图2.1。X0,X1,X2Xn就是转
23、换的特性参数。由于转换函数是单调函数,XoX1,X2 Xn也应单调。第 3 步,也可以调节强度光源 I 使 Ui=Ui-19,第 步的插值,而直接取 X0=U1,X1=U2Xi=Ui+1。对光强为 I 的光照射探测器,经光电信号转换得到U,因为 X0,X1,X2 Xn是单调的,对应 U 有唯一的 i 使 XiUXi+1则:S=i+(U-Xi)/(Xi+1Xi) XiUXi+1S 与探测器上光强 I 近似线性关系。以上过程不涉及具体的光强 I,不需要照度计,可用计算机编程配合硬件自动完成,作为浊度仪功能的一部分。图 2.1 非线性校正原理 第3章 仪器的整体设计根据 2 节的原理设计的浊度仪结构
24、原理如图 3-1。该实现的硬件部分以单片机为硬件核心,单片机控制多路开关和光源信号发生电路从而实现仪器光源的测量状态和线性校正状态之间的切换,另一方面与 A/D 转换器和计算机连接,单机的端口提供给 A/D 转换器所需的各种信号,并控制采样时间,将采样的行数据通过 RS232 口串行送入计算机,作为 A/D 转换器与 PC 计算机数据间的桥梁。计算机通过 RS232 口向单片机发送命令,由单片机把命令解释为控制信号,控制多路开关和光源信号发生电路。软件部分,为保证实时数据的及时接受,计算机程序为多线程程序。主线程除负责数据的实时显示、保存、打印、人机界面外,还启动两个工作线程,一个接收线程和一
25、个计算线程。接收线程负责实时数据的接受。计算线程负责线性化和滤波的计算,把计算结果再传给主线程。主线程在线性校正时,将校正数据保存以便计算线程应用这些数据作线性化。这里说明以下,线性校正和滤波的计算也可以放在单片机中进行,但计算机有强大的软件开发平台,可利用的丰富资源,使得程序设计更容易。所以本例的软件主要是基于PC 上的,而单片机的程序较为简单,AT89C51 自代的 4K 存储器够了,节省了存储器访问电路,也节省了单片机端口。图 3.1 浊度仪的总体结构探头采用 LED 发光管和光敏电阻自制,用绝缘胶木为体部。结构简单,由于本文的重点不在于此,未考虑探头自动清洗机构。第4章 硬件电路的设计
26、4.1 电源电路图4.1电源电路单片机 AT89C51 及其他元件需要+5V 的电源,A/D 转换器需要+5V 和-12V 的的电源。图 4.1 为将+18V 的输入转换为稳定的+5V 和-12V 输出给各元件供电。由 555 构成的无变压器的直流-直流变换器,可将正电源电压变成负电源电压。通过定时器 555 产生方波输出,方波的周期由下式决定:T=ln2(R1+2R2)C3图 4-1 中的元件值,可得到 2KHz 的方波,方波经二级管整流得到负电压,再经三端集成稳压器 7912 输出稳定的-12V 负电压。图中 C1 为耦合电容,C4 滤波电容。+5V 电压由+18V 的输入电压经三端集成稳
27、压器 7805 稳压后输出。4.2 信号采集和 A/D 转换电路图 4.2 信号采集和 A/D 转换电路如图 4.2,发光管 D2 透射液体照射光敏电阻 R,光敏电阻 R 与 R6 构成分压电路,光敏电阻 R 的阻值随透射光的强弱而变化,信号取自 R6 上的电压。信号电压经运算放大器 LM224 放大,输入 12 位 A/D 转换器 MAX172 的模拟信号输入端 AIN,电位器 R1 调节放大倍数。MAX172 是完全的 12 位 A/D 转换器,它具有高速、低能耗、片内参考电压等特点。转换时间 10S,接近时间 90nS,功率 215mW。24 窄双列直插封装有标准的与微处理器的界面。与
28、8 位微处理器和 16 位微处理器相连都很方便。当 HBEN 输入为电平时,在 CS、RD 的下降缘,转换开始。一旦转换开始 BUSY 输出低电平转换完成后BUSY 输出高电平。转换结束后,当 HBEN 输入为低电平,MAX172将转换的 12 位结果的输出到 D0D11 引脚上。若与 16 位的微处理器相连此时可将 12 位数据一次读出。若与 8 位的微处理器相连,此时从 D0-D7 引取低 8 位数据。当 HBEN 输入为高电平,CS、RD 输入为低电平时,转换果的高 4 位数据输出到 D0-D3 引脚上,D4-D7 为逻辑“0”,从而 8 位的微处理器读取高 4 位数据。本应用中,微处理
29、器对 MAX172 的控制和数据读取不采用内存读取方式,而直接用指令通过写微处理器的端口输入 HBEN、CS、RD 信号,查询 BUSY 信状态。读引脚的方式读取数据。采取此方法一是便于控制采样周期,二是微处理不必访问外部存储器,它的 ALE 信号为微处理器时钟频率 1/6 的周期信号,以作其他部件的时钟。MAX172 的时钟就是微处理器 ALE 信号的二频得到的这样很大程度上简化了电路,而且很容易实现同步。半导体发光管 D2,有两种用途,一用作测量浊度时的光源,二用作仪器线性正时的调节光源(见 2.3 非线性校正的方法)。通过模拟多路开关 CD4052 实现两种功能的切换。0Y,1Y 端是引
30、入的电流负反馈,从而控制通过半导体发光管 D2 的电流。0Y 端是测量浊度时的反馈回路,1Y 端是仪器线性校正时的反馈回路通过模拟多路开关 CD4052 实现两种反馈回路的切换。为了便于仪器的调试光源的亮度,两反馈电阻 R4、R5 是可调的。半导体发光管 D1 是用作仪器线性校正时的开关光源(见 2.3 非线性校正的法),通过微处理器的指令置位和复位端口 P03 从而开和关半导体发光管 D1R3 为发光管的限流电阻,也调节发光管的亮度。三极管 Q1 只工作在截止和饱和两种状态。4.3 单片机及其控制电路图 4.4 单片机及其控制电路图 4.4 为单片机控制电路,R3、R4、C1、SW 构成单片
31、机的自动上电复位和手动复位电路。C2、C3、Y1 构成单片机的时钟,时钟频率为 11.0592MHz。单片机的 P05、P06、P07 端口分别连接 A/D 转换器 MAX172 的 BUSY、CS/RD、HBEN端,通过指令置位和复位 P06、P07 端口提供 A/D 转换器 MAX172 的 CS/RD、HBEN信号,通过指令查询与 MAX172 的 BUSY 端连接的 P05 引脚,单片机得知 A/D 转换器的状态。当 A/D 转换器转换开始,BUSY 信号由高变低,转换完成,BUSY信号由低变高,单片机由与 A/D 转换器数据口 D0-D1连接的 P2.0-P2.7口,将转换的数据分两
32、次读入,先读入低 8 位,再读入高 4 位。然后通过串口经串口芯片 MAX232 发送到计算机。由于单片机没有对外部存储器的访问。它的 ALE/P 引脚输出周期信号,周期为时钟的六分频,即 1.8432MHz。将此信号经 12 位计时器 CD4040 分频后,作另三种用途。第一种,将 1.8432MHz 二分频后得到 0.926MHz 的方波,用作A/D 转换器 MAX172 的时钟。第二种,将 1.8432MHz 作 210分频后得到 1800Hz,用作 A/D 转换器的采样频率,它输入单片机的 P05 端口,单片机通过到查询 P05上的正跳变时,向 A/D 转换器发出采样信号CS/RD、H
33、BEN。第三种,将 1.8432MHz作 212分频后得到450Hz 的方波,稳压管 D1 稳定方波的峰值,经模拟多路开关CD4052的0K端,运放 LM224 驱动后作调制源信号。这里没有采用前面分析的正弦波调制光源信号(见 2.2 节)而采用方波,其结果是一样的。这样三种频率都来自同一时钟源,它们之间的相对关系是固定的,避免了频率误差的影响,而且简化了电路。单片机的 P10、P11 端口分别连接另一个12 位计时器 CD4040 的 CLR、CLK通过指令复位 P10 端口对计时器清零,通过指令复位和置位 P11 端口也就是给CLK 脉冲使计时器计数。计时器的12位输出端接电阻网络或数摸转
34、换器。将 12字信号转换为模拟信号,经模拟多路开关 CD4052 的 1K 端,运放 LM224 驱动后作为变光源信号用于非线性校正(见2.3非线性校正的方法)。此输出除用于非线性校正功能外,还用于恒定光源测量浊度,恒定光源的强度,由计算机把强度值传给单片机,单片机通过指令复位和置位 P11 端口给计时器强度值个脉冲,这样来决定和调节的。在本例中用恒定光源测量浊度的目的是同调制光源光强测量浊度方法的比较。模拟多路开关 CD4052 的多路选择端 A、B 和使能端 INH 连接单片机的 P00、P01、P02 端口。从而单片机通过指令控制 P00、P01、P02 端口来选择模拟多路开关的通路,实
35、现测量工作状态和非线性校正工作状态的切换。由于 CD4052 是电压型元件,它能通过的电流不大(几十微安)。所以在它的输出端加上运放LM224 驱动,同时通过 0Y、1Y 端引入电压负反馈。单片机的串口端 RXD、TXD 经串口驱动芯片MAX232 与计算机的 RS232 口相连。一方面单片机传送采集数据给计算机,另一方面计算机发送命令给单片机。串口双工工作,串口工作方式为 10 位异步接收发送方式,它的传送波特率由定时器的定时值决定。在本例中定时器的初值为 FFH,在 11.0592MHz 的时钟频率传送波特率 57.6K bit。此外,为便于调试和观察单片机程序的运行,在P12、P13、P
36、14、P15 端口加上LED发光管作为指示灯。图中未画出。单片机程序中有对指示灯的操作指令。第5章 软件的设计5.1 单片机的编程单片机程序汇编语言编写。图 5-1 为单片主程序的流程图,主程序为循环结构。图 5.1 单片机程序流程图以下完整的主程序和各子程序:ORG 0000HJMP STARTORG 202HSTART: MOV SP,#50H ; 设堆栈区MOV SCON, #50H ; 串口方式 1MOV TMOD,#20H ; 定时器 1 为模式 2ORL PCON,#80H ; 波特率加倍MOV TH1, #0FFH ; 在 11.0592M 的时钟下,波特率为57.6KSETB
37、TR1 ; 计时器 1 开始SETB TIWAIT: MOV P0,#0FFH MOV P1,#10111111B ; 红指示灯亮 MOV P2,#0FFHWAIT1: JNB RI,$ ; 等待串口信号 RECOM: CLR RI MOV A, SBUF ;读串口JNB TI,$CLR TIMOV SBUF,A ; 反射串口来的数据CJNE A,#0AAH,WAIT1 ; 判断是否为命令 约定命令以位字节为 AAH 开始JNB RI,$ ; 若为 AAH 继续等待读后一节CLR RIMOV A,SBUF ; 读取后一字节JNB TI,$CLR TIMOV SBUF,A ; 反射串口来的数据C
38、JNE A,#01H,JUDGE 判断是否为数据采集命令 不是继续判断 约定采集命令代码为 01aaHACALL RACQUJMP WAITJUDGE: CJNE A,#09H, JUDGE2 ; 约定 09aaH 为线性矫正命令ACALL LINEARJMP WAIT ; 完毕返回JUDGE2 : CJNE A,#05H, JUDGE3 ; 约定 05aaH 为单步线性矫正命令ACALL STEPLINEARJMP WAIT ; 完毕返回JUDGE3: CJNE A,#0AH, WAIT1ACALL CONST ; 约定 0aaaH 为恒定光源测量JMP WAITSUBR: CLR P0.7
39、 ; 复位 MAX172 的 HBENCLR P0.6 ; 复位 MAX172 的 CS 和 RDJB P0.5, $ ; 等待 MAX172 的 BUSY 正跳变JNB P0.5,$MOV P2,#0FFH ; 读取引脚时端口先置 1NOP ; 延时使引脚上的数据稳定MOV R1,P2 ; 读数据的低八位到 R1SETB P0.6 ; 置位 MAX172 的 CS 和 RDSETB P0.7 ; 置位 MAX172 的 HBENCLR P0.6 ; 复位 MAX172 的 CS 和 RDNOP ; 延时使引脚上的数据稳定MOV R2,P2 ; 读数据的高四位到 R2SETB P0.6 ; 置位 MAX172 的 CS 和 RD 结束本轮采集JNB TI,$CLR TIMOV SBUF,R1 ; 发送低八位JNB TI,$CLR TIMOV SBUF,R2 ; 发送高四位RETLINEAR: MOV P1,#00111111B ; 两指示灯亮SETB P1.0CLR P1.0 ; 打开计数器MOV P0, #11111001B ; 选择通路MOV R4,#00FHLOOP: MOV R3,#0FFH ; 十二位总计数值LOOP1: CLR P1.1NOPNOPSETB P1.1 ; 给计数器一个脉冲计数CLR P0.3 ; 关闭开关光源NOP ;