码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-06-18 14:04:11      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:initial   大小   芯片   nts   技术   声音   pre   开机   左右   

 
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;//关闭蜂鸣器
       }
    }
    ////////////////////////////////////////////////////////////
}

 

 

 

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

标签:initial   大小   芯片   nts   技术   声音   pre   开机   左右   

原文地址:https://www.cnblogs.com/lewismountain/p/11044721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!