文档章节

在 PYB Nano 上用LED测光强

shaoziyang
 shaoziyang
发布于 2016/10/19 16:28
字数 370
阅读 109
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

很早以前,TI在推广MSP430时做个一个demo,用普通LED测环境光强,下面我们在PYB Nano上也来实验一下。

使用LED测光强的原理是LED其实也是二极管,它的PN结的结电容会受光强影响,放电或充电速度与光强存在一定的对应关系。先给LED充电/放电,延时几个毫秒后测量LED上的电压,在不同光强下电压会有明显变化。

实现这个功能,需要LED的控制GPIO带有ADC的功能。在PYB Nano上,LED使用了PA0-PA3,它们都支持ADC,都可以进行测试。下面的程序演示了这个功能,输入程序后,使用test('A0')测试第一个LED,test('A1')测试第二个。

from pyb import Pin, ADC

def test(pin='A0', count=100):
    pn = Pin(pin, Pin.OUT)
    for i in range(count):
        tmp = 0
        pn(1)

        pn = Pin(pin, Pin.IN, pull=Pin.PULL_NONE)
        pyb.delay(1)

        adc = ADC(Pin(pin))
        for n1 in range(8):
            tmp += adc.read()
        print(tmp)

        pn = Pin(pin, Pin.OUT)
        pn(0)
        pyb.delay(500)

 

分别测试4个LED,红色的LED效果最差,变化很小,而其它几个LED变化很显著,这说明运行效果与LED有很大关系。虽然不能用于精确测量光强,但是在做指示灯的同时,测量简单的环境光强还是可以的,比如用于调节LCD背光、改变LED亮度等。

下面是LED2/LED3(绿色和黄色)的效果:

 

© 著作权归作者所有

shaoziyang
粉丝 16
博文 77
码字总数 26345
作品 0
武汉
程序员
私信 提问
加载中

评论(0)

PYB Nano 开发板快速指南

PYB Nano 开发板快速指南 这篇快速指南是为 MicroPython 和 PYB Nano 的初学者写的,通过这个文档,可以快速掌握 MicroPython 和 PYB Nano 的基本使用方法。 PYB Nano开发板简介 PYB Nano开发...

shaoziyang
2016/10/31
1K
0
最小的MicroPython开发板PYB Nano

PYB Nano是目前最小的MicroPython开发板,它只有Nucleo32和Arduino Nano大小,却包含了全部的MicroPython的功能。 PYB Nano的主要特点: 支持 macroUSB 2路UART 3路I2C 3路SPI 10路ADC 支持R...

shaoziyang
2016/10/15
142
0
【PYB Nano】用定位器控制LED亮度

下面的Demo演示了用定位器控制LED亮度。 使用到一个外部的定位器,并将定位器连用杜邦线接到PYB Nano的引脚:X9/PB1。 然后输入下面的程序 改变定位器,就会在屏幕上输出当前ADC的结果,同时...

shaoziyang
2016/10/25
59
0
【PYB Nano】连接SD卡

因为大小限制,所以STM32F401CEU6没有SD接口,因此PYB Nano上也没有了SD/macroSD,这给存储大数据带来一点不便。不过我们可以通过SPI接口挂载SD,下面介绍具体的连接方法。 通过SPI方式连接,...

shaoziyang
2016/10/24
55
0
PYB Nano v1.1 开发板文档

PYB Nano v1.1开发板文档 原理图: sch.zip (88.81 KB, 下载次数: 0) 元件表: bom.zip (8.65 KB, 下载次数: 0) 固件:PYB Nano v1.1 开发板固件 3D图:...

shaoziyang
2016/10/18
186
0

没有更多内容

加载失败,请刷新页面

加载更多

IP地址正则表达式

提取一段内容中的所有IP地址 ((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})(.((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})){3} 判断字符串是否是IP地址 ^((2(5[0-5]|[0-4]d))|[0-1]?\d{1,2})(.((2(5[0-5]|[0-4......

哆啦D梦幻
27分钟前
29
0
CDH在yarn上运行程序乱码

参考文章:CDH在yarn上运行程序乱码 安装完成CDH后,在yarn上不管是使用hive运行mapreduce还是spark,中文全都会乱码。 1. linux的环境变量设置字符集 vi /etc/profile export LANG=zh_CN.UT...

osc_40usjisk
28分钟前
9
0
公积金无租房备案提取如何办理?(以成都为例)

  无租房备案是什么?   首先你要知道租房备案是什么?简单来说就是房东想要对外租房,需要到房管局办理相关手续,   如果你要以租房的名义提取公积金需要提供与房东签订的合同等材料后...

osc_3aqbiyys
28分钟前
11
0
公积金状态封存怎么解封?

  前言   公积金的缴存状态一般有2种,正常和封存,如下截图         公积金状态为封存是什么意思?   指职工因为各种原因导致住房公积金缴存中断,其住房公积金账户无法转移且又...

osc_51airx3z
29分钟前
9
0
你应该知道的公积金基础知识科普

  公积金是什么?   简单来说公积金全称为住房公积金,是一种国家法律规定的住房保障制度,也是普通工薪族的一种福利   公积金的用途?   可用于贷款买房,租房,还房贷,房屋大修等...

osc_u9wft6hh
31分钟前
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部