【雕爷学编程】Arduino动手做(97)---10段LED光柱模块2

news2024/9/25 11:16:09

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验九十七:10段LED发光条MT102510AG数码显示LM3914光柱模块

在这里插入图片描述
知识点:LM3914芯片
是美国Ns公司研制的点/条显示驱动集成电路。内含输入缓冲器、10级精密电压比较器、1.25V基准电压源及点/条显示方式选择电路等。10级电压比较器的同相输入端与电阻分压器相连,电阻分压器由10只1kg精密电阻串联组成。

各单位级比较器的加权值相等,从而使得十级线性显示驱动器的组成,适合与LED中使用,更能完成LCD、VFD电平表的线性标度器件的完美驱动。工作电压为3v25W最高为48V,输出电流在230mA范围可调,输出端承压能力为±35V,最大输出限制在30mA之内输入缓冲器接成跟随器形式,提高了输入阻抗和测量精度。LM3914内部设有迟滞电路,显示不是从一个LED立刻跳到男一个LED,而是平缓过度,可消除噪声干扰,改善输入信号俠速变化时引起的闪烁现象。由于内部电阻分压器是浮接的,所以电压测量范围很宽。

LM3914是10位发光二极管驱动器,它可以把输入模拟量转换为数字量输出驱动10位发光二极管来进行点显示或柱显示。

在这里插入图片描述
LM3914引脚及相关功能介绍:

1脚接发光管负极;2脚地;3脚正电源;4脚发光管最低亮度设定;5脚信号输入;6脚发光管最高亮度设定;7脚基准电压输出;8脚基准电压设定;9脚模式设定;10-18脚接发光管负极。

LM3914参考电压源输出约5V,即在7脚和8脚之间维持一个5V的基准电压[color=rgb(0, 66, 118) !important]Vref,该基准可以直接给内部分压器使用,这样当Vin(5脚)输入一个0~5V电压时,通过比较器即可点亮0~10个发光二极管。

4脚和6脚之间连接有10个精密分压电阻,7脚和8脚之间是一个参考电压源,9脚为点/柱模式选择,5脚为信号输入端。

在这里插入图片描述
在这里插入图片描述
LM3914的内部电路结构图

该电路可用于需要对湿度进行检测和指示的场合。
LM3914中有10个电压比较器作为10个发光二极管的驱动器,每个电压比较器的基准电压都是由串联电阻器分压电路提供的,其电压值从上至下递减。湿度传感器Icl检测到的湿度信号经R.、RP1后,作为控制信号从IC2的⑤脚输入,经缓冲放大器后输出,并加到10个电压比较器的反向输入端,当比较器的反向输入电压大于该比较器同相端的电压是该比较器输出低电平,相应的发光二极管点亮。
LM3914中的缓冲放大器输出到电压比较器反相端的电压越高,点亮的二极管越多,当该电压高于图中⑩脚连接的比较器同相端电压时,电路中10个发光二极管全部点亮。
在这里插入图片描述

LM3914N的工作原理与应用电路
电容器充电电路由时基集成电路ICl、继电器Kl和电阻器R4组成。电容器放电电路由电阻器R5、晶体管Vl、V2和继电器K2组成。充/放电选择控制电路由开关S、电阻器R3、供电电源插座XS和二极管VDl、VD2组成。多谐振荡器电路由电阻器Rl、电容器C2和与非门集成电路IC2(Dl、D2)组成。LED显示驱动电路由发光二极管VLl-VL36、电阻器R6、R2、电容器Cl和计数分配器集成电路IC3组成。演示电容器充电过程时,将S置于“充电”位置,使ICl和IC3的工作电源接通。在未接上充电电容器时,IC1的7脚输出高电平,Kl不吸合,多谐振荡器不工作,IC3在通电复位后,其YO端输出高电平,而YI-Y9端均输出低电平,VLl-VL36均不发光。接上充电电容器后,由于该电容器两端电压不能突变,IC1的2脚和6脚由低电平变为高电平,7脚由高电平变为低电平,Kl通电吸合,其常开触头接通,使多谐振荡器通电工作,为IC3的CP端提供计数脉冲,使IC3的YO-Y9端依次轮流输出高电平,VLl、VL2-VLl7、VLl8依次轮流点亮。IC3的Y9端与EN端相连,当输出高电平时,IC3停止计数,并保持Y9端恒定输出高电平的状态,使VLl7和VLl8处于长亮状态。从而演示了电容器充电时电容器的电压与电流的变化规律:即端电压随充电时间的变长而越来越高,直至不变;而流过电容器的电流则随充电时间的变长而越来越小,直至为零。在电容器充电电路工作时,当电容器充电完毕 (两端电压充至电源电压的2/3)时,ICl的7脚就会由低电平变为高电平,使Kl释放,多谐振荡器停止工作。演示电容器放电过程时,应先将充电电容器取下,将S置于“放电“位置,将已充电电容器接到T3、T4两放电端上。此时电容器上所存电荷经R5对Vl放电,使Vl和V2饱和导通,K2吸合,其常开触头接通,多谐振荡器振荡工作,为IC3提供计数脉冲,lC3的YO-Y9输出端依次轮流输出高电平,使VLl9、VL2O-VL35、VL36依次轮流点亮。当IC3的Y9端输出高电平时,lC3停止计数,并保持Y9端恒定输出高电平的状态,使VL35和VL36长亮。从而演示了电容器放电时其端电压和电流均随着放电时间的变长而越来越低这一变化规律。当电容器放电完毕后,Vl和V2截止,K2释放,多谐振荡器停止工作。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
10段光条数码管模块,红色20个脚,外形尺寸:25.10x10.10x7.9mm,一面脚为正极一面为负极,超亮红色光条,10个笔段可以单独控制

在这里插入图片描述
在这里插入图片描述

10段LED光柱模块特性
*能在低电压、小电流条件下驱动发光;
*发光响应时间极短(<0.1μs),高频特性好,单色性好,亮度高;
*体积小,重量轻,抗冲击性能好。固态封装,封装方式为灌胶型,稳定性高;
*寿命长,使用寿命在5万小时以上;
*可连续扫描驱动各灯段;
*良好的显示效果、视角宽;
*推荐恒流使用,恒压会出现亮度不均匀现象;
*表面有保护膜的产品,可以在使用前撕下来;
*使用温度:-30℃至65℃。

在这里插入图片描述

实验开源图形编程(Mind+、编玩边学)

在这里插入图片描述2

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验九十七:10段LED发光条MT102510AG数码显示光柱模块

1、程序之三,控制多个LED实现多种闪烁效果

2、接脚(2、3、4、5、6、7、8、9、10、11)

Arduino实验开源代码

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

 实验九十七:10段LED发光条MT102510AG数码显示光柱模块

1、程序之三,控制多个LED实现多种闪烁效果

2、接脚(2、3、4、5、6、7、8、9、10、11)

*/



int led1 = 2;

int led2 = 3;

int led3 = 4;

int led4 = 5;

int led5 = 6;

int led6 = 7;

int led7 = 8;

int led8 = 9;

int led9 = 10;

int led10 = 11;

int n;





void setup(){

for(n=2;n<=11;n++)

{

  pinMode(n, OUTPUT);  

}

}



void loop(){

  turn1();

  clean();

  turn2();

  clean();

  turn3();

  clean();

}



void turn1()

{

  for(n=2;n<=11;n++)

{

  digitalWrite(n,HIGH);

  delay(300);

}

  for(n=2;n<=11;n++)

{

  digitalWrite(n,LOW);

  delay(300);

}

}



void turn2()

{ for(int x=0;x<=2;x++)

{

  for(n=2;n<=11;n++)

{

  digitalWrite(n,HIGH);  

}

delay(300);

  for(n=2;n<=11;n++)

{

  digitalWrite(n,LOW);

}

delay(300);

}

}





void turn3()

{

  for(int x=0;x<=2;x++)

  {

  digitalWrite(2,HIGH);

  digitalWrite(3,HIGH);

  for(n=4;n<=11;n++){

  digitalWrite(n,LOW);

  }

  delay(300);

  digitalWrite(6,HIGH);

  digitalWrite(7,HIGH);

  digitalWrite(2,LOW);

  digitalWrite(3,LOW);

  digitalWrite(4,LOW);

  digitalWrite(5,LOW);

  digitalWrite(8,LOW);

  digitalWrite(9,LOW);

  digitalWrite(10,LOW);

  digitalWrite(11,LOW);

  delay(300);

  digitalWrite(10,HIGH);

  digitalWrite(11,HIGH);

  for(n=2;n<=9;n++){

  digitalWrite(n,LOW);

  }

  delay(300);

}

}



void clean()

{  for(n=2;n<=11;n++)

{

  digitalWrite(n,LOW);  

}

delay(300);

}

Arduino实验场景图

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验九十七:10段LED发光条MT102510AG数码显示光柱模块

程序之三,控制多个LED实现多种闪烁效果记录视频

https://v.youku.com/v_show/id_XNDMzNTk0ODE1Ng==.html?spm=a2hzp.8244740.0.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/805892.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C#,数值计算——逻辑斯谛分布(logistic distribution)的计算方法与源程序

逻辑斯谛分布即增长分布&#xff0c;增长分布的分布函数是“增长函数”&#xff0c;亦称“逻辑斯谛函数”(logistic function)&#xff0c;故增长分布亦称做“逻辑斯谛分布”。逻辑斯谛分布(logistic distribution)是一种连续型的概率分布&#xff0c;记为L(μ,γ)&#xff0c;…

#systemverilog# 说说Systemverilog中《automatic》那些事儿

前面我们学习了有关systemverilog语言中有关《static》的一些知识,同static 关系比较好的哥们,那就是 《automatic》。今天,我们了解认识一下。 在systemveriog中,存在三种并发执行语句,分别是fork..join,fork...join_any和fork..join_none,其中只有fork...join_none不…

OSPF路由协议(红茶三杯CCNA)

链路状态路由协议 OSPF&#xff08;开放式最短路径优先&#xff09;Open Shortest Path First 是一种链路状态路由协议&#xff0c;无路由循环&#xff08;全局拓扑&#xff09;&#xff0c;RFC2328 “开放”意味着非私有的 管理型距离&#xff1a;110 OSPF采用SPF算法计算到达…

vmware虚拟机屏幕太小怎么办

虚拟机里面安装Ubuntu有时候屏幕会自动调整&#xff0c;有时会不会自动调整。 当遇到屏幕太小怎么办&#xff1f; 调整Ubuntu屏幕分辨率就可以了。 我不能说不能通过设置虚拟机达到同样的效果&#xff0c; 但是我可以告诉你设置Ubuntu系统的分辨率可以解决这个问题。 具体…

python爬虫(一)_爬虫原理和数据抓取

关于Python爬虫&#xff0c;我们需要学习的有&#xff1a; Python基础语法学习(基础知识)HTML页面的内容抓取(数据抓取)HTML页面的数据提取(数据清洗)Scrapy框架以及scrapy-redis分布式策略(第三方框架)爬虫(Spider)、反爬虫(Anti-Spider)、反反爬虫(Anti-Anti-Spider)之间的斗…

VIS for AI :ConvNetJS

1.简单介绍&#xff1a; ConvNetJS是由斯坦福大学计算机科学系的Andrej Karpathy开发的一个深度学习框架&#xff0c;用于在浏览器中运行卷积神经网络&#xff08;ConvNet&#xff09;。ConvNetJS可以帮助开发人员在客户端&#xff08;浏览器&#xff09;上进行深度学习任务&a…

NLP From Scratch: 生成名称与字符级RNN

NLP From Scratch: 生成名称与字符级RNN 这是我们关于“NLP From Scratch”的三个教程中的第二个。 在<cite>第一个教程< / intermediate / char_rnn_classification_tutorial ></cite> 中&#xff0c;我们使用了 RNN 将名称分类为来源语言。 这次&#xff…

算法竞赛入门【码蹄集新手村600题】(MT1060-1080)

算法竞赛入门【码蹄集新手村600题】(MT1060-1080&#xff09; 目录MT1061 圆锥体的体积MT1062 圆锥体表面积MT1063 立方体的体积MT1064 立方体的表面积MT1065 长方体的表面积MT1066 射线MT1067 线段MT1068 直线切平面MT1069 圆切平面MT1070 随机数的游戏MT1071 计算表达式的值M…

[vue] 新项目配置整理(没写完,回头有空继续)

省流版(vue2项目)&#xff1a; 脚手架&#xff1a;vue create xxxx vuex&#xff1a;npm i vuex3 router : npm install vue-router3 vue cli创建项目 vue create xxxx(项目名称) 添加基本配置 module.exports {lintOnSave: false, // 关闭eslint检查publicPath:./, //…

Python(四十七)列表对象的创建

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

JiaYu说:如何做好IT类的技术面试?

IT类的技术面试 面试IT公司的小技巧IT技术面试常见的问题嵌入式技术面试嵌入式技术面试常见的问题嵌入式软件/硬件面试题 JiaYu归属嵌入式行业&#xff0c;所以这里只是以普通程序员的角度去分析技术面试的技巧 当然&#xff0c;也对嵌入式技术面试做了小总结&#xff0c;友友们…

python 源码中 PyId_stdout 如何定义的

python 源代码中遇到一个变量名 PyId_stdout&#xff0c;搜不到在哪里定义的&#xff0c;如下只能搜到引用的位置&#xff08;python3.8.10&#xff09;&#xff1a; 找了半天发现是用宏来构造的声明语句&#xff1a; // filepath: Include/cpython/object.h typedef struct …

MIPI D-PHY 2.1协议(学习笔记)

1~3 简介/术语/参考文档 这三章属于介绍性内容&#xff0c;包括缩略语等名词术语解释内容&#xff0c;不再赘述。 直接进入以下正文部分 4 D-PHY概述 D-PHY描述了一种Source同步、高速、低功耗、低成本的PHY&#xff0c;特别适用于移动应用。这个D-PHY规范主要是为了将相机…

持续部署CICD

目录 &#xff08;1&#xff09;CICD的开展场景 &#xff08;2&#xff09;项目实际应用 CICD 是持续集成&#xff08;Continuous Integration&#xff09;和持续部署&#xff08;Continuous Deployment&#xff09;简称。指在研发过程中自动执行一系列脚本来降低开发引入 bug…

【雕爷学编程】Arduino动手做(175)---机智云ESP8266开发板模块

37款传感器与执行器的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&am…

【KVC补充 Objective-C语言】

一、KVC补充 好,那么接下来,再给大家说一下这个KVC 1.首先我们说,这个KVC,就是指的什么 key value coding 吧 全称就是叫做(Key Value Coding),这是它的全称 那么,你在帮助文档里面搜的时候,你就搜key-value coding 是不是这个啊,key-value coding 然后点击,进…

HashMap中hash方法的作用(详解)

首先&#xff0c;hash方法用来干什么&#xff1f; 在搞清楚原理之前&#xff0c;我们先站在巨人的肩膀浅浅了解一下hash方法的本质作用。 实质上&#xff0c;它的作用很朴素&#xff0c;就是用key值通过某种方式计算出一个hash码 而且这个hash码我们后面要用来计算key存在底…

数据链路层是如何传递数据的

数据链路层是如何传递数据的 数据链路层功能概述封装成帧透明传输差错控制 数据链路层功能概述 数据链路层的主要作用就是加强物理层传输原始比特流的功能。其负责将物理层提供的可能出错的物理连接&#xff0c;改造成逻辑上无差错的数据链路。 数据链路层包括三个基本问题&a…

ICML 2023 | 拓展机器学习的边界

编者按&#xff1a;如今&#xff0c;机器学习已成为人类未来发展的焦点领域&#xff0c;如何进一步拓展机器学习技术和理论的边界&#xff0c;是一个极富挑战性的重要话题。7月23日至29日&#xff0c;第四十届国际机器学习大会 ICML 2023 在美国夏威夷举行。该大会是由国际机器…

Go语言学习笔记(狂神说)

Go语言学习笔记&#xff08;狂神说&#xff09; 视频地址&#xff1a;https://www.bilibili.com/video/BV1ae41157o9 1、聊聊Go语言的历史 聊聊Go语言的历史-KuangStudy-文章 2、Go语言能做什么 下面列举的是原生使用Go语言进行开发的部分项目。 Docker Docker 是一种操作…