基于单片机的数字电容测量毕业论文.doc

上传人:土8路 文档编号:10004740 上传时间:2021-04-10 格式:DOC 页数:49 大小:3.81MB
返回 下载 相关 举报
基于单片机的数字电容测量毕业论文.doc_第1页
第1页 / 共49页
基于单片机的数字电容测量毕业论文.doc_第2页
第2页 / 共49页
基于单片机的数字电容测量毕业论文.doc_第3页
第3页 / 共49页
基于单片机的数字电容测量毕业论文.doc_第4页
第4页 / 共49页
基于单片机的数字电容测量毕业论文.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《基于单片机的数字电容测量毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的数字电容测量毕业论文.doc(49页珍藏版)》请在三一文库上搜索。

1、本科毕业设计(论文)本科毕业设计(论文) 题 目 数字电容测量仪设计 二二一三年五月一三年五月 *学院毕业设计(论文)任务书学院毕业设计(论文)任务书 题目题目 数字电容测量仪设计数字电容测量仪设计 专业专业 学号学号 !#¥%#¥% 姓名姓名 !#¥%#¥% 主要内容、基本要求、主要参考资料等:主要内容、基本要求、主要参考资料等: 主要内容:主要内容: 功能要求:通过单片机测量脉宽,计算容量,控制液晶屏显示结果。系统测量范围 50pF500uF,具有按键切换量程功能。 硬件要求:整个系统的硬件部分包括单片机,键盘、显示和信号检测等。 上述内容为基本要求,可按照自己的理解增加功能使之更完善。

2、基本要求基本要求: 明确毕业设计任务,复习与查阅有关资料。 按要求对设计进行简要说明,总体设计方案,设计电路,使用计算机绘图,画出详细 的电路接线图,列出元器件清单。电路图要求工整、清楚、正确,并标明管脚。 软件编程必须有流程图,程序必须加注释,各程序段的开始要注明该段功能和作用。 要求使用 A4 打印稿,不少于 2 万字。格式遵照学校规定。 主要参考资料:主要参考资料: 周航慈.单片机应用程序设计技术M.北京航空航天大学出版社 中国期刊全文数据库。 “电子技术应用” 、 “电子设计应用” 、 “单片机与嵌入式系统应用”等期刊。 牛百齐.基于单片机的电容测量仪设计J. 仪器仪表用户.2005.

3、04 张俊谟.单片机原理中级教程:原理与应用. M.北京: 北京航空航天大学出版 社2006 完完 成成 期期 限:限: 2013.02 2013.05 指指导导教教师师签签名名: 专业负责人签名:专业负责人签名: 20132013 年年 1 1 月月 8 8 日日 摘摘 要要 随着科技的不断发展,人类的不断进步,在电子技术领域的发展可谓突飞 猛进,然而电容器在电子线路中得到广泛的应用,它的容量大小对电路的性能 有着重要的作用。因此,电容量的测量在日常使用中就不可避免。 本设计详细介绍了一种基于单片机的数字式电容测量仪设计方案及实现方 法。设计的主要方法是采用 555 芯片构成单稳态触发器,将

4、电容容量转换为脉 冲宽度。通过单片机的计时器测量脉宽, 根据已知的 R 值,通过单片机的运算 功能,计算出电容容量,最后,再通过单片机的普通 I/O 口控制液晶屏显示出 电容容量的计算结果。系统的测量范围为 50pF 500uF, 具有多个量程,可根 据用户需要由用户选择,与用户的交互是通过键盘实现,不同量程的实现是通 过单片机的 I/O 口控制继电器的吸合与断开来选择不同的 R 值,从而实现不同 的量程。同时,本设计注重设计方法及流程,首先根据原理设计电路,再通过 protues 仿真,利用 keil 编程,进而借助 ares 制作 PCB,最后到焊接元器件, 调试直至成功。 关键词 单片机

5、 电容器 555 芯片 脉冲宽度 ABSTRACT With the development of science and technology, the continuous progress of mankind, the development is in the field of electronic technology make a spurt of progress, however, the capacitor is widely used in electronic circuits, plays an important role in its capacity size

6、on circuit performance. Therefore, the measurement of capacitance is inevitable in everyday use. This design introduces a design scheme of digital capacitance measuring instrument based on MCU and the realization method. The main method is designed with 555 chip monostable trigger, the capacitance i

7、s converted into pulse width. Through the timer pulse width measurement of single chip microcomputer, according to the known R value, through the single-chip computing function, calculate capacity, finally, through the microcontroller IO port control LCD screen to display the results capacitor capac

8、ity. The measurement range is 50pF 500uF, having a plurality of range, according to user needs can be selected by the user, the interaction with the user through the keyboard, the realization of different scale by SCM IO port control relay and broken at different R values, so as to achieve different

9、 range. At the same time, the design focus on the design method and process, according to the principle of circuit design, through the Protues simulation, using keil programming, and with the help of Ares PCB, and finally to the welding components, debugging until success. Keywords:single-chip capac

10、itance 555chip pulse width 目录 摘摘 要要 .I I ABSTRACTABSTRACT .IIII 1 1 前言前言.1 1 2 2 系统硬件电路设计系统硬件电路设计.3 3 2.1 设计方案选择 .3 2.2 AT89C51 单片机基本系统 .6 2.3 测量电路 .9 2.3.1 555 测量电路 .9 2.3.2 按键选择量程电路 .10 2.3.3 继电器控制电路 .10 2.4 液晶显示电路 .11 3 3 系统软件设计系统软件设计.1111 3.1 程序设计算法设计.11 3.2 程序流程图设计 .12 3.2.1 主程序流程图 .13 3.2.2 中断

11、程序流程图 .14 3.2.3 LCD 显示流程图 .15 3.2.4 按键选择量程程序流程图 .16 4 4 PCBPCB 设计设计.1616 4.1 元器件的封装设计.17 4.2 PCB 板的制作 .19 5 5 系统仿真与实验调试系统仿真与实验调试 .2121 6 6 致谢致谢.2424 参考文献参考文献 .2525 附附 录录 .2626 附录附录 1 1 源程序源程序 .2626 附录附录 2 2 总电路图总电路图 .3838 附录附录 3 3 元器件清单元器件清单 .3939 附录附录 4 4 pcbpcb 设计图设计图 .4040 附录附录 5 5 实际作品实际作品 .4141

12、 1 前言 目前,随着电子工业的发展,电子元器件急剧增加,电子元器件的适用范 围也逐渐广泛起来,在应用中我们常常要测定电容的大小。 在电子产品的生产和维修中,电容测量这一环节至关重要,一个好的电子 产品应具备一定规格年限的使用寿命。因此在生产这一环节中,对其产品的检 测至关重要,而检测电子产品是否符合出产要求的关键在于检测其内部核心的 电路,电路的好坏决定了电子产品的好与坏,而电容在基本的电子产品的集成 电路部分有着其不可替代的作用。同样,在维修人员在对电子产品的维修中, 电路的检测是最基本的,有时需要检测电路中各个部件是否工作正常,电容器 是否工作正常。因此,设计可靠,安全,便捷的电容测试仪

13、具有极大的现实必 要性。 当今电子测试领域,电容的测量已经在测量技术和产品研发中应用的十分 广泛。电容通常以传感器形式出现,因此,电容测量技术的发展归根结底就是 电容传感器的发展。由最初的用交流不平衡电桥就能测量基本的电容传感器。 最初的电容传感器有变面积型,变介质介电常数型和变极板间型。现在的电容 式传感器越做越先进,现在用的比较多的有容栅式电容传感器,陶瓷电容压力 传感器等。电容测量技术发展也很快现在的电容测量技术也由单一化发展为多 元化。现在国内外做传感器的厂商也比较多,在世界范围内做电容传感器做的比 较好的公司有:日本 figaro、德国 tecsis、美国 alphasense。中国

14、本土测量仪器 设备发展的主要瓶颈。尽管本土测试测量产业得到了快速发展,但客观地说中 国开发测试测量仪器还普遍比较落后。每当提起中国测试仪器落后的原因,就 会有许多不同的说法,诸如精度不高,外观不好,可靠性差等。实际上,这些 都还是表面现象,真正影响中国测量仪器发展的瓶颈为: 1.测试在整个产品流程中的地位偏低。由于人们的传统观念的影响,在产 品的制造流程中,研发始终处于核心位置,而测试则处于从属和辅助位置。关 于这一点,在几乎所有的研究机构部门配置上即可窥其一斑。这种错误观念上 的原因,造成整个社会对测试的重视度不够,从而造成测试仪器方面人才的严 重匮乏,造成相关的基础科学研究比较薄弱,这是中

15、国测量仪器发展的一个主 要瓶颈。实际上,即便是研发队伍本身,对测试的重视度以及对仪器本身的研 究也明显不够。 2.面向应用和现代市场营销模式还没有真正建立起来。本土仪器设备厂商 只是重研发,重视生产,重视狭义的市场,还没有建立起一套完整的现代营销 体系和面向应用的研发模式。传统的营销模式在计划经济年代里发挥过很大作 用,但无法满足目前整体解方案流行年代的需求。所以,为了快速缩小与国外 先进公司之间的差距,国内仪器研发企业应加速实现从面向仿制的研发向面向 应用的研发的过渡。特别是随着国内应用需求的快速增长,为这一过渡提供了 根本动力,应该利用这些动力,跟踪应用技术的快速发展。 3.缺乏标准件的材

16、料配套体系。由于历史的原因,中国仪器配套行业的企 业多为良莠不齐的小型企业,标准化的研究也没有跟上需求的快速发展,从而 导致仪器的材料配套行业的技术水平较低。虽然目前已有较大的改观,但距离 整个产业的要求还有一定距离,所以,还应把标准化和模块化的研究放到重要 的位置。还有,在技术水平没有达到的条件下,一味地追求精度或追求高指标, 而没有处理好与稳定性之间的关系。上述这些都是制约本土仪器发展的因素。 近年来我国测量仪器的可靠性和稳定性问题得到了很多方面的重视,状况 有了很大改观。测试仪器行业目前已经越过低谷阶段,重新回到了快速发展的 轨道,尤其最近几年,中国本土仪器取得了长足的进步,特别是通用电

17、子测量 设备研发方面,与国外先进产品的差距正在快速缩小,对国外电子仪器巨头的 垄断造成了一定的冲击。随着模块化和虚拟技术的发展,为中国的测试测量仪 器行业带来了新的契机,加上各级政府日益重视,以及中国自主应用标准研究 的快速进展,都在为该产业提供前所未有的动力和机遇。从中国电子信息产业 统计年鉴中可以看出,中国的测试测量仪器每年都以超过 30%以上的速度在快 速增长。在此快速增长的过程中,无疑催生出了许多测试行业新创企业,也催 生出了一批批可靠性和稳定性较高的产品。 2 系统硬件电路设计 2.1 设计方案选择 本次设计中考虑了三种设计方案,三种设计方案中主要区别在于硬件电路 和软件设计的不同,

18、对于本设计三种方案均能够实现,最后根据设计要求、可 行性和设计成本的考虑选择了基于 AT89C51 单片机和 555 芯片构成的多谐振 荡电路的测量的方案。现在一一介绍论证如下: 方案一、利用多谐振荡原理测量电容测量原理如图 2.1 所示。电容 C 电阻 R 和 555 芯片构成一个多谐振荡电路。在电源刚接通时(K 合上),电容 C 上的 电压为零,多谐振荡器输出 Vo 为高电平 Vo 通过 R 对电容 C 充电。当 C 上冲 得的电压 Vc= VT+时,施密特触发器翻转,Vo 变为低电平,C 又通过 R 放电, Vc 下降。当 Vc= VT 时施密特触发器又翻转,输出 Vc 又变为高电平,如

19、此往 复产生震荡波形。 由理论分析可知通过测得的校准值 To 测量值 Tx 及存放的软件中的标准电 容值 C 可得出待测电容值 Cx。实际应用中也可以通过测量 fo 和 fx 来算出 Cx。 图 2.1 多谐振荡器测量电容原理图 图 2.2 振荡波形图 测量误差分析:经过软件校准后得出的 Cx 结果与 Tx/To 的值有关。这样 单片机晶振频率的绝对精度,环境温度的变化和电源电压的绝对精度引起的误 差被消除。测量结果主要受标准电容 C 的绝对精度影响,因此应该选择精度高、 稳定性好的 C;其他误差来源包括周期测量的量化误差,除法运算产生的余数 误差,电源电压的波动造成谐振频率偏移带来的误差,因

20、此电路要用稳压性能 好的稳压电源。 这种方法的利用了一个参考的电容实现,虽然硬件结构简单,软件实现却 相对比较复杂。 方案二、直接根据充放电时间判断电容值 反向器 单稳态触发器 显示 窄脉冲触发器 秒脉冲发生器 译码器 锁存器 记数器 标准记数 脉冲 图 2.3 电路原理框图 这种电容测量方法主要利用了电容的充放电特性 Q=UC,放电常数 =RC,通过测量与被测电容相关电路的充放电时间来确定电容值。一般情况 下,可设计电路使 T=ARC( T 为振荡周期或触发时间;A 为电路常数与电路参 数有关)。这种方法中应用了 555 芯片组成的单稳态触发器,在秒脉冲的作用 下产生触发脉冲,来控制门电路实

21、现计数,从而确定脉冲时间,通过设计合理 的电路参数,使计数值与被测电容相对应。其原理框图如图 2.3 所示。 误差分析:这种电容测量方法的误差主要由两部分组成:一部分是由 555 芯片构成的振荡电路和触发电路由于非线性造成的误差,其中最重要的是单稳 态触发电路的非线性误差,Co/Co=T/T(T 由充放电时间决定,Co 是被测 电容值);另一部分是由数字电路的量化误差引起,是数字电路特有的误差该 误差相对影响较小,可忽略不计。 这种方法硬件结构相对复杂,实际上是通过牺牲硬件部分来减轻软件部分 的负担,但在具体设计中会碰到很大问题,而且硬件一旦设计好,可变性不大。 方案三、基于 AT89C51

22、单片机和 555 芯片构成的多谐振荡电路电容测量 这种电容测量方法主要是通过一块 555 芯片来测量电容,让 555 芯片工 作在直接反馈无稳态的状态下,555 芯片输出一定频率的方波,其频率的大小 跟被测量的电容之间的关系是:f=0.772/(R*Cx) ,我们固定的大小,其公 R 式就可以写为:f=k/Cx,只要我们能够测量出 555 芯片输出的频率,就可以计 算出测量的电容。计算频率的方法可以利用单片机的计数器 To 和中断Error! 配合使用来测量,这种研究方法相当的简单。系统框图见图 2.4。 图 2.4 系统框图 图中给出了整个系统设计的系统框图,系统主要由四个主要部分组成,单

23、片机和晶振电路设计,555 芯片电路设计,显示电路设计,复位电路设计。 利用多谐震荡原理测量电容的方案硬件设计比较简单,但是软件实现相对 比较复杂,而直接根据充放电时间判断电容值的方案虽然基本上没有用到软件 部分,但是硬件却又十分的复杂。而且他们都无法直观的把测量的电容值大小 显示出来。 根据上面三种方案的优缺点,本次设计提出了硬件设计和软件设计都相对 比较简单的方案:基于 AT89C51 单片机和 555 芯片的数显式电容测量。该方 案主要是根据 555 芯片的应用特点,把电容的大小转变成 555 输出频率的大小, 进而可以通过单片机对 555 输出的频率进行测量。本方案的硬件设计和软件设

24、计都相对简单。 2.2 AT89C51 单片机基本系统 本设计的核心是单片机电路,考虑到需要一个中断输入,存储容量、外部 接口对单片机端口的需要以及兼顾到节约成本的原则,选用了常用的 AT89C51 单片机。AT89C51 是低功耗、高性能、经济的 8 位 CMOS 微处理器,工作频 率为 024MHz,内置 4K 字节可编程只读闪存,128x8 位的内部 RAM,16 位 可编程 IO 总线。它采用 Atmel 公司的非易储器制造技术,与 MCS51 的指令 设置和芯片引脚可兼容。AT89C51 可以按照常规方法进行编程,也可以在线编 程。其将通用的微处理器和 Flash 存储器结合在一起,

25、特别是可反复擦写的 Flash 存储器可有效地降低开发成本。AT89C51 工作的最简单的电路是其外围 接一个晶振和一个复位电路,给单片机接上电源和地,单片机就可以工作了。 图 2.5 AT89C51 单片机工作电路 AT89C51 的复位是由外部的复位电路来实现的。AT89C51 单片机片内复 位,复位引脚 RST 通过一个斯密特触发器用来抑制噪声,在每个机器周期的 S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位 操作所需要的信号。 复位电路通常采用上电自动复位和按钮复位两种方式。上电自动复位是通 过外部复位电路的电容充电来实现的。只要 Vcc 的上升时间不超过 1

26、ms,就可 以实现自动上电复位。除了上电复位外,有时还需要按键手动复位。按键手动 复位有电平方式和脉冲方式两种。其中电平复位是通过 RST 端经电阻与电源 Vcc 接通而实现的。按键脉冲复位则是利用 RC 微分电路产生的正脉冲来实现 的。 图 2.5 兼有上电复位和按钮复位的电路。在单片机设计中,若有外部扩展 的 I/O 接口电路需初始复位,如果它们的复位端和 AT89C51 单片机的复位端 相连,复位电路中的 R、C 参数要受到影响,这时复位电路中的 R、C 参数要 统一考虑以保证可靠的复位。如果单片机 AT89C51 单片机与外围 I/O 接口电 路的复位电路和复位时间不完全一致,使单片机

27、初始化程序不能正常运行,外 围 I/O 接口电路的复位也可以不和 AT89C51 单片机复位端相连,仅采用独立 的上电复位电路。一般来说,单片机的复位速度比外围 I/O 快些。若 RC 上电 复位电路接 AT89C51 单片机和外围电路复位端,则能使系统可靠地同步复位。 为保证系统可靠复位,在初始化程序中应用到一定的复位延迟时间。 复位电路软件程序跑飞或者硬件发生错误的时候产生一个复位信号,控制 MCS-51 单片机从 0000H 单元开始执行程序,重新执行软件程序。此电路的输 出端 RESET 接在单片机的复位引脚。 时钟在单片机中非常重要,单片机各功能部件的运行都是以时钟频率为基 准。时钟

28、频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统 的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种为外部 时钟方式。 AT89C51 单片机内部有一个用与构成振荡器的高增益反相放大器,该高增 益反相放大器的输入端为芯片引脚 XTAL1,输出端为引脚 XTAL2。这两个引 脚接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器电路。 电路中的电容 C1 和 C2 典型值通常选择为 30PF 左右。对外接电容的值虽 然没有严格的要求,但是电容的大小会影响振荡器频率的高低、振荡器的稳定 性和起振的快速性。晶体的振荡频率的范围通常是在 1.2MHz12MHz 之间。 晶体的

29、频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。 为了提高温度稳定性,应采用温度稳定性能好的 NPO 高频电容。AT89C51 单 片机常选择振荡频率 6MHz 或 12MHz 的石英晶体。 2.3 测量电路 2.3.1 555 测量电路 图 2.6 测量电路 根据 RC 暂态电路理论可知, TW 的时间宽度计算公式为: TW = ln3RCX = 1. 1RCX (2.1) 由该公式可知,单稳态的暂态 1 持续时间与待测电容 CX 的容量成正比 。 把输出信号 VO 送到单片机的 INT0 引脚,控制定时器 0 计算出暂态 1 期间的 标准时钟个数, 就可实现脉冲宽度测量, 从

30、而计算出电容容量。 在 555 芯片输出方波后,由于硬件的原因,输出的方波会有很多毛刺,为 了去除这些毛刺本设计中使用了一个两输入与门(74HC08) ,让信号通过 74HC08 后会使输出的波形毛刺减少很多,使单片机的测量结果变得精确。 2.3.2 按键选择量程电路 按键是实现人机对话的比较直观的接口,可以通过按键实现人们想让单片 机做的不同的工作。键盘是一组按键的集合,键是一种常开型开关,平时按键 的两个触点处于断开状态,按下键是它们闭合。键盘分编码键盘和非编码键盘, 案件的识别由专用的硬件译码实现,并能产生键编号或键值的称为编码键盘, 而缺少这种键盘编码电路要靠自编软件识别的称为非编码键

31、盘。在单片机组成 的电路系统及智能化仪器中,用的更多的是非编码键盘。图 2-6 就是一种比较 典型的按键电路,在按键没有按下的时候,输出的是高电平,当按键按下去的 时候,输出的低电平。 2.3.3 继电器控制电路 在大型仪器仪表系统中,经常要用到伺服电机、步进电机、各种电磁阀、泵 等驱动电压高且功率较大的器件。功率电子电路大多要求具有大电流输出能力, 以便于驱动各种类型的负载。功率驱动电路是功率电子设备输出电路的一个重 要组成部分。本电路由 ULN2003a 高压大电流达林顿晶体管来控制继电器,以满 足继电器驱动需较大电流的要求。ULN2003a 能够同时驱动 7 组高压大电流负 载,解决了单

32、片机输出电流小,难以控制继电器的问题。 如图 2.6 所示,单片通过机检测按键,确定那个键被按下,然后通过单片 机的 P1.0P1.4 口控制 ULN2003A,驱动相应的继电器闭合,以此来控制 555 测量电路中的电阻从而改变测量电容的量程。具体原理在软件算法设计上介绍。 按键开关 继电器 相应电阻 测量范围 SWITCH1 RL1 7.72 10F500F SWITCH2 RL2 77.2 1F50F SWITCH3 RL3 7.72K 0.01F5F SWITCH4 RL4 772K 100pF0.05F SWITCH5 RL5 7.72M 50pF500pF 2.4 液晶显示电路 图2

33、.7 LCD显示电路 如图 2.7 所示,本显示电路 P0 口接上拉电阻与 lcd1602 的 D0-D7 相连, LCD1602 的 1 脚和 3 脚接一个 1K 的可调电阻,用于调节 LCD 的对比度。我 选用的是 16 脚带背光的 LCD,在 Proteus 里面没有该引脚,在 ares 中绘制 PCB 封装时,我将其加上了。实际电路是第 15 引脚串联了一个 10 欧姆的电阻 与+5V 电源相连接,第 16 引脚与接地端相连接。单片机的 P2.0、P2.1、P2.2 分别与 LCD 的 4,5,6 引脚相连,分别控制 LCD 的寄存器选择段,读写信号 端,使能端相连接,与 D0-D7

34、相结合,控制 LCD 的各种功能。 3 系统软件设计 3.1 程序设计算法设计 整个程序设计过程中遇到的最大的问题的如何根据测量到的方波的频率来 计算所测量的电容的大小。在前面的介绍中我们知道:555 时基芯片的输出频 率跟所使用的电阻 R 和电容 C 的关系是:f=0.772/(R*Cx) 。 又因为 T=1/f,所以 T=R*Cx/0.772 (3.1) 即: Cx=T*0.772/R (3.2) 如果单片机采用 12M 的晶振,计数器 T0 的值增加 1,时间就增加 1S, 我们采用中断的方式来启动和停止计数器 T0,中断的触发方式为脉冲下降沿 触发,第一次中断到来启动 T0,计数器的值

35、为 N1,第二次中断到来停止 T0, 计数器器的值为 N2,则测量方波的周期为 T=(N2-N1)*1us,如何开始时刻 计数器的值 N1,则 T=N*10-6 简单时序图如图 3-1 所示。 图 3.1 时序图 则: (3.3) 6 0.772 *10CN R 单片机的计数器的值 N=0-65535,为了测量的精度,N 的取值一般在 1005000,当电阻 R 越大,电容 C 的值就越小。我们取不同的电阻值,就得 到不同的电容测量的量程。 第一档:R1=7.72 C=*10-6*10 C=*10F 100 N 100 N 10F500F 第二档:R1=77.2 C=*10-6 C=*1F 1

36、00 N 100 N 1F50F 第三档:R1=7.72K C=*10-2*10-6 C=*10-2*1F 100 N 100 N 0.01F5F 第四档:R1=772K C=*10-4*10-6 C=*10-4*1F 100 N 100 N 100pF0.05F 第五档:R1=7.72M C=*10-5*10-6 C=*10-5*1F 50pF500pF 100 N 100 N 3.2 程序流程图设计 流程图是一种传统的算法表示法,它利用几何图形的框来代表各种不同性 质的操作,用流程线来指示算法的执行方向。由于它简单直观,所以应用广泛, 特别是在早期语言阶段,只有通过流程图才能简明地表述算法

37、,流程图成为程 序员们交流的重要手段。 3.2.1 主程序流程图 启动555 等待第一次中断 初始化 等待第二次中断 检测量程 计算被测电容 显示 开始 图 3.2 主程序流程图 本程序主要是通过测量 555 发出脉冲的宽度来计算脉冲的周期,通过两次 中断来计算脉冲的宽度。因为不同量程对应的算法不一样,因此要先检测量程, 再进行计算。 3.2.2 中断程序流程图 判断开启第一次中断 开启第二次中断 关闭计数器 关闭中断 取计数值 计数器清零 T_flag=0 T_flag=1 开启计数器 返回 开始 返回 图 3.3 中断程序流程图 如图 3.3 所示,本中断程序选用外部中断 0,即 void

38、 int0(void) interrupt 0 。主程序在初始化的时间已经开启总中断,并开启了外部中断即 IE=0 x81。并 且在初始化的时间设置计数器的工作方式,设置外部中断触发方式为下降沿触 发,这样可以使 555 发出的方波在相邻的下降沿之间触发中断,计算 555 发出 方波的周期,从而计算电容的大小。对应的中断程序为 TMOD=0 x09; IT0=1; 由于 T_flag 在初始化的时间设置为 0,因此只要检测到 555 发出方波的下降沿 就能触发中断,即 if(T_flag=1) TR0=1; 。然后通过计数等待下一次中断。 当再次间的放到 555 发出方波的下降延时,停止 T0

39、。然后关闭中断,关闭 555,将 T0 的计数赋值给 N,然后对计数器清零。 3.2.3 LCD 显示流程图 Lcd初始化 设第一行显示位置 显示第一行内容 设第二行显示位置 显示第二行内容 开始 返回 图 3.4 LCD 显示流程图 图 3.4 程序用到了很多延时,是因为 LCD 处理速度慢于单片机的缘故。每 执行一个指令,单片机都要等一等 LCD。 3.2.4 按键选择量程程序流程图 检测按键 控制继电器 开始 返回 图 3.5 按键选择量程程序流程图 检测量程时,主要是通过 P2 口的几个按键。在这里按键程序我写到了前 面,因为只有先通过检测按键,单片机才能控制继电器调到指定量程,进而才

40、 能使 555 发出在规定范围内的方波。同时,在计算电容大小时,又要检测量程, 以使单片机跳转到对应的算法程序上,使计算结果正确的显示出来,这一部分 在主程序中执行。图 3.5 是通功按键控制继电器选择量程的子程序流程图。 4 PCB 设计 本次做毕业设计,在 PCB 设计上浪费了较长的时间。proteus 不仅具有仿 真功能,而且具有 PCB 设计功能,这样直接可以将仿真好的原理图文件生成 PCB 网络连接图,这样免去了再次画原理图的麻烦。当然了,在工业上,由于 各大国内厂商基本上只认 Protel 做的板子,Proteus ares 自然也就没有那么多人 去注意了。Protel 是 Alt

41、ium 公司在 80 年代末推出的 EDA 软件,目前已经发展 到 altium designer 2013,而国内很多 PCB 厂商还只能识别 Protel99 设计的板子, 这也凸显了国内 PCB 行业较落后的现状。 4.1 元器件的封装设计 在设计 PCB 时,首先要做的是绘制库中没有的元器件的封装。由于第一 次使用 ares,很多功能都不是很懂,很多原件封装都要自己创建。在这里要提 一下 LCD1602,由于库中 LCD1602 的封装为 14 引脚,我买的是 16 引脚的, 而且库中封装的排列也不一致,于是,我便自己设计了 LCD 的封装。 首先查阅相关资料,找出 LCD 元器件的规格,以便于尺寸的设计,如图 4.1 所示,是

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1