基于单片机的金属探测器设计


 
1.1探测10cm左右金属,根据被测金属大小和质地可能不同。系统采用9~12V电源输入,圆孔插座。视频内容简单的描述了不同尺寸的天线在应用中的差异。
1.2当系统通过天线检测到有金属或导体存在时,蜂鸣器发声,对应LED灯点亮。
1.3初次使用(或者自己重新设计)时,可以通过调节电阻器来适应不同的天线,天线等效电感值大约100uH
1.4主要使用了STC单片机、高精度金属探测传感器芯片、蜂鸣器、LED灯
 
图:探测器主体

图:天线信号

图:LC震荡仿真示意

图:参考原理图

 

Keil工程main文件:

  
/* Layer specfication -------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------
--
-- This layer for initialization
--
-----------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------*/
#include <REGX51.H>

/*
***********************************************************************************************
*     
* Description: Delay 
*              
*
* Arguments  :           
* Returns    : 
***********************************************************************************************
*/
void delay_ms(unsigned int ms){
  
  unsigned int i,j;

  for(i=0;i<30;i++){
    for(j=0;j<ms;j++);
  }
}

/*
***********************************************************************************************
*     
* Description: This function is 
*              
*
* Arguments  :           
* Returns    : 

   -----------------------------------

   金属探测器

   -----------------------------------


***********************************************************************************************
*/
int main(void){

    unsigned int i;    

    P0 = 0x00;
    P1 = 0x00;
    P2 = 0xff;
    P3 = 0X00;

    //开机声音提示
    for(i=0;i<3;i++){
        P1_7 = 0;//点亮LED
        P2_0 = 0;//打开蜂鸣器
        delay_ms(500); 
        P1_7 = 1;//关闭LED
        P2_0 = 1;//关闭蜂鸣器    
        delay_ms(500);    
    }

    // run while --------------------------------------------- 
    while(1){
       // 如果 检测到金属    
       if(P2_7){
          P1_7 = 0;//点亮LED
          P2_0 = 0;//打开蜂鸣器
       }
       //没有 检测到金属
       else{
          P1_7 = 1;//关闭LED
          P2_0 = 1;//关闭蜂鸣器
       }
    }
    ////////////////////////////////////////////////////////////
}

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM