智能化仪器课程设计报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能化仪器课程设计总结报告

测控071 0730221124 方晶晶

1.课程设计的目的和任务

本次课程设计是以AT89C51单片机为核心,设计一个具有实时时钟功能和直流电压测量功能的智能化测量仪器。要求具有实时时钟显示和校时功能,电压测量显示功能等。可作为通用的二次仪表使用,根据电压与被测物理量的关系显示被测物理量,应用于多种测量场合。通过课程设计进一步熟悉并掌握单片机的编程,对智能化仪器的设计思路和步骤等有一定的了解。并为将来的毕业设计打下扎实的基础。

硬件部分主要包括DS12887实时时钟电路、AD转换器ICL7135、8 只共阴LED数码管及相应的显示控制和驱动电路、键盘电路等。要求掌握电路的原理和各部分功能的实现过程,重点是与单片机的连接上。

软件部分要求编写相关汇编程序,实现对ICL7135的控制和读数,

经运算后得到测量电压值;编程并控制DS12887芯片,获得日期和时间

值;禾U用按键可实现日期和时间初值的设置,以及时间、日期和测量值的显示切换功能;根据输入电压与被测物理量的关系显示被测物理量。并完成软硬件的联机调试。

开始

图1系统设计结构图

2•系统设计的基本原理结构

整个系统以AT89C51单片机为核心,实现一个能显示和设置时间日期值,测量电压值的小型系统。整个系统的设计结构如图1所示。

3•硬件电路设计及组成

该系统的硬件电路主要包含了89C51单片机、ICL7135四位半A/D 转换器、DS12887实时时钟芯片、8个共阴LED数码管显示器和按键等。其硬件组成框图如图2。

图2 硬件组成框图

在目前的大多数智能仪器设计中,往往需要记录测量的日期和时间信息,以及自动完成设定时间的自动测量和控制等,这就要求在仪器中带有实时时钟。由于利用单片机直接编程实现实时时钟,编程复杂而且还要考虑后备电源供电等问题,因此,选用自带后备电池的实时时钟芯片,应用它,可以自动实现时间和日期的处理,单片机只要利用DS12887的秒更

新,每秒读一次时钟数据即可。

为了实现电压测量功能,选用了A/D转换器ICL7135,该芯片集成了一

个四位半的双斜积分式A/D转换器,精度高、抗干扰能力强,能满足一般测量的精度要求。器件在双极性输入的情况下,测量速度可达3次/S

以上,在单极性输入的情况下,测量速度可达25次/S左右,适用于一般

的直流信号和慢速变化信号的测量。根据ICL7135的积分特性及其与

BUSY信号之间的时序关系,利用89C51单片机的计数器,通过对BUSY

信号高电平期间的时钟脉冲进行计数的方法实现电压测量,以简化电路连接。时序关系图如图3。

满度测量计数值40002

BUSY 信号

图3 ICL7135积分输出与BUSY 信号的关系图

设计中应用了 8个LED 共阴数码管作为输出结果的显示,利用

2个 扩展I/O 口、控制段码和位码输出,实现动态扫描显示。设置了

4个按键, 用于时间显示、日期显示和测量值显示的切换,时间和日期的设置等。

4 •软件设计

4. 1软件的总体设计思路方法和流程图

自动校零 1000计数值 信号积分 10000计数

反向积分

最大计数值

图4程序的总体流程图

该仪器的主要功能是实现电压测量和时间日期的显示。结合硬件电路设计,软件实现的主要任务是:控制A/D转换器ICL7135并读取转换结果,经运算处理后,显示电压值,设置和读取实时时钟芯片DS12887中

的时间和日期信息并输出显示等。

系统软件主要由1个主程序和3个中断服务子程序及若干辅助功能子程序组成。程序的总体流程图如图4。

主程序完成对DS12887芯片的初始设置,定时器TO、T1的初始化, 中断系统的初始化设置等功能。

4. 2各主要功能模块的设计方法和流程图

1)时钟芯片DS12887的设计

由于时钟芯片DS12887的中断请求信号与89C51的INTO相连,在主程序中对DS12887进行初始化设置,写入初始状态的时间和日期值,再设置秒更新中断允许,CPU每秒响应一次中断,读取当前的时钟和日

期信息,经拆字处理后放入缓存地址中,再根据切换状态要求显示的内容,在显示中断中可直接调用相关的处理函数输出时间或日期显示。时钟流程图如图5所示。

图5时钟流程图

2) ICL7135的设计

将ICL7135的BUSY信号口与89C51的INT1相连,根据ICL7135 的积分特性及其与BUSY信号之间的时序关系,利用89C51单片机的计

数器T1计数,记录BUSY信号高电平期间ICL7135的时钟脉冲个数N, 将N减去10000后即可获得测量电压值。由于获得的电压值是十六进制形式的,在这过程中必须转化成十进制,所以调用一个十六进制转十进制的函数,将得到的值转换成五位的十进制,在万位加小数点后经拆字处理后放入缓存地址等待显示。最后得到的结果是-1.9999到1.9999的电压值。

A/D流程图如图6所示。

图6 A/D流程图

3)显示的设计

8个LED数码管显示器采用动态扫描显示方式,段码和位码分别由一个扩展的输出口控制,其中段码口地址为OBFFFH,位码口地址为ODFFFH。由于在显示中要切换显示的内容,在程序中采用定时器TO进行定时中断,每隔一段时间中断一次更新显示的内容。在中断的最开始判断显示的内容,再根据要求调用不同的显示内容,读取缓存地址用于显示。另外在显示程序中加了一个闪烁位的判断,在键盘设置中需要在设置的位上进行闪烁方便于观看,原理是针对要求闪烁的位置减少动态显示的次数,以区别于其它位。显示流程图如图7所示。

图7 显示流程图

相关文档
最新文档