【雕爷学编程】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℃。

 

  实验开源代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
/*
 
【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);     
 
  
 
}

  实验场景图 

 

 实验开源代码之二

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*
 
【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);
 
}
 
}

   实验开源代码之三

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
/*
 
【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、编玩边学)

 

posted @   行者花雕  阅读(430)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示