|
|
米思齐(Mixly),是一个全中文可视化的arduino软件,使用起来直观易懂,今天给大家介绍一个可能是最简单的天猫精灵控制ESP8266的开关实例。只要会用电脑就行,不懂英语的人也一看就会。而且美思齐的库功能也是非常强大,很多库是软件集成了,不像arduino一样还要一个个自己装。对于arduino初学者,很多库代码搞不清楚用途,也可以通过美思奇对照学习。
* H& H, P- Z0 T& C0 s2 I
4 _0 S* e2 l% d4 }1 I L- s1 N1 L6 m0 e( v1 H- D# W9 n$ H. V
需要的东西有:
# f4 v/ L" a3 }! F) R% \首先得有一个天猫精灵,闲鱼30包邮可以买到方糖。
% G% X( C' A" x& ]你还得有一个ESP8266,带串口的也就10来块钱。要是想省想,可买不带串口的,烧录麻烦一点点,而且一般是3.3V供电,大概5-6元。- R p+ e" Z+ N* z
你要是控制电灯,你得有一个5V续电器。5 v' C+ H. k4 k/ t
手机上面装好天猫精灵和点灯科技的APP,在点灯上面添加一个独立设备>网络接入>阿里云。得到一个KEY,这个KEY是用在下面的程序中的设备密匙中。
6 l1 w: C: E0 B! f, H( @% u5 p# R. m* }
3 G- T/ t. }- u% d! P' P
装好米思齐,并安装点灯物联库就可以了。) H: e. A' \, [2 U$ w q
" Q, m. w+ A0 O' v- e5 ]& j+ [& K4 t
8 t& T0 J" ~% j$ h7 X$ T2 Y3 P 添加点灯库
0 |+ F1 v0 E) y6 O( o/ Y% n% N
4 k9 g- [+ @& R8 u+ O
1 J4 ^4 G1 ~+ p' d5 J下面KEY是点灯APP上面得到的,WIFI和密码就是你家的。下面的管脚2是8266的板载灯,你可以接个5V续电器。0 A5 m* o* e2 X6 Y" p
. ]2 {2 ~0 {# ]3 [& N+ a$ M3 \4 u
6 V- u5 f% N& k# {因为我的8266设电平为(高)时灯为灭,如果你上传后发现是亮的可以改成(低)。相应的下面的也要对调过来。因为程序简单,所以没有设变量。
5 |# f3 x3 v0 G3 Q7 O5 B; Y) W9 F: C, e6 p9 ]/ g
# f, D$ u3 L5 N$ a7 p, `
改好之后上传,注意8266和端口不要错了。
- \; {# f: {8 t4 c4 h
W% o* f) _4 Z; i4 C
, g% ]5 t- ~' D) J
) w8 J! A# j4 b$ I# p) l. g- }! _8 `
' V- s9 c) J3 d7 S, ~
如果有安装arduino可以直接拷下面的代码上传- #define BLINKER_ALIGENIE_OUTLET7 \' Z2 B+ T8 D3 g3 c/ P& r
- #define BLINKER_WIFI
9 u6 Y9 }4 Q w) V8 ^6 n: n2 w6 a - #include <Blinker.h>1 k) P3 z2 N0 V* J* m% e9 S+ Y
- # ~$ `0 R; c0 V! J! n' J% a+ {
- char auth[] = "点灯密匙";* e( T8 [! s* _* N9 z3 n
- char ssid[] = "你家的WIFI名称";4 I4 ~7 ?3 l) c B: ]7 }7 J
- char pswd[] = "你家的WIFI密码";
7 L* J# Z# a* |4 g- e+ d% U5 C - void aligeniePowerStatedata(const String & data){
9 Z. I1 F. N" M8 y* h% n# M - if (data == BLINKER_CMD_ON) {+ Q" D8 [: T: t7 f
- BlinkerAliGenie.powerState("off");
. Q9 H6 Q7 }# Z4 H2 v( t - BlinkerAliGenie.print();9 w" X) t9 c- ? w4 F% d7 Q
- digitalWrite(2,LOW); //控制的是2脚,也就是板载LED灯1 s9 m0 A/ g* y: h2 \! f3 R9 \& I
- % h, n6 y; X/ i# p- L4 ^, z
- } else if (data == BLINKER_CMD_OFF) {
; [; Q& G. _2 G a G9 | - digitalWrite(2,HIGH);
% g0 D. `$ d1 X' S - BlinkerAliGenie.powerState("off");
9 j# P, X1 u% l2 U( F - BlinkerAliGenie.print();( S, D S+ r( I3 G& Y" ` a* r' z
- }
5 J' M& i }' ^% i - }
- L5 _. E+ d9 t+ D' ~7 a& [ - : C: z8 u. z- W2 F }0 F
- void setup(){
, u! h* I- ~6 u4 D Z - Blinker.begin(auth,ssid,pswd);
- A. N: ]% I! J* k# Y9 J% d% { - pinMode(2, OUTPUT);
0 F& z4 m4 n" _' I* i7 R S% N# T - digitalWrite(2,HIGH);8 Q, H7 H0 g% t4 z' P7 v
$ n2 M3 r& u( V, [! O2 _0 p' ` j, N- BlinkerAliGenie.attachPowerState(aligeniePowerStatedata);( U( ^' O9 K. I/ b9 i- u
- }0 q8 r3 S _& V( T5 F3 B4 e
0 Q: b5 V% f6 r2 p. A7 x- void loop(){
( j/ Y2 ]& D- [$ w( b! F/ Y( P, { - Blinker.run();+ ^- {" w9 H" D5 L! R- C5 n0 {
- $ {8 \# h* [4 Q T$ d- d
- }
复制代码
! a! j) t7 v& i6 ~) N# Y( J6 N: H9 X3 N
上传好之后,在天猫中添加点灯(点右上解+号>搜“blinker”),扫描到刚刚才已经上传程序并联网的8266设备,简单设置一下你的设备属性就可以了,比如你的是灯还是插座,是客厅还是房间。
/ I H# {, a7 @/ }/ m8 B
- ^. K0 v9 D+ W, G' p, N% Q8 J% z- ]! ?; f: F$ v/ S! x
设好后就可以试试用你的天猫控制了,够简单了吧?
' ]3 w; M+ x( `7 p* a& x* d为了初学者一时找不到模块,我把实例放附件了。2 I% I6 ]1 F7 U* j6 v
/ ? p _4 ?; ?
* T$ `% e) L7 a: P; S |
评分
-
查看全部评分
|