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


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

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

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

     

    10段光条数码管红色20个脚,外形尺寸:25.10x10.10x7.9mm,一面脚为正极一面为负极,超亮红色光条,10个笔段可以单独控制

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

      实验开源代码

    /*
    
    【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
    
     实验九十七:10段LED发光条MT102510AG数码显示光柱模块
    
    1、项目一:10段红色数码光条,逐条点亮逐条熄灭
    
    2、接脚(2、3、4、5、6、7、8、9、10、11)
    
    */
    
    
    
    int BASE = 2 ;
    
    int NUM = 10;  
    
    
    
    void setup(){
    
      for (int i = BASE; i < BASE + NUM; i ++)
    
      {
    
        pinMode(i, OUTPUT);  
    
      }
    
    }
    
    
    
    void loop(){
    
      for (int i = BASE; i < BASE + NUM; i ++)
    
      {
    
        digitalWrite(i, LOW);  
    
        delay(200);      
    
      }
    
      for (int i = BASE; i < BASE + NUM; i ++)
    
      {
    
        digitalWrite(i, HIGH);  
    
        delay(200);      
    
      }  
    
    }
    

      实验场景图 

     实验开源代码之二

    /*
    
    【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
    
     实验九十七:10段LED发光条MT102510AG数码显示光柱模块
    
    1、程序之二,流水灯效果:全灭的灯逐个往一边点亮,再逐
    
    个往开始端灭掉,循环即可,当然也可以其它效果,可自己设定
    
    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 i;
    
    
    
    void setup() {
    
    for (i = 2; i < 12; i++)
    
    {
    
    pinMode(i, OUTPUT);
    
    }
    
    }
    
    
    
    void loop() {
    
    for (i = 1; i < 12; i++)
    
    {
    
    digitalWrite(i, HIGH);
    
    delay(50);
    
    } for (i = 12; i > 1; i--)
    
    {
    
    digitalWrite(i, LOW);
    
    delay(50);
    
    }
    
    }
    

       实验开源代码之三

    /*
    
    【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);
    
    }
    

      

    实验的视频记录

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

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

  • 相关阅读:
    CentOS 6 网络设置修改 指定IP地址 DNS 网关
    PowerDesigner连接MySQL,建立逆向工程图解
    PowerDesigner逆向工程导入MYSQL数据库总结
    《Spring Boot官方指南》(二)入门
    初识Spring Boot框架和快速入门
    MVC中html编码与否
    WPF背景透明内嵌WebBrowser不显示问题,即AllowsTransparency = true 和 Webbrowser 等控件显示冲突
    Forms.WebBrowser与Controls.WebBrowser区别
    一些不错的网站
    强制改变css样式优先级
  • 原文地址:https://www.cnblogs.com/eagler8/p/15877662.html
Copyright © 2020-2023  润新知