图2。2线圈振荡电路原理图
2。2 控制电路
控制电路主要由放大电路和系统控制单元组成。
2。2。1 放大电路
由于采集到的电压信号的幅度非常小,因此要对其放大再进行处理。放大电路采用开环增益低,共模抑制比小的LM393放大电路。将模拟量电压信号和参考固定电压相比较,在二者幅度相等的附近,输出电压将产生跃变,相应输出高电平或低电平。放大电路原理图如图2。3所示。
图2。3 放大电路原理图
2。2。2 系统控制单元
系统控制单元包括STC89C51单片机、晶振电路以及程序下载接口。STC89C51单片机片内含有Flash程序存储器、SRAM、UART、SPI、A/D、PWM等模块。STC89C51的T0计数器记录由LM393发送过来的信号,联合T1计数器来检测振荡电路的频率。再根据频率的变化激活相应的发光二极管和峰鸣器进行报警。STC89C51主要功能,性能参数如表2-1所示,STC89C51引脚功能如表2-2所示。晶振的频率决定着单片机运行速度的快慢。晶振电路如图2。4所示。
表2-1 STC89C51主要功能,性能参数
STC89C51主要功能、性能参数:
1。内置标准51内核,机器周期: 12时钟;
2。工作频率范围:0~40MHZ,相当于普通8051的0~80MHZ;
3。STC89C51RC对应Flash空间:8KB;
4。内部存储器(RAM):512B;
5。定时器\计数器:3个16位;
6。通用异步通信口(UART)1个;
7。中断源:8个;
8。有ISP(在系统可编程)\IAP(在应用可编程),无需专用编程器\仿真器;
9。通用I\O口:32个;
10。工作电压:3。8~5。5V;
11。外形封装:40脚PDIP、44脚PLCC和PQFP等
图2。4 晶振电路
表2-2 STC89C51引脚功能
STC89C51单片机的引脚功能说明:
(1)VCC:电源电压
(2)GND:地
(3) P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
(4)P1口:P1是一个带内部上拉电阻的8位双向I/O口。
(5)P2口:P2是一个带有内部上拉电阻的8位双向I/O口
(6)P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。
(7) RST:复位输入。
(8)EA/VPP:外部访问允许。
(9)XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。
(10)XTAL2:振荡器反相放大器的输出端。
(11)数据存储器: 89C51有256个字节的内部RAM,80H-FFH高128个字节与特殊功能寄存器(SFR)。
(12)中断: 89C51共有6个中断向量:两个外部中断分别为INT0和INT1,3个定时器中断,分别是定时器0,定时器1,定时器2,最后一个是串行口中断。
(13)时钟振荡器: 89C51中有一个用于构成内部振荡器的高增益反相放大器,该放大器的输入端和输出端分别是引脚XTAL1和引脚XTAL2。
2。2。3 报警电路
报警电路由蜂鸣器和LED组成。蜂鸣器的正极和负极分别通上高电平和低电平时蜂鸣器就会发声。LED在接入低电平时点亮。在有金属接近时单片机控制分别给蜂鸣器和LED通上相应电平即可报警。报警电路原理图如图2。5所示。
图2。5 报警电路原理图
3 软件结构设计
软件结构部分包括前端程序结构和外围数据处理与显示程序结构。
3。1 前端程序结构设计
前端软件主要实现频率的测定与比较、报警以及与外围模块的通信。前端软件设计结构图如图3。1所示。前端金属探测主程序流程图如图3。2所示。