随笔 - 249  文章 - 1  评论 - 1207  阅读 - 61万

Windows on Device 项目实践 2 - 感光灯制作

在上一篇《Windows on Device 项目实践 1 - PWM调光灯制作》中,我们学习了如何利用Intel Galileo开发板和Windows on Device来设计并完成一个PWM调光灯的制作。该情况下,我们需要手动调节电位器,通过PWM波形来控制LED灯的亮度。在现在的智能家居系统设计中,很多设备都需要融入智能,即无需人为干预,就能够自动为我们服务。

在这个项目中,我们会使用光敏电阻,利用其感光特性,来设计并且制作一个感光灯。感光灯能够根据环境光的强度,自动调节LED灯的亮度。

 

1. 光敏电阻

光敏电阻器(photovaristor)又叫光感电阻,是利用半导体的光电效应制成的一种电阻,其电阻值随入射光的强弱而改变:入射光强,电阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。光敏电阻可广泛应用于各种光控电路,如对灯光的控制、调节等场合,也可用于光控开关。

 

2. 元器件和硬件连接

这次实践项目需要使用的元器件有:

  • 光敏电阻*1
  • 直插LED*1
  • 10KΩ直插电阻*1
  • 220Ω直插电阻*1
  • 面包板*1
  • 面包板跳线 若干

在本次制作中,光敏电阻是可以根据光强改变阻值的元件,自然也需要Galileo的模拟口读取模拟值了,因此可以借鉴PWM 接口实验,将电位计换做光敏电阻,实现当光强不同时LED 小灯的亮度的变化控制。连接的原理图和硬件图如下:

clip_image002

 

clip_image002[6]

 

3. 源代码解析

在下面的源代码中,我们将模拟口读取的返回值除以4,原因是模拟输入analogRead()函数的返回值范围是0 到1023,而模拟输出analogWrite()函数的输出值范围是0 到255。

// Main.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "arduino.h"

int _tmain(int argc, _TCHAR* argv[])
{
    return RunArduinoSketch();
}

int potpin = 0;//定义模拟接口0 连接光敏电阻
int ledpin = 11;//定义数字接口11 输出PWM 调节LED 亮度
int val = 0;//定义变量val
void setup()
{
    pinMode(ledpin, OUTPUT);//定义数字接口11 为输出   
}
void loop()
{
    val = analogRead(potpin);//读取传感器的模拟值并赋值给val
    Log(L"val: %d\r\n", val);//显示val 变量数值
    analogWrite(ledpin, val/4);// 打开LED 并设置亮度(PWM 输出最大值255)
    delay(10);//延时0.01 秒
}

4. 调试结果

启动Galileo,利用TelNet建立连接,然后点击调试。程序就会通过网口下载到Galileo上。光敏电阻随着光强度的变化而改变其阻值,经过分压以后,模拟口0读取的值也会产生变化。我们可以尝试使用手来阻挡光敏电阻,使其阻值发生变化,从而达到调试的目的。

IMG_0513

调试的视频链接如下,大家可以看到感光灯的效果:http://v.youku.com/v_show/id_XODU2Mjk1ODYw.html

posted on   施炯  阅读(1732)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2011-12-25 人人网 Windows Phone 7 应用开发起步
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示