你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[Nucleo] F072RB测环境光强

[复制链接]
shaoziyang 发布时间:2015-1-29 23:48
本帖最后由 shaoziyang 于 2015-1-30 00:05 编辑

LED除了可以发光,其实也可以测试光强,因为LED也是二极管。当环境光强变化时,LED上的结电压会发生变化,因此可以通过这个方法测量光强。虽然这种方法精度不是太高,但在有些情况下还是有用的。

ST Nucleo F072RB上只有一个用户LED,它接在PA_5,它也是ADC_IN5。利用F072带有的12位ADC,可以很灵敏的测出光强变化。下面程序就演示这个方法,程序很简单,但是效果还不错。

  1. #include "mbed.h"

  2. DigitalOut myled(LED1);

  3. AnalogIn Light(LED1);

  4. Serial pc(USBTX,USBRX);

  5. int main() {
  6.     myled = 0;
  7.     while(1) {
  8.         wait(0.5);
  9.         pc.printf("%d\r\n", Light.read_u16()>>4);
  10.     }
  11. }
复制代码



测试效果

4.jpg

ST_Nucleo_F072_TEST.zip (671.1 KB, 下载次数: 8)
收藏 评论8 发布时间:2015-1-29 23:48

举报

8个回答
xyc2690 回答时间:2015-1-30 00:03:32
原理不明白。。。能解释一下吗?
shaoziyang 回答时间:2015-1-30 00:08:35
本帖最后由 shaoziyang 于 2015-1-30 00:11 编辑
xyc2690 发表于 2015-1-30 00:03
原理不明白。。。能解释一下吗?

当环境光强变化时,LED上的结电压会发生变化,它们存在一个对应关系(非线性),所以可以测光强。
缺点是变化范围较小,一致性不是特别好,所以不适合测光强具体数值,但是测光强变化,或者测大概光强还是不错的,不用增加任何硬件成本。

你试试就清楚了,很容易的。
kqh1120 回答时间:2015-1-30 00:23:07
意义何在呢??
shaoziyang 回答时间:2015-1-30 00:26:47
zfz0122 发表于 2015-1-30 00:23
意义何在呢??

在要求不高,或者IO不够时,这个方法还是有用的,又不增加任何硬件成本啊。一个LED完成两个功能。
xyc2690 回答时间:2015-1-30 00:27:53
shaoziyang 发表于 2015-1-30 00:08
当环境光强变化时,LED上的结电压会发生变化,它们存在一个对应关系(非线性),所以可以测光强。
缺点是 ...

多谢,刚刚去复习了一下PN结
lkl0305 回答时间:2015-1-30 09:38:25
不错啊!
埃斯提爱慕 回答时间:2015-1-30 11:48:28
提示: 作者被禁止或删除 内容自动屏蔽
abb200628 回答时间:2015-2-2 12:55:18
不错,赞一个

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版