基于STC12系列单片机的数显精密位移测量仪电路设计_第1页
基于STC12系列单片机的数显精密位移测量仪电路设计_第2页
基于STC12系列单片机的数显精密位移测量仪电路设计_第3页
基于STC12系列单片机的数显精密位移测量仪电路设计_第4页
基于STC12系列单片机的数显精密位移测量仪电路设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、数显精密位移测量仪电路设计摘 要现代精密位移测量技术越来越追求智能化、无人值守、集群控制、低功耗、高精密测量,其广泛的应用于传统机械加工和桥梁建筑监测领域中。位移测量系统多采用有线方式传输,因设备复杂、智能化低、精密度低、人工操作复杂、机械劳动多而繁琐、设计成本高等因素限制了位移测量设备的在工程领域的广泛使用。随着电子通信技术、智能传感器和人工智能化的发展,机械操作简单、智能化程度高、人性化界面好、设计集成度高、设备小巧便携等特点的精密数显位移测量仪,逐渐在许多工业工程生产领域开始广泛应用。位移测量仪是一种智能化仪器仪表设备,也是现代工业生产、质量检测和制造业中不可或缺的测量设备。它集电子、机

2、械、通信和计算机等多项技术与一体,在发达制造业与科研中有着极其广泛的应用。为了更加精准的控制,高精度地对控制对象进行检测,在现代工业测量控制领域是十分关键的。本次设计的数显精密位移测量仪是将位移模拟电压量转换成相应的数字量输出显示,主要用于大型生产车间检测,具有人性化界面好、体积小、便于携带、精度高等优点。本课题说明了一种相对智能化的位移测量电路,能够精密测量、数字显示位移值、声控报警监测以及与PC机数据通信。具体采用 16 位的STC12C5A60S2 系列单片机作为核心控制器,通过内嵌的A/D转换器,不断地把来自位移传感器检测的模拟电压量转换为数字量,然后在对转换完成的数字量进行实时读取、

3、发送和显示,同时可以通过按键设置位移量范围,最后通过LED指示灯提示是否超出设定位移范围值。 论文先介绍了本次课题的背景与意义,然后介绍了系统的总体设计方案;接着,介绍了系统的硬件电路设计和软件程序编写,重点介绍了各模块硬件电路和软件编程框架;最后对设计结果进行分析总结。关键词:单片机,数字显示,传感器,位移测量,A/D转换,串口通信 英文摘要ABSTRACT目录前言1第1章 绪论2§1.1 引言2§1.2 课题主要内容2§1.2.1 研究目标2§1.2.2 主要工作2§1.2.3 论文的结构安排2§1.3 本章小结2第2章 系统设计

4、4§2.1 功能需求分析4§2.2 系统的总体设计方案5§2.2.1 硬件设计4§2.2.2 软件设计4§2.3 本章小结5第3章 硬件电路设计6§3.1 MCU最小系统电路设计6§3.1.1 MCU的选取6§3.1.2 供电电路6§3.1.3 USB下载电路6§3.1.4 复位和时钟电路6§3.2 外围器件电路设计6§3.2.1 LCD液晶显示电路6§3.2.2 位移传感器接口电路6§3.2.3 串行通信电路6§3.2.4 按键参数设置电路6&

5、#167;3.2.5 报警指示灯电路6第4章 软件编程设计7§4.1系统软件总体设计8§4.2 A/D转换模块7§4.2.1 A/D转换模块部分程序流程图7§4.2.2 A/D转换串口发送模块部分程序7§4.3 LCD1602显示模块7§4.2.1 LCD1602模块程序流程图7§4.2.2 LCD1602显示模块部分程序7§4.4按键设置与LED闪烁报警模块8第5章 体统整体调试过程8§5.1 硬件电路调试8§5.2 软件编程调试8第6章 总结与展望8§6.1课题总结8§6

6、.2 未来展望8结论9参考文献10致谢12附录1:整体电路图及PCB版图13附录2:部分模块功能程序清单13前言数显精密位移测量仪在现代工业精密加工中广泛的应用,基于单片机的位移传感器测量仪是一种分辨率极高、智能化高、操作简单、便于携带的测量仪,应用于精密位移测量已有较长的一段时间。高精密生产加工科学作为生产加工这个古老行业的尖端领域,是随着本世纪出现的许多新技术如航空航天、雷达激光以及微电子、电子通信、计算机、互联网、物联网等的出现而不断革新发展起来的。 目前,精密生产已从单一的技术手段转变为系统制造体系,叫做精密工程。其是由人、技术、团体为基础以及以下诸多方面构成。精密加工机床与装配、夹具

7、;精密切削刀具,精磨工艺;精密生产加工工艺;精密加工的测控技术;为主要条件的组成部分。精加工过程中不但要对零件质量或者产品平整度进行检测,还要对机械刀头和组装零件的精度进行检查,如果没有可靠的测控技术和仪器,那么这些检测和产品高质量都无法保证。所以精密位移量测量技术是精加工完成的重要基础条件。加工和检测是相辅相成的,加工是对测量的要求,测量是对加工的保证。要想实现精密加工,必须要有精密的测量技术作为基础前提。因此,精密位移量测量已成为整个精密生产加工行业一项至关重要的技术。几十年来,各国科研人员都投身于数显精密位移测量的研究,不断的研发出新型位移传感器件和信号采集手段。目前位移传感器器件已迅速

8、扩展到电子信息科学技术和桥梁建筑工程等应用工业领域。如:仪器仪表、齿轮检测、桥梁压力测量、建筑结构测量、位移变送器和粒子轨迹测量等高科技领域中。依据现阶段国内情况,为了使精密测量在机械工业生产领域中能够更为广泛的应用,最值得我们去思考的问题就是,探索一些合适的设计方法去解决精密位移测量技术控制方面的问题。国外也有许多研究所和公司在研究生产精密位移测量仪,目前技术水平相当成熟,生产的位移传感器和控制设备精度高且适用性广,对环境的变化大的地方也适用,非线性精度高,灵敏度好。由此来看,测量机械位移的精密位移传感器件研制水平在国内外都相当成熟了,若继续去提高测量传感器探头精度将会付出大量的人力物力,还

9、不一定有好的收益,而对其控制电路进行合理的设计或改善,使之与成熟的位移传感器探头研究技术相匹配则是一项低成本、高收益的举措,十分适合现阶段国内的精密机械工业生产加工的状况。本设计采用价格合适的单片机芯片就能完成此次课题。数显精密位移测量仪大多都是由定位机制、位移测量设备、微处理器与PC构成。微处理器是精密位移测量系统的控制核心部分,其根据需求,运行指令操控外围设备,使之准确测得位移量,还能显示在PC机或者LCD上,实现动态数据显示。本文重点介绍位移检测传感器、显示监测电路和与PC机通信这三个模块。位移检测设备有传感器法、机械尺测量法、光栅法、光学三角形法等,这些方法相对较复杂,但根本上都是间接

10、测量法,也就是把较小的位移量转化成模拟电压,再由A/D转换芯片处理,变成采集卡或单片机能够读取的数字量,然后处理读入的数字量,设计复杂、布局繁琐和操作麻烦,处理当中易丢失信号造成误码。本设计使用精密位移传感器作为位移测量系统的传感器件,采用STC12系列单片机直接用其内部10位A/D将传感器模块采集的模拟电压转换成数字量,不需要中间的采集处理电路以及A/D转换模块。利用单片机内部的10位A/D转换器输出的数字量,抗干扰能力强,不受天气条件和地理位置的影响,能够实时精准地测量位移量。同时,STC12系列单片机还有着价格便宜、操作方便等优点。第1章 绪论§1.1 课题主要内容§

11、1.1.1 研究目标本课题主要是基于单片机技术设计一种精密位移量检测电路,并将测量值通过串口上传,通过LCD实时显示。主要硬件选用单片机、位移传感器、AD转换、串口通信芯片以及LCD1602等。绘制原理图、PCB板图,编写控制程序,完成软硬件调试与功能验证。此次设计主要完成的是当被检测物体有位移量变化时,单片机启动位移传感器检测,将测得的电压值进行A/D转换,然后通过串口发送数字量位移值给PC机,同时通过液晶LCD1602显示对应物体位移量。还可以通过按键设定初始位移量,当物体位移超过设定范围时,检测报警灯开始闪烁。§1.1.2 主要工作依据现代机床制造工业生产对精密位移量的需求,本

12、课题设计了基于STC12C5A60S2系列单片机的数显精密位移测量仪电路系统。该设计电路可以广泛的应用于工业制造和桥梁建筑等测试领域的多种场合。该系统电路首先使用微型KTRA复位式位移传感器检测位移量,通过单片机自带的八通道10位AD转换器将模拟电压位移量信号装换成数字信号,再通过UART通信接口模块把精密数显位移测量电路测量的位移量发送给上位机,同时LCD1602实时显示位移测量结果。如果测量值超过设置位移范围值,则通过检测报警LED灯闪烁提示。本次设计的任务分为硬件电路设计和软件编程测试两大部分。1. 硬件设计部分数显精密位移测量仪硬件电路设计是基于STC12系列单片机的设计,采用C语言编

13、程,模块化流程设计。按照课题需求,大概能将此次设计分为以下几个方面:(1) 串口通信模块。串行通信模块主要是进行接收和发送检测的数据,能够把数据发送给单片机和PC机。(2) 微型KTRA复位传感器模块。主要是通过传感器探头测出位移量输出模拟电压,探头移动一个距离,输出的电压就随之改变一个精度单位,主要利用物体位移的改变对阻值的影响来输出模拟电压量,能够检测两个探头间的相对位移。(3) 主控制模块。主控制模块是设计的核心,采用STC12C5A60S2系列单片机内含AD/DA同时I/O口资源也比较多,因此对于设计时各模块资源足够用,能够简化设计电路和程序编写。(4) LCD1602液晶显示模块。是

14、把处理好的数据进行实时显示,显示内容为两行16X2,,每行能够显示16个字符或数字。(5) 按键设置模块。是利用四个独立按键,可以完成位移范围初始值的设定。(6) 检测报警模块。是利用的一个红色LED指示灯闪烁进行超范围提示报警。(7) 电源供电及下载模块。利用USB接口直接供给5V稳定电源,同时利用CH340T驱动芯片进行USB转串口下载程序。2. 软件编程部分(1) 软件编程软件选择与设置(2) CH340T芯片的驱动(3) 上位机上的串口调试助手界面参数设置(4) 各模块系统级软件编程测试§1.2 本章小结本章主要讲了此次数显精密位移测量仪电路课题研究的意义、目的、方法以及达到

15、的要求,又介绍了完成这一课题应解决的主要问题和采用的研究方法,最后给出了这一课题研究的目标和主要设计工作。第2章 系统设计§2.1 功能需求分析基于STC12单片机的数显精密位移测量仪电路需要测量精密位移量的变化,所以在选择位移传感器时一定要选择灵敏度高的满足要求的传感器。此次课题选择的传感器是微型KTAR自动复位位移传感器,形成范围在0-100mm,主要用于检测板材厚度、物体平整度、张力调节、速度调节等微小位移测量,它能够满足设计要求。在选择CPU时,以速度快,低功耗,价格便宜为优势的STC12系列单片机作为硬件核心芯片。最大的优势在于它具有8通道10位的内嵌A/D转换器,这样就能

16、在设计上大大的简化设计电路的复杂度。在显示数据上,选择简单常用的LCD1602液晶显示,便于编程控制。在和上位机通信方面上选择UART通信,通过常用的USB转串口模块设计进行通信。PC机上利用VC6.0和keil软件编程调试。所以本设计基本能够实现设计要求。§2.2 系统的总体设计方案制作一个数显精密位移测量电路,两种设计方法可供选择,一种是利用网上卖的测量位移量的测量集成卡( NI板卡),其性能稳定,操作方便,但是成本高功能也单调;另一种是采用单片机控制,设计出通用性高应用范围广的人性化界面系统。本此设计不但要求测出高精度位移量,而且能够对位移值进行显示、设定和提示,也能够显示在P

17、C机上。传统的NI卡很难拥有人机互动功能,因此采用单片机设计符合本课题要求功能。 此次设计利用 USB 接口与电脑相连,供给5V电源。由经数据线输出的电压利用电容滤波后,输出波纹少的5V供给CPU和负载电路;同时实现利用CH340T芯片将 USB 信号转化为串口信号,与PC机进行UART通信;利用 STC12单片机的A/D模数转换口对位移传感器采集的模拟量进行转换,同时单片机将转换完毕的数据实时显示在LCD1602上,实现设计的功能要求,确保STC12C5A60S2系列单片机I/O的资源功能能够充分使用。此外,利用高性能的I/O口对设置参数按键及报警指示灯进行控制。本设计整体结构框图如图 2-

18、2 所示:图2-2 设计整体结构框图§2.2.1 硬件设计硬件部分主要介绍系统的硬件电路设计,主要有单片机 (STC12C5A60S2)最小系统相关控制核心模块和位移传感器输出的模拟信号的AD转换模块的设计,主要电路部分设计如下:(1) STC12C5A60S2核心模块设计有以下几个部分:USB电源供电电路、单片机复位电路、晶振电路、USB转串口通信电路、位移传感器信号采集转换接口电路、LCD1602液晶显示电路以及按键设置和报警指示灯电路。实现了从利用位移传感器采集信号到数据处理转换传送,同时能够完成与PC机的串行通信,将测得的位移量在液晶LCD1602或PC机的串口调试助手上进行

19、显示。(2) 位移传感器信号采集部分模块主要是通过精密电阻电压测量转换传感器所测微量位移信号,然后对微小电压模拟量进行放大、滤波等处理,接着将传感器模块输出的模拟位移量电压送入单片机进行A/D模数转化,最后把转换好的数据发送到单片机进行后续处理,并将测量数据直接显示在LCD1602等显示器上。§2.2.2 软件设计主要包括Keil uVision4软件平台的搭建与设置、核心应用程序模块在软件平台上的编写与调试、USB转串口驱动程序的安装与设置,以及PC机上单片机串口调试助手参数设置。软件需要设计内容如下:(1) 核心应用程序软件编程工作主要包括:LCD1602字符驱动程序的设计;单片

20、机A/D转换电路程序;位移传感器获得数据后向串口发送和1602液晶显示的程序。(2) PC机上串口调试助手参数设置,主要是单片机与PC机的串行通信时波特率要一致,保证数据传送完整准确。§2.3 本章小结本章主要介绍了课题设计的需求性分析,通过分析结果合理给出了课题设计的总体方案,又具体的介绍了设计的两大模块组成,硬件设计模块与软件编程模块。用Keil作为软件设计平台,PC机及LCD1602作为显示平台,用UART通信进行数据传送,实现了基于单片机的数显精密位移测量仪的电路设计。本章概括性描述了软、硬件基本设计过程。11河南科技大学本科毕业设计(论文)第3章 硬件电路设计§3

21、.1 MCU最小系统电路设计STC12C5A60S2系列单片机主控板主要包括下面几个模块:电源电路、晶振电路、复位电路、USB下载串口通信电路、LCD液晶显示电路、位移传感器A/D采集接口电路、独立按键参数设置电路和报警指示灯电路。而位移传感器采用精度高线性电压输出器件,微型KTR自动复位位移传感器。实现模拟量到数字量的采集,显示位移量,并通过串口发送到PC机。§3.1.1 MCU的选取MCU选取是数显精密位移测量电路的核心元件,它在精密测量功能的实现、数字化显示界面、实现联机通信功能等方面发挥着主导作用。其功能决定了其应用于工业控制精密加工领域,对资源种类和数量要求都较高。比如A/

22、D转化速度较快,UART串行通信,定时器外部中断资源需求多,实现功能多,I/O资源需求多,最主要的是工作速度要快、开发器件要便捷常见、价格合理。现如今工业控制领域的主控芯片主要有51单片机、ARM、PLC、DSP等,由于数显精密位移测量仪不需要进行复杂的数字信号处理,所以DSP不适合,PLC和ARM造价都比较昂贵,而单片机基本能够完成目的同时STC12系列的还内嵌10位的高速AD转换器,这样的话能够简化电路设计利于产品开发。再者单片机的价格便宜也是其被首选的一大优势。所以本次设计就选用STC12C5A60S2系列单片机作为主控芯片。STC12C5A60S2系列单片机是宏晶公司生产的单时钟/机器

23、周期(1T)的高速/低功耗/超强抗干扰的新型8051单片机,在此对其利用到的参数进行说明如下。1. 新型超强8051,单时钟/机器周期(1T),指令集能够与传统8051完美兼容;2. 工作电压:STC12C5A60S2系列工作电压:5.5V-3.3V(5V单片机)STC12LE5A60S2系列工作电压:3.6V-2.2V(3V单片机);3. 工作频率范围:0 - 35MHz,相当于普通8051的 0420MHz;4. 用户应用程序空间8K /16K / 20K / 32K / 40K / 48K / 52K / 60K / 62K字节;5. 片上集成1280字节RAM;6. 通用I/O口(36

24、/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口),根据要求有四种模式可选:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏。每个I/O口驱动能力都能达到20mA,但整个芯片最大不要超过55mA;7. 共4个16位定时器。其中两个16位定时器(T0、T1)/计数器与传统8051兼容,没有定时器2。不过有独立波特率发生器做串行通讯的波特率发生器,加之 两通道 PCA模块能够实现2个16位定时器;8. 7路外部中断I/O口,下降沿中断、低电平触发中断, PCA模块上升沿中断, INT0/P3.2,INT1/P3.3,T0/P3.4,T1/P3.5,RxD/P3.0,CCP

25、0/P1.3(也可通过寄存器设置到P4.2 ),CCP1/P1.4 (也可通过寄存器设置到P4.3),PowerDown模式可由外部中断唤醒;9. A/D转换,八通道十位精度ADC,高达250K/S(每秒钟25万次)的转换速度;10. 通用全双工异步串行口(UART),由于STC12系列是高速的8051,能够用定时器或者PCA软件实现多串口功能;STC12C5A60S2是增强性8051单片机,与普通8051单片机相比有以下特点:图3-1-1 STC12C5A60S2单片机芯片1、 同样晶振下,速度比普通8051快812倍;2、 有8路10位AD;3、 又多增加了两个定时器和 PWM功能;4、

26、有SPI接口;5、 有EEPROM;6、 有1K内部扩展RAM;7、 有WATCH_DOG;8、 多一个串口;9、 IO口可以定义,有四种状态;10、 中断优先级具有四种级别; §3.1.2 供电电路电源供电电路设计在电子设计中担任着的重要角色。此次设计,电源不单单光给主控制芯片提供低纹波的 5V 电压,还要给位移传感器等其他外围器件提供5V电压。一方面考虑到数显精密位移测量系统的接口电路设计要追求电路简单功能实现,所以本次设计采用 USB 接口与电脑相连提供 5V 电压,分别供给处理器和负载;另一方面利用USB接口和CH340芯片结合可以将 USB 信号转换成串口信号,方

27、便与上位机通信,简化电路结构一举两得。电源设计原理图如图3-1-2:图3-1-2 电源设计原理图§3.1.3 USB下载电路下载程序是单片机软件开发的第一项工作,如果这个地方都出问题了,那么下面要的工作便无从谈起,因此先对51单片机下载程序方面做下大致介绍。原理:因为单片机的TXD、RXD是TTL电平,要想给单片机成功烧写程序,那么就要想办法将其它信号转成TTL电平。其中常用的PL2303、CH340等芯片能够将USB信号转换成TTL电平,而 MAX232等芯片能够将TTL电平转化成RS232信号或者将RS232信号转化成TTL电平。依据这些原理常用方法有两种。方法一:如图3-1-3

28、-1就是最常见的单片机烧写电路,其中16属于常见的USB转串口模块,如果核心控制板和PC机都带有串口,就能直接给单片机下载程序。当然,有的PC机上并没有串口只有USB口,因此只能借助USB转串口线(其原理就是图中16)下载,本设计不采用 PL2303的USB转串口线而使用CH340的USB转串口线,因为PL2303价格便宜水货也多,质量不可靠,而且外围电路复杂,都会导致下载电路出现很多问题不能正常下载。同时此方法的劣势就是要做一个9针串口接口,那么PCB的面积和板子成本就随之增加。图3-1-3-1 USB转串口线下载程序典型电路方法二:  如图3-1-3-2是本设计采用的单

29、片机程序烧写电路。其好处就是一根普通的USB2.0线(如图中的2)就能下载,由于将串口9针接口改成了USB接口,那么电路板的体积重量都会减小,根据以往经验一般不会出现什么问题,而且结构显得更加美观了。可以看到,图3-1-3-2的电路结构比图3-1-3-1要简化很多,可以说明图3-1-3-2的性能比图3-1-3-1要较好些,结构简单,出问题的概率当然小。图3-1-3-2 不使用USB转串口线下载程序电路从上面可以比较得到,本次设计采用最简单的USB下载电路,不使用复杂的RS232下载电路。这样简化的电路设计,方便简单,不易出错。电路原理图如图3-1-3-3:图3-1-3-3 USB下载电路原理图

30、当然除了用板子上的能够供电的USB通信下载外,也可以使用板子扩展出来的UART通信接口与USB转TTL串口模块搭配下载。如图3-1-3-4所示分别是接口原理图和串口转换模块:图3-1-3-4 分别是接口原理图和串口转换模块§3.1.4 复位和时钟晶振电路STC12C5A60S2系列单片机有外部RST引脚复位,外部低压检测复位,软件复位,掉电复位/上电复位(并可选择增加额外的复位延时200Ms)和看门狗复位,这五种复位方式。本系统复位电路的选择是常用的外部RST引脚复位,这样能大大提高系统的可靠性,利用手动的方式,使其复位信号持续一个200MS的低电平后,RST就会出现一个高电平复位信

31、号,使其系统复位 ,具体复位电路原理图如图3-1-4-1所示:图3-1-4-1 复位电路原理图STC12C5A60S2系列单片机是系统始终能够兼容传统的8051的单片机。其有2个时钟源:分别是内部RC振荡时钟和外部晶振时钟。现出厂的标准配置是使用外部晶振或时钟。本次设计采用传统的51单片机11.059200Mhz的晶振电路,如图3-1-4-2所示:图3-1-4-1 时钟电路原理图§3.2 外围器件电路设计§3.2.1 LCD液晶显示电路一个系统让人们能够使用方便,就要具备合理的人机交互设备,要有输入输出设备,因此就要有显示部分,能够将系统的有用价值信息直观的显示出来,以便用

32、户及时获得有用的信息。常用的显示设备有数码管,以及各类点阵,LCD显示等。本设计采用LCD1602液晶显示作为显示模块,因为本系统只需要显示位移字符以及数字位移量等信息,所以LCD1602基本能够满足选择。出于成本考虑,不采用LCD12864液晶。如果采用数码管或点阵,那么就要使用很多的段选位选接口,这样会大量浪费掉单片机的I/O资源,而且动态扫描控制程序编写也比较复杂同时也会降低显示亮度。然而LCD1602液晶除了可以显示字符数字外,编写驱动简单,界面人性化。基于以上考虑,选择LCD1602液晶作为显示模块。LCD1602液晶是一种能够专门用来显示字母、数字、符号等的字符型点阵液晶模块。可以

33、显示两行(16X2),每行可以随意显示16个字符或数字。LCD1602液晶显示模块电路原理图如图3-2-1-1:图3-2-1-1 LCD1602液晶显示模块电路原理图LCD1602实物图如图3-2-1-2:图3-2-1-2 LCD1602实物图LCD1602字符型液晶通常有14或者16个引脚线,其中16个引脚的1602液晶包括2条背景光电源线:VCC(15脚)和地线GND(16脚),其控制原理与14脚LCD一样。各引脚功能参照表3-2-1所示:表3-2-1 LCD1602各引脚功能§3.2.2 位移传感器接口电路本设计采用市面上精度较高的微型KTRA自动复位位移传感器模块,此系列传感

34、器主要是用来检测各种板材平整度和厚度以及阀门和机械测量。能够线性输出电压信号(0VCC)线性对应位移量(0最大量程),然后输出端接单片机A/D转换器端口,通过内嵌A/D转换器将传感器输出电压信号转换成数字量,然后单片机对数字量进行后续处理显示发送。位移传感器接口电路、传感器实物模块和传感器电气连接图分别如图3-2-2-1、图3-2-2-2、图3-2-2-3所示:图3-2-2-1 位移传感器接口电路原理图图3-2-2-2传感器实物模块图图3-2-2-3 电气连接图本系统的位移传感器用系统提供的5V电压供电,设定量程范围为(05CM),采用10位的A/D转换器,其精度达到0.005V(5mV)-0

35、.05mm即可。STC12C5A60S2系列单片机的A/D转换口在P1口(P1.7-P1.0),具有8通道10位高速A/D转换器,速度高达250kHz(25万次/秒)。8通道电压输入型A/D可做位移量检测、电源电压检测、按键扫描、频谱检测等模拟量转换。上电复位后P1口为微弱上拉型I/O口,软件开发人员可以采用软件设置将8通道中的任何一通道设为A/D转换口,不采用的端口可以继续作为普通I/O资源使用。STC12C5A60S2系列单片机ADC的结构如图3-2-2-4所示:图3-2-2-4 STC12C5A60S2系列单片机ADC的结构图STC12C5A60S2系列单片机ADC由多路选择开关、比较器

36、、逐次比较器、10位ADC转换结果寄存器(ADC_RES和ADC_RESL)以及ADC_CONTR构成。它内嵌的ADC是典型的逐次比较型ADC,这种ADC是由一个比较D/A转换器构成,通过逐次比较逻辑,从最高位(MSB)开始,依次对每一个输入模拟电压与内置的D/A转换器输出进行比较,经过多次比较,使转换完成的数字量逐次逼近输入模拟量对应的值。逐次比较型A/D转换器具有高速、低功耗等优点。本系统设计采用其较精度高的10位选择输出状态,根据设计其计算公式如下:1. ADRJ=0时,取10位结果计算,公式如下:10-bitA/D Conversion Result(ADC_RES7:0,ADC_RE

37、SL1:0)=1023*Vin/Vcc2. ADRJ=1时,取10位结果计算,公式如下:10-bitA/D Conversion Result(ADC_RESL1:0,ADC_RES7:0)=1023*Vin/Vcc式中,Vin为输入模拟量电压,Vcc为单片机实际工作电压,单片机工作电压用作模拟参考电压。下面是与STC12C5A60S2系列单片机A/D转换器有关的寄存器:l P1口的模拟功能控制寄存器P1ASFl ADC控制寄存器ADC_CONTRl A/D转换结果寄存器ADC_RES、ADC_RESLl 与A/D中断有关的寄存器与A/D转换器有关的寄存器如下表3-2-2所示:表3-2-2 A

38、D转换相关的寄存器§3.2.3 串行通信电路前面已经介绍过本次的核心控制板的下载通信都是通过USB转串口进行的,便于和上位机连接通信,将数据发送到PC机串口调试助手上进行分析。同时这里的串口芯片用的是CH340转接芯片。CH340是一个USB总线的转接芯片,能够实现USB转串口、IrDA红外或者打印口等功能。在串行方式下,CH340提供常用的MODEM联络信号,用于为计算机扩展异步串口,或者将普通的串口设备直接升级到USB总线。封装管脚图和连接通信示意图如图3-2-3-1和图3-2-3-2所示: 图3-2-3-1 封装管脚图图3-2-3-2 连接通信示意图§3.2.4 按键

39、参数设置电路精密位移测量仪在固定测量模式下需要设定测量参数范围值,因此需要输入设置的人机接口(按键等)。通常,按键有独立式、矩阵式两种形式,由于本系统不需要复杂的参数输入设置,所以用四个独立按键足够实现模式切换和参数设定。I/O接口控制独立按键接口电路原理图如图3-2-4所示:图3-2-4 按键设置模块电路图§3.2.5 报警指示灯电路此系统采用简单的LED闪烁发光报警电路。依据发光二极管电气特性,正向导通电压大概在1.6V-2.4V的范围内。由于其反向击穿电压超过5V,具有非常大的10mA-20mA的工作电流,因此设计电路时要给发光二极管串接一些限流电阻。STC12C5A60S2典

40、型的发光二极管控制电路有两种如图3-2-5-1所示:图3-2-5-1 典型的发光二极管控制电路本系统采用第一种,用灌电流方式驱动发光二极管,电路原理图如图3-2-5-2所示:图3-2-5-2 灌电流方式驱动发光二极管电路原理图26第4章 软件编程设计如果说单片机硬件设计时系统骨骼的话,那么软件的编程就是系统的血液或灵魂,任何硬件都要有软件配合工作才能成为一个发挥作用的系统。如何依据硬件设计,编写出简单高效的整体系统执行代码,一直以来是编程者研究的重要方面。对于一个庞大而复杂的系统,根据自己以前的编程经验,再依据前人的软件开发经验和技术进行模块化设计,能大大缩短程序员的研发周期提高效率。常用的单

41、片机编程语言有两种:C语言和汇编语言。汇编语言是一种用汇编指令表示的编程语言,与机器指令一一对应,能够直接控制计算机的硬件系统,程序执行效率高,占用内存小。但是它属于初级语言,编程者需要先学习相关的硬件结构才行,编程难度大,可移植性差。C语言是一种结构化编程语言,拥有高级语言和兼容初级语言的优势。丰富的可调用函数库,免去了开发人员重复设计的麻烦。因此C语言在单片机软件开发中一直占据着重要的地位,是开发者的首选。本次设计同样首选C语言进行单片机编程设计,整体程序由主程序模块和若干功能子程序模块构成。§4.1 系统软件总体设计主程序mian函数是整体程序的核心结构,它主要是协调整个系统各

42、个子模块间的工作顺序。其主要作用是系统初始化,参数传递,按键检测,位移量采集、处理与显示,发出调控命令等功能。本设计的主main部分执行过程为:设备上电后,单片机对各个子模块进行初始化操作,使各个子模块开始执行,随之进入对各个子模块的监控状态。外部操作有需求时,按下对应按键,产生相应的按键中断转向并执行该键的中断处理服务函数。依次能够实现参数设置、修改以及状态切换。如果外界操作无需求时,单片机就一直控制传感器不断采集模拟信号,同时A/D转换器不断转换数据,单片机接收转换完毕的数字信号,通过LCD1602显示相应的位移参数。同时也不断的监测转换位移数据量,是否超出设置位移量范围的上下限,如果监测

43、到超出设置范围,那么发光二极管开始闪烁发出报警信号。主程序main函数流程图如图4-1所示:图4-1 主程序流程图§4.2 A/D转换模块本设计的A/D转换采用STC12C5A60S2单片机内部的八通道10位高速A/D转换器。八通道A/D分布在单片机的P1口8个I/O口上,单片机上电后,P1口为弱上拉型I/O口,通过软件,将需要设置为A/D转换口的模拟信号输入引脚的PLASF特殊功能寄存器相应位置1,此I/O口(0V5V)的模拟电压信号即可转换为相应的位移量数字信号。对相关特殊寄存器的相应设置,便可控制A/D转换频率,数据的存取方式,时钟信号的来源等。值得关注的是,ADC_CONTE

44、R控制寄存器设定完毕后,要加4个以上NOP延时指令才能正确读取ADC_CONTER寄存器的数据。因为位移传感器的信号变化比较慢,出于降低单片机功耗的考虑,设计中采用的是较低频率的A/D转换器,通过定时器1中断,控制中断计数器count增加或减少,继而调节A/D转换频率。§4.2.1 A/D转换部分流程图A/D转换部分流程图如图4-2-1:图4-2-1 A/D转换子程序流程图§4.2.2 A/D转换串口发送部分程序程序代码见附录2第一部分。§4.3 LCD1602显示模块LCD1602共有16个引脚,其中的11个与单片机的I/O相连接并通信,剩下的 3个I/O口连接

45、LCD1602使能与读写控制口,分别是:P4.1-RS、P4.5-RW、P4.4-EN。8个DATA引脚P1口控制1602的八位数据口。单片机按照特定的时序改变3个控制引脚的电平,可以对LCD1602进行使能、读、写命令和数据的操作,从而控制LCD1602。本系统只需对LCD1602进行单向显示操作,所以省略了对LCD1602读命令和读数据的操作。§4.3.1 LCD1602模块程序流程图单片机STC12C5A60S2对LCD1602的控制显示程序流程图如图4-2-1:图4-3-1 1602液晶显示程序流程图§4.3.2 LCD1602显示模块部分程序下面是单片机控制LCD

46、1602显示程序(STC12C5A60S2单片机ADC采样,LCD1602液晶显示功能示例)。程序功能代码见附录2第二部分。§4.4 按键设置与LED闪烁报警模块本次设计利用查询方式,分别对各个独立按键采集判断,是否有按键按下,哪个按键按下。每个按键通过各自按键中断服务子程序执行各自功能。各按键功能如下设置:状态模式选择键:按下后,系统在测量显示模式和输入参数测量报警模式间转换。参数设置键:按下后,LCD1602上某位数据进行闪烁,则此时数据处于编辑状态。再按下,下一位处在编辑状态,依次循环下去。参数加一键:按下后,处在编辑模式的那位数据加一。参数减一键:按下后,处在编辑模式的那位数

47、据减一。本系统的报警指示模块用的是普通I/O口,当超出设置参数范围时控制LED闪烁。按键设置与LED闪烁报警模块程序流程图如图4-4所示:图4-3-1 按键设置与LED闪烁报警模块流程图35第5章 系统整体调试过程§5.1 硬件电路调试 在硬件电路板子画完后,交付工厂进行PCB制板。然后完成所需原件清单的购买,准备制作完整的精密位移测量仪控制核心板。主要焊接设备:防静电电烙铁、元器件、松香、焊接锡丝、万用表、吸锡器。焊接过程:本设计电路相对复杂,元器件多采用贴片式比较多,易出问题易丢失,所以焊接前都要对元件进行测试确保焊接元件没有损坏。焊接芯片时,要注意芯片引脚与PCB板子上的引脚位置对应,按照焊接规则先焊接各芯片的VCC和GND,焊接完毕后对各引脚进行测查,确保无虚焊无错焊。当所有焊接完成后对其主要部分检查是否正确焊接。然后通电,利用万用表和示波器进行检测各部分模块是否正常工作。硬件检测结果:焊接正确牢

温馨提示

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

评论

0/150

提交评论