论文金属探测器(5)

2019-04-22 21:21

图4-4 前端金属探测部分单片机系统

4.4 外围设置与显示系统

图5-5就是外围设置与显示系统,它有三部分构成:键盘输入、液晶显示和单片机系统。

1)键盘输入

键盘采用的是2×3的按键阵列,如图5-6所示,该阵列键盘的工作原理是,

将两条行线和3条列线接入AT89S52的一组I/O双向接口(比如:P1的低5为),在程序中通过给行线和列线先后输入,高电平低电平、低电平和高电平

来判断是哪个按钮按下。例如给P1的低5位的电平信号为11000,假如现在第2个按钮按下则此时的管脚电平信号为01000,所以判断为第一行。再将P1的低5位置为00111,由于第2个按钮被按下,则此时的管脚电压为00101,所以可以判断是第2列,到此就可以判断是第1行第2列的按钮被按下了[10]。 2)液晶显示

引入液晶显示的目的主要是为了显示频率值、金属类型、精度设置时的一些提示语,其次,有了显示器对键盘的调试将更加方便。液晶显示的要求比较低,1602A内置有基本ASCII字符的显示编码,使用起来比较方便。且价格低廉可以满足需求。

17

3)单片机系统

单片机使用的是有8K容量FLASH的AT89S52,由于在这个模块要引进算法对数据进行再处理,在加上液晶和键盘的驱动程序,所以需要比较大的程序空间。

图4-6 阵列键盘原理图

图4-5 液晶显示器接线图

18

第5章 软件设计

硬件电路要完成的任务是,产生振荡,并将波形变换为能够被单片机处理的方波,接下来进行频率测定、报警、通讯等都要用程序实现最后烧入单片机。以下是各功能模块的软件设计。

软件模块是整个系统的灵魂,软件部分设计的好坏直接影响到系统的精度、可用性、方便性和智能性。好的软件上在实现系统功能的前提下尽可能的友好,方便用户的使用。金属探测器中的程序分为两个部分,前端软件模块和外围数据处理与显示模块,前端软件完成的是一些比较基础的工作,如振荡频率的检测,比较,报警等,它与底层的硬件关系比较密切所以采用汇编语言进行编写,而外围数据处理与显示模块是进行数据的再处理的,是更高一层的分析与判断,它直接处理由前端模块传过来的数据,对其进行处理显示。它的程序量比较大,包括键盘的驱动和液晶的驱动,所以选择模块性比较强的c语言进行编写,两个模块结合起来实现了一个更加方便、智能的数字金属探测器。

5.1软件设计

前端软件负责频率的测定、频率的比较、报警以及与外围模块的通信,程序流程图如图5-1所示。

1)频率获得

获得频率是通过定时器T0和计数器T1两个协同工作而完成的。程序中所使用的频率不论是基准频率还是新探测的频率,都是50ms内所获得的脉冲数。这对此次设计的手持式金属探测器已经足够了,要想提高精度,一是延长获得脉冲的时间,二是减小△PRISE(它是频率波动的范围,如果超出此范围则报警)。

2)获取基准频率

基准频率的获得至关重要,因为它一经获得将作为判断有无金属的基准。其值的可靠性将影响整个程序的健壮性。基准频率的获得是按照如下方法获得的,如图5-2所示。

19

初始化基准频率测定F_FR==1?是探测当前频率否F_COMM==1?是调用精度设置否频率比较否F_COMP==1是F_COMM==1?是发送频率否报警

图5-1 前端金属探测主程序流程图

F_COMM:标志是否进行通讯;F_COMP:标志比较的结果;F_FR:标志基准频率是否成功获得

F_FR:标志是否已经顺利获得基准频率。F_COMM:后台是否发送通信请求。F_OK:标志通讯已建立。F1:新获取的频率。F基准频率。

20

延时R0=10当前频率→F获得当前频率F1是F1-2

返回

图5-2 基准频率测定程序流程图

3)比较模块

比较模块的程序流程图如图6-3所示,比较模块比较重要,程序通过它它来判断是否要发出警报和发出什么样的警报,可以修改传入给它的参数来改变金属探测的精度。 4)精度设置模块

精度设置模块的程序流程图如图6-4所示,精度设置是通过改变传入给比较模块的△PRISEH,△PRISEL的值来改变精度的,如果△PRISEH,△PRISEL的值设置的都比较大则对微小的频率变化系统不会发出警报。

21


论文金属探测器(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:北京欢乐水魔方攻略

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: