“第三课——多个LED花样闪烁”的版本间的差异
853387039@qq.com(讨论 | 贡献) (Created page with "{| style="width: 800px;" |- | ==目的== 已经实验了点亮一个led的方法,接下来稍微扩展下,控制多个led依次闪烁。 ==原理== 可以采用重复执...") |
853387039@qq.com(讨论 | 贡献) (→设备) |
||
(未显示同一用户的2个中间版本) | |||
第12行: | 第12行: | ||
*'''[[Microduino-Core/zh]]''' | *'''[[Microduino-Core/zh]]''' | ||
*'''[[Microduino-USBTTL/zh]]''' | *'''[[Microduino-USBTTL/zh]]''' | ||
+ | *'''[[Microduino-Plug/zh]]''' | ||
*其他硬件设备 | *其他硬件设备 | ||
**面包板跳线 一盒 | **面包板跳线 一盒 | ||
第33行: | 第34行: | ||
[[File:lesson1_style_1.jpg|600px|center|thumb]] | [[File:lesson1_style_1.jpg|600px|center|thumb]] | ||
*依次熄灭 | *依次熄灭 | ||
− | [[File: | + | [[File:lesson1_style_2.jpg|600px|center|thumb]] |
*依次闪烁 | *依次闪烁 | ||
[[File:lesson1_style_3.jpg|600px|center|thumb]] | [[File:lesson1_style_3.jpg|600px|center|thumb]] | ||
在loop循环里面重复执行就好。 | 在loop循环里面重复执行就好。 | ||
+ | |||
==结果== | ==结果== | ||
实验有三种花样效果:依次点亮;依次熄灭、依次闪烁。用户可根据自己喜好,设置更多好玩的效果。 | 实验有三种花样效果:依次点亮;依次熄灭、依次闪烁。用户可根据自己喜好,设置更多好玩的效果。 | ||
第56行: | 第58行: | ||
{ | { | ||
for(_ABVAR_1_i = 2; | for(_ABVAR_1_i = 2; | ||
− | 2<= | + | 2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9; |
− | 2<= | + | 2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1) |
{ | { | ||
__ardublockDigitalWrite(_ABVAR_1_i, HIGH); | __ardublockDigitalWrite(_ABVAR_1_i, HIGH); | ||
第63行: | 第65行: | ||
} | } | ||
for(_ABVAR_1_i = 2; | for(_ABVAR_1_i = 2; | ||
− | 2<= | + | 2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9; |
− | 2<= | + | 2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1) |
{ | { | ||
__ardublockDigitalWrite(_ABVAR_1_i, LOW); | __ardublockDigitalWrite(_ABVAR_1_i, LOW); | ||
+ | delay( 500 ); | ||
} | } | ||
for(_ABVAR_1_i = 2; | for(_ABVAR_1_i = 2; | ||
− | 2<= | + | 2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9; |
− | 2<= | + | 2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1) |
{ | { | ||
__ardublockDigitalWrite(_ABVAR_1_i, HIGH); | __ardublockDigitalWrite(_ABVAR_1_i, HIGH); | ||
delay( 500 ); | delay( 500 ); | ||
__ardublockDigitalWrite(_ABVAR_1_i, LOW); | __ardublockDigitalWrite(_ABVAR_1_i, LOW); | ||
+ | delay( 500 ); | ||
} | } | ||
} | } | ||
</source> | </source> | ||
|} | |} |
2015年3月14日 (六) 13:36的最新版本
目的已经实验了点亮一个led的方法,接下来稍微扩展下,控制多个led依次闪烁。 原理可以采用重复执行(repeat between),依次让引脚输出高或低的电平信号来控制LED灯亮灭。 设备
搭建硬件led的阴极接Microduino的GND,阳极接Microduino数据控制口D2~D9。 按原理图搭建好电路。 软件调试
在loop循环里面重复执行就好。 结果实验有三种花样效果:依次点亮;依次熄灭、依次闪烁。用户可根据自己喜好,设置更多好玩的效果。 可以看到编译后的程序代码是如何实现的。 int _ABVAR_1_i = 0 ;
void __ardublockDigitalWrite(int pinNumber, boolean status)
{
pinMode(pinNumber, OUTPUT);
digitalWrite(pinNumber, status);
}
void setup()
{
}
void loop()
{
for(_ABVAR_1_i = 2;
2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9;
2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1)
{
__ardublockDigitalWrite(_ABVAR_1_i, HIGH);
delay( 500 );
}
for(_ABVAR_1_i = 2;
2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9;
2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1)
{
__ardublockDigitalWrite(_ABVAR_1_i, LOW);
delay( 500 );
}
for(_ABVAR_1_i = 2;
2<=9?_ABVAR_1_i <= 9:_ABVAR_1_i >= 9;
2<=9?_ABVAR_1_i = _ABVAR_1_i + 1:_ABVAR_1_i = _ABVAR_1_i - 1)
{
__ardublockDigitalWrite(_ABVAR_1_i, HIGH);
delay( 500 );
__ardublockDigitalWrite(_ABVAR_1_i, LOW);
delay( 500 );
}
}
|