智能化仪器课程设计报告_第1页
智能化仪器课程设计报告_第2页
智能化仪器课程设计报告_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、智能化仪器课程设计总结报告测控0710730221124 方晶晶1 .课程设计的目的和任务本次课程设计是以 AT89C51单片机为核心,设计一个具有实时时钟功 能和直流电压测量功能的智能化测量仪器。要求具有实时时钟显示和校时 功能,电压测量显示功能等。可作为通用的二次仪表使用,根据电压与被 测物理量的关系显示被测物理量,应用于多种测量场合。通过课程设计进 一步熟悉并掌握单片机的编程,对智能化仪器的设计思路和步骤等有一定 的了解。并为将来的毕业设计打下扎实的基础。硬件部分主要包括 DS12887实时时钟电路、AD转换器ICL7135、8 只共阴LED数码管及相应的显示控制和驱动电路、键盘电路等。

2、要求掌握电路的原理和各部分功能的实现过程,重点是与单片机的连接上。软件部分要求编写相关汇编程序,实现对ICL7135的控制和读数,经运算后得到测量电压值;编程并控制DS12887芯片,获得日期和时间值;利用按键可实现日期和时间初值的设置,以及时间、日期和测量值的显示 切换功能;根据输入电压与被测物理量的关系显示被测物理量。并完成软 硬件的联机调试。图1系统设计结构图2 系统设计的基本原理结构整个系统以AT89C51单片机为核心,实现一个能显示和设置时间日期 值,测量电压值的小型系统。整个系统的设计结构如图1所示。3 硬件电路设计及组成该系统的硬件电路主要包含了89C51单片机、ICL7135四

3、位半A/D转换器、DS12887实时时钟芯片、8个共阴LED数码管显示器和按键等。其 硬件组成框图如图 2。LED数码管显示器在目前的大多数智能仪器设计中,往往需要记录测量的日期和时间信 息,以及自动完成设定时间的自动测量和控制等,这就要求在仪器中带有 实时时钟。由于利用单片机直接编程实现实时时钟,编程复杂而且还要考 虑后备电源供电等问题,因此,选用自带后备电池的实时时钟芯片,应用 它,可以自动实现时间和日期的处理,单片机只要利用 DS12887的秒更新,每秒读一次时钟数据即可。为了实现电压测量功能,选用了A/D转换器ICL7135,该芯片集成了一个四位半的双斜积分式 A/D转换器,精度高、抗

4、干扰能力强,能满足一般测 量的精度要求。器件在双极性输入的情况下,测量速度可达3次/S以上,在单极性输入的情况下,测量速度可达25次/S左右,适用于一般的直流信号和慢速变化信号的测量。根据ICL7135的积分特性及其与 BUSY信号之间的时序关系,利用89C51单片机的计数器,通过对BUSY信号高电平 期间的时钟脉冲进行计数的方法实现电压测量,以简化电路连接。时序关 系图如图3。积分器输岀/自动校零信号积分反向积分10001计数值10000计数值最大计数值20001满度测量计数值40002BUSY信号3ICL7135积分输出与BUSY信号的关系图设计中应用了 8个LED共阴数码管作为输出结果的

5、显示,利用2个扩 展I/O 口、控制段码和位码输出,实现动态扫描显示。设置了4个按键,用于时间显示、日期显示和测量值显示的切换,时间和日期的设置等。4 软件设计4. 1软件的总体设计思路方法和流程图图4程序的总体流程图该仪器的主要功能是实现电压测量和时间日期的显示。结合硬件电路 设计,软件实现的主要任务是: 控制A/D转换器ICL7135并读取转换结果, 经运算处理后,显示电压值,设置和读取实时时钟芯片 DS12887中的时间 和日期信息并输出显示等。系统软件主要由1个主程序和3个中断服务子程序及若干辅助功能子 程序组成。程序的总体流程图如图4。主程序完成对 DS12887芯片的初始设置,定时

6、器 TO、T1的初始化, 中断系统的初始化设置等功能。4. 2各主要功能模块的设计方法和流程图1)时钟芯片 DS12887的设计由于时钟芯片 DS12887的中断请求信号与 89C51的INTO相连,在主 程序中对DS12887进行初始化设置,写入初始状态的时间和日期值,再设置秒更新中断允许,CPU每秒响应一次中断,读取当前的时钟和日期信息, 经拆字处理后放入缓存地址中,再根据切换状态要求显示的内容,在显示 中断中可直接调用相关的处理函数输出时间或日期显示。时钟流程图如图 5所示。图5时钟流程图2) ICL7135的设计将ICL7135的BUSY信号口与 89C51的INT1相连,根据ICL7

7、135的 积分特性及其与 BUSY信号之间的时序关系,利用89C51单片机的计数器 T1计数,记录BUSY信号高电平期间ICL7135的时钟脉冲个数 N,将N 减去10000后即可获得测量电压值。由于获得的电压值是十六进制形式的,在这过程中必须转化成十进制,所以调用一个十六进制转十进制的函数, 将得到的值转换成五位的十进制,在万位加小数点后经拆字处理后放入缓 存地址等待显示。最后得到的结果是-1.9999到1.9999的电压值。A/D流程图如图6所示。INT1中断压栈保护1读T1计数值并减10000十六进制转十进制岀栈恢复图6 A/D流程图3)显示的设计8个LED数码管显示器采用动态扫描显示方

8、式,段码和位码分别由一个扩展的输出口控制,其中段码口地址为 0BFFFH,位码口地址为0DFFFH。 由于在显示中要切换显示的内容,在程序中采用定时器T0进行定时中断,每隔一段时间中断一次更新显示的内容。在中断的最开始判断显示的内容,再根据要求调用不同的显示内容,读取缓存地址用于显示。另外在显示程 序中加了一个闪烁位的判断,在键盘设置中需要在设置的位上进行闪烁方 便于观看,原理是针对要求闪烁的位置减少动态显示的次数,以区别于其 它位。显示流程图如图 7所示。图 7 显示流程图4)按键的设计4 个按键直接连到 P1 口的低 4 位,功能如下:S1 显示切换键,用于切换当前显示的内容为测量值或日期

9、或时 间;S2设置键,用于进入/退出日期设置、时间设置或仪表常数等的设 置状态;S3右移键,用于右移选择当前设置数据的位置;S4加1键,用于当前设置内容加 1 ;在具体的设计中,先判断是否有键按下,延时去抖动,再进行一次判 断,如果确实有键按下,判断键是否弹起,在键弹起之后执行相应的键功 能。切换键是所有中最简单的一个键,建立一个显示标志符就行,根据标 志符判断要显示的内容。设置键按下之后停止时钟芯片工作,进入设置状 态,使当前显示内容的第一个低位闪烁。右移键使闪烁位右移三位,使当 前显示内容的第二个低位闪烁。加 1 键是最烦琐的键,首先要判断当前显 示内容为时间还是日期,再判断闪烁位的位置,

10、读取闪烁位进行相应内容 加 1 处理,将加 1 后的内容重新保存到时间日期的显示缓存区。特别注意 的是日的设置中大小月的处理, 在加 1 的过程中, 大月可以加到 31 日,而 小月只是 30 日,所以在这过程中, 对日的加 1 处理我对十二个月分开进行 判断处理。对于闰年,我这里就没再考虑。5个人总结 通过两个多星期的学习,并学到了很多实际操作的知识,提高了动手 能力,并在老师的帮助下顺利完成了整个课程设计的任务。在功能模块中 我实现了时间日期值的显示和设置、 电压量的测量, 并能切换三者的显示, 基本上达到了课程的要求。此次设计性实验,将汇编及单片机等已学课程进行一次在学习的良好 机会。通过这次再学习,无疑进一步提高了自己的专业技能,为今后踏足 社会,在该领域上发挥自己的特长,以及就业打下了坚实的基础。在上个学期单片机课程的基础上,根据系统功能指标的要求制定总体 的设计方案。在这期间

温馨提示

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

评论

0/150

提交评论