文档章节

[TurnipBit]DIY忽闪忽闪的小蓝灯

bodasisiter
 bodasisiter
发布于 2017/06/28 11:15
字数 1256
阅读 65
收藏 0
点赞 0
评论 0

LED灯当前属于是最主流的照明设施了,体积小,亮度高,功耗小,操作简单等优点使得LED灯在实用,实验等各个领域立于不败之地,今天就用几个小实验,教大家学习和使用一个LED灯做一些DIY小制作。

简单介绍LED

发光二极管简称为LED。由含(Ga)、(As)、(P)、(N)等的化合物制成。当电子与空穴复合时能辐射出可见光,因而可以用来制成发光二极管。在电路及仪器中作为指示灯,或者组成文字或数字显示。砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光,氮化镓二极管发蓝光。因化学性质又分有机发光二极管OLED和无机发光二极管LED。

大家看到上面图片里面的那些小器件就是LED灯,这些器件照片是我在一个TurnipBit开发板上拍下来的,图里面那个小萝卜就是TurnipBit开发板的logo。

简单介绍TurnipBit开发板

TurnipBit开发板由TurnipSmart公司制作的一款MicroPython开发板,基于nrf51822芯片为主控芯片,以MKL26Z128VFM4芯片作为边载辅助芯片,板载5*5LED灯,板载加速度传感器,板载磁敏传感器灯多种外设器件,同时支持图形编程及MicroPython代码编程控制的高智能芯片开发板。

确保广大爱好者零基础学习单片机。

TurnipBit开发板最大的特点是支持图形编程和MicroPython代码编程,这次使用图形编程,TurnipBit开发板还自带了图形编程的网站,非常人性化。

这个网站的使用方法在《TurnipBit开发环境介绍》里面介绍的非常详细,这里不做过多介绍。

LED灯控制方法简介

使用图形编程的方法控制LED的状态,需要使用到TurnipBit的图形编程网站里面的命令,下面我们来一一介绍这些命令。

控制LED灯状态的命令如上图,可以看出上面的命令中有三个可以自己变成修改的地方,下面一一介绍。

坐标控制参数简介

首先接红色和黄色箭头指的两个参数,这个两个参数是用来设置我们想让哪个LED灯亮或者的灭的。这里我们做一个表格来进行讲解: 

 

X=0

X=1

X=2

X=3

X=4

Y=0

LED1

LED2

LED3

LED4

LED5

Y=1

LED6

LED7

LED8

LED9

LED10

Y=2

LED11

LED12

LED13

LED14

LED15

Y=3

LED16

LED17

LED18

LED19

LED20

Y=4

LED21

LED22

LED23

LED24

LED25

TurnipBit上面板载的5*5LED灯阵分布如上表。

假如我们想要控制LED1的亮灭,我们就要把红色红色箭头个黄色箭头指的X和Y,相对应的修改为0和0;要是我们想控制LED2的亮灭,那么需要红色红色箭头个黄色箭头指的X和Y,相对应的修改为1和0;想要控制其他LED灯按照此规律以此类推。

亮度控制参数简介

上图中蓝色箭头指的参数,是控制LED亮度的参数,在TurnipBit的编程命令中,把LED灯的亮度分为0-9级十个等级,其中LED灯亮度为0级时,LED灯为熄灭状态,LED灯亮度为9级时,LED灯的亮度达到最高。

控制LED灯闪烁

上面讲解了LED灯的控制方法和TurnipBit板载5*5LED灯阵的分布,接下来就给大家讲解一个控制LED灯闪烁的小实验,带大家开启点灯之路。

这个实验我们将以控制LED1为例。

LED灯闪烁的原理:LED闪烁就是LED亮灭状态的改变,在视网膜上形成一定的动态状态的物理现象叫做LED闪烁。LED灯亮一次,灭一次,称作一个闪烁。

我们想要看到LED1持续不断的闪烁,所以需要在做程序编码的时候加入一个无线循环,下面讲解一下无限循环的概念。

无限循环顾名思义就是没有限量的来回交替,在TurnipBit图形编程网站中有一个循环选项,其中有一个叫做“重复当”的命令,在这个命令的判断条件里面放上“逻辑”选项里面的“真”命令,即可完成无限循环结构的设置。

讲解完成上面的基本原理后,估计大家都心中有了基本的程序结构了,接下来把我做的图形代码贴上来给大家看下:

注:在每次点亮和熄灭LED的间隙,加入了一个延时,是为了看到LED的亮和灭,想闪烁的快点,就把延时减小。想闪烁慢点,就把延时加大。

© 著作权归作者所有

共有 人打赏支持
bodasisiter
粉丝 13
博文 127
码字总数 114667
作品 0
潍坊
Micropython TurnipBit 青少年入门编程 交通灯实验

不知道大家小时候对红绿灯的原理有什么研究过,我是农村的孩子直到初中才见到真实的红绿灯,当时我记得很清楚,在那个路口站了五六分钟就盯着红绿灯变换,搞不清原理,只觉得神奇。现在想来实...

bodasisiter ⋅ 03/16 ⋅ 0

Micropython TurnipBit的蓝牙使用

为了部落 什么是TurnipBit开发板 TurnipBit开发板由TurnipSmart公司制作的一款MicroPython开发板,基于nrf51822芯片为主控芯片,以MKL26Z128VFM4芯片作为边载辅助芯片,板载5*5LED灯,板载加...

bodasisiter ⋅ 05/19 ⋅ 0

Micropython TurnipBit 吃豆小人

4.吃豆小人小游戏 4.1 实验目的: ² TurnipBit显示滚动数字和静态数字的几种方法 ² 用代码的形式实现静态数字 4.2 实验器材: ² TurnipBit开发板 1块 ² 下载数据线 1条 接入互联网的电脑...

bodasisiter ⋅ 05/18 ⋅ 0

网红花1个亿整容,往死里整也整不出她们的样纸!

小时候,每天早上流着口水醒来,总会听见客厅里,母亲播的“何日君再来”的勾引小曲。 读书时,最爱跟母亲一起看琼瑶剧,经常将剧里林青霞忽闪忽闪的大眼睛当镜子照。 青春期,打架时嘴里喊的...

挖数 ⋅ 2016/11/20 ⋅ 0

让我们一起摇摆 Turnipbit体感遥控车

相信大家对Microbit是非常熟悉的,而今天我们做的这个小玩具所用的核心板是Turnipbit,是基于 Microbit开发的一块适合儿童适用的板卡。基本使用原理是一样的,这里就不多介绍了,代码这方面我...

bodasisiter ⋅ 02/24 ⋅ 0

Micropython Turnipbit自动窗帘模拟系统

今天我们继续来研究Turnipbit这块板子的功能,这个实验灵感并不是我想出来的,办公室是背阴的,早上中午都见不到太阳,坐在对面的同事每天下午四点,都要去拉窗帘,我都能感觉到太阳直晒他眼...

bodasisiter ⋅ 03/12 ⋅ 0

Micropython 如何用Turnipbit做一个自动浇水装置

最近在研究Turnipbit这块板子,打算是连接一个摄像头模块,正在实验练习中,(祝自己早日弄好)上篇文章我们讲了用Turnipbit连接LCD5110显示英文词句,前几天给家里花浇水的时候发现花招了很...

bodasisiter ⋅ 03/07 ⋅ 0

九曲黄河万里沙,浪淘风簸自天涯 — 正则表达式

心存正气(be good),艺不压身(be great)。幼年间习得的一句话,曾几何时,坚定了某一段路的走法。无奈窗头月落,曾经想要燎原的星火自始至终都在忽闪忽烁,欲灭不灭,欲灼不灼。今天回到这...

李数 ⋅ 2016/08/11 ⋅ 3

Microbit  Turnipbit  孩子也能做的声光控开关

最近一直在研究Turnipbit这块板子,之前也做了几个小实验,研究了下针脚,发现光敏传感器和声音传感器针脚能对的上,就做了下这个声光控小实验,顺便测试下这块板子的性能。不得不说熟悉Mic...

bodasisiter ⋅ 03/10 ⋅ 0

作为人工智能的一个重要分支,计算机视觉正包围人类

计算机视觉,它不仅仅是搜索的一种方式。 近年来,随着人工智能技术的发展,人们的生活被越来越多的人工智能软硬件所包围,比如家中的各类智能家居硬件、手机中的聊天机器人、出门乘坐的自动...

行者武松 ⋅ 03/07 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

BS与CS的联系与区别【简】

C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、InFORMix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Brower/...

anlve ⋅ 54分钟前 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 今天 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

Python模块/包/库安装(6种方法)

Python模块/包/库安装(6种方法) 冰颖机器人 2016-11-29 21:33:26 一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip...

cswangyx ⋅ 今天 ⋅ 0

零基础学习大数据人工智能,学习路线篇!系统规划大数据之路?

大数据处理技术怎么学习呢?首先我们要学习Python语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。 Python:Python 的排名从去年开始就借助人工智能持续上升,现在它已经...

董黎明 ⋅ 今天 ⋅ 0

openJdk和sun jdk的区别

使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK, 那么到底什么是OpenJDK,它与SUN JDK有什么关系和区别呢? 历史上的原因是,Ope...

jason_kiss ⋅ 今天 ⋅ 0

梳理

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 它是JS的状态容器,是一种解决问题的方式,所以即可以用于 react 也可以用于 vue。 需要理解其思想及实现方式。 应用中所有的 stat...

分秒 ⋅ 今天 ⋅ 0

Java 后台判断是否为ajax请求

/** * 是否是Ajax请求 * @param request * @return */public static boolean isAjax(ServletRequest request){return "XMLHttpRequest".equalsIgnoreCase(((HttpServletReques......

JavaSon712 ⋅ 今天 ⋅ 0

Redis 单线程 为何却需要事务处理并发问题

Redis是单线程处理,也就是命令会顺序执行。那么为什么会存在并发问题呢? 个人理解是,虽然redis是单线程,但是可以同时有多个客户端访问,每个客户端会有 一个线程。客户端访问之间存在竞争...

码代码的小司机 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部