【STM32 .Net MF开发板学习-24】激光防盗模型

在各种以高科技偷盗为主题的电影中,我们常可以看到激光防盗系统,一根根红色的激光线构成了三维立体防盗体系。今天我们就借助红外激光头和光敏电阻做一个这样的防盗模型,当红外线被阻断后,开发板板上的蜂鸣器就会报警。

需要的元器件如下:
【STM32 .Net MF开发板学习-24】激光防盗模型

     

原理图如下:
【STM32 .Net MF开发板学习-24】激光防盗模型

  

激光头需要串联一个3欧左右的电阻,光敏电阻随着光线的变化其阻值就会发生变化,我们通过AD接口进行阻值读取。

程序非常简单,主要的代码如下:

    public static void Main()

    {

        int value = 0;                           

        ADC.Start(0); //ADC0

        OutputPort Alarm = new OutputPort((Cpu.Pin)GPIO_NAMES.PB2,false);   //蜂鸣器         

        Graphics.Clear(Color.Black);

        while (true)

        {

            //PC0  ADC0_IN10

            ADC.Read(10, out value, 2, 0);

            Graphics.FillRectangle(20, 20, 100, 20, Color.Black);

            Graphics.DrawString(20,20,value.ToString(), Color.White);

            Debug.Print(value.ToString());

 

            //3700是个经验值,可以根据实际进行设定

            Alarm.Write(value > 3700);

            Thread.Sleep(1000);

        }    

        //ADC.Stop(0);

    }

程序不断的读取光敏电阻的阻值,当阻值高到一定值(激光被阻隔),则报警。我们用面包板来搭建这样一个模型系统,最终的效果图如下:

  

相关视频如下: http://you.video.sina.com.cn/b/44109256-1804832611.html

(1)、.NET Micro Framework开发板

 http://item.taobao.com/item.htm?id=7117999726

(2)、激光模型元器件

 http://item.taobao.com/item.htm?id=8836507324

 

 本文源码:http://www.sky-walker.com.cn/yefan/MFV40/SourceCode/LaserTest.rar

MF快速参考: .NET Micro Framework 快速入门

MF中文讨论组:http://space.cnblogs.com/group/MFSoft/

上一篇:解决java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id "null"


下一篇:如何查看阿里云服务器IIS版本号