Stduino Uno/Nano-37种传感器(一)3色LED模块5 j$ n( u7 E' a
@+ a' j0 G/ T @9 d本文转载自:http://www.stduino.com/forum.php?mod=viewthread&tid=23&extra=page%3D2
! w6 m8 i6 \: l) V8 s2 x6 z
1 C1 L' W1 T1 h* C( I6 w/ T9 }, W2 V$ f3 ^5 q8 Q
( u0 @9 F9 L8 q. z8 r( r" z9 b
a- k! f. n) R$ _ ?. H
关键词: 4 A# H, F( Q7 Q3 ~6 I( ]
51、stm32、arduino、stduino、单片机、stduino UNO&Nano、三色LED模块/ q, }( W( v6 V+ u
3 z1 M( \+ O' K8 \
说明:
& e0 C1 B; w1 v. `9 Y$ F! ?三色LED模块由一个全彩LED制成,通过R、G、B三个引脚的PWM电压输入可以调节三种基色(红/蓝/绿)的强度从而实现全彩的混色效果。用Stduino可以对模块进行控制,从而实现酷炫的灯光效果。R、G、B分别对应控制红、绿、蓝三个LED的引脚。* v: L- p, ]; }; V8 x5 s
t. @3 z# T7 @ W! o3 D% e% b7 @" E6 x1 d# H( y3 H
' W& c& {7 b% ~, `* A _实验目的:3 r5 S" U$ n$ W8 A) ^- Z/ N: o; D
LED实现由绿变红,由红变蓝,由蓝变绿。
+ k1 B) T; Y+ x$ [4 Y3 h! t+ o- q. }% ~7 y
器材:2 p8 x' G: [8 g/ w2 m1 W: L' p$ K
四脚三色LED灯模块、面包板、Stduino Uno/Nano、杜邦线- m' k4 Z5 H2 G: B* S" @
3 X0 z2 Z. H) O& J* }电路连接:
: i& l3 n/ [4 Z' H J/ ?5 W% D; n% o
3 u) A. ]/ [: H
* }6 Y' N2 U& d* f' x
: P* y2 u7 ~' p; M+ y连接说明:
: F# m, a1 w0 Z: r没有找到合适的图片,因此用截图代替。LED三色灯模块一般有四个引脚,其中为“-”接GND。7 E) t4 G8 }% A2 \
另外三个分别接Stduino Uno板上能够PWM输出的引脚即可(即引脚编号后带波浪线的)。$ G- u1 g [! y4 ~& m
在这里是A4接红色LED引脚,A5接绿色LED引脚,A6接蓝色LED引脚。# \4 K# r" v% W3 B" u$ {
# X+ L* Y5 e/ ~
: Y; b1 K' ~1 K3 ^4 H( K; U代码展示:* W* m2 W) s5 m, ]/ O# w
- int RedLED = A4;7 [$ C) }+ y) n: f& E8 Z
- int GreenLED =A5;
2 k- ?2 }2 D4 p A4 L W9 d/ r - int BlueLED = A6;. C% d( d! U) L1 A. A1 w2 D+ @
- ; H! r; ?7 S# d% x
- void setup() & j0 |5 T' q. D; Y v3 W
- {" @# L+ E) z7 `6 _
- pinMode(RedLED,OUTPUT_PULSE);
0 Z6 \* k/ }# S; D5 e. K - pinMode(GreenLED,OUTPUT_PULSE);# r. ~" L$ Q$ ^" U# C P
- pinMode(BlueLED,OUTPUT_PULSE);
* v' b( L7 w3 c - }: R) m' O5 `+ Z$ N" Y
- / N4 S. i7 d6 G: d' t
- void setColor(int red,int green,int blue)4 z5 V1 J* a6 `$ Q; t0 C/ s, \* h
- {* B1 F$ t1 ^5 [
- analogWrite(RedLED,red);" R& n) v% S. P$ x* h3 n
- analogWrite(GreenLED,green);. I Y; T% W! m$ F
- analogWrite(BlueLED,blue);
6 |' V! p9 m- {/ [ - }
, H3 R8 M6 s+ ?: ] - 5 t* _5 b- M; L$ ^
- void loop()* @( a: { {# }0 W& Q
- {- |4 C5 I6 a* F* M0 b- P; t
- int i,j;
( m( `- ]2 Q4 E& B - //绿色向红色渐变+ E$ u& ^" K2 X' \# G7 R2 ^5 ^
- for(i=0,j=255;i<256;i++)
* Q9 {" N$ s2 x - {$ _2 i4 i* @9 e
- setColor(i,j,0);
8 m/ L- T; U# G5 n. s2 { - delay(4);- [2 C) R9 Z6 w2 j
- j--;
; @8 ?7 V5 w4 V" W6 w, `" C6 {5 W - }
) O7 }$ c/ y/ B( j I* e/ e B - //红色向蓝色渐变
# o3 D( g4 @; v+ X6 `/ {# s - for(i=0,j=255;i<256;i++)/ I9 j: x. K) B& A1 `
- {
5 f' n" ^2 D) \) Y- J - setColor(j,0,i);
/ g# i/ z. R- J - delay(4);- d6 d- q' X/ k8 R0 ~
- j--;4 I9 r. l: t$ O' {; H
- }
7 K! J1 Z3 m! A$ n0 h z$ t" z) a - //蓝色向绿色渐变
! \) ~# t5 u4 ?. ?. b% D - for(i=0,j=255;i<256;i++)# `0 N* f1 O% O2 Z2 \5 i# P5 t
- {
& ]+ I7 m' Q' L( u/ ^1 m7 Q% P - setColor(0,i,j);3 ^9 p9 w* R1 i# Z- p9 L8 i, n& ?
- delay(4);! }0 P0 j. K. j! X
- j--;
) o) n( V' a; y# ]& d! t - } 9 |4 K0 b. [, t/ _0 E( f8 J
- }" Z2 e9 b: i& s! l# Z
复制代码
; e' d; [0 U+ L6 L% j3 ]$ u* |/ R. u4 i7 Z2 L
& ?" |% A$ O! L/ q; ~5 B$ `
RGBLED接法:
3 g' H" c8 N. [" t# \3 ]" _! y) ?$ D
6 _) k& ^; G+ H) K0 A; A0 u8 ?- t+ t
/ @. K8 U& K- M. A% w) m |